Profile picture
, 28 tweets, 3 min read Read on Twitter
1/ Ryan Dahl (creator of Node.js) wrote an epic rant and then quit writing software for a while. I want to repost it here now.
2/ "I hate almost all software. It's unnecessary and complicated at almost every layer. At best I can congratulate someone for quickly...
3/ ...and simply solving a problem on top of the shit that they are given. The only software that I like is one that I can easily...
4/ ...understand and solves my problems. The amount of complexity I'm willing to tolerate is proportional to the size of the problem...
5/ ...being solved.
6/ In the past year I think I have finally come to understand the ideals of Unix: file descriptors and processes orchestrated with C.
7/ It's a beautiful idea. This is not however what we interact with. The complexity was not contained. Instead I deal with DBus and...
8/ .../usr/lib and Boost and ioctls and SMF and signals and volatile variables and prototypal inheritance and _C99_FEATURES_ and dpkg and...
9/ ...autoconf.
10/ Those of us who build on top of these systems are adding to the complexity. Not only do you have to understand $LD_LIBRARY_PATH to...
11/ ...make your system work but now you have to understand $NODE_PATH too - there's my little addition to the complexity you must now...
12/ ...know! The users - the one who just want to see a webpage - don't care. They don't care how we organize /usr, they don't care about...
13/ ...zombie processes, they don't care about bash tab completion, they don't care if zlib is dynamically linked or statically linked to...
14/ ...Node. There will come a point where the accumulated complexity of our existing systems is greater than the complexity of creating....
15/ ...a new one. When that happens all of this shit will be trashed. We can flush boost and glib and autoconf down the toilet and never....
16/ ...think of them again.
17/ Those of you who still find it enjoyable to learn the details of, say, a programming language - being able to happily recite off if.....
18/ ...NaN equals or does not equal null - you just don't yet understand how utterly fucked the whole thing is. If you think it would be....
19/ ...cute to align all of the equals signs in your code, if you spend time configuring your window manager or editor, if put unicode...
20/ ...check marks in your test runner, if you add unnecessary hierarchies in your code directories, if you are doing anything beyond...
21/ ...just solving the problem - you don't understand how fucked the whole thing is. No one gives a fuck about the glib object model.
22/ The only thing that matters in software is the experience of the user." – Ryan Dahl </END OF RANT> The tone is pretty angry, but he's.
23/ ...totally right. Most programmers have a personality type that makes them especially vulnerable to focusing on the wrong things.
24/ This is a mistake I make all the time, so I need to constantly remind myself what is actually important. We need more tools like...
25/ ...@StandardJS, prettier, & semantic-release that discourage endless futzing with config options –  a rabbit hole for most programmer.
26/ Offering config options is the equivalent of "nerd sniping" a typical perfectionist programmer. xkcd.com/356
27/ "Laugh at perfection. It’s boring and keeps you from being done." – Bre Pettis and Kio Stark feross.org/cult-of-done/
28/ "Worse is Better" This talk is full of cringe, but it also makes a really important point, even in its delivery.
Missing some Tweet in this thread?
You can try to force a refresh.

Like this thread? Get email updates or save it to PDF!

Subscribe to Feross
Profile picture

Get real-time email alerts when new unrolls are available from this author!

This content may be removed anytime!

Twitter may remove this content at anytime, convert it as a PDF, save and print for later use!

Try unrolling a thread yourself!

how to unroll video

1) Follow Thread Reader App on Twitter so you can easily mention us!

2) Go to a Twitter thread (series of Tweets by the same owner) and mention us with a keyword "unroll" @threadreaderapp unroll

You can practice here first or read more on our help page!

Did Thread Reader help you today?

Support us! We are indie developers!


This site is made by just three indie developers on a laptop doing marketing, support and development! Read more about the story.

Become a Premium Member and get exclusive features!

Premium member ($3.00/month or $30.00/year)

Too expensive? Make a small donation by buying us coffee ($5) or help with server cost ($10)

Donate via Paypal Become our Patreon

Thank you for your support!