There's multi-purpose, single-purpose, and non-purpose; the latter being Drupal core.
The Drupal project struggled for years to agree on a use-case for a concrete product to build with and in the community.
Drupal can be used in many different ways. And everyone agrees that Drupal core must not prioritize one way over any other. But at the same time, we present Drupal core to newcomers and evaluators; a poor and pointless application that doesn’t do or solve anything. This time is over.
It's the first official community product based on Drupal; a concrete alternative to Drupal core. Instead of downloading a useless Drupal, you'll get and love Portfolio:
A Drupal product delivering a personal or professional website for you, me, and everyone else.
Solving the obvious.
No seriously, don't you have your own site? Don't you think it's functionally similar to your friends'? Do you really think your use-case is so fundamentally different to the one of Dries, Angie, Karoly, Nathaniel, Morten, Jacine, Earl, Jeff, Rob, Wim, Larry, or ...?
You'd call these "blogs"? The web is moving forward, mate. Whether personal or professional, each of those sites is about a personality. A human being, of which you'd certainly like to know more, and also, connect with! You're interested in their activities, accomplishments, and achievements, and the web industry commonly calls these portfolio sites.
Portfolio solves our very own use-case. No need to find or define a target audience. You are the target audience. And your best friend is in the target audience, too.
What is it?
Portfolio is a Drupal installation profile, invented and maintained by the community. It is not limited to Drupal core functionality, nor does it want or intend to be in core.
It deliberately and intentionally starts to do the opposite: moving and keeping product functionality out of core. Drupal core needs to cater to many use-cases, but cannot, must not, and isn't able to focus on certain ones - neither from a product design perspective, nor from a technical, nor from a contributor perspective.
Portfolio will use the proper tools for the job: Existing projects. Not re-inventing the wheel. Successful products need to react timely to feedback of their users. Not three years later. Contributed projects can evolve, adapt, and adopt much faster than Drupal core is able to.
Why this matters
Even "simple" portfolio sites expect functionality that is not supported by core. Functionality that can be a challenge to implement. Everyone implements it from scratch on their own currently. Or not at all, if it's too complex to figure out for a single site or person.
The product allows us to attack the challenges, come up with best practices, and to share solutions with the community. It is a channel for interested contributors and contributions.
Channeling contributions means to focus on certain functionality and projects. Indeed, it's similar to the idea of "Golden Contrib". But it's multiplied by the amount of products, use-cases and target audiences, because multiple products can co-exist!
Channeling energy and efforts means to steer contributions into a yet unknown, but also fluent, constantly changing eco-system of contributed projects that are more or lesser common. It has always been like that. But everyone had to figure it out on their own.
The Drupal project needs these channels to stay competitive. Merely consider WYSIWYG content editing, media handling, social network integration, or responsive design, to only name a few of the harder challenges involved. None of these need to be solved in core. Most of them are too use-case specific to be attacked in core in the first place. They are special fields of interest, but which don't necessarily apply to your use-case. Solution attempts already exist in contributed projects, but many of them badly need more shared interest.
Why this matters to you
It's the start of a paradigm shift. A shift that forgets about a non-purpose Drupal, and actually makes it useful for your particular requirements and your use-case.
We continue to make core a rock solid platform, but don't pretend it's a product. You can't build products out of something that pretends to be a product on its own. Products are built on a platform. The Drupal core platform only allows to deliver great products built on top of it.
We make core less useful. Because there is no sane "out of the box" experience that could be optimized within core. This means to shift the responsibility of delivering great products onto actual products. The Drupal community never wanted to leave that responsibility to arbitrary Drupal shops and uncertain products in the wild. That's why it's important that Portfolio is a product being designed and developed by Drupal community members being active in core and contrib.
The goal is to replace the download page of Drupal.
And to make Drupal core the WORST possible option you could download. And yes, you're right; it merely boils down to packaging. Indeed.
We no longer try to solve use-case specific demands in core. Before attempting to solve a complex problem in core, we need to have a properly working and adopted solution in contrib. Each time we invent something from scratch directly in core, a huge pile of critical and major issues follows. These issues have a high chance of delaying a Drupal core release. And they create more work for others to undo when it's not relevant to their use-case.
Look, perspective, dimension!
Product features being suitable for certain use-cases only should not hold off a release of the core platform. It was often argued that these features exist for testing core functionality, but that doesn't hold water. Drupal core functionality needs to have proper unit tests in the first place. All contributed projects serve as regression testing; they always did.
It makes no difference whether we find a bug or regression through a module in core or contrib - to prevent a certain issue in the future, an isolated unit test has to be created anyway. By intentionally shifting focus onto contributed projects, we don't have one module trying to use a certain functionality, we have thousands.
Portfolio is not the same nor a replacement for the Snowman/Onboard idea initiated by Jeff Eaton. Snowman attempts to build something useful out of the tools available in core only. It is constrained to functionality in Drupal core, and intends to improve or revamp it if necessary. At this point, without any viable products on drupal.org, both perspectives are required and badly needed. We can and need to do both in parallel.
Snowman's use-case and target audience is different, too. In a sense, if Snowman would already exist in its final form today, we'd use Snowman to build, promote, and drive a community around Portfolio.
That's not competition; it allows us to identify what functionality actually needs to be in core and which not.
A parallel development of Portfolio for Drupal 8 is possible, but depends on whether Drupal core re-introduces in-development updates, so users can actually install and use Portfolio for production sites. Without those, no one would even consider to install this product. You'd have to throw away your entire site with every larger patch that lands.
Portfolio happens now. It's open for everyone. You're welcome to join the discussions!
No terribly advanced coding skills are required. Especially site builders familiar with contributed projects and state of the art technologies are welcome!
We'll make fast, iterative progress and decisions.
We'll also run into many yet lesser known limitations of drupal.org's packaging processes for installation profiles (products). But the entire point of this effort is to resolve those problems. So...
Join us! :)Verfasst von sun am 1. Dezember 2011 - 4:19