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

In programming languages, having 3 proper solutions to a problem is worse than having a single proper default solution - simply due to the overhead of first having to choose, and then the unneeded difficulty when reading other people's code who chose a different lib for the same thing.

For things such as hash table literals, you're not supposed to simply have some way of doing it - you're supposed to have a good and commonly used way of how most everyone else would be doing it and representing them in his/her code. Having a bunch of nonobvious, nonstandartized ways alone hurts readability, maintenance and reusability - and thinking that it is okay is a sign of being stuck in the past.

Being able to add it trivially yourself is an order of magnitude worse - because results in everybody rolling out his own. If you want to make an usable ecosystem (not just 'language core') then you have to make sure that for all/most commonly needed things, the default 'batteries included' or 'batteries taken from first google result' work well, not that it's simply possible to get them somehow.



Consider applying for YC's Fall 2026 batch! Applications are open till July 27.

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

Search: