Drupal 8

Future-proof your Drupal 7 site

OSTraining posts on the modules you should use today to make upgrading to Drupal 8 easier:

Over the last few months, Dave Reid, one of the most active Drupal developers, has been giving a presentation called "Future-proof your Drupal 7 site".

He comes up with a list of modules that have been backported to Drupal 8. Using those modules means you won't have to re-train your staff for Drupal 8.

Dave also has some recommendation for modules to avoid, because they've been replaced by alternative solutions in Drupal 8. Here are 6 modules that might be worth avoiding if want an easier update to Drupal 8 in years to come ...

Future-Proof your Drupal 7 site

At the last DrupalCon Dave Reid had a session on what decisions you can make now on your current or new Drupal 7 sites to make transitioning to Drupal 8 easier:

  • What field modules can I use that work the same as Drupal 8?
  • What WYSIWYG editor should I use?
  • How can I start preparing to migrate my existing Drupal site to Drupal 8?
  • What kinds of modules can I use so I don't have to retrain my editors and administrators when we move to Drupal 8?
  • I'll also cover some basic concepts for those of you writing Drupal 7 modules that you can do right now to better prepare yourself for writing modules in Drupal 8.

Drupal 8 Has All the Hotness, but So Can Drupal 7

Kyle Hofmeyer writes on bringing Drupal 8 features to Drupal 7:

Drupal 8 is moving along at a steady pace, but not as quickly as we all had hoped. One great advantage of this is that it gives developers time to backport great core features in Drupal 8 as contrib modules in Drupal 7. My inspiration and blatented rip-off for this blog comes from the presentation fellow Lullabot, Dave Reid, gave at Drupalcon Austin on how to Future-Proof Your Drupal 7 Site. Dave’s presentation was more about what you can do to make your Drupal 7 “ready” where this article is more about showing off Drupal 8 “hotness” that we can use in production today in Drupal 7 sites.

...

My overall goal is to show you what you can have now without having to wait for Drupal 8.

Drupal 8 and the slow death of IE8

David Corbacho writes about the too slow demise of IE8:

And the community and Dries, decided almost at the same time to embrace ECMAScript 5, jQuery 2 and drop IE8 support. The change record was modified (to include IE8 as not supported). And we all rejoiced, specially front-end developers. Yay!

During the discussions in 2012-2013 we thought that IE8 usage will drop fast (we wanted to believe that). But the reality hurts, This is a chart from StatCounter (IE8 has a 4.71% usage in March 2014) ... From netmarketshare.com, the trend is even worse. IE8 has still 21.14% of the browser share on March 2014.

Drupal 8 won't be out for a while, so perhaps the problem will be less significant.

Why the big architectural changes in Drupal 8

Dries writes on why Drupal 8 is the way it is:

The reason Drupal has been successful is because we always made big, forward-looking changes. It’s a cliché, but change has always been the only constant in Drupal. The result is that Drupal has stayed relevant, unlike nearly every other Open Source CMS over the years. The biggest risk for our project is that we don't embrace change.

...

Drupal 7 is a fantastic CMS, but at the same time there are some fairly big limitations, including an incomplete Entity API, a lack of separation between content and configuration, leading to deployment challenges, a lack of separation between logic and presentation in the theme layer, and more. We created solutions for those challenges using contributed modules, but those solutions were in many cases incomplete. In Drupal 8, we decided to tackle a lot of these problems head-on, through the Configuration Management Initiative, the Twig templating layer, and a complete Entity API.

Drupal 8: Hello, Configuration Management

mtift presents an introduction to making things configurable in Drupal 8:

This post will expand on Alex's discussion and introduce the new configuration API in Drupal 8. Here we will have the modest goal of making the display of the text "Hello, World!" configurable -- more specifically, we will give site administrators the ability to make the text UPPERCASE or Title Case. I can tell you are excited.

A Drupaler in Symfony Land

There is a bit of angst in the Drupal community about the learning curve associated with Symfony. Kris does some explaining the basics:

We've had a lot of people in the community, myself included, complain about certain aspects of what's going on specifically in the routing system (amongst other areas). I can't say that I'm a fan of the entire stack (yet) but I have dissected a lot of the basic components and am coming around to Symfony's approach. What follows are some observations about this approach, and what I hope will give other developers a place to start w/o having to learn this all for themselves. This will be approached w/o much in the way of Drupal specific context. Drupal is wrapping these same concepts in a few other function calls & abstractions, and in order to keep this simple, I'll be avoiding them. The concepts all still apply.

Drupal 8: Hello OOP, Hello world!

effulgentsia explains the brave new OO world in Drupal 8:

In this post, I'd like to dive a little deeper into the first thing you'll probably notice if you watch that video and write the module: that you're now writing namespaced PHP classes instead of global functions, even for very simple stuff. If you first learned PHP within the last couple years, or have worked with any modern object-oriented PHP project, this might all be second nature to you. However, if you're like me, and only learned PHP in order to develop for Drupal 7 or earlier, it might take a bit to learn and adjust to the best practices of OOP in PHP.

A lot will change in Drupal 8. But this is a really nice and gentle introduction to Drupal 8 and best practices.

Drupal 8 Twig Templates and Translations

LeveLTen writes about their contributions to twig in Drupal 8. We can now say:

<p class="submitted">
{% trans %}
  Submitted by {{ author.username }} on {{ node.created }}
{% endtrans %}
</p>

Their contribution have made twig really usuable.