I somewhat regularly ask questions about WordPress stuff on Twitter. Usually when I don’t know how to do something or I’m seeing behavior that I didn’t expect. I did write a book about WordPress at one time, but even when I was immersed in that, I wasn’t an expert on every aspect of WordPress. Especially the deep developer-y stuff. When I ask a question, I’ll always get at least a few responses like:
Just use Jekyll / Octopress!
Just use Kirby!
Just use Drupal!
Just use ExpressionEngine!
As if up and changing which CMS I’m using would somehow solve this small issue I’m having. Sometimes it’s a friendly poke, sometimes it’s trollish, but more often than not I think they truly believe that moving CSS-Tricks off WordPress to whatever their favorite CMS is would be a smart move.
I don’t think that. I figured I’d write up my reasoning.
The move would be tremendously difficult.
CSS-Tricks is a fairly complicated site. There is no simple automated export/import procedure for moving a site like CSS-Tricks.
There is a blog with over 1,500 posts and 62,000 comments. This tends to be the thing that is easiest to move between platforms. So moving on, there are about 1,200 pages. These represent things like videos, almanac entries, and snippets. These use about 20 different unique page templates in a moderately nested structure. That’s a lot of custom content in custom structures at custom URL’s.
There are forums on the site with about 130,000 unique posts. Only recently have I gotten the forums into WordPress itself which was a huge win. I wouldn’t move unless the new CMS supported this forum structure as well. There is also a custom post type I use for The Gallery area on the site which is a totally different unique structure.
There are public user accounts on CSS-Tricks. At the most basic level they are just an identity for people so they can comment on the blog without entering their information each time. But they are also tied to the forums so you can have an identity and forum-specific functionality there. They are also tied to The Lodge, a paid-access area, so payment profiles and permissions are involved there. And then there is permissions in general. Any given user might be a basic subscriber, or a forums moderator, or forums admin, or site admin, or blog contributor, or lodge member at one of the different levels, or any combination. The new CMS would need an extremely sophisticated user management system.
Moving all the data and maintaining the structure of URL’s, as well as all the users, would be a monumental task.
There would be no gains.
So moving would be hard. But people do hard things all the time on the web. We shouldn’t be afraid of doing hard things if it’s the right thing to do. But moving CMS’s for CSS-Tricks isn’t the right thing to do because there is very little to gain.
I think the biggest perceptions of what I would gain are:
- Features
- Security
- Speed
Features is out. There is nothing I wish I could do but can’t on WordPress.
If the potential CMS change was to a static site generator, security and speed are definitely benefits of those. They are safe because there is no public database or backend code in which to hack. They are fast because it’s essentially a pre-cached site. However, I don’t have big problems with either of these things, and I require a database because of the user accounts and comments. I’ll go into more about security later.
I’m not worried so much about speed because it’s a fairly fast loading site anyway. Good servers that are overpowered if anything. Everything is cached. Assets are on a CDN. And I use Mobify Performance Suite. The caching and CDN? WordPress helps with that. I used W3 Total Cache which works with MaxCDN.
The time commitment would be huge.
I can’t even imagine. I don’t even want to think about it. Just planning out all the things that need to change and how would take weeks. I’d have to hire the majority of it out, so in addition to the time, the cost would be huge.
Again, there is no automatic export/import that is going to get anywhere close. This would be an entirely custom job.
I like almost everything about WordPress.
Possibly the most important point: I like WordPress. I like the software. I think it works great. I like the UI. I like the APIs. I think building sites with it is practical and productive.
When I have a complaint or problem, it’s usually something fairly minor and absolutely not a show-stopper. I wish that thing was better, but I move on with my life. I recently was slightly annoyed that the_excerpt()
didn’t work as I expected it to. So I filed a ticket. Chances are someone is going to look at that and either fix it or tell me why they aren’t going to. That’s satisfaction, one way or another.
WordPress is (and always has been) under strong active development.
The releases are frequent, impressive, easy to install, and nicely varied in focus including frequent security and clean-up releases. The (large) team not only care about the software, they care about the vision behind the software, they care about the company, and they have incentive both personal and business to keep it working well.
I have lots of WordPress friends and acquaintances.
I started writing out a list of people here, and it became so long it was distracting and I started feeling bad because I knew I would forget people. You know who you are and I love you all.
When I have issues, I have a great support network. Why would I leave that behind?
The WordPress community all around is excellent.
Outside of my friends and acquaintances in the WordPress community, I find I tend to generally like and get along with other WordPress-lovers. Kinda like how you might enjoy mountain biking partially because you like the activity of mountain biking but also because you generally like mountain bikers. I’ve been to a couple WordCamps and they were good fun.
I feel safe on WordPress.
That may seem surprising because of how often you hear about WordPress sites getting hacked. I have been as well, many times on various sites. But I know how to deal with that on WordPress. I’m good at dealing with it. And it hasn’t happened in quite a while because I’m also good at preventing it now. If I moved to different software, I wouldn’t be good at it until I spent years getting more comfortable with that.
I’m just one person.
99% of the hours spent working on and building CSS-Tricks was just me. It didn’t take a team. I feel like CSS-Tricks is a pretty large/complex site to be handled by one person. And it’s not even the primary focus of my time. Combined, I spend much more time on CodePen, ShopTalk, and administrative busywork. That’s a powerful and understated testament to the software right there.
Anyway.
I remember back working at Wufoo it seems like everybody and their sister had a feature request for us. “It’s easy!” they would tell us – knowing nothing about how our site was built, the history, and the challenges involved. We get some of that now at CodePen too although a bit less since it’s smaller, newer, and we can be more nimble – but we still get it.
It’s impossible to know from the outside what’s going on in the inside of other people’s websites. Best to just be helpful when you can.
I have been a long time lover of WordPress. My thought is similar to yours, I don’t see the point in using a variety of content management systems, all the big name ones can do anything the others can. If your more familiar with one over another, use the one you’re strong with. There is no sense in trying to learn how to do the same thing in 5 different platforms.
I too enjoy WordPress, I run themecomet.com and it has proven to work very well. It is sturdy and manages to hold everything together.
Agreed. It’s really like using Photoshop to mockup designs versus designing in the browser, using Sketch, InDesign or whatever tool you are the most comfortable with — so long as the end result isn’t lacking in critical elements or features, it really doesn’t matter. Just use what you know unless there is some massive compelling reason to change.
In the case of WordPress, there just isn’t. To me, it’s like the jack-of-all-trades-master-of-none CMS. It can pretty much do anything, perhaps not the best, but always well.
Yes!!! WordPress rocks. Granted, following your course on building a WordPress theme on Lynda.com was a bit above my code level but WordPress is great. I particularly like to give a plug for Genesis but everywhere I turn I find good things about WordPress. Your commentary about the community hit home particularly. I work with lots of tools and have found overall that the WordPress community to be one of the best. As a rule the folks are helpful, knowledgeable and just generally a reasonable set of people. Trolls everywhere but fewer under this bridge. And yes… it just works.
I think what you’re describing here is one of my bugbears about public forums and answers to questions – people will far too often answer the question they think you should have asked!
Excellent observation, Jonathan. Spot-on.
True enough. There are several factors to answering a question “you think they should have asked”.
First, by definition questions are based on limited information. If they had the answer, they likely would not be asking. This is key, because folks often don’t know what they don’t know. The perspective of the person posing the question is it’s a known unknown , while often the person asking is really operating in the realm of the unknown unknowns. It is somewhat related to the Dunning/Kruger effect. The progression of a developer who starts with the perspective of searching for a business, social or other objective, deals with the technical, structural and engineering issues, and then returns appreciating the question of “how does this help my overall goals”? Part of answering a question that we think someone should have asked is about moving along that progression (note: I’ve simplified here, one can divide up the maturation process how one wishes, it all amounts to the same thing, namely you start looking at it as ‘just tools’, and go around the block a few times, and they end up looking like ‘just tools’).
Second, an answer that broadens the question is useful. It can provide a basis not just for the next technical move, but forward looking context as well. Can i do X? might be ‘yes, here is how”, but one might want to include “you will run into Y, and Z so you should also have an answer for those too”.
Even in this reply, the reply hopefully broadens your view an adds value. It’s not exactly the question you asked though. :)
Thanks for taking the time to detail why WordPress works for you. I think in the end your site is a perfect fit for WordPress and by that I mean it’s exactly in line with the WordPress Paradigm which is you have posts, those posts have categories, those categories have comments etc…
The problem is the majority of people in client service aren’t building blogs for their clients. (Blogs may be part of the project but they aren’t the majority of the project) Once a project moves away from the WordPress format then WordPress becomes significantly more challenging as a pure CMS. (This is a whole other topic for debate I know. I’ve been thinking about writing my own post on this topic . )
The reason I felt inclined to post this comment is too often I see people read posts like yours and then think “well if word press can work for CSS tricks it must be the best solution for project X” which likely isn’t a site in blog format. That creates a mentality that people shouldn’t become educated about what other CMS offerings are available. And we end up with the myopic view that WordPress is the one and only one solution for everything. I’ve found that most times when someone is advocating for WordPress as a CMS they have little to no experience with other CMS solutions, which means their position is based on little else but opinion.
Now your post has the distinct difference that it is presented specifically for a problem that WordPress is uniquely positioned to solve. (The blog format). But for the readers of this site I’d encourage them to try a few CMS, and I mean give them a shot in good faith. If WordPress is the CMS for them after they’ve built a few with other tools then great. But at least their position is one based on research and fact, not assumption and opinion.
Important and precise comment. Even though you probably didn’t mean that WordPress is the ideal for everyone, it’s important to remember people to interpret the post inside its context: CSS-Tricks.
I agree with you. WordPress is not a silver bullet. It not a CMS for everything. Is inviable use it to construct huge and complex sites when you have tools to make that more simple and robust.
But I disagree when you talk about WordPress is limited to blog/post structure. You can make a sort of site types faster and with relative simplicity.
Kyrodes the point I was trying to make is that WordPress is perfectly suited to Blogs. It can and does work as a CMS, but personally I’ve found that making it work as a CMS is more trouble than it worth. After reviewing a number of CMS I found alternatives that are not only make my development faster but also end up being easier to use for my clients.
I recently replied to a post on another site that explained why. http://boagworld.com/dev/why-use-a-proprietary-licensed-content-management-system/#comment-1067373750 (Hopefully CSS tricks doesn’t mind the crosss post). I know that discussion is off topic which is why I didn’t repost it here.
Pierre,
I’ve had no issue building large, complex sites with WP. The use of custom taxonomies and the unfortunately named Custom Post Types makes it fairly easy to accommodate different content types and plugins such as Advanced Custom Fields make building content entry screens for clients a snap.
I’ve looked at other CMSes (expression engine, Joomla), but the learning curve seems steep both as a dev and for clients and I’ve not seen a reason to use one yet. Obviously, there are cases where other choices are better but it is, frankly, out of date thinking to peg WP as a blog CMS only.
I agree with pretty much everything you said, great comment.
Yet ultimately assumptions and opinion drive the evaluation of the intangibles (such as how long to learn that new tool, and whether that time is better spend doing something else, or how the objectives may change).
Ultimately these choices end with “depends what you want”. It’s often been said that quality is the result of making informed choices. Knowing what we are choosing, including the uncertainty inherent in those choices, makes the difference between a “position based on little else but opinion” and wisdom.
again great comment.
-Lee
Agree with everything rick said above, but especially the part about clients using the platform. Other systems might do this and that better than WordPress but at the end of the day, clients have to be able to easily manage their content.
I agree with everything you said. I don’t think it would be a smart move.
What I personaly dislike about wordpress is that everything is in one file. I can’t have on file for each template. Also, I can’t use any jquery plugins for my website…I am slave to the wordpress plugins…If what I want is not available, I am screwed or I have to pay 300 for that perfect plugin.
(This is my experience from 2 years ago, maybe it has changed…)
I would stay away from wordpress if you are a web developper.
Completely disagree, I have used WordPress for the past few years as a blogging tool and/or CMS.
I am a developer and the amount that can be done through a bit of PHP or Javascript is pretty much endless. It is perfect for developers!
I am not quite sure as to what is meant by 1 file, you can create as many page templates as you like, or add multiple functions which use jQuery and call them in to where you need them.
I have tried other platforms such as Concrete5 and Drupal but never stay there long, I always go back to WordPress because I know it inside out now and rarely get an issue that can’t be solved.
I’m a 15 year web developer, and I love WordPress. I’m not slave to using a plugin OR purchasing a plugin. I actually look at plugins as a great way to enhance my development and potentially give a client some extra “wiz-bang” without much effort/hassle and still maintain the integrity of the project scope. I still use any combination of the following but not limited to: HTML5 Boilerplate, Twitter Bootstrap, custom code, jQuery plugins, SASS, and more.
Like Chris stated above, I’ve yet to find anything I can’t accomplish through WordPress. Not saying everything SHOULD be done through WP, but that’s an entirely different discussion :)
I feel very strongly that your last point…
is extremely misleading.
Ok I seemed to have been uniformed / uneducated on wordpress.
What I noticed when I was trying to do a project, was that I was restricted to one file for a template. Also, I could not find a way to use a jquery plugin with my project. Any tutorial on templating and how to use jquery plugins???
Thanks.
Chris specifically states that he’s got dozens of templates on CSS-Tricks. Why would you comment saying that you’re restricted to one template file? That’s not he case at all. You can also use whatever jQuery plugins you like.
That’s wrong, see Custom Page Templates.
That’s not correct either.
You code JQuery plugins in WordPress the exact same way you code them in HTML. You just have to learn how to incorporate your HTML in WordPress. There are specific ways to do this and Chris covers it well in his Lynda.com tutorial On creating themes in WordPress. There are many tutorials on how to do this. You can not expect to know what you do not know. We must learn what we do not know. In web development everything has a learning cure, its either shallow or steep.
I just got on board with using GitHub for Version control and Beanstalk for deployment. I was frustrated because it seemed so hard to learn and I wondered why is it not easy!! But, I simply had to deal with its learning curve which is kinda steep…but the pay of is, the deeper the learning curve, the more powerful it is. And Now I see how awesome Version control and Beanstalk is as I’m saving a ton of time and no more critical mistakes. Same it will be for those who take the time to learn the ways of the WordPress. The force is strong in that one.
And it was the wonderful WordPress community, people like Chris who kept reminding me how cool that stuff was, and now im a happy convert. And all it took was me dedicating one weekend to learning it or dye trying, and I learned it. Next I will tackle SASS and SCSS, after a reasonable recovery period :-)
Blessings
Both points are incorrect and, frankly, ignorant about WP. You can use jquery easily and you can create multiple page, post etc templates. I dont care whether or not you use WP but don’t spread inaccurate information.
Great article. WordPress is great!
I totally agree with your opinion.
You started to use and love WordPress some time ago – now you still use it and if there’s no reason to stop using it (big security problems, no further development…) no one would just take a week/month/year/whatever off to migrate everything – no one has that time, really.
For me, I never used WordPress. I downloaded it once and then realized it’s not my way of doing things – I don’t even know WordPress’ API.
So I even started to create my own CMS until Kirby came across my way – it’s absolutely great!
That’s why I use Kirby: I love it, I know it well, I like the code base and the API, I (you get it…)
Do you realize that the first paragraph of my comment speaks of you, and the rest of me? Yep, that’s why we all use what we personally like. ;)
It’s just important for everyone to stay open and don’t lock yourself to a specific CMS. But after you found one that’s great for you, use it until you find something with huge benefits which are worth it to you to switch! But no one has to justify that against other people, it’s the personal feeling.
Nice to see large sites such as yours using (and defending the use) of WordPress. I have to agree with you on just about everything here. I feel as though I’ve tried everything under the sun but seem to gravitate back to WordPress for my CMS/larger site needs.
Entirely fair point! I find it hard to believe that people are seriously suggesting that the solution to encountering a technical requirement that your CMS doesn’t fulfill out-of-the-box is to just migrate to another one that does, as if that isn’t a job that is almost certainly far larger than just enabling the functionality with your existing system, and as if that other CMS couldn’t possibly fail to meet a single one of your needs.
It reminds me of when you complain about Windows and people say “just use a Mac”, as if people don’t ever have problems using Macs. It’s such a glib and unhelpful response.
You wouldn’t migrate your website, but would you start a site from scratch with a different CMS ? Maybe just because you want to learn something new…
And if yes, which one ?
Clearly you haven’t used… [ducks]
JUST USE CONCRETE5…
well that’s what I keep telling people.
It’s a great CMS for both developers and editors. It’s so quick for carve up a HTML/CSS template into a very flexible editable site. I’ve stopped using WordPress for a lot of small blogs. WordPress is still a great platform for large blogs but when it comes to flexibility I feel WordPress really lacks the features you get in Concrete5. The more I’ve worked with it the more I’ve dared use it on larger websites. I totally agree though; moving a site over to a new CMS is a ball-ache, and isn’t usually worth the small gains for the amount of time and effort it takes. If you’ve not tried Concrete5 before it’s worth a go. I’ve worked with Expression Engine, ModX, WordPress and a few others and nothing has come close in terms of ease of use for both me and clients.
“JUST USE CONCRETE5…”
you don’t read anything?
I read the Article. I was just giving my point of view about another CMS that has brought me away from WordPress.
Surely underneath a post about how annoying it is when people suggest using a different CMS instead of offering help with the actual problem is the wrong place to suggest a different CMS, though….
I wasn’t suggesting that anyone uses it, I was just sharing my experience with another CMS and WordPress. I’m deeply sorry for how offensive my comment must be for you. I won’t bother commenting in the future.
Pardon me Andy, no offence intended, I wasn’t having a go or anything – my comment was meant more as a wry observation than anything else :-)
I’ve used CMS like Drupal, Joomla! & what not, but finally rested in peace on WordPress. My reason is of course the continuous development & community. Statistically speaking, nothing can go wrong with this much vibrant community. Enough said :)
Hi, I have coded some websites on WordPress and I totally agree with your points, it’s a very valuable CMS, but I think that the decision it always depends on the content and complexity of the site you are doing, I saw a bunch of sites done on WordPress that would be solved with a simple back-end admin and a couple of forms, for example, doing with Laravel or any other back-end framework solution (of course, if take the time to learn it).
Almost for me, at the end, I finished spending more time hacking wordpress through the funtions.php, modifying the admin panel and making complex manuals to teach the final client how to upload his/her content than making an easy admin focused on what he/she really need.
So, like I say, WordPress it’s a very nice CMS but I think that it’s not a good idea to sell a tank to each one who ask for a vehicle.
**Sorry for my english :)
My problem with WordPress is that themes are a spaghetti mess of PHP and HTML. Newer CMSs are using really clean templating systems where someone without knowledge of PHP can make something very easily. That’s why I’m really excited about Jared Novak’s Timber plugin. With it installed you can write your themes using Twig templating; Twig templates are pretty much static HTML with variable data incased in {{ parenthesis }}. It also works with Advanced Custom Fields so you can turn WP into a real powerhouse. It’s how I imagined how WP worked before I started learning it.
That’s first answer when someone ask any question from the public!!!
Funny, every time I say I’m using EE / Jekyll, someone says “Just use WordPress!” And I have to explain why I avoid it. Different strokes, I guess.
I’d say not so much “different strokes” as the exact issue that Chris is bringing up. “How do I do X in Y” should rarely be answered with “just use Z”, no matter what the subject at hand. Personally I use WordPress at work, Laravel (not a CMS at all, I know) with some projects at home, mynt in some other projects and Assemble in some others.
Each tool has its’ place, and unless it’s in the concept stage, it’s rude to go “just use Z”. Sure, if you’ve through questions figured out that the person who’s doing the asking is in a position to change language/CMS/browser/framework/etc, then perhaps “just use Z” might be appropriate, but unless you know why they’re not using Z, you shouldn’t be pushing it. =)
Yeeaahh WordPress rocks, both as a blogging platform and as a pure CMS! It’s so flexible and user-friendly that our clients love it too, especially when we set up custom entry screens for them using ACF :)
Lately I’ve seen a real backlash against using WordPress, with everything from derivative projects (Ghost, anyone?) to complaints that WordPress has become to complicated (really? have people tried Drupal?) to calls that WordPress needs X or Y, like a “real” templating language.
All of this miss the point: if WordPress, as it is now, works for you, that’s 100% awesome. If it doesn’t, there are plenty of alternatives out there. But through it all, WordPress currently powers 20% of the Internet, for the very good reasons that you’ve pointed out here.
Personally, I love WordPress (I’m a core contributor and am writing a book on responsive WordPress theming). I’ve tried a bunch of other platforms, and they just don’t work for me. But I wouldn’t go around to people having Drupal problems and tell them they should be using WordPress (unless I know them really well, and they know I’d be kidding).
I’m glad that you love WordPress, and I’m 100% in agreement about the community. There’s never been a problem that I’ve had or an issue I’ve found that a ping out to the community couldn’t at least get me started down the path to fixing it. And I’ve met some good friends along the way.
And at some point, I’d really like to write the blog post, “20% of the Internet Isn’t an Accident”.
” (really? have people tried Drupal?) “ The funniest thing I have read all day. Try updating a Drupal site first and then talk to me about “complicated”…
I prefer using WordPress for my clients’ sites. They usually have used WordPress before, so it’s a great saving of time in training for them.
Migrating a large site with lots of users and custom code is indeed a big job. I’ve done it. Writing lots of perl scripts to massage the data to make it fit into the other CMS’ database, rewriting existing custom scripts, and redoing the entire php/html/css template. You really need to have a very compelling reason.
And you left out one argument against moving: you already know WordPress so well. Learning another CMS would take yet more precious time.
Anytime I hear the words, “Why don’t you just…” it’s a struggle to listen to the rest.
I think you should use what works for you, in your specific situation or circumstance. There will always be some smart-ass answer to everything.
This post feels like a justification and I don’t think you need to justify yourself at all.
Good article but I wanted to pick up on this point:-
People like to stay in their comfort zone, but in order to progress (not just in terms of personal development but the state of the web as a whole) sometimes it’s necessary for developers to push themselves a little and try new things. I’m not being critical of WordPress which is great for websites such as this one and the obvious choice for the reasons you outlined in the above article, but I can’t help but notice its become the ubiquitous choice for web design in general now.
Try searching for things along the lines of web development and the results are usually “Making a contact form for WordPress” , “Image gallery for WordPress” (poor examples but you get the point).
Personally I am looking forward to giving Ghost a try for my personal blog, simply because I think WordPress is getting a little stale and I want to try something new.
Doh, just realised I have taken your point totally out of context. Oh well, still think it’s a valid point though! :)
Great article, i really enjoyed it. It reminds me of iphone questions, you’ll always get a few advises to move over to android :) and i love the end quotes: “It’s impossible to know from the outside what’s going on in the inside of other people’s websites. Best to just be helpful when you can.”
Pierre,
some of the comments, including the reply I just left to another of your comments, come about because these kind of posts inevitably seem to attract standard, rote criticism (“WP is fine for blogs, but not real sites” etc) that’s simply no longer accurate.
I’ve absolutely no issue with anyone preferring other CMSes. It’s good to know and use other technologies. Further, WP isn’t above criticism but I really want those criticism to be accurate and up to date and not a rehash of things that might have been true in 2008 but simply aren’t in 2013.
As I come back to the article I can’t help but comment on some of the comments being added. It seems there’s a of people stating frustration at having other folks suggest or recommend another technology.
I don’t really understand that thinking. It’s an opportunity to engage someone who think differently than you and start a discourse about different technology. Our industry has become great at sharing code snippets and teach each other how to do things with code, but we haven’t extended that thinking to discussions about tech as a whole.
In short we suffer from technology tribalism. Whether it’s apple/android, WordPress/Other etc… Most people’s reactions are to withdraw and entrench their decisions. But sometimes engaging people in respectful mature discussions means we grow. It might mean we’re forced to reflect on why we make certain decisions or it might mean discovering something new. Sometimes our opinions might change and sometimes they won’t. Imagine if we extended that tribalism point of view to code, a site like CSS tricks wouldn’t even be possible.
In short whatever camp you’re in WordPress/non-wrodpress, apple/android etc… It’s time we collectively stop feeling threatened every time someone expresses an opposite opinion and instead just have honest conversations. We don’t have to agree but consensus isn’t the point. By being curious and open minded we call grow.
(Note: I may have decided to move away from WordPress but if someone else think it’s fantastic then great! I posted a comment above but the point I was trying to make there was that we should become educated about multiple platforms. Which I think dovetails perfectly into this comment, that is being open minded and try new things.)
I totally agree that we should always be open to new and alternative technology, since that is how new, better ideas get to develop and become the new norm. But I also totally get where Chris Coyier is coming from; it isn’t really helpful to tell someone who is having a specific, surmountable problem with a particular CMS (or any other kind of technology) that they should sidestep the problem with a far more labour-intensive and disruptive migration to an alternative technology, and doing so is only liable to cause irritation. Of course there should always be room for discussion about whether you are using the best tech for the job in hand, but that’s a separate matter from when you are just trying to work with what you currently have, for better or worse.
Absolutely Ben, I agree with yourself and also with Chris’ post. He has a very good reason to make the decisions he does. The feedback I left was specifically for the comments being added.
Hi Pierre,
Yes, you’re right this post is about WordPress and yes, you’re right this post says that WordPress is a great CMS. What nobody says is that WordPress is the only CMS or that you should not try any other, however this post also says that you(we) should be polite and answer the question. If i want to know something specifically about WordPress it wont help me if you are telling me to move on to another CMS.
Don’t get me wrong, you make great points, they are just not on the topic.
Kind regards Theo
Yeah, trying being a Windows/ASP.Net web dev on blogs like this one – most of you folks seem to have no idea we exist, so it can be difficult to feel welcomed in a Mac-centric community.
I recently stumbled onto an article about using WordPress on Windows Azure, and since I’d been thinking about adding a blog to my site, decided to give it a try. Not because I couldn’t write my own blog system, but because I wanted visibility into what so many of the rest of you are doing. I wish people would pull off their blinders on occasion as there are usually multiple good ways of doing something, as opposed to one “right” way.
Theo I appreciate your feedback but I didn’t advise anyone to use a different cms, my original response was pointing out that this article has a very specific use case which is a blog with immense traffic. Most people visiting this site aren’t running a blog with thousands of impressions. Nowhere did I try to persuade or suggest Chris shouldn’t use WordPress, in fact I think in this case it’s a perfect choice. My second post was specifically about the comments being written and not on the article itself. I didn’t see a question to be answered as there really was none in the article.
Zymara I feel your pain my current job is a front end dev in a sharepoint shop. I’m the past I’ve also worked in house at a lotus notes/websphere business. So I can empathize with your position.
1 out of 6 webmasters cannot be wrong ;)
I´ve tried some others but for now I´m just anxious to test Ghost from John Nolan when avaliable.
Me too.. but something on their website concerned me a little
Anybody has any Experience with Typo3?
Hey,
do you need any help? Normally you will get answers at IRC or in our mailinglist / forum. TYPO3 is mainly developed in germany, but we are right now trying to extend and show more people how great the system is.
I would love to see an article here why wordpress is perfect for smaller websites and TYPO3 is the future for bigger ones =).
Bastian
Imho Typo3 is a very complete CMS but it is an overkill for 99.8% of websites. Clients/users don’t like it and don’t really use it in our experience, and the additional Typoscript layer complicates development. There’s nothing Typo3 offers that WordPress can’t do nowadays – including complicated access rights management or large multilingual sites :) Development, maintenance and content management cost are generally higher with Typo3.
Right, Typo3 is an Enterprise level CMS could be overkill for small websites depending on how you see it. The Web Agency I’m doing my internship at uses exclusively Typo3. I use WordPress on a personal level for small sites and I alternate between the two when working on personal projects. Having to learn TypoScript is a turn off for most developers and there is a higher learning curve based on all the possible configurations you could do with Typo3 out of the box. So in the case a site grows like CSS-Tricks you don’t even consider moving to another CMS.
Peter you say: “Clients/Users hate it”. Here in Germany Client/Users love Typo3 and you might be right that the costs are higher with Typo3 and that’s the reason this Agency normally doesn’t take on small clients.
Fair enough Kris, I guess the user/editor experience with Typo3 may differ depending on the setup and the support by the agency. We are migrating several medium to large clients from Typo3 to WordPress because their editors hardly updated the sites anymore, they found it way too tedious. They were still running Typo3 4.x though. On a new and customized T3 6.x installation this may be very different.
But my main point is that WordPress nowadaways is “good enough” even for the requirements of large and complex sites. There’s no point in going through the extra hassles that Typo3 imposes. There may be exceptions at the top end, but those are rare. Typo3 is mainly good for agencies, as they can sell more hours and costly upgrades…
Hey Peter,
in my opinion this is not true for the current version of TYPO3, because we’ve spend a lot of time into usability. TYPOScript is still existing but it is an important layer to configure TYPO3s behavior. There are some projects out there to move that layer into Fluid. For example: http://vimeo.com/74074511
If we skip the multi media part TYPO3 is as fast for users as WordPress, but that is based on the experience level of the users. Managing TYPO3 is also as easy as WordPress. Right now I have more problems with managing WordPress and stay up-to-date without getting blocks and that is also because I am using TYPO3 a lot more, than WordPress.
The development costs for smaller websites are too high with TYPO3 but as soon as you reach as specific level of needs you are a lot more flexible with TYPO3 and a lot faster in development =).
Why are so many people so afraid of using TYPO3?
A nice day together,
Bastian
PS: Peter, TYPO3 6.2 will get an auto updater ;)
Bastian, we could debate this endlessly ;) I really think also complex sites can be developed much faster in WordPress and that it offers more flexibility… The reason we won’t agree is that you know T3 much better and I know WordPress much better, so both views are true subjectively :)
To answer your question, I think people are afraid of Typo3 because of a) high learning curve, b) lack of (english) documentation and c) small dev community, mostly German-speaking. Typo3 definitely has its use but I don’t think it will grow a lot beyond DE/AT/CH due to these factors.
A great post for myself. Since, I am really confused in choosing a CMS for my career.
WordPress comes out ease during development than others…
Would be really interested to see an article that expands your techniques for dealing with it and preventing it.
You make some great points Pierre agree with you.
HI really nice post! WordPress is the all-in-one solution CMS for lots of web designers..And I’m one of them :)
I’ve been using wordpress for years, but it wasn’t until I started following css-tricks that I understood the full power of it. Now, when I build a site, I install a fresh copy of wordpress, and delete all the default themes and default plugins (except for akismet).
The 3 minutes it takes to install wordpress gives me an intricate user system that can handle passwords, user levels, etc. easily and securely . . . all for 3 minutes worth of effort. Then I install the “Types” plugin to allow me to create custom post types and fields super fast.
So far that puts me less than 30 minutes into development and I’ve already got a custom database, a user management system that handles passwords, resetting them, “forgetting” them, etc., and I’ve already got a pretty robust back end management system for my client and the ability to have visitors post and reply to comments, pages and post if I want to. Not bad for 30 minutes worth of work.
The rest of the time is spent building a theme for the site. Super fast, and super easy development. I’m a php guy, so creating a custom template is pretty painless. It’s very easy to tap into the wordpress API.
It would be a hard sell to convince me to switch. Like Chris, I see no gain
Too often (in the last 2 years I think) I came to your website from a Google search. I had learnt from you and your articles. I felt I have to say at least thank you. Keep up the good work.
I love WordPress, but I know things are changing in the browser and on the web. Is WP going to evolve past PHP? — ala ghost.org ?
I started using WordPress due to a client, I told him I knew my way around WordPress while I never made any theme. Granted, I was already into Joomla and PhpBB3 theme creation, so I was pretty sure it wouldn’t be hard to get something simple done.
I wasn’t disappointed, I didn’t just get it done, I got it done much more quicker than I would have if I used Joomla.
Since then, I’ve never looked back, I’ve been asked to do shops, systems where you add tags to images, a system based on child pages where you’d only see sister pages linked, absolutely everything my clients have come with, thumbnails in a way, thumbnails in another way, I’ve been able to do it, and in the most complex cases, I’ve just found a plugin that did it all for me.
I’m pretty sure there’s some CMS out there that could have done some of these features more efficiently, but all of them? Not without massive development, I don’t think so.
You make excellent points. In the end, it comes down to the best solution for a given situation. I’ve had the opportunity to work on a number of projects on varying CMS platforms, seeing the good, bad, and the ugly.
Probably the best response is asking people how much time/money they would expect to spend. That usually settles things right there…
Use what works for you. I personally like static site generators for basic content. For plugin like features I prefer javascript/and a backend service. If one thing fails the rest is still there for te user.
I like static site generators as well, but I think that the thing that’s an issue for them in basic, for-a-client, simple content context is that it has a bit of a learning curve. Most clients I’ve seen would maybe be prepared to learn Markdown (though they’d really prefer a toolbar and/or keyboard shortcuts to go with it), but “just go
pip install mynt
, remember to be in the right environment, extend the templatedefault.html
, and then once you’re ready to deploy you gomynt gen ...
and then either use FTP or SSH to deploy it” is a touch more involved than I’d imagine most would want to be =) (disclaimer: I like to start my sites with a nice yeoman-stack, and have used both assemble and mynt for that, as well as basic HTML)That is, for a static site generator to be useful for the end-client there needs to be an easily-installable interface where the client can manage their content without being bogged down by how to make it go live. I think that’s where WordPress really shines, honestly. It Just Works(tm).
WordPress is more than blogging platform, it’s better than any other CMS system. I love it.
Great post, I normally don’t comment but this one hit close to home. I have used almost all CMS systems and WordPress has my heart. I strive to provide web solutions that my clients can easily manage with minimal training. The community support for WordPress is so strong a client can google a question and easily find a solid answer. The best thing about using WP for client projects is that they are always happy with its ease of use and then turn into a cheerleader for my company telling everyone how great a job we did.
Thanks again for this post, keep up the great work!
Chris, this is a great post on why you use and will continue to use WordPress. It makes sense for you. You’re not suffering any pain or significant barriers in what you want to accomplish with your CMS. There is no reason to use another platform. Most of the positive attributes you love about WordPress exist in other platforms save for the ubiquity.
However, there are a plethora of websites that will push WordPress beyond it’s simple and elegant limits that require larger or custom platforms to accomplish. Where the challenge lies is that many startups, small businesses and agencies pick WordPress for all the attributes you love but fail to understand it’s limits. I know many developers who work with both WordPress and other platforms and they know when to choose WP and when not.
There are a great many bloggers who, rightly love, and build a business around their activities with WordPress who share their enthusiasm about it with the world. They also make recommendations to their readers with earnest and honest conviction, however, not realizing the the complexity that can arise that can be better dealt with in other platforms like Drupal or Expression Engine, Agility, MODX, DNN, Kentico or Typo3. Bloggers who love a single platform as a DIY user are not necessarily experts in content management as a broad and diverse industry.
People seeking a CMS should understand what their content needs are and will be in the future (as best might be predicted). There are people who do hold expertise from many content strategists, web developers to technology consultancies and analysts. In a landscape of 1600+ CMSs in both open and proprietary forms on various code platforms there is a case for many companies to choose other systems.
Anyhow, I’ve gone on long enough. You found your system, many commenters above have too. It’s a great place to be. Don’t change until the pain is greater than the reward or it limits your potential.
If it ain’t broke, don’t fix it.
I LOVE WordPress. I’m very comfortable with it myself, and 99% of the time I can do everything I need to without a php developer, which is great for me. But, like you said, if you need to do something, you can extend WordPress however you want with PHP. There’s a reason why WordPress is the “default” for my clients.
Nice article. I love WordPress and can’t imagine a web developers life like mine without it.
Awesome article. WordPress rocks!
I have reached the conclusion that there is nothing you can’t do with WordPress. Sometimes it takes a bit of investigation or a little bit of extra code but where there’s a will there’s a way!
I agree, I’ve tried out a lot of different CMS’s this year, done a lot of development in expression engine and drupal. Both are ok CMS’s but aren’t as easy to use as WordPress. I can’t think of a site that I would use these CMS’s for over WordPress. The problem WordPress has is that people still think it’s just for blogs and therefore can’t build a complex site like CSS-tricks. Glad I can use your site as an example to prove them wrong.
There’s something I’d like to ask you WordPress developers. What is it about WordPress that makes you use it as a go-to CMS? For a blog-centric site such as CSS-Tricks it’s probably great, but for other kinds of projects?
Whenever I ask this question, most of the answers I’m presented go along the lines of “Because there’s a huge community and gazillions of plugins!”, or “Because it’s so flexible!”, or simply “Because I’m used to it!”.
Right. No offense intended here, but none of these arguments make any sense. Most of the plugins are pure crap, it’s no more flexible or extendable than any other CMS, and while it’s reasonable to fall back to whatever you’re used to do, refusing to really use anything else than what you’re used to will never change a potentially bad habit.
Another common argument is “Since everybody else use it it has to be good!”. Yeah. Look, don’t make me trigger Godwin’s law. Just because a large number of people believe something doesn’t necessarily make it true.
So, again, for what reasons do you use WordPress? I’m by no means an expert at WordPress and I’m fairly interested in hearing better arguments for it that what I have this far.
Making a custom theme/template is messy business in comparison to many other CMS, the backend is definitely not the most intuitive out there, the code output is messy and bloated as hell unless you do some major modifications. Heck, even the best of plugins to fairly simple stuff that you could do in more simple ways in default setups of other CMS. It’s obviously not the fastest CMS out there (most comparisons I’ve seen suggest the direct opposite) and I’d be surprised if it’s secure.
Nils, I agree with much of your argument, however, I know you’re going to get slammed for attacking the quality of many plugins.
Your point on popularity of the platform does have some merit, it doesn’t make the platform better. McDonalds is everywhere but that doesn’t make it a good restaurant, it enables people to access a consistent meal anywhere. On the positive site of ubiquity, this does have a real benefit to companies invested in a site built on WordPress, in that there are, theoretically, more people who can be there to help them if their original developer is no longer available.
I know, for sure, many agencies use WP because it’s easier to sell projects when your clients come in asking for it. These agencies then invest in building expertise and learning how to do it better and better. Changing becomes a cost, a risk and many agencies can’t even cope. This is a business decision. This is valid. It may be limiting, but it is a real factor in changing and the platforms people use.
With regard to theme/design in WP, it is the reason as a front-end developer I sought out other CMSs. I didn’t want to wade through spaghetti sonnets. Rigid structure (back in the day) and interleaved PHP and plugins that output some horrendously bad code. As a standards-based guy, if you wanted standards-based output, you’d end up customizing or hacking the plugins anyway, leaving you no further ahead than you’d be if you used another system.
With regard to the admin interface, it’s attractive and elegant on install. It’s relatively easy to use, however this ease diminishes rapidly as you start installing plugins that have their own unique and sometimes downright non-sensical admin interfaces that turn your WP Admin into MySpace or Geocities. In my own experience with clients and anecdotes from developers on many other CMS platforms, both open and proprietary and many of these interfaces are more intuitive, learnable and functional for day to day work of people in businesses. Many CMSs provide toolkits for 3rd party developers to integrate and leverage the existing UI paradigms to integrate rather than impose into the UI.
I am by no means, anti WordPress and I work for a competing CMS, I am happy to see amongst this discussion, questions raised about some of the justifications.
Chris,
Your blog post highlights what is essentially the dunning/kruger effect. We don’t know that we don’t have the necessary knowledge/expertise to make an informed evaluation, and as result we devalue those that do have that knowledge/expertise. As we develop that knowledge/expertise we are better able to see our own former incompetence.
You have laid out a good nuts and bolts example, and point out that once one considers these factors the apparent ‘mistake’ appears more ‘correct’. As you point out, one may have a staff that are experts in a particular tool which would shift the decision towards a direction. Branding that dictates a design. Or business considerations, or messaging considerations, etc. Even tail risks (eg. is the CMS financial position stable? or are they going to get bought out and you will be forced to migrate later?) are tremendously imporant if one has a long time horizon.
It’s difficult to evaluate it from a distance, but Conway’s law let’s us make some good guesses on what the organisation looks like for any given system. And that let’s folks make some guesses on the various external influences. The most important influences often have little to do with technical issues. (as an example, the color and font choice on the website I reference below is from the business card, and it would break the branding to do otherwise).
You are also right to point out time allocation is ultimately a less than zero sum game. Some websites can become an anchor and drag resources away, essentially mis-allocated time, money, and even morale (hard to beat devoting people to the ‘death watch’ maintenance/rewrite where morale goes to perish in a cruel end).
One thing I don’t see on webpages is the design rationale. I often see the ‘about the website page’ but it’s usually who developed it, perhaps the tools used, and contact. Not what the goals were, not the intangible stuff, but basically a repeat of stuff you can learn from ‘view source’. A version of your post would fit nicely on such a page. Not a good choice for every website, but in some cases it can be useful to have a ‘what this webpage is trying to do’ (sort of page for the description metatag in a way) and explain the types of invisible or subjective decisions/tradeoffs (as you have done with this post).
A few weeks ago I sent you a single page site link which has such an ‘website info page’.
http://www.handysandyservices.ca/?page=411
It discusses some of the same topics you cover, the design decisions and why they were chosen, for that website. And It’s off the main navigation and out of the way. One can include this sort of page even on a single page website.
Including a design discussion (even as crude as the one I did) can get folks to think about why they are doing what they are doing. Particularly how it fits with the business or goal, and how they make trade offs on technical issues, who their audience is, and time and resource allocation. Not all sites need to be able to scale, and they don’t all need blogs, etc. (yours definitely does). In fact some small businesses end up diverted from making money becauseof their effort networking, blogging etc. This is particularly a danger for non-scalable businesses (eg. a single location restaurant) or a business like handy sandy services.
The tools will continue to evolve, and fall into and out of favor subject to the whims of fashion. The re-evaluation of choices also consumes resources that in many instances is not justifiable. Every developer who has created more than one system, has had to deal with legacy systems (as you point out, your own expertise carries forward).
One major limit of the current tool universe is how they handle legacy devices. Calls to retire IE6/7 (which I would love to see go), and your post touch on why these sorts of things become legacy problems. They are just on the other end of the lifecycle curve.
The point is the legacy systems of tomorrow are based on the external factors of today. The great tools available (which are also horrible at the same time) make system development look easier than it was for me 30 years ago, but the real tough choices, as outlined in your post, are just as tough as ever.
In any event, excellent post. Helping developers give more thought to external factors helps raise the bar quite a bit. Developers that can make trade offs on such things like time, resources, risk, etc. are a great asset to their organisation and clients.
The main points of my reply:
– external factors are worth defining to aid in tool selection , design etc. One need not be roadkill from Conway’s law.
– the system designs of today will be legacy systems tomorrow.
– as a technical note:’websie info’ pages on some websites, particularly tech ones could be useful as it forces us articulate on the tradeoffs – allowing others to say “that’s why he/she did that!”
And i must say, your post is brilliant, Chris. I hope others see past the to WP or not to WP, because that’s not really the question. The question is how do we tame these intangible and subjective external factors and bring them into the design process better. I think if we are able to do that better, we will make better development choices. It’s fun to focus on feature x, and speed of y, or semantically correct, etc. but the intangible and subjective factors can be of greater importance. There still seems be a wall between project management and development.
regards,
Lee
For me it doesn’t matter that much wich CMS to use. But I also make Sites for Clients and many of them know WordPress allready. Thatswhy it’s a decision to choose WP.
So many of them come and say, may we could have that in a WordPress CMS – so we are here to serve. Of course you can. But dont forget to Update it!
No one can deny the sheer brute power behind WordPress. It does however seem bulky at times for certain jobs. So with this in mind I tend to use WordPress for frequently updated websites and Jekyll for those couple of pages or less sites that just sit there with a change once in a blue moon.
Hey Chris – We loved your article and wanted to let you know it was featured in our Monthly Resource Roundup http://www.wiredtree.com/blog/the-monthly-round-up-octobers-best-web-designdevelopment-cms-and-security-content/.
“Like” vs. “Love” – Mom says, “I love you unconditionally, forever – but I don’t LIKE you very much right this minute, and if you ever shave the dog and talk back to me like that again, you can spend a week in your room!”
“I like my Facebook friends a lot – so long as they stay on their side of my PC screen. Really. No, you can’t come over to my house for dinner. No, I won’t adopt you, marry you, or have your babies – I LIKE you – I don’t LOVE you!!”
Sorry – that’d make a great blog post all by itself, huh? (You could’ve just linked to the entries for “like” and “love” at Dictionary.com, by the way!)
I was just telling Abhi I laughed out loud at this: “You don’t need to be a coder or knowledgeable person to start using WordPress. Installing WordPress through cPanel is the task that you can complete within 2 minutes. Yes, that’s right. Exactly within 2 minutes.” You and he and I live in a rarified world where many people are as comfortable with technology as with holding a coffee cup. But for most who don’t code, and all who aren’t “knowledgeable,” just finding cPanel takes more than two minutes. Trust me on this – self-hosted WordPress is not for the technologically faint-of-heart. This may be mostly true of WordPress.com (which I think IS easier, these days, and better suited to novices than Blogger, which USED to be the easiest thing on the planet, until they tried to be all things to all people and make it so folks didn’t have to know HTML to do HTML – but don’t get me started).
You ought to also scare your audience silly by informing them that SOME “free themes” contain encrypted advertising (best case) or malware (worst case), and perhaps recommend some sites/developers that are safe(r) to use than others. Of course, you did kind of scare them off the whole notion of grabbing a theme off the back of a truck when you said they might still NEED to understand HTML and CSS (these folks don’t even know what that IS) and added “A small mistake of missing simple semi colon (;) would drag your blog in big mess.” Yep, they’re running for the hills, now.
I think that for real novices, a comparison of WordPress.com and Blogger would be good. I love WordPress, mainly because I’m a bit of a control freak, like to experiment and play with HTML, CSS, plug-ins, etc. and know a bit about security. I’m no technophobe. I’ve got nothing there that’s much worth stealing, and my domains are registered elsewhere with dual authentication set up. But this paragraph alone would blow most of your target audience’s brains into itty bitty pieces. I recommend self-hosted WordPress to novices who have the potential and need to grow, and who are not afraid of trying stuff they don’t understand – you know, the folks who know that the universe won’t implode if they hit the wrong key on the keyboard. I don’t recommend it to the nervous. Once they outgrow Blogger or WordPress.com and get bored and are ready for a bit more fun, then we’ll talk.
I was always a tech person & started with Blogger & static sites. After couple of years, I opted to move one of my website (Pro-Wrestling news) to WordPress and I was like, “I’ve done a lot cool stuff with Blogger & it was easy, but I’d not do anything with WordPress, cuz it’s really hard & sensitive.”
I was damn wrong! With the great WordPress resources & websites like CSS-Tricks, I was able to turn that just a pro-wrestling news site to many other WordPress tutorial sites & plugins.
I’m proud to say that I love WordPress & will never move to any other CMS. And guess what, I’m just 17!!