Hacker News new | ask | show | jobs
by raganwald 5499 days ago

  Learn to use off-the-shelf software to build lots of
  functionality quickly in a predictable fashion 
  (WordPress, Drupal, Expression Engine)
Bravo. This is the way I look at it: if it has been done before, somebody, somewhere has productized it. If it isn't a full-blown CMS, it's a bundle of Rails plugins and all I'm doing is writing glue code.

If it hasn't been done before, because it's really specific to a client's domain and idiosyncratic processes, it's R&D and we shouldn't pretend we know how to do it with enough rigor to provide a competitive quote.

In many cases, the problem is that it has been done before, buut the client doesn't want to "colour within the lines" and run with the limitations of an existing CMS or other platform, they want a bunch of customizations that have little or no ROI.

The Big Sell in those cases is convincing them to scale back their expectations about customization and live with having the 20% of the features baked into the off-the-shelf system that deliver 80% of the ROI. Even if they want to pay by the hour, it's not a good investment to build what amounts to business chrome.

1 comments

Interesting tangent to this, after doing PHP from 2000 to 2005, I hopped on the Rails bandwagon full-bore and was using it even for small clients. 6 years later I feel that it was a bit self-serving because those old Rails sites are creaky and painful to upgrade—or even to find someone else to work on—compared to my PHP sites from the same era.

Now that I have ample outlet for my creativity I can be a bit more objective and admit that as much as I love Rails, it's a terrible platform for build-it-and-forget-it. Rails shines for core business apps under continuous evolution.

What do you consider to be a good "build-it-and-forget-it" platform?
PHP, Java, Cobol? It's all relative I suppose.
You're recommending COBOL as more maintainable than Rails? I don't know Rails, but I find this very hard to believe.
The times, they are a-changing. COBOL has its own agile framework:

http://www.coboloncogs.org/INDEX.HTM

Where did I say maintainable? This is about stability over time.
>creaky and painful to upgrade—or even to find someone else to work on

What do you mean by maintenance, if not that?