Why Drupal? I have been working with Drupal since version quite early (version 4.5) and have seen it progress over the years. There have been points where I felt very uncertain about Drupal’s future, especially, at the great migration between version 7 and 8. Now that the dust is settling and I have observed the Promised Land and tasted of it’s fruit (been working with Drupal 8 for more than a year, actually), I thought that it’s a good place to share why Drupal remains my CMS of choice, any I love it, and why I recommend it to my clients and colleagues.
What is an “enterprise software”? A software written for use by large companies. There are specifics that the large companies have that the smaller developers do not. These are bigger budgets, better developers, more dev hours per project. In the other words, the bigger enterprise can do what smaller can’t. You can build your software in such a way, that it only becomes usable if you are ready to have larger teams working on it with bigger budgets. Then, with server costs being not so much of a limiting factor for the larger companies, enterprise software can go for larger code base or allow less performance, if that allows to address some other enterprise needs - allow better team interoperability, use more of the existing enterprise-standard frameworks, or implement functionality that their enterprise clients want often. These changes may be redundant or useless for smaller businesses, or an overkill, creating conditions for the smaller businesses to not be able to develop for that platform efficiently.
Google for 'Drupal 8 dependency'. You will find nothing relevant. Drupal 8 does not have dependencies. It's a self-contained CMS. You can even go and download Drupal 8 from the official site in a zip or tar.gz file. Right? Wrong. Drupal 8 has an undeclared dependency, Composer. And the fact that it is undeclared can cost an unsuspecting developer many a nerve. You can install and build a Drupal 8 site from an archive or git repo pull, but very soon you will discover, that there are many modules that declare external libraries as dependencies in their composer.json file.
I have watched the videos from DrupalCon Dublin 2016, so graciously uploaded by the Drupal Association. In a few of those videos, I have heard the speakers complain about two things in Drupal 8: it's complexity and it's development cost. One speaker even voiced a number of 25% of development cost increase. I have paused at that point and gave it some thought, because I felt somewhat dubious about this. Yes and no.
I have just completed my first Backbone.js app with Drupal 8. It has been a new experience for me. I needed to build a solution that related to the views filters and content listings. As you probably know, Drupal 8 content listings are powered by views now, which allows users to configure filters and add fields to the table of content. So, when different editors work with different filters and columns, they want to hide some and show only those that they need. My task was to build a solution that allowed each user with permissions to select, which filters and which table columns they want to see.
When working with Drupal 8, some coding snippets and recipes keep recurring. So, I decided to make it a searchable snippet list, that I can view and search easily, and find the code snippets that I need quickly. And here it is. Without bells and whistles, but does the trick. http://d8howto.alexrayu.com/
Now, I am not going to blog post about every new site I make (and I make lots of them), but I can't help blogging about this one, since this one was very hard and very gratifying. I have taken this task when contacted by a Stuttgart company named COBI to move their static site to Drupal 8. This was the same month when Drupal 8 just got released, so you can imagine my skepticism.