JWZ: that "duct tape" silliness
jwz.livejournal.com
jwz.livejournal.com
If I were to write a blog post about jwz, that would be the core of it. Not anything about duct tape.
Our industry is full of insecure people who grab on to the latest fashion like lemmings. Inheritance is in, then it's out. Patterns are in, then they're out. SQL databases are in, then they're out. jwz's writing has, in a small way, contributed to my mental liberation from software industry group think.
Not that he's unique, but he's in the clear thinking minority and he's a good writer.
Linus Torvalds is also a good example. See any thread where someone insists he should have used C++ or a microkernel.
Lisp lets you to see your source in different light. Haskell makes you rethink expressions. C lets you know how it all works under the hood. Factor makes you think both directions.
There are also languages that set the bar high for you. Ruby for elegance. Prototype or jquery for making complex ugly thing a paradise. Even Perl's CPAN shows you the value of cooperation and modularization.
Even bad languages teach you a lot about ugliness, bad decisions and denial.
The same can be said about quite a few frameworks or even tools. strace makes programs transparent, for example, while tcpdump makes you see, you realize you were blind.
As for math and algorithms, you suddently know enough of them, they're pretty finite.
Imagine two paths for a developer:
- learn a lot of languages, like everyone else does... a lot of this learning will be useless with time
- learn, for example, a lot about computer vision... the road for this is not "pretty finite" and as you learn more about this, you can work on more and more impressive projects every time (making your value bigger)
This is how I see it, and I don't think the first path is worthwhile. (Yes, I learned a lot of languages and frameworks too... but at a point I started asking to myself: why care about most of it? the real stuff is not this)
I think the Linus Torvalds example was a good one. Or John Carmack. Do you see them talking about a lot of languages and frameworks or do you see them learning and doing new stuff?
That would be "yeah, jwz did an OK job on netscape" etc..
In preparation for my last interview I read a lot in Joels blog and found it very helpful. But in the end, the guy we hired IS a frigtard. The only difference to Joels description is, that he usually comes with a cup of tea into my office, not coffee. But the focus on useless, time consuming, elaborate bs is remarkable.
Just a side remark. And my fault of course.
Fortunately, JWZ has way more credibility for anyone who has actually looked at code.
I have to say: Well done, and everyone that blogs about it helps to spread the word about the book.
This is incredibly good advice which I can't seem to follow myself. I'm on HN during the workday instead of getting my damn CSS layouts to resize correctly, after all.
In return, when I'm not wrestling with CSS I can play with massive quantities of data and a few zillion machines. Not a bad trade-off IMHO.
This is my post regarding that http://weddew.com/blog/2009/09/productivity/why-so-much-rush...