Hacker Newsnew | past | comments | ask | show | jobs | submitlogin
Thinking Like a Programmer (2018) (third-bit.com)
56 points by yarapavan on Jan 2, 2020 | hide | past | favorite | 4 comments


I'm not sure "thinking like a programmer" is a concrete goal, what would be accomplished. Getting a job?

Programming is a thing, but it's always been very diverse, creative, individual, personalized and wide variations of requirements. No two programmers will solve the same complex problem the same. The best programmers will solve it without programming!

For programming itself, I think the fascination with computing itself is enough. You can go the academic route, hobby route, enterprise programming route or make your own way in the world. Being able to cobble up the pieces in order to build solutions is often enough skillset needed. There's never been a profession where you learn more on the job.

If there's one goal the profession should embrace it's simplification and interfacing with the users, aka userfriendliness!


0. Learn to break large and complex problems into smaller and simpler problems

I agree with the seven, but I think it's missing one of the most important ways programmers think.


Breaking down large and complex problems is what "programming is about creating and composing abstractions" is about in the text.


Greg Wilson made the talk "What We Actually Know About Software Development, and Why We Believe It’s True".

The gist of it is that we're too much willing to believe bloggers without experimental evidence (e.g "DSLs are good"), and not willing enough to follow/apply proven scientific results ("code reviews significantly reduce errors" ).

That was 10 years ago. Today, he writes:

> "The best way—in fact, the only way—to improve productivity is to improve quality"

This is a highly controversial statement (with which I agree, but that's not the point), stated here without supporting evidence.

Are we supposed to trust him? Where's the Greg Wilson from 10 years ago? He could have been the evidence-based software guy giving the software industry the push it needs towards more proof/experimental-studies!




Consider applying for YC's Summer 2026 batch! Applications are open till May 4

Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: