Tech Writing
General update: I broke my hand (I finally punched something hard enough, hard enough to break it [my hand]), and now it's pretty much healed. My wrist is still a little stiff. I can't do push ups, because bending my wrist back makes my hand feel like it's breaking. I didn't need surgery. My break was clean as hell.
I'm doing 50 Rubik's cube solves every morning to help rehab my fingers, and get faster. While my hand was broken, I got much better at one-handed solving. Since it's healed, I've finally broken sub-20 second averages (turn slower, look more -- also practice more).
Crystal got surgery to fix her thumb ligament. Crystal's dad got surgery to add more cyborg buffs to his heart. Hope they both feel better soon. If you've recently had surgery, I hope you feel better soon, too.
It's the new year, so it's a good time to feel bad about yourself.
Looking back, I think about how little tech writing I do, and feel like a jerk. This isn't because I don't care for writing, or I'm unable to write well (maybe). I recently threw together a strategy primer for Lords of Waterdeep, and I referenced a ton of card names, but couldn't find a unified card list, so I did super tedious manual data entry and threw together a Waterdeep reference site. That shit took forever.
But then I think about what I know about programming, and JavaScript, and Ember, and all that, and I hardly write anything about those topics, even though I probably spend most of my time coding. But the more I think about it, the more I think it makes sense, because the things I know about them are largely things I've read other people write, so why am I going to write the millionth getting started with Ember blog article? What is that really contributing? How is it a good use of my time?
Saw this on reddit today:
"Monads are a very powerful programming feature that allow developers to write blog posts about Monads"
- Somebody
I wrote that Waterdeep thing because I have specific knowledge that I just got from playing the game and winning and losing a lot. Other strategy stuff I've seen for the game doesn't cover paying attention to stuff like influencing supply and demand as your primary means of developing advantages, and it's really important. My rating on the Playdek iOS version is pretty high. I win a lot, and feel like there isn't much I haven't considered, and when I play other high rated players, it largely comes down to luck, because the game isn't terribly balanced. But I feel like an expert.
With coding, every project I do, I have to learn something new, and it always feels like fumbling in the dark, or else I would have code for it already. I never feel like an expert because there are so many moving parts in software development, and always more to learn. Strategizing in a board game, with its finite concerns, and limited moveset is simple.
Ultimately, I just don't feel like the JS world as a whole is mature enough yet to make statements with any confidence about best practices. I don't know if software development is mature enough yet in general. Certainly, with all the moving targets, it's dubious whether it'll ever feel mature enough that I feel like I really understand it.
The advice I find myself giving most often is just RTFM. But that's not a big insight. It doesn't really help people who aren't fundamentally lazy. But then, how do you help people who aren't fundamentally lazy? They kind of help themselves.