3 ms·
I think the way that one learns to program says a lot about the programmer. I, like many people, started with games and websites, but although I understood cond
by lubutu 14y ago
I think the way that one learns to program says a lot about the programmer. I, like many people, started with games and websites, but although I understood conditionals and loops, and even glimpsed OO, I wasn't very good. My software sucked, I got bored of it, I slowed to a stall.
A couple of years later I picked up Python, and instead of trying to make games or websites, I worked on stupid little puzzles. Pointless things, really. After a lot of work I built a Befunge interpreter (probably my own "tipping point"). And many useless puzzles later, I somehow wound up a genuine computer scientist.
People always talk about "getting things done". I just worked on meaningless puzzles, and that was the best thing I could have done. Anecdotally, to me it was about achievements and challenges. If you grow tired of the drive to "get things done", make something pointless.
- zaphar 14y agoThe "thing" in getting things done is fuzzy. For you it was a "meaningless" puzzle. For me it was an implementation of Conway's game of life. For others it was modifying their wordpress blog or making automating their financial tracking. The point is there is something you want to do and you used a programming lanaguage to do it. As a result: * You were self guided not following someone elses steps. * You were rewarded with some self confidence when it worked. That's the tipping point the OP was talking about I think.
- bryanh 14y agoOP here: exactly what I meant.
- lubutu 14y agoI suppose what I'm trying to say is that for me it wasn't that there was "something I wanted to do and I used a programming language", but rather that I wanted to use a programming language so I found something to do. For me it was about the (self-guided) achievements and challenges: I wasn't "hacking a way to a solution," and would often return to the same problem and solve it again and again, never "falling back to really hacky solutions to get things done." It's a bit fuzzy (things do get done either way), but I think there is a distinction in approach.