I suspect that a large part of what makes Ruby on Rails so captivating has to do with its promise of rapid web site development driven by entrepreneurial pursuits. (I know that's true for me.) Certainly, that's what motivated the 37signals guys, and look at what they did with it (backpack, basecamp, etc.). Most big and medium-sized companies are deeply entrenched in Java, and their idea of rapid (as in RAD) is far from what the midnight engineer or solo entrepreneur needs. There's a chasm between the needs of a major eCommerce site and that of a small business with a niche product or service to sell. You've only got so many hours of productive coding in you after long hours at your day job. You need genuinely rapid application development.
Code generation has always held great promise, and Rails is a great framework, but there is still a long row to hoe in creating a fully functional site that includes sales, memberships, affiliate links, not to mention all the magic known only to marketing gurus that make a site successful. I've been working for months on an idea that ought to be so easy, but there's so many little details to work out. Every time I think I'm approaching product launch, I turn a corner and spot three more weekend-long things that have to be done. Frankly, I'm exhausted.
It's frustrating when you can visualize the finished product, but it just never seems to get any closer. So, I just found this product that generates turn-key, marketing-savvy, ready-to-launch web sites with a ton of features — the same features I've been coding for months! They're in PHP, not Rails or Java, but I don't care. I've come to realize that I've got to not be so pedantic (read anal 😉 about that. I'm trying to make money, not defend a technology. With this, I can focus on what makes my application unique without spending time reinventing the wheel just because I know how to.
I have found that my success in business has actually been impeded by the fact that I am a software engineer. Because I know how to code this stuff, it doesn't mean that I have to. And yet, I am compelled to do so, rather than download it, buy it, or even outsource it. I'm not sure if it's ego, uncertainty about the process, or just wanting to have things just so, but I'm through with that modus operandi. What about you? Has your ability to write code ever prevented you from working smart, rather than hard?