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

To bastardize Greenspun, any sufficiently large flat org contains an ad-hoc, informally-specified, bug-ridden, slow implementation of half of top-down org.

https://en.wikipedia.org/wiki/Greenspun%27s_tenth_rule



Regarding Greenspun I have to think about a colleague. He is a studied mathematician. So in the past 15 years he was working on a tool in Perl. Now he switched teams and is tasked to work on a Python problem. You don't hear about him for weeks besides he need to setup is development environment. Then he comes back and starts to code. It seems like he doesn't need to spend any time learning Python. You look into his code and also have no idea what's happening or why it's working.

What he basically did was implement his own programming language out of lists, dicts (hashtables), and functions, with class hierarchies, type checking, inheritance, etc. And the time he spent "setting up his system" was the time he needed to basically code his VM engine in Python instead of Perl, and then adapting his standard library files to the quirks of the underlying interpreter.

It was weird for me at first, but actually makes sense if you look at it mathematically. A math lover starts with defining zero, one and plus, right? So this is the only logical way to program for him. He doesn't even know what a VM or standard library is.


That's horrifying.




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

Search: