17 Reasons WordPress is a Better CMS than Drupal

This blog post has been simmering inside me for while. Some might think it as link bait but frankly I don’t blog often because I don’t have the time to manage lots of comments. So the thought of posting something that will likely be controversial has me going against my better judgment (but it won’t be the first time I’ve done that. :)

Drupal is for Serious Web App Dev but WordPress is Just Blogware?!?

Say what?!?!? Although the conventional wisdom is that WordPress is really just a great blogging tools and Drupal is more appropriate when you need a full-featured CMS for business use, the conventional wisdom is unfortunately outdated. Since WordPress released version 3.0 in mid-2010 there are now very few if any good reasons to use Drupal instead of WordPress when your business needs a CMS.

Heresy?

Maybe, but history has shown much heresey to be the voice of truth later vindicated. However, rather than ask you to just take my word for it, I’m going to explain below 17 tangible and specific reasons why WordPress is a much better choice for a business CMS than Drupal. 

Just the Facts

But for those of you who can’t be bothered to read the details I can summarize in two (2) points:

  1.  Site Architecture and
  2.  Backward Compatibility

Drupal’s site architecture, which on surface appears quite elegant is in reality Drupal’s biggest weakness. Drupal projects can start very inexpensively with large initial wins but the costs to add increasing functionality are discontinuous and in my experience soon soar out of control. I’ve seen several Drupal projects fail simply because of Drupal’s architectural inflexibility; many projects becoming difficult if not impossible to complete On the other hand there is WordPress’ architecture which, while seemingly less sophisticated and with more code duplication nonetheless enables the perfect combination of flexibility and unlimited functionality in my opinion where the increase in cost for more functionality scales linearly starting from zero.

As for Drupal’s position on backward compatibility they only maintain compatibility between major versions, which means you’ll be probably be forced into having to do a fork-lift upgrade since they only official support one major version behind. Who in their right mind would put their business in such a position? WordPress, on the other hand, bends over backwards to maintain an upgrade path between 0.1 versions.

About Terminology

WordPress and Drupal have some different terms for similar concepts and the following might be confusing if you are not aware of how these terms relate.  What WordPress calls a "Custom Post Type" Drupal calls a "Custom Content Type."

In WordPress a developer uses the register_post_type() function to define a custom post type whereas in Drupal a developer or user defines a custom content type in the admin console using the "Content Creation Kit" module (a.k.a. "CCK".) WordPress calls all content items "posts" (which is the generic term for the more specific "Pages" and "Posts"; confusing, I know, but that’s for legacy reasons. Drupal on the other hand alternates between calling content items "Content" at times and "Nodes" at other times.

Both WordPress and Drupal use the term "Theme" to refer to the collection of files that collectively create the unique look and feel for a site. Themes are comprised of some or all of these items: PHP scripts, HTML, CSS, SQL queries, Javascript, Images, Flash and maybe more. Themes are designed to be interchangable so that by replacing a theme a site can be given an (almost?) completely different look.

For extensiblity both WordPress and Drupal support the concept of componentized functionality with WordPress calling their functionality "plugins" and Drupal calling their functionality "modules." Aside from some technical implementation differences both plugins and modules are conceptually the same; componentized functionality. They are both typically comprised of PHP scripts and HTML but like themes may also incorporate CSS,  SQL queries, Javascript, Images, Flash and more.

As for versioning, WordPress strives every four (4) months (but it sometimes takes six) to launch a "point 1" or 0.1 version increment (such as v2.9, v3.0, v3.1, etc.) whereas Drupal uses major and minor versions (i.e. v5.x, v6.x, v7.x, etc.) with no specific release schedule between major versions.

Now with that out of the way, on to the 17 reasons.

17 Reasons to Pick WordPress vs. Drupal:

  1. WordPress Allows Infinite Design Flexibility - Drupal not so much. Because of it’s fundamental technical architecture most Drupal sites have a certain look and feel that is very difficult to get away from (note the "I think though doth protest too much" quality of these three (3) posts),   WordPress is as flexible as HTML because of it’s architecture.

    More specifically when a browser requests a web page from a Drupal-based website, Drupal inspects the requested URL and then delegates reponsibility for generating parts of the HTML page to both applicable modules and to components of Drupal itself. Drupal then collects up the generated HTML and composes a completed  HTML page when it sends to the browser.  Drupal manages everything and this archecture is minimizes duplication of responsibilities and is an architecture that an engineer can truly love.

    Unfortunately Drupal’s architecture is also highly coupled and thus rather inflexible; when you want a web page that doesn’t fit into Drupal’s model you either 1.) learn complex and arcane methods to achieve what in pure HTML would be incredibly simple, 2.) rebuild major portions of Drupal functionality for your custom page or 3.) just give up and do it the way Drupal wants you to. Or as I like to say when explaining this unfortunate aspect of Drupal:

    As a Drupal developer you are constantly battling Drupal to get back in control of the HTML that it will output for any given URL. Drupal is like a "Roach Motel" for URLs: Once a URL enters Drupal it never leaves!

  2. Usability has been "Baked-in" to WordPress - With Drupal, usability was an afterthought until version 7 and they’ve been desperately trying to improve it; usability tests by the Univeristy of Baltimore identified many critical usability issues in Drupal (the video is a must watch.) But some things such as usability need to be central to the philosophy of the developers and not tacked on as an afterthought. In Drupal you frequently need to visit at least two different pages in the admin to affect what a user would see to be one external change. With WordPress the admin console was originally user tested by the project founder’s mother ("If mom can use it, anybody can!") and that fanatical concern for usability has permetated the project. In Drupal some of the more active developers are known to say "If you don’t find Drupal usable maybe Drupal is not for you."
  3. WordPress has a WYSIWYG Content Editor in Core - Also a usability issue but an important specific one, with Drupal there is no standard WYSIWYG editor leaving the site implementor to choose from thirteen (13!) suboptimal editor module choices, none of which are maintained at the same level of Drupal core.  In WordPress, TinyMCE has been a highly usable standard for more versions that I’ve been using WordPress. (Personally this was one of the biggest issues I had with Drupal and why moving to WordPress was such a godsend for me.)
  4. WordPress Strives to Maintain Backward Compatibility - Drupal wears as a badge of honor that they wipe the slate clean with every major version. Drupal mostly ignores backward compatibility with the prior major version because yes it is nicer for the core developers not to have to worry about backward compatibility. But for your business the reality is that if you implement a site using Drupal you are stuck on that major version until you choose to invest in an expensive rewrite of your website. 

    Ponder this issue for a moment.  In my opinion, choosing Drupal can result in a nightmare once the version of Drupal they are using becomes too obsolete and is no longer supported. This is such a huge negative that I can’t really see why any business that is doing their due diligence would ever choose Drupal no matter its feature set.

    With WordPress most upgrades are seemless and those that are not are usually easily fixed because of the attention to maintaining backward compatibility.

  5. A WordPress-based Website’s Source Code is Easier to Manage - Drupal co-mingles user content with what is in effect a website’s source code in much more significant ways than WordPress does.  For example, to design of "Custom Content Type" in Drupal gets stored in the MySQL database; in WordPress "Custom Post Types" are stored as PHP code. For any business website managed by professionals it is critical to use a source code version control system and it’s easy to submit PHP code to version control but very difficult to submit records in a database to version control. This fact alone is a extremely strong argument for WordPress and against using Drupal for any serious website development project.

    Yes out-of-the-box Drupal is easier for a non-technical power user to add custom content types compared to with WordPress, but we are not talking about the needs of a housewife to organize her recipes, we are talking about which one is the better choice for a business CMS and WordPress wins hands down in this category. (BTW, there are plugins for WordPress such as Custom Post Type UI that provide the end-user with the same ease of use for creating custom post types that Drupal has for creating custom content types.)

  6. Collaborative Development is Easier with WordPress - This reason is a variant of source code being easier to manage. Without a good version control strategy it is much harder to get a local copy of a website for development. Developers in a Drupal shop have to spend a lot more time merging their databases so the up-shot is that many Drupal developers co-develop on the same installation, and often the live installation at that which results in overwriting each other’s code and limits a developers ability to roll back.  It’s much easier to develop with a local copy of WordPress so WordPress developers tend to do it more often.
  7. Revisions of WordPress-based Websites are Easier to Deploy - This reason is also a variant of source code being easier to manage. 1 but the headaches are seperate so I list is as a seperate reason. Because WordPress maintains a lot more of its logic in PHP code WordPress is much easier to deploy than a Drupal application. Drupal developers end up writing a lot more SQL code that they then need to test everytime they need to merge data used to control new application logic into the database of a production webserver on deployment of a revision to an existing website. The significance of this is hard to underestimate.
  8. Easier to Find Skilled Designers for WordPress -  To create a beautiful website design for WordPress designers need to be good at design, of course, but beyond that they really only need to learn how to copy and paste "Template Tags" as they able to have full design freedom when producing the HTML that will be used for a WordPress theme.

    Drupal designers, on the other hand, need to be skilled PHP developers too and with a rare exceptions those two skillsets are mutually exclusive. When you do find someone who can do both and do both well, they will be hugely in demand and thus outrageously expensive but the real problem is with Drupal you really won’t know if they are one of the rare few until after you’ve paid them a lot of money to either create a "house of cards", or a really ugly house.

    With WordPress you can get a great designer to work with a great developer, both of which are easier to evaluate than combined greatness, and you are set.

  9. There are More WordPress Professionals Available - A corollary to finding skilled designers, it’s simply much easier to find WordPress professionals to hire for projects than it is to find Drupal professionals.
  10. WordPress Professionals Charge Lower Rates - Another corollary to finding skilled designers and more WordPress professional being available is it is less expensive to find a WordPress professional than a professional for Drupal.  If you ignore the fact that there are many more WordPress professionals another factor is WordPress professionals don’t need to be as proficient in as many areas as their Drupal counterparts.  People who can really make Drupal sing are really expensive.
  11. WordPress’ Code is Much Easier to Debug - Drupal’s highly nested architecture makes it so that a developer spends most of his time looping through a few core functions waiting to find which code controls what they need to modify.  Often with WordPress the developer can simply set a breakpoint on the theme’s template file and debug from there.
  12. WordPress Sites Load Much Faster than Drupal Sites - Drupal runs upwards of 100 SQL queries for every page load because of its site architecture. With WordPress the number can easily be less than 10. And the time to run those SQL queries easily add up. Drupal advocates will claim those queries can be made insignificant by the creative use of caching but the reality is that you cannot cache most items in the admin console so the end user who is forced to use Drupal will be saddled with a level of fatiged and is just not necessary, if you instead choose WordPress.

    And lest you feel this is unimportant technical concern be aware that site performance is now something that Google uses to determine search engine result rankings. Host your website on a slow platform and prepare for an uphill battle when it comes to achieve top rankings in Google’s search engine results pages.

  13. WordPress Requires Less Expensive Hosting - A corollary to page load performance is that the typical Drupal site requires a lot more server to serve each of it’s pages than does a typical WordPress site. Those who choose WordPress for a seriously high traffic site will usually find they can serve more pages with the same servers and/or that the memory requirements for WordPress will typically be a lot less. And for a high traffic sites this could either be real money and/or it can mean that the site is less likely to fail in the case of a flash mob such as a Slashdotting.
  14. WordPress has the Most Integrations -  More companies or their 3rd parties offer plugins for WordPress to integrate with their services than another other platform, specially more than modules available for Drupal. Twitter, Facebook, Freshbooks, MailChimp; you name it, they all have WordPress plugins. If you need one for Drupal and it’s not a mainstream service like Twitter or Facebook chances are you’ll have to pay to have it written.
  15. WordPress has More Robust Extensibility Method - Both WordPress and Drupal use the term "hooks" to describe their exensibility mechanisms and while there are similar there is an important technical difference. In WordPress you associate a bit of functionality to either run or filter a value based on the name of the hook and you can have as many hooks of each type as are needed. In Drupal you do the same except that hooks are identified hook name prefixed with module name which means you can only use a given hook once in a module; if you need to use it twice you have to create another named module.

    Of course the module name limitation is an annoyance but not a huge problem. The huge problem comes when you need a module to disable a hook that was enabled by another module you otherwise need. This is a technique used somewhat frequently in WordPress but when it’s needed it is essential. In Drupal, even if you need to you simply can’t. And all because of Drupal’s architecture choices.

  16. WordPress has Far More High-Quality Attractive Themes - Drupal has almost two orders of magnitude less.  Why is this the case? Because it is so much harder to create a Drupal theme (as mentioned above), designers have to be good developers to theme Drupal (also mentioned above) and there are just so many more people using WordPress.

    Now having off-the-shelf themes is great for micro-businesses, startups and even tactical projects but most businesses will want a custom theme developed to showcase their brand in the best light possible yet the existence of so many commercial themes still benefits those who need custom themes.  Why?  Because it means that collectively WordPress custom theme developers have a lot more experience developing quality themes than their collective Drupal counterparts because many WordPress designer offer up commercial themes for sale in addition to their bespoken work.

    And then there are the theme frameworks for WordPress like StudioPress’ Genesis and WooTheme’s Canvas which create excellent headstarts for theme designers with lots of pre-built functionality that designers would often have to charge clients to develop.  Drupal does have the concept of theme frameworks but they are really an esoteric option for Drupal.

  17. Lastly (for my list, at least) there is a WordPress Answers but not one for Drupal - Yes an attempt has been made but there’s just not enough community support for a Drupal Answers (yet?) And while this reason may seem gratuitous, believe me it is not!

    The official support forums for both Drupal and WordPress and even the mailing lists for WordPress evidently encourage a level of disrespectfullness that is pervasive in so many open-source communities and it can be a huge time sink for the business person who just wants a problem solved. On the other hand the mechanism used by StackExchange’s WordPress Answers brilliantly encourages timely and helpful support discourages such unproductive behavior with its reputation system.

    And whereas many support queries on the Drupal (and WordPress) forums go unanswered, the majority of questions receive a reasonable answer on WordPress Answers (currently at 94%.)  If you have a WordPress issue you need solved, or that your developer needs to solve, the existence of WordPress Answer compared with the non-existence of Drupal Answer means that solutions will come far more quickly and far less expensively.

