Hacker Newsnew | past | comments | ask | show | jobs | submitlogin

Would you mind expanding on this? All of the responses to this comment so far seem to focus on the last paragraph and Viaweb in particular, which I would guess is not the main part of your argument.

You say: "...if you want your business to survive the departure of the founding team, you need to consider whether you can solve the problem with a mainstream environment." Could you go into more detail about what you mean by a mainstream environment and what advantages it would bring in this case?



With most startups, the (usually very small) team or individual who develops the original implementation doesn't stick around once the business has achieved some level of success; they typically cash in and leave.

But if the business is going to continue to operate, the new development team needs to be capable of tending to the product, as it will need bug fixes, security patches, and perhaps be updated to scale better.

If the product is built on an uncommon platform, finding new developers, especially senior ones, to tend to the product will be difficult and expensive. If a sufficient number of qualified developers cannot be found, the business may have little choice but to rebuild the product using a more mainstream technology. In the meantime, the business takes on a higher risk of continued operation if the current implementation (which is no longer maintainable) is surpassed by its competitors.

TL;DR: short-term optimizations create technical debt, which screws your business in the long run.


Thanks for expanding. It sounds like the main problem with non-mainstream languages is the difficulty of recruiting developers who know the language well enough (rather than some technical quality of a language like Clojure that makes code hard to maintain) . That is a pretty uncontroversial statement and is probably very true. The pool of Clojure developers is probably quite small at the present moment in time.

Would you regard the use of a non-mainstream language to be, in of itself, technical debt?


> Would you regard the use of a non-mainstream language to be, in of itself, technical debt?

It depends. If the code adequately serves the business purpose its was designed for and does not need modifications, then no. Otherwise, yes.

But the answer to the question can change over time. What is not technical debt today could be tomorrow.




Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: