I study things randomly as they interest me. I've picked up useful skills as a result, but haven't gotten a chance to remain under a constant contextual deep study state where I go into the depths of a subject over the course of several months. To rectify that, I need to design a self-made curriculum and stick to it.
Current things I'm highly motivated to do:
- Read Programming from the Ground Up
- Learn C
- Learn Go
- Read Writing an Interpreter in Go
- Read Writing a Compiler in Go
- Read Structure and Interpretation of Computer Programs
Keep picking stuff from here and adding to this list.
A rough view of roadmap
Loading svg
Excited newbie: let’s do all the things!!
Grizzled veteran: we have limited time, energy, morale, goodwill. Keeping this in mind, let’s pick one demonstrably good thing we’re confident we can achieve, and get it done decisively so we unlock more resources to do more things
Keeping the above quote in mind, I'll not try to do all the things at once. I need to recognize that I'm highly motivated rn, and therefore more susceptible to make that newbie mistake.
Current goal: only read first 4 chapters of pftgu to build some momentum. That'll be my only focus area. Everyday make some progress on pftgu that's it, even if it's just two lines. The best way to accomplish that is pick it up first thing in the morning. Once I gain momentum, I'll pick up C programming by K&R.
I'll be posting daily updates about my progress on my stream
Resources I'll go through
- Programming from the ground up
- C programming by kernighan and richie
- Nand to tetris - Building a modern computer from first principles
- Computer systems: a programmer's perspective
- Structure and interpretation of computer programs
I've seen many programmers write a raytracer for having fun. I don't even know what that is. Therefore, I want to read Computer graphics from scratch, where we'll build a ray-tracer and rasterization engine from scratch. I don't even know what these terms even mean, but am so excited to get started with these.
Few areas of computer science provide the kind of instant gratification offered by computer graphics. The sense of accomplishment you get when your SQL query runs just right is nothing compared to what you feel the first time you get raytraced reflections right
Current
As of today (15 december, 23), I am on 7th chapter of pftgu. I think I should pick up C programming now because I'm incredibly excited to go through build your own lisp in c.