Growing up is inevitable and part of growing is learning to take on more and bigger problems.
In my DrupalCon Paris presentation I talked about what it means for Drupal to grow up — and I wanted to elaborate on that a bit more in this blog post. I hope that the analogy that I'll use in this post can provide a framework for thinking and discussion about it.
We, as a community, are growing up and there is not much you can do about it.
If you're my age (currently 30 years old), sometimes you remember how great it was when you were in your teens. Unfortunately, you have no choice to grow up: you can't roll back time nor freeze it. I think this will ring true with most of us, and frankly, the same is true for Drupal: Drupal is growing up, and we have no choice but to grow along with it. Growing up is inevitable. Life changes every day and excessive nostalgia kills happiness.
So if Drupal is growing up, where is it in its life?
For me, Drupal is a young adult in the early phases of its professional career. Drupal is fresh out of college with A-grades, did some highly-visible internships while in college, landed its first job in a high-profile company, and built up some initial work experience. He has everything it takes to become successful, but being a junior team member, hasn't yet proven himself in a big way. He has the raw talent to become a key part of the business. In fact, his first promotion is just weeks away, and it remains to be seen how he'll handle some additional responsibilities. Either he is happy with his life as it is, and takes it the easy way, or, instead, embarks on a bigger career path in a somewhat naive but admirable desire to conquer the world.
But, enough with the analogies. For Drupal, growing means we must continue to innovate at the framework layer by improving our code, our tools and our developer workflows. We have to continue to do what we have been doing the best. But, there is also a really big "and" that is key to us growing up ...
As a community, we have to embrace increasingly more end-users, content editors, designers, usability experts and organizations. It may sound obvious, but we have to learn to build software for the people that are our users, rather than mainly designing for ourselves like we've always historically been doing. We, developers, should be the primary target audience of "Drupal: the developer framework" and we should continue to invest heavily in it. But end-users, and content editors in particular, have to be the primary audience of "Drupal: the content management system". Both areas have to thrive and work together. We can either succeed at making that happen with a somewhat naive but admirable desire to conquer the world, or we can fail at making that happen and remain insignificant in the bigger picture.
There is a lot of richness in the Drupal platform that we haven't really figured out how to package in order to reach many more people. Drupal 7 will hopefully be a big help with that, but we'll need to continue that trend with Drupal 8 and beyond. Doing so may provide some initial discomfort as we break out of our traditional mindsets, but it is also tremendously exciting. It's like getting a promotion.
At the end of the day, it is all part of growing up and part of Drupal's natural evolution as a product and technology. Growing up is inevitable — you can't freeze time. Part of growing is learning to take on more and bigger problems. It is no coincidence that the biggest challenges tend to be ahead of you. This is true for your personal life as well as for the life of an Open Source project. Being a young adult is one of the most exciting times of life, and is filled with lots of changes. What's not to like?
Maybe in a few year's time, I'll write about how Drupal is getting married, and that they are talking about getting kids. ;-)