I'm so weary of people pitching the solution to WordPress and then tossing a proprietary cloud hosted thing at me. That's a complete non-starter.
All the time I hear from fellow devs "oh don't advertise you use WordPress, it's irrelevant to clients." Tell that to my bank account and all the jobs I've stolen from agencies who wanted to use their BS proprietary CMS.
I sell WordPress like this: when you want a rebuild in 10 years and I'm in Thailand smoking drugs with your money pile you just gave me, you'll be able to find someone to work on it no problem.
There's plenty to dislike about the WP codebase, but we all have to remember that WP was made in an era when coding reasonable software in PHP was nearly impossible. Nothing backwards-compatible can happen there that isn't going to destroy all the millions of existing sites. It's still pretty freaking easy to build a site with, especially when you compare it to other CMSes of that era.
Moreover, their development roadmap is actually really solid. I like where WP is going. I unfortunately would no longer recommend it for basic blogging due to its complexity but as a CMS, there's really not a lot of free software options that can function on that level without extensive database programming and security knowledge.
So the advantage of Wordpress isn't anything you could find by looking at Wordpress itself... it's the popularity and huge amount of support that brings? Makes sense.
So the "next Wordpress" won't be able to be the next Wordpress until it's popular. It'll have to be good for other reasons until then.
Yes. People who say they are creating a Wordpress replacement need to make clear what they understand Wordpress to be and what exactly they are replacing.
Well it'll definitely have to be self-hosted and open source. It's a nonstarter to have to work in a particular ecosystem off the bat for me. I don't know what setup I'll want to be running in 10 years.
This is so true. Open source and hosted commercial products fill totally different niches. Sure, there are some projects where either one would suffice, but many where that's not true.
I'm working on an open-source Wordpress replacement right now. (No link yet. I want to get a little farther before I put it out there.) The basic concept is:
1) Use Rails, to ease development of plugins and per-site functionality.
2) Don't save content or site config in the database. Save it to disk.
3) Git keeps track of your content and config, just like a regular Rails project. The user-friendly admin interface is actually just a wrapper around Git plus a text editor and some menus. Developers can work in a text editor and a terminal while the client works in the GUI.
4) Because content and config are Git-controlled text files and not database records, you have a sane workflow for developing locally then deploying.
I'd actually rather see a hardcore nice CMS in something like Laravel, which is fairly similar to Rails. I don't think Rails is a non-starter but I'd like to see something that's LAMP friendly due to the ease and availability to beginners, students, and the generally broke.
I certainly considered PHP, but PHP is a worse-is-better compromise. I want a CMS where I don't feel like I'm accepting inferior tools just to support legacy hosting stacks. We already have plenty of PHP CMSs for that purpose. I'd rather meet an unmet need.
The choice of language in particular is a place where I don't want to compromise, because it's such a fundamental component, and it sets the tone for everything else. It's not just the language itself, but the community you're importing when you choose a language. There are plenty of good programmers using PHP, but the language also attracts a high percentage of the clueless. (If you're reading this and you code PHP, chances are you're in the first camp, so this isn't a stab against you.)
Indeed. This is something I considered. But Rails support is growing more ubiquitous, particularly with the rise of VPSs. And even if a hosting provider doesn't explicitly support Rails, it's often possible to install Rails nonetheless.
The biggest missing ingredient is a one-liner installer for all the dependencies. Installing Rails, the MySQL gem, and Passenger on a fresh server is not terribly hard for an experienced Unix user, but it is quite intimidating for casual users. So one of my goals for the project is to create a "worse is better" Rails installer. I.e. a really quick-and-dirty script, bundled with the CMS, which gives you a minimal Rails/Passenger/MySQL environment. It would be optimized for issue-free installation on a variety of hosts, rather than for bleeding edge features or maximum performance.
Here's a crazy idea: You're a developer. If it's too complex for your customer, then simplify it. Fight the urge to build something new just because you can. You're really the only person that cares that you built it, everyone else just wants something that works.
I understand why you're following 37signals' simplicity model, but those markets didn't have flexible CMS' to start with like we do. The beauty of WordPress is that it's easy to hide and remove extraneous features. It has everything you need and you can just remove the stuff you don't, just like the way a sculptor chisels away the unneeded parts. It's building from a different direction.
WordPress is a tool, not an end product, and it's been around for over 10 years.
Face it, websites are a commodity these days. What new features, processes, or anything else exist that WordPress can't do with a few tweaks? Front-end editing, one-click setup, drag and drop, it's all easier to add than building from scratch.
If your goal is to create value, then think hard about what problem your customer is trying to solve. If it requires something new, then by all means build it! But I don't see this as one of those cases.
In my experience developing websites for clients, I've found the ones that ask for simplicity up-front (or ones I assume will need simplicity) end up requiring other more complex features down the line, making WordPress a great choice to start with and then expand into without much rework.
I'm using Wordpress for a project because of the wealth of existing templates and plugins. Without these Wordpress is not terribly interesting; it's not Wordpress.
Once you drop the ecosystem there are plenty of alternative to creating static or near-static sites.
edit: I should point out that more alternatives for creating Web content is, on average, a Good Thing. Presenting a tool, however good, as an alternative to Wordpress however brings a lot of assumptions that may cause people to focus on the wrong things.
There's probably a market for a form of Wordpress that could use existing themes but not plugins, and only allowed basic posts and pages, with perhaps a more robust security model. E.g. prevent commenting (in order to avoid having to accept external content) except via Disqus or something.
True. I hadn't done any PHP coding in many years, and knew essentially nothing about how WP worked, but Google + tenacity = useful results. Shortcodes, for example; super cool.
There are plenty of WTF moments in PHP and Wordpress but nothing that prevents pragmatic results.
Worth mentioning though, that level of easy extensibility, combined with Wordpress' absurd popularity, makes it very easy to get into trouble. It's the Internet Explorer of the blogging world.
If you don't like WordPress[1], and don't want your authors/editors to have to know any programming, but you do want fast cheap and easily hackable PHP for the CMS itself, consider a free open source alternative called TextPattern:
The separation of editing and design roles in the admin is worthwhile as well.
// 1. Having built and hosted multiple WP sites scaling to millions of uniques a day, and even having built and managed a WP install for the most notorious domain name in the world, I have to say I don't advise it for most cases.
To help people evaluate alternatives for creating static sites, I built this live dashboard comparing the Github activity of the leading static site generators.
The problem with this post, and other "WordPressis too complex" posts like it, is that WordPress did not intially start off this way. Wordprrss was originially a simple blog. Once Barley gets enough users, people will want it to do more and more things until it becomes yet another blog turned CMS platform.
As for me, I use Jekyll and disqus because I'm just one guy.
jinushaun: We agree. Sort of our company mantra is "we have a passion for saying no" which means, to us at least, that we think we have the ability to say no to new features that do not fit who we think our target is. Time will tell if we're able to do it.
That being said, all software and services as they age begin to suffer from scope creep and feature bloat. Then it will be time again for something new.
About a year ago I moved my blog completely off of Wordpress and onto Piecrust[0]. I realized I didn't need all the dynamic tools available in Wordpress, because blog, and Piecrust has so far worked beautifully.
Comments were replaced with Disqus. No more opening my site to any possible security holes, no more having to keep on top of plugin updates, no more crying tears of shame when I snuck a peek at said plugins' source code, I can check in my whole site into github and be done with it.
I'm in the process of doing the same for my personal site with Jekyll.[0] It's so much more convenient to be able to structure and style my website the way I want without having to mess with Wordpress's PHP-based themes. And I find writing in Markdown with optional custom HTML snippets to be much more powerful than trying to wrestle the Wordpress browser-based editor into doing what I want.
I agree that WordPress is a little convoluted for simple projects. However, you can get great starter themes that eliminate that complexity for you from the get-go. Like the _s starter theme or something like Bones.
I think WordPress is often the go-to platform because it's just what people hear about -- plus, it's free. My preferred CMS for websites is ExpressionEngine because it's flexible enough to make it what you want. There's no "loop" that you have to deal with over and over and there aren't a gajillion default things that you have to strip out at the outset of a project.
The trouble is that clients are afraid to try something that isn't what their neighbor is using. I often get, "Yah, but this is what I used in a past project." or "A buddy of mine used WordPress and he gets 10 million hits a day!" Getting them to pay $299 for a commercial license for EE seems like a really steep cost when they could just get WordPress for free and it's "good enough."
I couldn't agree more. In fact, this is why I started building a project for my girlfriend so she could create her own site. And now it's grown into something powerful that I really enjoy using too.
The first comment on the article is by Jason Schuller, who created a great little open source blogging platform called Dropplets (http://dropplets.com/).
I use it myself and it's fantastic. Simple and elegant and I feel in control of my blog now- there's no magic.
I used WordPress for a while, but switched to a host of static site generators about two years ago. One of the big reasons I switched was because WordPress was so huge, and unnecessarily so.
Their big overhaul of the wp-admin section, in 2.5 I think, de-emphasized the post writing page (something which was previously instantly accessible). That's what started pushing me away from WordPress.
Recently I've started looking for another server-side platform. I've been getting annoyed with the extra work involved with static site generators, especially for a rather trivial "look what I saw" blog. I installed Anchor [1] last night, and plan on playing with it. I'm also interested in Ghost, but it hasn't been publicly released so far as I know.
These days there's a "+ New" button at the top of every single page of a Wordpress site - both the admin section, and the public section if you're logged in - that lets you add a new post, piece of media, page, or user. Or more; I use the Comic Easel plugin to manage my webcomic, and it lets me add a new page that way.
That said if you want a CMS that only does the five things you need, you don't want WP.
That's exactly the conclusion I came to. Which is a shame, because there was a point where WordPress basically did just what I wanted to, and put the emphasis on those things. Now it's a full blown CMS, which I don't want or need.
> Some sites are blogs, others are small business web sites, others are photo galleries, others are one pagers of information, and some are pages that let you buy things. There shouldn't just be one tool to build all of these.
I find that above text a bit odd. Maybe I'm misinterpretting it, but why exactly shouldn't there be one tool to build all of those websites? It might very well be that Wordpress is not suited to build all those things, but it doesn't follow logically that there should not be a "mastertool", no matter what.
I understand the general sentiment of "horses for courses", but I also think that it's important to make sure that your tools are performing well, rather than trying to make a blanket statement about what web dev tools should and shouldn't do in general.
Incidentally I just released my me-too static generator. It's targeted for academics, with all the features an academic expects (hyphenation, LaTeX math support and so on). If anyone's interested: https://github.com/lrem/phdoc
All the time I hear from fellow devs "oh don't advertise you use WordPress, it's irrelevant to clients." Tell that to my bank account and all the jobs I've stolen from agencies who wanted to use their BS proprietary CMS.
I sell WordPress like this: when you want a rebuild in 10 years and I'm in Thailand smoking drugs with your money pile you just gave me, you'll be able to find someone to work on it no problem.
There's plenty to dislike about the WP codebase, but we all have to remember that WP was made in an era when coding reasonable software in PHP was nearly impossible. Nothing backwards-compatible can happen there that isn't going to destroy all the millions of existing sites. It's still pretty freaking easy to build a site with, especially when you compare it to other CMSes of that era.
Moreover, their development roadmap is actually really solid. I like where WP is going. I unfortunately would no longer recommend it for basic blogging due to its complexity but as a CMS, there's really not a lot of free software options that can function on that level without extensive database programming and security knowledge.