Apps4Bitrix contest - HTC Desire S for apps!
Friends, we invite you to participate in our contest “Apps4Bitrix”: place your applications in the Marketplace catalog and get Android-smartphones - HTC Desire S for this.
Details:
Any web developer on the 1C-Bitrix platform can take part in the competition, for To do this, you need to place a new solution (application, module, standard site) in our Marketplace catalog .
The collection of applications will be held throughout September, in October - the determination of the finalists. Until October, a public vote will be held on the Marketplace website . In the finals of the competition will be 20 decisions participating with the maximum number of votes.
Of the 20 finalists, the expert commission will select 5 winners - the determination will be made with the help of a special expert council, which will also include the most respected and experienced 1C-Bitrix partners. A full list of the composition of the council will be published after the completion of the application collection phase on the Marketplace website.
As a result, the authors of the five best solutions will receive HTC Desire S smartphones and certificates of honor, and we will post additional information on the best solutions on the company's website and other media.
Interesting? See a special page with the terms of the promotion, the stages of the competition, and more detailed information.
PS: and specially for the Habr audience, we prepared development tips from Anton Dolganin, our MVP:
What is Marketplace
Marketplace is a platform where every interested developer can lay out his decision in paid or free access and get ample opportunities for developing his business and becoming himself a professional studio or an individual developer (freelancer).
You can very easily imagine the reach of the potential audience - the 1C-Bitrix partner network has more than 6,000 partners, and the number of completed projects exceeds 50,000.
Moreover, if you release a popular solution, you can correctly think over its cost, the cost of support / implementation, you can get an impressive income item. If your solutions are convenient and truly useful, many of a large number of clients will turn to you to expand their projects.
Do not lose sight of the fact that 1C-Bitrix has been a confident leader in the web development market for a long time, and the Marketplace direction is quite new, which will allow you to take confident positions in this new field. This is a great way to distinguish yourself by working efficiently and professionally.
Below are a few tips based on my own experience.
Idea
Try to always think globally. Almost every non-standard task can be developed to a certain global level, the solution of which will be useful not only to you. Thus, you do mass development at the expense of a specific task, and therefore at the expense of a specific client.
Don't be lazy
Do not be lazy to collect some, even a very small solution in the form of a finite module. Keep on hand preparations, snippets, templates - in general, all that very quickly allows you to create an assembly.
Gain experience.
Development of your solutions should begin when the sensation of fish in the water comes in the developed environment. Also, first you need to understand how the product generally functions, what is its ideology. How long will the auto engine run, tuned by a student in an automotive technical school? Naturally, it is understood that the developer is the same fish in water on the Web as a whole.
Public interface:
If the solution will have visual interfaces, make sure that they are pleasant and understandable. If, for example, you don’t know how to conveniently design a web form, then contact a professional. Do not forget that your CSS styles can be redefined by accident, take care of prefixes. And at the same time, they should be easily redefined by forces of third-party developers (ideally, if by the forces of an ordinary client).
Administrative interface:
Never, in any case, invent visual structures not found in the standard delivery of the product. Do not forget that 1C-Bitrix produces documentation, courses in which it educates new users of the system, many of which are sometimes not even confident Internet users. And your new interfaces will simply confuse them. The same goes for the color scheme. The same goes for administrative tools in the public part.
Database architecture
If your solution requires creating your own tables, do not forget to test them on large volumes of information.
Interaction with other modules
If the solution interacts with other modules of the system, then this happens through event handlers. It is important to know which handlers are called when. If the architecture of this interaction is wrong, heavy code may happen on every hit. Correctly handle errors if one or another module is missing from the client.
Formats and site constants
Each public site has its own time formats, some constants. It is important to know them and apply them for their intended purpose, and remember that, for example, the time format on the Russian-language site is dd.mm.yyyy, and on the English-language one is already mm / dd / yyyy, and such a construction is already prohibited: date ('dmY');
Performance
Always try to optimize your work time and the number of requests. If in a cycle you decide to call a certain method, first make sure that it does not generate queries to the database, and by itself is fast enough.
From general to private
Initially, make your decision as general as possible for a wide range of clients. Do not strive to drag each “Wishlist” of each new client into a module, think globally: “But is it necessary for someone else, except this client and a couple of others?”. And if the answer is “no”, then approach from the position that the module is not yours and you cannot get into its insides, but only use events by writing your handlers. But if some events are not enough, then already contact the developer, that is, to yourself, with a request to add :) The
best enemy of the good
Do not strive to do perfect right away. Launch the first working version and modify it later. Do not forget that exactly at this moment someone else can sit and do the same thing as you. But you should not rush either.
Minimization of fatal errors
Remember that Bitrix is a commercial product, and most of the sites developed on it are somehow tied to the client’s business. And a fatal error (for example, a user data leak) can kill his entire business. The same with the security issue - no one is safe, but basic things need to be known.
Coding
style It is better to bring the code style as close as possible to the style of the product itself. This will help third-party developers better understand your solution, if necessary, and expand the popularity of your solutions.
Testing
Never be lazy to test. Download updates first in the beta, test them on your machines, then in unusual situations, and only then release them to the release. If you are not sure - let the update hang in the beta, do not rush. If the test detects an error, do not just upload the fix with the changes, but check again again. Remember that while you were experimenting with a beta, someone could download and install this beta, and, accordingly, new updates should already take into account the released update. But, for special cases, there are alpha updates available only on your key.
Fee
Everyone wants his work to pay off, but sometimes you need to buy advertising. So maybe the development, which did not take much time, do free? If they are of high quality and in demand, this will certainly give an influx of customers to you already as a developer.
It is important not to forget that any, even insignificant, cost makes you responsible for supporting this module and fixing bugs. While the error fix in free solutions you can postpone for some time.
The main thing is to find a compromise between the number of paid and free solutions - make some expensive enough for their purchases to pay for technical support and module development, and some free ones for advertising. Do not forget that the market for end users of sites has not yet fully formed, and it may seem wild to the user to pay for “a few buttons”.
Customer support
Remember some simple rules:
- the customer is always right :)
- for some (perhaps most) customers, you and your module seem to be one with the whole Bitrix company, or at least very closely connected; accordingly, your level of development and support is projected throughout the company
- if the client meticulously sends a bug report, then the error really takes place to be (but, perhaps, the error is just in the client’s head, that is, it seems to him); always have the demo version of the system on hand (meaning the default version), and the test setup of your module to simulate the situation.
That's all, we hope, tips will help you understand the main points associated with the development of marketplace solutions, and - we invite you to participate , good luck!
Details:
Any web developer on the 1C-Bitrix platform can take part in the competition, for To do this, you need to place a new solution (application, module, standard site) in our Marketplace catalog .
The collection of applications will be held throughout September, in October - the determination of the finalists. Until October, a public vote will be held on the Marketplace website . In the finals of the competition will be 20 decisions participating with the maximum number of votes.
Of the 20 finalists, the expert commission will select 5 winners - the determination will be made with the help of a special expert council, which will also include the most respected and experienced 1C-Bitrix partners. A full list of the composition of the council will be published after the completion of the application collection phase on the Marketplace website.
As a result, the authors of the five best solutions will receive HTC Desire S smartphones and certificates of honor, and we will post additional information on the best solutions on the company's website and other media.
Interesting? See a special page with the terms of the promotion, the stages of the competition, and more detailed information.
PS: and specially for the Habr audience, we prepared development tips from Anton Dolganin, our MVP:
What is Marketplace
Marketplace is a platform where every interested developer can lay out his decision in paid or free access and get ample opportunities for developing his business and becoming himself a professional studio or an individual developer (freelancer).
You can very easily imagine the reach of the potential audience - the 1C-Bitrix partner network has more than 6,000 partners, and the number of completed projects exceeds 50,000.
Moreover, if you release a popular solution, you can correctly think over its cost, the cost of support / implementation, you can get an impressive income item. If your solutions are convenient and truly useful, many of a large number of clients will turn to you to expand their projects.
Do not lose sight of the fact that 1C-Bitrix has been a confident leader in the web development market for a long time, and the Marketplace direction is quite new, which will allow you to take confident positions in this new field. This is a great way to distinguish yourself by working efficiently and professionally.
Below are a few tips based on my own experience.
Idea
Try to always think globally. Almost every non-standard task can be developed to a certain global level, the solution of which will be useful not only to you. Thus, you do mass development at the expense of a specific task, and therefore at the expense of a specific client.
Don't be lazy
Do not be lazy to collect some, even a very small solution in the form of a finite module. Keep on hand preparations, snippets, templates - in general, all that very quickly allows you to create an assembly.
Gain experience.
Development of your solutions should begin when the sensation of fish in the water comes in the developed environment. Also, first you need to understand how the product generally functions, what is its ideology. How long will the auto engine run, tuned by a student in an automotive technical school? Naturally, it is understood that the developer is the same fish in water on the Web as a whole.
Development tips
Public interface:
If the solution will have visual interfaces, make sure that they are pleasant and understandable. If, for example, you don’t know how to conveniently design a web form, then contact a professional. Do not forget that your CSS styles can be redefined by accident, take care of prefixes. And at the same time, they should be easily redefined by forces of third-party developers (ideally, if by the forces of an ordinary client).
Administrative interface:
Never, in any case, invent visual structures not found in the standard delivery of the product. Do not forget that 1C-Bitrix produces documentation, courses in which it educates new users of the system, many of which are sometimes not even confident Internet users. And your new interfaces will simply confuse them. The same goes for the color scheme. The same goes for administrative tools in the public part.
Database architecture
If your solution requires creating your own tables, do not forget to test them on large volumes of information.
Interaction with other modules
If the solution interacts with other modules of the system, then this happens through event handlers. It is important to know which handlers are called when. If the architecture of this interaction is wrong, heavy code may happen on every hit. Correctly handle errors if one or another module is missing from the client.
Formats and site constants
Each public site has its own time formats, some constants. It is important to know them and apply them for their intended purpose, and remember that, for example, the time format on the Russian-language site is dd.mm.yyyy, and on the English-language one is already mm / dd / yyyy, and such a construction is already prohibited: date ('dmY');
Performance
Always try to optimize your work time and the number of requests. If in a cycle you decide to call a certain method, first make sure that it does not generate queries to the database, and by itself is fast enough.
From general to private
Initially, make your decision as general as possible for a wide range of clients. Do not strive to drag each “Wishlist” of each new client into a module, think globally: “But is it necessary for someone else, except this client and a couple of others?”. And if the answer is “no”, then approach from the position that the module is not yours and you cannot get into its insides, but only use events by writing your handlers. But if some events are not enough, then already contact the developer, that is, to yourself, with a request to add :) The
best enemy of the good
Do not strive to do perfect right away. Launch the first working version and modify it later. Do not forget that exactly at this moment someone else can sit and do the same thing as you. But you should not rush either.
Minimization of fatal errors
Remember that Bitrix is a commercial product, and most of the sites developed on it are somehow tied to the client’s business. And a fatal error (for example, a user data leak) can kill his entire business. The same with the security issue - no one is safe, but basic things need to be known.
Coding
style It is better to bring the code style as close as possible to the style of the product itself. This will help third-party developers better understand your solution, if necessary, and expand the popularity of your solutions.
Testing
Never be lazy to test. Download updates first in the beta, test them on your machines, then in unusual situations, and only then release them to the release. If you are not sure - let the update hang in the beta, do not rush. If the test detects an error, do not just upload the fix with the changes, but check again again. Remember that while you were experimenting with a beta, someone could download and install this beta, and, accordingly, new updates should already take into account the released update. But, for special cases, there are alpha updates available only on your key.
Fee
Everyone wants his work to pay off, but sometimes you need to buy advertising. So maybe the development, which did not take much time, do free? If they are of high quality and in demand, this will certainly give an influx of customers to you already as a developer.
It is important not to forget that any, even insignificant, cost makes you responsible for supporting this module and fixing bugs. While the error fix in free solutions you can postpone for some time.
The main thing is to find a compromise between the number of paid and free solutions - make some expensive enough for their purchases to pay for technical support and module development, and some free ones for advertising. Do not forget that the market for end users of sites has not yet fully formed, and it may seem wild to the user to pay for “a few buttons”.
Customer support
Remember some simple rules:
- the customer is always right :)
- for some (perhaps most) customers, you and your module seem to be one with the whole Bitrix company, or at least very closely connected; accordingly, your level of development and support is projected throughout the company
- if the client meticulously sends a bug report, then the error really takes place to be (but, perhaps, the error is just in the client’s head, that is, it seems to him); always have the demo version of the system on hand (meaning the default version), and the test setup of your module to simulate the situation.
That's all, we hope, tips will help you understand the main points associated with the development of marketplace solutions, and - we invite you to participate , good luck!