It's fair to say that the tech industry at the moment is not in a good place. Software engineers tend to be detached, demotivated and unwilling to care much about the work they're doing beyond their paycheck. Code quality is poor on the whole, made worse by the current spate of vibe coding and whatever other febrile ideas come out of Sam Altman's brain. Much of the software that we write is either useless or actively hurts people. And the talented, creative people that we most need in the industry are pushed to the margins of it.
Another excellent piece from Iris Meredith - strongly recommend reading if you want an idea of how to un-fuck software as a field.
Writing a program in C that finds a shortest path in a graph and dumps it to the terminal?
Disagree, although I am not immune.
Graphics. That, for me, is key. Drawing pretty pictures (procedural stuff, like Logo; fonts; and teenage me’s particular crack, fractals) was where it was at.
Fuck C and everything it spawned. Give me a Pascal-family thing that doesn’t have so much fucking syntactically significant punctuation marks FFS. WORDS, mthrfckr, words not code-breaking types of bloody parentheses.
C is a terrible programming language and I think we must be clear and open about it when teaching it. But it is perfect for what it is: a showcase of how terrible all those low-level details are, how pointers work and why you don’t want to rawdog them, etc.
Agree, in spades.
Disagree, although I am not immune.
Graphics. That, for me, is key. Drawing pretty pictures (procedural stuff, like Logo; fonts; and teenage me’s particular crack, fractals) was where it was at.
Fuck C and everything it spawned. Give me a Pascal-family thing that doesn’t have so much fucking syntactically significant punctuation marks FFS. WORDS, mthrfckr, words not code-breaking types of bloody parentheses.
C is a terrible programming language and I think we must be clear and open about it when teaching it. But it is perfect for what it is: a showcase of how terrible all those low-level details are, how pointers work and why you don’t want to rawdog them, etc.