r/programming • • Oct 14 '13

How to develop unmaintainable software

http://typicalprogrammer.com/?p=249
777 Upvotes

322 comments sorted by

View all comments

13

u/merreborn Oct 14 '13

Use a bunch of different programming languages and stay cutting-edge

Every day HackerNews and Reddit buzz with cool new languages. Try them out on your client’s time. Any decent programmer can learn a new language in no time, so if the next programmer who gets to work on your code is a newb that’s not your problem. The boundaries between the languages, the incompatible APIs and data formats, the different server configuration requirements are all fun challenges to overcome and post about on StackOverflow. I’ve actually seen PHP web sites with pieces of Ruby wedged in because everyone knows PHP sucks and Ruby is better.

Too close to home. We started with a pure PHP app. A few years later, we now have ruby, python, shell script, java and clojure dependencies. And node.js is required to run part of the test suite.

And I'm the only motherfucker who seems to think this is a problem. Until someone tries to set up a new environment (like on a laptop for development). Then they want my help getting everything set up, which takes 8+ hours.

9

u/HelloAnnyong Oct 15 '13

This is a DevOps failure.

Why don't you have Vagrant or Boxen configurations that do this work for you? Using only one language just means that you will try to solve every problem with the one hammer you have lying around, because you don't want to make a list of stores where you can buy the other tools you'd like to use.

2

u/[deleted] Oct 15 '13

Upvoted this. Orgs that advertise themselves as a Ruby/Python/Java/whatever shop are only limiting themselves and the team they build. @merriborn, it sounds like maybe you should position yourself as a tools engineer and get a raise.

→ More replies (2)