Hacker Newsnew | past | comments | ask | show | jobs | submitlogin
Bram's Law: The easier a piece of software is to write, the worse it's implemented in practice. (advogato.org)
9 points by kkim on Nov 6, 2007 | hide | past | favorite | 4 comments


I'm not sure he realizes that there are plenty of rock-solid http implementations that power things like web servers and web clients that everyone on the internet uses every day without too many problems. Comparing one http implementation to the handful of transactional engines he's had experience which is anecdotal at best.

It's an apples to oranges comparison anyways, because http is a communications protocol designed to live in an extremely heterogeneous world where you can't control all the variables, as well as be very easy to implement in whatever language/platform you're using.


The problem is that if a protocol allows bad implementations, then even the good implementations have to invest effort to interoperate with the losers. Bram doesn't have the patience to deal with losers.


There is something to this.

It also explains why software written in Java sucks so much compared to software written in Lisp or C. Any idiot can get a Java program "working", but an idiot writing C code will never get anything more than "Segmentation Fault".


I guess my problem is that he's implying that simple systems are bad because they can be easily implemented by anyone.

It is very easy to write a Scheme interpreter, and a lot of people write very bad interpreters, but that doesn't imply Scheme is a bad language. Java is a lot harder to implement, so the few implementations out there tend to be very good.

As for language, I agree that the C programmers left are on average better than the average Python programmer (I'm not using Java for this example because I don't actually know much about Java), but that doesn't imply that it's better to use C than Python because the average C programmer is better than the average Python programmer. Personally, I'll use Python wherever I can even though I'm a better C programmer than Python programmer, simply because getting things done in Python is on the whole easier.




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

Search: