HN Hall of Fame Weekly email

Three Tribes of Programming (2017)

josephg.com Essays & writing Essays & articles Software engineering Candidate
Screenshot of josephg.com captured 2026-07-20
Page preview · captured 2026-07-20

Resurfaced independently across 6 calendar years, with breakout response in 2 of them.

submissions
9
submitters
9
observed span
2017–2025
peak thread · 119 comments
270 pts
latest 20+ return · 2022-06-26
27 pts

Submission timeline

2007–2026

One slot for every year since HN launched. Height is that year's peak points; orange marks a 100+ point or 50+ comment breakout. Select a bar to open its strongest thread.

First comments on top threads

HN comment order

This is fantastic and surprisingly close to how I tended to explain computer science to students and graduates: In Computer Science, there are 3 kinds of problems: 1. The problems that Math gives you: algorithms, data structures. These are the problems you think you're going to solve and sometimes you do, but often we just need a few really smart programmers to solve this and the rest of us can just use those solutions. 2. The problems that Physics gives…

jaaron·270-point thread·

I'm just skilled labor. I'm a milling machine operator, except instead of a CNC machine making, idk, table legs, I'm writing a thing to filter some database result based on some user input from a web page. I am not doing poetry or making hardware dance, I am not doing mathematics (directly anyway). This is a trade. I'm building the small pieces of the bigger things our culture either needs, or sometimes just wants. It's my job and I'm good…

I like this taxonomy, though it is reductive to try to cram programmers into disjoint "tribes". Individual approaches to programming generally combine from all three, though in different proportion to different individuals. Personally, I am driven most strongly by the "maker" approach, in that I write programs to be used. I also care deeply about correctness, simplicity, and performance in that order. I hate buggy, unmaintainable programs and the best way I know to make useful programs is to build…

nickm12·13-point thread·

The first top-level comment from each of the four biggest threads, in HN’s own order. Excerpts are shortened; open a comment for full context.

Breakout years
2

100+ points or 50+ comments

Total points
455

reference only — not used in Hall rules or ranking

Total comments
180

reference only — not used in Hall rules or ranking

Every submission

DateTitle as submittedByPointsComments
2017-05-033 tribes of programmingptr_void40
2019-05-12Tribes of ProgrammingSupermighty20
2019-05-133 Tribes of Programmingadgasf10
2019-09-05Three Tribes of Programming (2017)First breakout · Best threadivank270119
2020-12-28Tribes of Programming (2017)myth_drannon13457
2022-06-26Tribes of Programming (2017)Latest 20+ point returncesarb270
2024-06-12Three kinds of Programmer (2017)notarobot12310
2024-08-30Tribes of Programming (2017)08234987234987230
2025-03-26Three Tribes of Programming (2017)thinkingemote134