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.

Portfolio

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.

Get involved!

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! :)

Kommentare

Nice initiative

Apparently, a new article on Smashing Mag just came to the same conclusion:

How WordPress Took the CMS Crown from Drupal and Joomla

1. Focus

Unlike Joomla and Drupal, [...] WordPress was designed to solve a problem. Also, because WordPress had a clear target audience [...]

That is a very nice post!

This is an exciting initiative!

This is great to see! Once it matures I'd definitely be game to run it for my site/blog/portfolio/place where I rant about Drupal architecture in abstract and vague terms.

And to make Drupal core the WORST possible option you could download. And yes, you're right; it merely boils down to packaging. Indeed.

There's a subtlety there that I don't know how many people get, but it's very important, especially in light of later paragraphs talking about how Snowman is not competition.

You don't make distributions the thing that people want instead of core by making core less functional. You make distributions the thing people want by making the distributions more awesome. Once people are going to distributions anyway and non-devs forget that core exists, *then* we can look at pulling application-level functionality out. Otherwise we're putting the cart before the horse.

You make core the worst possible download by making all other downloads better than it.

Not to speak harshly of the hard work going on for the snowman initiative, but I GET this project much more. I found it hard to imagine myself actively contributing to Snowman, but Portfolio I can.

I just feel there must be a better way help core devs feel the "pain" of distro development without placing so much emphasis on creating an install profile that, unfortunately, is so constrained that few people will ever use.

http://groups.drupal.org/node/137704
Meh. My thoughts are all there (in way-too-verbose format), so I won't go into all the reasons, but yeah... I like this idea. Props sun.

Cheers man

This is absolutely the best idea of 2011!

Dear Daniel,

as in many personal conversations discused Drupal is very very frustrating for a "beginner/user" like me who just need a website that can be used for a small local business. There are so many existing modules on drpal.org but it's never made ​​me understand what combination reflects my use case best. I still do not understand what it is to be so complicated to build a website, with pictures, maybe slide shows, web forms and social media applications. The functions are rudimentary, in my view and at least 90% of all people and companies I know need this functionality.

The portfolio project can now mean a huge jump and I wish you much success and the breath to implement this project successfully.

Bruno