First impressions of Drupal 8

20 February 2015
0 Comentarios

With over 200 new features and enhancements, the upcoming release of the leading web content management platform in the world of open source will seduce you. So reads the first paragraph of the Drupal 8 seccion, which drupal.org is dedicating in their next delivery.

At SeeD we had been seduced by this new version and therefore took on the task of migrating our previous site from Drupal 7 to Drupal 8, taking advantage of a new and clean design. This is the first in a series of articles in which we will explain our experience in this exciting adventure: from conception to launch and maintenance of our new site in Drupal 8.

Drupal 8 is still in beta and is not recommended for non-technical users, nor to build high traffic or high availability sites. At this stage it is recommended that developers and builders of sites (site builders) test and contribute in solving "bugs" or critical errors found during testing.

 

When will Drupal 8 be ready?

This is the million dollar question, to know its status have been several efforts by Kabbalists, one that which seems close to reality is the Drupal Release Date, a site that in accordance with the new issues that are being created (active) and those that are resolved (fixed), estimates the release date. There is even a Twitter account @ isd8outyet which mentions daily if Drupal 8 has been released, that is, it say "yes" or "no", as they should be thinking, so far has only tweeted "no". What is true is that the first RC (release candidate) Drupal 8 will be released when there are zero critical issues and will be released as a stable version when there are zero major issues. What is interesting is that you can make a prediction of when Drupal 8 will be ready and win a prize ticket for the next DrupalCon in Drupal 8 Hivemind. According to the estimate given by Dries Buytaert in an informal chat and "out-of-the-record" during DrupalCon LatAm in Bogotá, he believes that by April 2015 they should be very close to the "release candidate".

One of the things that you quickly realizes when you begin to develop with this new version is that the documentation of Drupal 8 compared to Drupal 7 is scarce. Of course this will be solved as it becomes more stable, development is moving quickly and it needs to continue this pace to arrive at its mature version as soon as possible. So we have to have good skills to search Google, inspect and learn from the core code, use the trial and error method, and ask in IRC or Drupal Answers.

 

Regarding the builders of sites (site building):

Drupal 8 is amazing. In no time you can build almost the entire site, without using a contributed module. Sometimes you come across some mistakes, but it is to be expected in beta versions.

  • Building content types is more powerful, you can set view modes, form modes and many different fields such as e-mail, entity reference, link, etc.

  • Ability to perform a multi language site: you no longer need to have a dozen modules for this, it is included in the core of Drupal 8. From the first installation screen you can select your native language and from there everything will be translated, including views and image fields.

  • Editor WYSIWYG is now part of the core. An online editor was also included to edit faster, i.e. you do not have to go to a page to edit content, but you can do it directly on the display item. It’s great!

  • Views: was also included in the core and works great.

 

With respect to back-end:

  • Focusing on current standards: some components were included such as Symfony framework, and other external libraries such as Composer, PHPUnit, Guzzle, the Zend Feed component Assetic and more. This new version includes much more modern code, is object-oriented (classes, inheritance, interfaces, etc) and includes the latest standards of PHP (eg PSR-0, PSR-4, namespaces, traits). Drupal will not be on an island anymore!

  • Many components are plugins and to modify their behavior, you just need to extend the class and put it in the correct "namespace".

  • Tip: If you're going to develop a production site, you have to make sure to use beta versions and not dev versions.

  • You can not make an "upgrade" of a beta version to another. So, to update, be careful. Advice: when a beta version is released, in the description you can read about the aspects to consider when you are upgrading from beta to another.

  • The translation system is truly spectacular.

  • Web services in the core: You can publish content in JSON or XML format (it is integrated into Views) so that it can be consumed by another application, which is very useful for headless.

 

With respect to front-end:

  • The construction of a custom theme for Drupal 8 is an almost entirely different process than construction of one for Drupal 7.

  • Most notable is the change in the template engine of PHP Template Twig. The latter is much easier and more intuitive than its predecessor, and you do not have to know PHP to make a template.

  • On many occasions it was necessary to use {{dump ()}} to show all available variables in the template to choose the necessary ones.

  • Drupal 8 has added extensive support for standard accessibility technologies including WAI-ARIA and has been working to provide a more semantic HTML5.

Creating websites with Drupal 8 is possible today. Of course we have to be aware of the limitations of the modules that have not yet been migrated and of the errors that can still be found in the core. On the other hand, you feel good working with Drupal 8. They have incorporated the best practices in both the back-end and front-end and the experience of creating website by using their interface, which is really solid. And indeed it has seduced us! We look forward to tell you how the development of our first project in Drupal 8 for a client goes.