📜 ⬆️ ⬇️

Startup on Drupal and why I chose it

Starting to create a project, many are faced with the dilemma of choosing the engine. Whether it will be developed on a semi-ready system or written from scratch depends on many factors. If you are a programmer, you will most likely want to write from scratch in a familiar language. So in your opinion easier, faster and more efficient. If you are a non-technical person, or a project is just a blog, your choice can be a blog engine that can be installed and configured in a couple of hours.

Anyway, at the very beginning of the project you need to understand the pros and cons of both approaches. Today we will talk about why I decided to do Giveaways.ru on Drupal and why in six months I have never regretted it.

Platform Selection Criteria


Since I started the project alone, and I already had experience in launching several projects, I defined a number of criteria that the chosen solution should satisfy:

')
Drupal is not the only CMS with which I had to work, but the choice was on this system. It may be harder to master than others and its community is not as developed as WordPress, but Drupal’s potential exceeds the CMS I know of for projects with more complex functionality than a news portal or online store.

Quickly deploy basic functionality


I decided to launch the project in such a way that, despite the lack of a fully functional version, it was always possible to find something useful on it.

So at the very beginning, I drew and created a landing page that worked along with authorization via Instagram and collected the first interested users. A simple authorization module was written on Drupal and the first page was posted.

Then I decided to start a blog with useful articles on the subject of the service so that I could appear in the search as early as possible and start receiving the first SEO traffic. Drupal has already built the ability to blog with all the features out of the box, I just added to the Blog menu and started writing articles.

When developing from scratch, I would have to describe to the programmer how a blog should work, not to forget various trifles and still something might be missed. For example, human-readable links. From scratch it was necessary, firstly, not to forget about it, and secondly, to describe in detail how this case will work. And then I just installed the module and clicked on a couple of buttons.

Do not go into the code for every detail


At the beginning of development, ideas come and change with such speed that if only a programmer implemented them, the project would have developed many times more slowly, because I myself cannot write a single line of code. For example, it took me to add a block of text to a specific page, visible only to registered users, or to connect the Disqus service to comment on articles. 10 minutes and ready. These 10 minutes include the time to search Google for instructions on how to do this or the module that needs to be installed and configured.

Form requirements during the project without fear of change


In Drupal, thanks to the modular structure, there are practically no problems with the mutual use of ready-made modules or programmer’s developments. Often, when requirements change, it is enough to simply turn off the module or change settings somewhere. Of course, such an approach is possible when a programmer works in the ideology of Drupal, and does not write some of his own stray, working “near” with Drupal, and not inside it.

With minimal losses to change the programmer, if necessary


And I had to. The new man quickly understood what was done and continued to work quickly. From my own experience I know that on projects developed from scratch is more difficult, because some programmers do not like to comment on the code, while others do not like to understand someone else's code. In addition, Drupal, like other CMS, has generally accepted development approaches and a community ready to help.

Assign several tasks to different people and not drown in bugs


In Drupal, thanks to modularity, it is very easy to parallelize workflows so that they do not overlap. For example, while the programmer was doing the basic functionality of checking and uploading Instagram photos into contests, I set up payment acceptance and deduction rules for adding all the same contests.

Run with minimal design


At the initial stage of the project, I didn’t want to spend time on drawing all the pages, various states and elements, especially since the understanding of how the design should be came gradually. So I just found and installed a suitable template (theme) on Drupal, where most of the elements were already with some kind of basic, quite suitable for me design. This allowed not to slow down the launch of new features, waiting for the design layouts.

Conclusion


Drupal allowed us to launch a project quickly and with minimal effort and test its business model. Of course, this CMS has its drawbacks, for example, according to the programmer, the work with Cron is poorly implemented and it was necessary to use third-party. Someone swears at performance, but in the world there are a lot of high-load projects on Drupal, which means it needs to be “properly prepared” as well.

It is possible that there will be a bottleneck in my project and once it will be necessary to rewrite everything anew, but now we can say that the choice was not made in vain.

Source: https://habr.com/ru/post/290286/


All Articles