So I was trolling around on HN (god help us all) and stumbled upon someone jamming a link in sideways to an otherwise reasonable circlejerk. The link was so fucking interesting I can’t help but post about it.
Circle jerk tip #4: check your goddamn copy before submitting links to the collective.
Browsing some more on that site I find this link, which purports to be a guide to learning Unix on OSX. Ignore the fact that it’s a fucking video tutorial about fucking Unix, the part you should be looking at is the table of contents. It goes fucking on and on about useless drivel without actually mentioning the one fucking saving grace of using a terminal-based system.
fucking. man. pages.
Turns out I don’t hate computers. I just fucking hate anyone who uses them.
EDIT, PS: shoutout to the nodejs releng team who managed to, between 0.6.13 and 0.6.17 subtly change fs.createWriteStream to NOT throw an exception when open(2) returns an error, and instead emit an error event on the stream object. Way to keep a goddamn stable API between fucking minor releases, guys. Also go fuck yourselves I hate you.
EDIT2: before anyone asks, yeah I would run an virtualenv thing to maintain parallel nodejs installs to prevent issues like this; that is, if I didn’t give a fuck about my system7 comments
I’ve mostly come to the conclusion that my implementation of an ORM wrapper is completely and fundamentally broken — it has turned into an amorphous unmaintainable mess of code and overcomplicated the build process while adding very little value to anything.
I also think the Routing subsystem is a little broken as well — the abortion of a Yaml parser is a terrible, unextensible hack. It would be really nice to have something which can serve as a generic configuration tool for not only routes, but schemas (if a reasonable ORM layer ever appears) and general configuration as well. The part of the Routing system which sits on that (effectively just a state machine to parse the request URI) is fine.
In light of this, I’m going to read over the Data.Data papers, which will (hopefully) supply a means to automatically marshall SQL result sets to output formats (through HStringTemplate or a JSON encoder).
In the meanwhile, I guess I should think about a useful project which I can actually apply this crap to so it isn’t just pointless learning exercises. Bleh.