cat -v harmful stuff
All software sucks
"And folks, let's be honest. Sturgeon was an optimist. Way more than 90% of code is crap." — Al viro
"There are two ways of constructing a software design: One way is to make it so simple that there are obviously no deficiencies and the other way is to make it so complicated that there are no obvious deficiencies." — C.A.R. Hoare, The 1980 ACM Turing Award Lecture
"One of my most productive days was throwing away 1000 lines of code." — Ken Thompson
"..At first I hoped that such a technically unsound project would collapse but I soon realized it was doomed to success. Almost anything in software can be implemented, sold, and even used given enough determination. There is nothing a mere scientist can say that will stand against the flood of a hundred million dollars. But there is one quality that cannot be purchased in this way -and that is reliability. The price of reliability is the pursuit of the utmost simplicity. It is a price which the very rich find most hard to pay." — C.A.R. Hoare
"It's a curious thing about our industry: not only do we not learn from our mistakes, we also don't learn from our successes." — Keith Braithwaite
Harmful stuff
This is a work in progress, much is missing.
| Harmful things | Less harmful alternatives |
|---|---|
| SGML and XML | JSON, CSV, plain text. |
| NFS, AFS, WebDAV | 9p. |
| C++, Java | C, Limbo, Python. |
| pthreads | CSP concurrency: libthread, libtask, Limbo, Erlang, Stackless Python. |
| Bash, Zsh | rc, pdksh, ash/dash. |
| GNU Coreutils | Plan 9 from User Space. |
| GNU info | Man pages. |
| GCC | 8c, tcc. |
| glibc | ucLibc, DietLibc. |
| Glib | libc, p9p's C libraries. |
| GTK, Qt, VxWorks | Tk, textual interfaces. |
| Vim, Emacs | Acme, Sam, ed. |
| UTF-16, UTF-32, Latin-1, other encodings. | UTF-8 |
Harmful things that are so superfluous and useless that require no alternative: em Unicode BoM em IDN em Dynamic linking (in Unix systems)