5 ms·
These debates are always silly at best, and painfully indicative at worst. Indicative of what exactly? A certain type of nerd (emphasis that I mean a sub group
by shingen 15y ago
These debates are always silly at best, and painfully indicative at worst.
Indicative of what exactly? A certain type of nerd (emphasis that I mean a sub group) that is likely to never accumulate wealth or create anything particularly successful on their own because they're too anal-retentive to understand that success in building a Web app or business is not defined by whether you use PHP or Ruby or Python or even ColdFusion.
Unless you think you're the next Facebook or Tumblr, then extreme optimization is necessary. Otherwise, the rest of the discussion is bullshit stacked on top of bullshit.
If the common wisdom were followed, Plenty of Fish should have never existed, given their infrastructure and development approach. And Stack Exchange should have never existed with their 'lame' Win stack (popular opinion of the Windows development environment among a certain class of developers =) ).
There are a lot of ways to 'skin a cat'. The only thing that matters is whether you can get to the finish line, build something people want to use, and perhaps monetize it so you can keep putting resources into making it better. Who gives a shit what you use to get there, just so long as you get there.
- Domenic_S 15y ago> The only thing that matters is whether you can get to the finish line, build something people want to use, and perhaps monetize it so you can keep putting resources into making it better. Bingo. Everything else is just navel-gazing.
- devs1010 15y agoExcept there is no finish line. I currently work on an application that is 10 years old, where's the finish line? Its not done in PHP, anyways it has parts that were done very sloppily and "against the grain" and the organization is still paying for it with a higher cost of maintenance.
- st0p 15y agoBut did it bring the organization more revenue? In the past I've done some things in PHP that were horrible hacks but did help the whole company forward. Doing them right in the existing code base would mean rewriting a lot. Especially one of those hacks has gotten it's revenge on me when making it more flexible later, but in the meantime it did bring us substantial rewards. To this day i'm still not sure what would be better: telling my boss "sorry, but if we want feature y, it will take 2 months (but it will we done right)" or "yes we can do that in 2 days but don't expect the code to be pretty"
- Legion 15y agoAll code is an exercise in living with imperfection. The trick is finding the sweet spots in the scale of imperfection vs. time, which aren't linearly correlated (eg. you can spend a lot of time gold-plating something and make only small gains in reducing imperfection, while on the other end of the spectrum, sometimes investing a little bit of extra time can yield large gains in reducing imperfection). I'm sure some programming book somewhere has said that in a much more elegant fashion.
- devs1010 15y agoMaybe at the time but I'm sure they have cost thousands of dollars in dev hours later on that evened it out
- shingen 15y agoThere absolutely is a finish line: as in, launch the product. In fact, there are countless finish lines in business and product development. You're constantly running a new race every development cycle. Trends change, competitors change, the entire landscape can change. Sometimes you're going to find yourself flat footed, and you're going to have to start a whole new race to launch a radically altered product. It'd be like saying there was no finish line for the iPhone version 1. Of course there was, they had to actually ship it. And every product iteration has a new race to run and a finish line to meet to put the product on a shelf somewhere to be purchased. The same is true with iterating software of any sort, whether you're talking a micro level finish line (adding a feature to Gmail or Firefox 10.1), or a macro level finish line (shipping a completely revamped Firefox version or launching a radically new email concept with GMail beta). Getting from point A (inspiration, idea, task) to point Z (task completed) = finish line. Try never having a finish line on any task, product, business, etc, and see what happens.
- devs1010 15y agomy point was that there is a maintenance stage that extends well beyond the 'finish line' of a dev cycle especially for a web app
- aGHz 15y agoWhat a pleasant attitude painfully indicative of a certain kind of entrepreneur that can only see green in the world. You see, what you call a "certain type of nerd" are actually craftsmen who enjoy things done well. You can be all the IKEA you want, and you're surely gonna rack up some interesting profits. But if I'm the kind of furniture maker who enjoys taking 6 months to build the perfect cabinet, you can be sure I'll pay special attention to selecting tools that I love. And none of your monetization arguments are going to count really. So the bottom line is that PHP vs Ruby vs Python etc is a craftsmen's discussion. (If it's a serious discussion at all, that is - comparing it to Lean Startups isn't a serious discussion.) Bringing arguments like yours to such a setting just makes you look silly (especially when you think it's about "extreme optimization", then you just look like you really have no idea what you're talking about).
- rickmb 15y agoIt's not a craftsmen's discussion. A craftsman picks the tools they feel the most comfortable with to get the job done. Sure, craftsmen like to discuss their tools, but as an open exchange about their experiences in order to learn from it, or maybe even simply out of professional curiosity. The whole "my stack is better than your stack", and the "PHP sucks" thing that is commonplace on HN, proggit and other forums is not a craftsmen's discussion. It's a juvenile playground pissing contest that has nothing to do with craftsmanship. By the way, anybody who thinks that real crafsmen typically use the "best" tools available has never seen neither an artist nor a plumber at work.
- tluyben2 15y ago<blink>By the way, anybody who thinks that real craftsmen typically use the "best" tools available has never seen neither an artist nor a plumber at work.</blink> Should go on top of proggit/hn (yes, including blinking tags :).
- brendoncrawford 15y agoBy the way, anybody who thinks that real crafsmen typically use the "best" tools available has never seen neither an artist nor a plumber at work. You are correct that they do not pick the "best" tools, but they will deliberately choose the best tools for the job, as opposed to the most convenient tools to aquire and learn.