So there you go.  17 Substaintial Reasons why WordPress "The open source blogging tool" is a far better pick when selecting a CMS for business use compared with "*The* (2009) open-source CMS" Drupal. (Oh, and the judges picked WordPress as the best CMS for 2010.) Need another opinion? See Wikipedia’s criticisms of Drupal and the relative lack of criticisms about WordPress.

Of course it would be unfair and disingenous of me to call out WordPress strengths and Drupals weaknesses without also telling you where I see weaknesses with WordPress and strengths of Drupal and for me not to tell you what are the use-cases where I’d be hard-pressed to dismiss Drupal in favor of WordPress. So here you go:

  1. Drupal Allows for More Flexible URL Design - Since WordPress grew up as a blog they hardcoded the URL routing logic which has resulted in some rather odious limitations in how you can design your URLS.  Drupal’s URL management is no panacea either — you can end up with a difficult to maintain mess — but at least Drupal *allows* you flexibility that is often just too hard to implement robustly with WordPress

    (Note: I have a plugin on the drawing board whose goal is to remove this limitation from WordPress. Once it sees the light of day  I believe WordPress’ URL routing will be much better than that of Drupal. But alas, at least today, Drupal wins in the URL category. If someone using WordPress really badly needs better URL routing in WordPress and can fund the plugin development please contact me as by nature my priorities are defined by my client’s needs.)

  2. Drupal Offers Out-of-the-Box Content Type and View Creation in the Admin - Yes, out of the box a saavy end user with adminstrator rights can create and define Custom Content Types with custom fields and even custom reports/queries called "Views." This enable and end user with the time to learn Drupal to build a content-based system without any developer help. And for certain scenarios this would be invaluable, such as in certain government or academic departments were there is zero budget for development today, there never will be budget, and the end user either does not want to or is simply incapable of learning how to write the simply PHP required to register custom post types in WordPress.

    On the other hand, there are WordPress plugins that duplicate the functionality of CCK and there are numerous plugins that expore the Custom Post Type registration via a UI in the WordPress Admin.  Still, as far as I know, there really is not WordPress equivalent of Views.

    Still, even though you can create custom post types in WordPress using a plugin that exposes an admin UI it doesn’t mean you always should. As I said above I highly recommend that anyone business that is having custom solutions built using WordPress not build them using an admin UI for defining custom post types but instead embed that logic into version-controllable PHP files.

    As for Views, it’s basically the same recomendations as for custom post types; rather than store them in the database like Drupal does it works much nicer just to code calls to WP_Query into PHP code; easier to version control and also easier to test, verify correct and certain that aspect of the site to be bug free.

  3. Drupal has Positioned Themselves Better in the Eyes of Large Enterprise - Here’s where I think Drupal has succeeded brilliantly. Because of the efforts Acquia’s products, services and solutions there are many large companies that believe in Drupal. I believe they have done a much better job of courting the Fortune 500 crowd than WordPress has via Automattic and it’s VIP Support and Hosting offering.

    That’s not to say there are not some really phenominal companies delivering enterprise class solutions on the WordPress platform such as Voce Communications and TayloeGray just that there is a segment of decision makers in large business who will only consider working directly with the primary vendor and in these two cases the primary vendor for WordPress is Automattic and the primary vendor for Drupal is Acquia. And while I love WordPress and think highly of the team at Automattic it’s clear to me that Acquia have done a much better job of positioning themselves as a company that provides enterprise class support for their platform.

But what about Drupal for Community Sites?

One of the use-cases oft cited for Drupal’s superiority is for community sites.  But frankly, I don’t buy it. 

As an active member of the Drupal community for two years (speaking of which, I need to update my profile there) I found drupal.org to be an extremely frustrating website in which of participate in a community. The forums were not at all effective in the ways that other forums I’ve seen like vBulletin have been effective, and using them as a user was far more pain then pleasure (by contrast I find StackExchange mechansim at WordPress Answers to work brilliantly but alas it’s not software you can implment for your own community.)

Actually at this point I think it’s counter productive to set up yet another social network but if you are convinced your strategy makes sense I’d be included to launch it on BuddyPress instead of Drupal, and BuddyPress is now a plugin for WordPress. And one of the really great aspects of BuddyPress is it that it leverages the brilliant network/multisite feature of WordPress which has completely nailed the "single install - multiple website" architecture.

Who am I to Judge WordPress vs. Drupal?

Full disclosure, I’ve been making my living as a WordPress specialist for almost two years and I plan to launch a company that provides tools and support for professional website developers and interactive agencies who have chosen WordPress as their platform for client solutions. The reality is that I could easily choosen to do the same for Drupal but did not. 

I spent two years working with Drupal as my preferred platform, from mid 2007 through early 2009 and I gained experience working with versions 4, 5, and 6. I was drawn to Drupal by it’s elegant architecture (I’m an engineer by degree and thus appreciate elegant technical architectures) and frankly by the fact that Drupal was the only solution of the three main open source CMSes that  could actually be used as a CMS without obvious issues (why I avoided Joomla is the story for another day.)

Back in 2007 using WordPress as a CMS was simply not an option, so I moved forward and became enamoured with Drupal and it’s Custom Content Kit, Views and so many other (what seemed like) wonderful modules. I became active in the local Drupal Meetup group and spoke at several of their meetings. I registered a "DrupalCamp.com" domain with plans to launch a local DrupalCamp and more. I really drank the Drupal koolaid.

But then by happenstance I had finished a Drupal project and was looking for another when a 6 week project to write custom admin plugins for WordPress 2.7 fell in my lap.  Since I far prefer to develop admin functionality than full websites I figured "How hard can it be?" and took the job.  While I worked on these plugins I discovered WordPress much easier to develop for than Drupal but I still held on to the notion I’d return to doing Drupal work once the project was done. As the project progressed an inner conflict raged as I came to prefer WordPress all the while mourning what I would be loosing if I were to leave Drupal (CCK and Views, mostly.)

However by the end of the 6 weeks it became crystal clear to me; WordPress was a much better system than Drupal even without all the CMS features. I was reminded of how many personal Drupal projects I had unfinished simple because it’s do hard to get a good looking site completed in Drupal, the last 15% it pure hell to complete. So I decided I would build my own CCK equivalent and use WordPress instead. Honestly, it didn’t go so well with WordPress at first. Trying to create my own CCK was fraught with frustration and I wasted copious time trying to bend WordPress to my will. But I did and limped along.

Then v2.8 came out. And then v2.9. And then finally v3.0 was announce with Custom Post Types and fortunately I was in a position to just on the beta version. It soon became clear to me that the WordPress team got Custom Post Types right and that v3.0 was going to be a watershed release and, as they say, the rest is history. 

As I write this v3.1 is going into beta and with its Internal Linking Dialogs, Post Formats and more WordPress continues to prove that it really is the best choice for almost every business CMS need out there.

So Why Did I Write this Post?

Recently I met with a Senior Vice President of Strategy and Innovation at a large well-known non-profit who is planning to launch a major initiative and he’d narrowed his choices of platform down to two (2): Drupal or WordPress.  On a personal level we hit if off fabulously so if it were just personalities I think he might be inclined to take my recommendation on faith but I sensed he is enough of a real professional that he looks beyond the personality of the advocates to assess the actual best solution for this organization.

What he wanted to hear from me which platform I thought was the best and why. I had already reviewed their design brief and wireframes so I had a good idea of what they wanted, and on the surface it looked rather much like a community app. Because of this and also because he had previously talked with several Drupal advocates I think he was leaning towards Drupal.  But looking at his requirements and given my issues with Drupal that I detailed in these 17 reasons it was clear at the day is long that WordPress would be a far better platform to meet his needs.

Still, as I tried to explain to him why Drupal would not be a good choice I felt that I might have been coming across as a bit too much of a WordPress zealot whose opinion was not based on objective reasoning. So I decided that I should  writing this up to make the case using objective criteria for anyone evaluating the two.

But I still didn’t get around to writing it up because there are always too many other things to do in a day. It wasn’t until a series of posts on Quora with the leading title "Why do so many people use Drupal instead of WordPress?" that I got off my duff and finally wrote this post (even though I have clients whose projects I probably should be working on!)

In Summary

While Drupal had the lead as best open source CMS for many years, WordPress has eclisped Drupal as the best open source CMS as of mid 2010 with the addition of Custom Post Types.

More specifically Drupal’s site architecture makes it a less than ideal platform for business websites when compared with Wordpress, and Drupal’s philosophy on backward compatibility make it really hard to recommend it to any company for almost any reason at all.

Postscript: About Comments and Revisions

If you are going to post comments:

  1. Be sure to include something specific about the post in your comment rather than a generic like "Yes I agree" or I might think is spam and delete, and
  2. If this post gets a lot of comments (which I fear it might) be aware that if your comment doesn’t appear for a few days it’s simply because my client demands have limited my free time and I haven’t had time to release it from moderation.

FYI, I plan to revise this post if new evidence comes to light, somehow I got my facts wrong, or I just identify more to add. Frankly I’ve never much liked the "write-once, forever outdated" form that most blog posts take, so why conform?

UPDATE (2010-12-13)

Alastair McDermott has just written a blog post on a very similar subject entitled "Why I Recommend WordPress as a CMS." It’s a good read.

UPDATE (2010-12-17) 

If you are going to leave an inflammatory comment criticizing my post then at least have the integrity to leave your full name, your email and a link to something where I can verify who you are and I’ll be happy to publish it (you know who you are.) Otherwise I’ll simply moderate your comment into the trash.

And for what it is worth, it looks like even the Drupal community knows about many of the problems with Drupal:

 

 

GTFK

After 20+ years on Microsoft operating systems, I’m finally considering moving over to the dark side (or *away* from the dark side, depending on who you ask, LOL!). Yes, I’m considering buying a Mac. Actually a MacBook.

I decided to get a Dell 1405 because of it’s purported great battery life and I placed my order Friday night (and I got a 25% coupon, sweet!). Then two things happened on the same day; Dell held my order waiting for me to call to verify it, and I got a MacMall catalog in the mail and decided to read it. Hmmm.

I blogged about the Mac when I first heard of Parallels, and a friend of mine has a MacBook Pro that he runs Windows on so I’ve been considering it for a while. Well, yesterday I went to the store to check it out and it was pretty nice (except for lack of a right mouse button, doh!) but the guy at CompUSA couldn’t tell me about battery life.

No problem, I have another friend with a MacBook and I emailed him to ask about battery life. To which he replied:

I just googled for “mac book pro extended battery” and it
returned plenty of results…

Ouch, Busted! He did go on to relay his experiences, but point taken. :)

Anyway, though I still haven’t decided which laptop to get, I christen thee a new meme in my friends honor while I pay homage to that soon-to-be bygone era where a few people actually did read the manual:

GTFK: Google The F***in’ Keywords

Just to be explicit, there is a proper context for using GTFK. When someone asks you a question that requires a long explanation that they could have easily answered themselves, it is perfectly appropriate to simple tell them:

GTFK!

From this I’m sure they will get the message. ;-)

P.S. I know I don’t have to tell you what the *** stands for.

Delphi for Sale! Wonder who will Buy?

I just read the news today that Borland is going to sell it’s IDE Tools Business that includes Delphi, C++ Builder, C# Builder, JBuilder, Kylix and InterBase. Not more than 100 days on the job Tod Nielsen I shaking this up at Borland, just like I expected!  As I’m a big advocate for "burning bridges" so-to-speak (see the eWeek article for the reference) I think this is exactly what Borland needs.  Further, this is a possibility it will really be good for Delphi and other Borland tools faithful.

But the news leaves an interesting question: Who will buy, and what will be the fallout?  The question interesteds me enough I decided to document me thoughts on the matter below:

  • Oracle: Uncle Larry’s been on a buying spree lately; maybe he’ll pick up these Borland cast-offs too?  Though Oracle has development tools they don’t have quite the devoted following that Borland’s tools have.  Buying them would give Oracle some world class IDE tools and languages for programming Oracle. Of course InterBase users (are there any?) would certainly take it on the chin.
  • Microsoft: Adding the Pascal language to Visual Studio by including Delphi would seem a natural to me, but everything else overlaps. Microsoft could of course provide an upgrade path for C++ Builder, C# Builder, JBuilder, and maybe even InterBase users, but Kylix users would be left out in the cold. Heck, they might even make a bid to keep anyone else from getting Kylix!
  • Red Hat:  Red Hat might be interested in tying up this product line, especially if they open source it, but since a lot of Borland’s line runs on Windows, its seems a longshot.
  • SAP: This lumbering giant is seeing threats all around, from Oracle to SalesForce.com and they might use this toolset to give them some real programmability as compared to ABAP. Who knows which of the tools they’d use and which they’d kill. But then again, this one’s a longshot and it wouldn’t be great for the faithful.
  • Sybase: Sybase could pick up the Borland IDEs for the same reason as Oracle, and they might not even kill InterBase, they’d probably just rename it "Sybase <something>."  Of course, Sybase really is a second tier player and I don’t think purchasing these Borland assets would be great the faithful nor really do that much for Sybase’s databases.
  • IBM: Given the broad reach, IBM might just buy the userbase and roll them into WebSphere somehow.  IBM has always been able to consume practically anything. Maybe they will do this too?
  • Sun: There’s a chance Scott will buy to pick up JBuilder and Kylix, and keep the rest out of other’s hands, but I doubt that’s likely.
  • Novell: This one is interesting.  With Borland’s IDEs Novell could go toe to toe with Microsoft Visual Studio but instead optimize for Mono.  (I’ve always thought Novell should have purchased Borland years ago; maybe it will happen now.)  This is one of the best scenarios I can see for all involved, but the fact that most of the tools heavily support Windows make me think it is not as likely I it would be interesting.
  • SalesForce.com: Who’s got the most to gain? Me thinks is would be SalesForce.com.  With his AppExchange strategy, Marc Benioff could grab the Borland toolset and optimize for programming SalesForce’s APIs. Marc could also use Interbase as an engine for local caching of SalesForce.com data. If Marc buys, it could be really good for the Borland IDE tools faithful. But Marc will only maximize benefit from such as purchase if he opens access to the API to ALL SalesForce.com customers, not just Enterprise Edition and up.
  • Google: This one’s a wildcard; they certainly could afford it!  With all their web services and APIs Google is offering, it would make great sense for them to offer a great set of developer tools to the mix; they’ve already shown a willingness to provide downloadable software with Google Pack.  I can see it now; all of Borland’s products would be freely available for download from http://devtools.google.com; talk about marketshare!  Microsoft, be afraid, be very afraid. This is probably the best option I can think of for the Borland IDE tools faithful and will further upset the balance of power between the Big M and the Big G.
  • Amazon: Similar to Google, Amazon has lots of APIs it wants to offer; why not provide developer tools optimized for calling their APIs?
  • eBay: Same rationale as Amazon.

Whew!  That’s all I can think of right now, but it’s alot, no?  I’d say the best three potentials would be Novell, SalesForce.com, and Google. I didn’t mean this to be an exhaustive list so if you have ideas for potential suitors I did not mention or if you think differently about one of the potential suitors then please by all means post your thoughts as a comment below.

All your Base are belong to Google?

When I saw that Google Base just went live, my first thought was "All your base are belong to us."  I fear this might be ironic.

After a quick Google I found I wasn’t the only one to have thought this.

 

Tags:

Is Google becoming a Monopoly?

I really love using Google for search, for news, and for my default home page.  I think they’ve done an awesome job of really meeting users needs when many others can’t or won’t.  I also expect to see them rapidly grow and expand into new lots of areas. As a technologist, I’m really looking forward to the many cool things they are going to make available for everyone to use.

On the other hand, Google scares me to death.  People love to hate Microsoft because of it’s marketshare in O/S and office suites with Windows and MS-Office, but I don’t think Microsoft controls the fortunes of so many small and medium-sized businesses nearly as heavily as Google. In terms of total number of businesses, at least in the USA, most live or die by their Google traffic today.  We had a glitch at Xtras.Net that caused Google to remove us from their index for a few days, and our sales dropped by over 40%!!!  Many also hate WalMart because of how they have crushed most local businesses replacing them with a behemoth that is locally ubiquitious and pays practically slave wages.

However, I’m thinking people will soon look back on Microsoft and WalMart as a very benevolent dictators when compared with the future of Google.  Google’s mantra may be "Do no evil", but I’m pretty sure the truth contained in the old adage "Power corrupts, and absolute power corrupts absolutely" will prove to be undeniably intoxicating when compared to the early ideology of a few idealists who where at the time isolated from reality.

How soon will it be before we hear the calls to investigate Google on grounds of anti-trust?  I for one am starting to believe that sooner is better than later.

I guess time will tell…

 

Google’s Personalized Home Page Feature Request: Dynamically-generated Bookmarks

Ever since I first started browsing the web, I’ve wished for a home page that would keep track of where I surfed and then show me a list of dynamically-generated bookmarks that are in descending order of the ones I use most. For example, if I go to Google News a lot, news.google.com should dynamically show up in my list. After all, why not use the fact I go to these sites a lot to help me get there more quickly?

Now that I’ve started using Google’s Personalized Home Page for each of my machine’s browser home page, I see a light at the end of the tunnel as they could (probably) easily implment this to enhance their list of static bookmarks.  Of course it would need a few other features, such as the ability for me to say "do not include this URL" in case I wanted to keep the fact away from my wife that I visit playboy.com a lot (well, actually, I don’t and I’m not married; it was just an example. :)

It would also be nice to be able to "pin" certain URLs at the top, and then allow me to order those URLS. Better yet, let give me a link that allows me to transfer them to the list of static bookmarks, and then omit any URLs in my static bookmarks from my dynamically-generated list.

Lastly, as with static URLs, it would be nice if it would let me label my urls so that I could have "Google News" displayed in my dynamically generated list instead of "news.google.com."

Anyway, here’s hoping someone working Google’s Personalized Home Page project sees this, and/or someone at Microsoft who might build a better service than Google’s in the near future via a combination of Internet Explorer & MSN (although given Microsoft’s recent history of beating Google with better solutions, I kind of doubt it that ltater will happen.)

Google’s Personalized Home Page is the one that finally won me over!

For years I’ve kept an HTML file of links in the My Document directory called "MyHomePage.htm" because nobody ever created a home page service that worked for me.  Well, Google finally has and hence I’ve switched all my different machine’s browsers to point to my Google Personalized Home Page:

My Google Home Page

Why do I like it?  It’s clean and simple and let’s me easily create a list of bookmarks, plus it lists my recent Google searches and lets me add other things like links to news sites and/or any RSS feed out there. It’s by no means perfect yet, but it was good enough to get a jaded old hack like me to switch, and it’s only version 1.0!

Check it out and create your own Google Personalized Home Page at http://www.google.com/ig

A little background is in order…

As my second post I guess I’ll tell potential readers a little about myself and my company.

I live in Atlanta, Georgia USA where I have lived most of my life. From 1981 to 1988 I attended Georgia Tech to get a degree in Mechanical Engineering, and an "honorary" degree in Computer Science. I gave myself that "honorary" degree because I found out too late that I loved computers and hated engineering. I took many ICS[1] classes and aced all of them except in assembler (I choked on the final and got a "B"), but none of my ICS classes counted towards my ME degree. My grades in my ME classes were, shall we say, less than stellar; I had a mantra as my academic career started coming to a close: "D" for "D"egree!  If only I had switched my major early on…

From 1987 to 1990, I together with two others formed a partnership called The DSW Group for consulting and training Nantucket’s Clipper, now a product of Computer Associates[2].

Clipper was/(is) a DOS-based programming lanaguage that evolved from its humble beginnings to become quite an interesting language. It’s main competitor was FoxPro, and I cried when CA bought Nantucket, and Microsoft bought Fox instead of Clipper.

While at DSW I focused on having DSW become the leading training and consulting company in Clipper. In those days, I was very much a head’s down programmer and very pendantic about "my" Clipper language and the “right“ way to program. Let’s just say a mere mention of FoxPro by a visitor almost got him chased out of the office!

Around 1990 I developed wanderlust and, leaving The DSW Group in the worthy hands of my former partners Terry Dietzler and Ed Weber, went to the Washington DC area.  In northern Virginia, ironically my birthplace, I went to work as Director of Training for Financial Dynamics (FDI) with Michael Horwith and Steven Delbianco (now VP for Public Policy at ACT.)  FDI was acquired by Spectrum Technology Group in November 1997.

While in the DC area I met John Kaster (John is now with Borland Developer Relations) and he agreed to put up with my perfectionism and help me finish a book[3] on Clipper to be published by Addison Wesley. After what appeared to be eons Programming in Clipper 5 was born, which achieved critical acclaim but alas reached the market far too late to be a commercial success.

After a year in DC, I guess I became homesick and decided to head back to Atlanta. Though I loved working with Michael and Steve at Financial Dynamics, I felt the need to start a gig exclusively my own, which I named Expert Education (EEI).

I ran EEI as a Clipper training company until the end of 1994. By that time nobody wanted to be trained on Clipper anymore. This was sad because Clipper had some awesome language features, some of which are just starting to show up in .NET, and the Windows version which they called Visual Objects was even far cooler, but alas it was being planned and marketed by Computer Associates, not Microsoft. You get the picture.

However, in late 1993, having been frustrated with EEI’s inability to market our training classes w/o the use of CA’s mailing list (sometimes they would let us use it, other times they would not), I recognized something special in the Clipper-Only Tools catalog of 3rd party tools produced by a company called Zac[4]. Within six months they practically owned the ability to market to Clipper developers. Knowing I could not compete with them in Clipper, I (thankfully) decided to target a market for 3rd party tools for a product I knew absolutely nothing about how to program: Visual Basic!

So in March 1994 I formed a seperate company and named it VBxtras to produce a printed catalog of tools for Visual Basic developers. We christened it “The Ultimate Tools Catalog for Visual Basic.“  And it was.  One of the main reasons to start VBxtras was to promote Expert Education’s new Visual Basic training classes. Of course after little more than six months I decided to heck with training and to pour everything into VBxtras.

I took off my programmer hat and put on my marketer hat. We launched the first catalog in June/July 1994, and accelerated from there. How did it do? Well, I was lucky enough to put together a great team and, let’s just say, we took a wild ride all the way by 1999 to be listed as #123 on the Inc 500 list. Of course we changed the name to Xtras, Inc. in 1995 in order to dabble in other things besides Visual Basic, but none of them went anywhere so in 1999 we decided to focus back exclusively on Visual Basic developer tools.

In 1994 we offered tremendous value to both developer and vendor. We made a market where one had not previously existed as resellers of the day were paying no attention to “that toy language” Visual Basic. With VBxtras, I was a developer who liked "toys" (the components, not the language) and I wanted a reference guide that helped me quickly find and select from every single one available. In those days I didn’t worry much about profit, I just worried about getting every single vendor’s products into our catalog, and about providing as much information as possible that a developer would want so he could choose to which one met his needs the best.

That is until Microsoft decided to start promoting .NET. As I learned about .NET, my desire returned to program full time (though I doubt I ever will (be able to.)  .NET had most of the cool things that Clipper and Visual Objects had, but it came from Microsoft, and was (at least partially) designed by Anders Heilsberg, the man behind both Delphi and Turbo Pascal[5].

But .NET concerned us as we feared it could badly affect our business model. After all, "C# programmers are never going to buy tools from a placed called ‘VBxtras.’" So we decided to launch a new product line complete with a new name: Xtras.Net. We dubbed Xtras.Net "Your Resource for Quality .Net Tools" and launched a huge printed catalog of 3rd party tools for .NET in 2002.  So how has Xtras.Net done thus far? Well, frankly, not as well by comparison as did VBxtras during its first few years.

With Xtras.Net we had 8+ years of experience, but also 8+ years of baggage. When we started VBxtras, we had nothing else to distract us.  With Xtras.Net, running VBxtras distracted us.  Plus, when we started VBxtras the whole company had that "new start-up smell!" The staff when we started Xtras.Net had been here a while and was no longer a start-up staff.  It wasn’t possible to get 5+ year employees to put in all 16 hour days for months on end so that we could achieve the same goals we had for VBxtras in the beginning: to be The #1 Reference Guide for .NET.

So we haven’t done as well as I would have liked. Plus the world has changed greatly. In 1994 developers could not go from Google straight to a vendor’s website, pay for software on the spot , and download the bits and an unlock key. But today they can[6]. And in 1994, we didn’t have to compete with a venture capital backed dot-com that probably lost a dollar on ever dollar in sales for its first five years in business, all while we had to break even each month[7].

But we also haven’t done badly either, it is just a new world. I’m frustrated because we could have made a much greater positive impact for .NET developers than we have thus far, but by other’s accounts, we’ve done quite well.  We, like everyone else whose business has been negatively impacted by the Internet, have had to evolve, and will continue to evolve a lot more in the coming years.

As a matter of fact, some of the things we have planned for our evolution and that we are finally close to implementing have me tremendously excited. They excite me because I believe they can allow Xtras to transcend its current business model, and more importantly, impact developers and development in a very positive manner over the next several years. How do I know these things would be positive? Because I’m a developer at heart, and the things we have planned are things the developer in me would desperately love to see come to pass.

So thanks for reading, and stay tuned. Xtras next 10 years should be an even wilder ride than the last. In a good way, that is. :-)

 Footnotes

  1. ICS: Information and Computer Science
     
  2. Computer Associates: Where old software goes to die.
     
  3. Programming in Clipper 5: Of course Amazon has continued to this date to list the authors as me, Ed Weber, and Terry Dietzler even though the latter two dropped out at the beginning and John, whose name is on the cover, is the real co-author. I’ve even contacted Amazon about this, but to no avail.
     
  4. Zac Software: Since acquired by Global Computer, and about a year later, unceremoniously closed.
     
  5. I cut my programming teeth on Turbo Pascal in college.
     
  6. Google: Developers that go straight to vendors and by pass resellers pay full price, and don’t gain any of the benefits resellers offer. One of those benefits is resellers will act as their advocate when they have a problem with the vendor, among other things which I’ll cover over the coming months in future posts. I know this may sound self-serving, but hey, it’s my blog! Seriously though, if you’ll give me the benefit of the doubt and keep up with the subject over the next several months, I might be able to cast a different light on it for you. And I promise you, it won’t be my only topic (not even close!) as what I really want to talk about is programming in .NET and related.
     
  7. VC-backed dot-com: Yeah, but now they’ve run out of all that outlandish VC and they actually have to make profit! Ha! Let the games begin!