Hacker News new | ask | show | jobs
by 0mbre 3669 days ago
Something that is helping me a lot recently is trying to know all there is to be known about the tools/concept that I am using and the problem that I am solving. Too often have I used tools I half understood to solve problem that I didn't define clearly enough.
4 comments

Yeah, this is a bad pattern I started noticing even way back when I mucked about with Wordpress theming. Hell, I could go further back and notice this pattern in assembling LEGO. And sadly I still catch myself doing it even now whenever I'm caught up in this "this shit doesn't work, let me try that real quick" loop, where 'that' is only one of many variables I don't really understand.

What I've noticed works best for me is to nip it at the bud rather than bail out of that loop. Because once I'm stuck in the loop, I find it hard to sit back and think about things properly.

The worst cases for me is when I try more than one 'new thing' at once, which usually happens in new projects. Most recently I set up a new project and decided to try out typescript, a new back-end tool, and another build process all at once. I couldn't get it working, and only once I dived into it I discovered there was one 'little thing' (javascript's current module kerfuffle) that caused most of the issues.

What I hates most about these episodes is that at the end, all I learned was a tiny bit more about disparate systems that I still don't master. Huge waste of time.

> notice this pattern in assembling LEGO

What do you mean?

Well, usually the first time I'd have some new package of Lego, I'd want to construct the exact thing I bought from the instruction booklet.

Sometimes I'd be working on different parts at the same time and use a piece that was similar to another. I recall a few times looking everywhere for the missing piece or disassembling a part to find it only to find out that another little part I assembled had the missing piece.

I couldn't upvote this enough. It's even a way of life that is larger than programming. Most of my math issues were about how I didn't really see the extent of a concept or the problem. When done suddenly things become extremely less resistant. Patience, depth, focus, lucidity.
There's a balance though because I learn a lot by DOING, I can only read/learn/think about something so much before it just gets fuzzy and I can't keep anymore in my head.
Absolutely nailed it.

To continue the theme - When the only tool you have is a hammer, every problem looks like a nail.