Drupal 7 for Production Websites Part 1: Drupal 7 Core


This is the first post of three about when Drupal 7 will be ready to be deployed on production (live) websites. The other two parts will be posted during the next few days. See end of post for index.

A lot of the feedback I have received from readers here on Nutshell is about when Drupal 7 will be released and ready to be deployed on live production websites. This is also being lively discussed on drupal.org, as well as numerous other websites. In this series I will talk about the current state of Drupal 7, contributed modules, what you can do now and how you can help speeding things up.

This post is all about Drupal 7 Core.

Is Drupal 7 Ready for Live Production Websites?

Short answer: No!

Drupal 7 is far from ready to be deployed on live production websites. Yes, I am running it here on Nutshell and you are reading this page served by it. I explained my reasons for doing this in my first blog post Being Brave with Drupal 7 alpha 5, and have also written about it several other posts.

That should not stop you from testing it. Below I will give you information about how you can do this, starting with:

Current State of Drupal 7 Core

There are three ways you can get your hands on Drupal 7:

It depends on your experience and skills which of the above versions you should try. If you are new to Drupal or have limited coding skills, the alpha version is probably the one you should start with.

Alpha Doesn't Support Updating

The most important thing you need to understand about the alpha release is that if you start building a website with it, it is very likely that you will run into trouble when you try and update to a new alpha/beta release. Updating Drupal 7 alpha to alpha is simply not supported.

For me that means that I will have to sort out migrating all the content on Nutshell to the next version I want to update to myself. See Delaying Drupal Update and Drupal Gardens for more information about that.

Drupal 7 Beta will Support Updates

When the first Drupal 7 beta is released updating will be supported. Not only from previous Drupal 7 betas, but also from Drupal 6. Actually upgrading from Drupal 6 is the main reason why a beta haven't been released yet. The Drupal core improvements page contains more information about the beta blockers. There is only one critical issue left for the upgrade path that prevents a beta release.

In an interview with Infoworld July 28th, Dries Buytaert said "My hope is that we'll have a beta release of Drupal 7 around the beginning of August.". In other places it has been mentioned that DrupalCon Copenhagen at the end of August is the target for the beta release. So, some time in August seems to be a realistic tip. Lets hope it will be early.

Start Building Websites with Drupal 7 Beta

Yes, with the beta release of Drupal 7 you can actually start building websites since updating to future releases is supported. Just be aware that there is a slight chance something might still go wrong.

This is of course also depending on what kind of website you want to build. If you are planning a website that needs certain contributed modules, you should first make sure they are part of the #D7CX pledge. Then the module maintainers are committed to have a release version of their modules at the same time Drupal 7 is officially released.

But don't forget that Drupal, contributed modules and themes are open source and that most people are volunteering their own time for it. There are many module maintainers that simply can't commit to the #D7CX pledge simply because they don't know if they will have the time for it. Their other commitments, such as work, has to come first. Check the project pages and issue queues for more information about the projects you are interested in and you will quickly find out what to expect.

In the next part of this series I will go further into contributed modules for Drupal 7.

When you plan to deploy your new website is also something you need to consider. If you want it launched in, lets say, September or October you need to be aware about that it is very unlikely that Drupal 7 has been officially released. It is actually more likely it is still in beta.

If you plan to release your website in the beginning of 2011, then it is a good chance Drupal 7 is officially released. At least it will be almost guaranteed to have come out in a few release candidates.

What about Building in Drupal 6 and then Upgrading to Drupal 7?

That is of course another option you have. However, you need to plan this carefully. Making sure that the modules you use in Drupal 6 either are modules whose features now are in Drupal 7 core or the modules will be ported to it soon after release.

Doing it this way will also add some overhead in form of planning as well as the extra work needed to prepare and perform the upgrade. In some cases it might be worth going directly to Drupal 7 even if it, or modules, are not officially released when you launch your website.

I have another project I am working on and I will start building it using the first beta release. My reasons for doing this is that I want to take advantage of all the new features in Drupal 7. Most of the contributed modules I will need are part of the #D7CX pledge. Therefor I will be able to implement the majority of the features I plan for this website. By the time that is done I hope more modules have been ported so I can start working on new features.

This is a risk I have chosen to take because I believe it will be to my advantage. The improvements when it comes to areas such as scalability, content creation, taxonomy and SEO (thanks to RDFa in core among many things) makes it worth the risk of being an early adopter. In any case it will also be a fun project to work on.

Why is it Taking so Long?

This is a question I have been asked many times. Yes, Drupal 7 has taken a longer time than we all wanted. Looking a bit deeper into what it actually includes, makes it easier to understand why.

First of, as I mentioned above, Drupal is open source and people are volunteering their own time to it. Sure, there are many companies that are sponsoring projects to make it possible for the maintainers to commit more time. Then there are companies such as Acquia and Lullabot that have staff that are either full or part time contributing to both Drupal Core and contributed modules.

Bottom line though is that no one can complain about the delays, this is just how the open source world functions. Either you contribute because you want it, as an individual, or a company does it because they are counting on earning more money from doing that.

Big Upgrade

Then it is also important to realise just how big this new release is going to be compared to Drupal 6. In a webinar from Acquia they showed a slide listing no less than 59 modules that either have been moved to core or had a lot of its functionality integrated into it.

These modules have not just been moved from contrib to core. Most of them have been completely rewritten, got their API's cleaned up as well as many other changes to make them as integrated as possible.

A lot of work have also gone into making a much better administration backend. Including making the user interface much better, more logical and easier to work with. Completely new modules such as the Overlay have been developed to even further improve the usability.

Under the hood a lot of things has also changed. The biggest change here is that the database layer have been completely rewritten from scratch. Not only to improve it and make it more scalable, but also to more or less remove SQL from the code. This has opened up for using other databases such as Microsoft SQL and Oracle as well as NoSQL databases with Drupal. The importance of being able to use commercial databases can't be underestimated. This will open doors for Drupal that before where harder to penetrate than trying to rob Fort Knox.

With all these changes, also making it possible to upgrade from Drupal 6 must have been a bit of a nightmare for some of the developers.

By now I'm quite sure you will start to realise what an enormous project this actually is.

I am alse very pleased about that the release of WordPress 3.0 haven't affected the project. It would have been easy to feel the pressure to rush out Drupal 7 quicker and before it will be ready. That wont happen, everyone involved are working hard on making sure Drupal 7 will be as rock solid and ready before it is released.

We are not there just yet, but it is getting very close now.

What is your plans for adopting and starting to build websites with Drupal 7?

Have you already started?

Feel free to use the comments below to tell us about it, I would love to hear about it.


Posts in this series:

Add new comment