Hacker News new | ask | show | jobs
by cefarix 5089 days ago
I started when I was 8 using QBASIC. When I was around 11 I discovered Java, and from there C.

My first programs were text-based games written in QBASIC. I also wrote a program to help me with my math homework. Later on, one of the Java books had a 3D game engine so I dabbled in that.

After I discovered C from a Windows programming book (age 11-12) I quickly started experimenting with various lower-level things. I wrote a DOS-based 3d engine. I studied printouts of the Allegro source code. I used DJGPP (remember that?!). And I played around with BIOS interrupts, and real mode extenders, etc.

It was around this time (when I was 12, in 2000) that I was introduced to Linux (Red Hat), and I also got a printout of a shell/OS written by some guy in Obj-C, which had assembly code and stuff to do with context switching and registers. That lead me down the path of making my own OS. My first attempt was via a ASCII-HEX to binary conversion program. I wrote a HEX file that switched to mode 13h and filled the screen with blue, copied it to the boot sector of a floppy, and booted from it, and it worked. I was hooked.

My teen years were spent working on different versions of that OS, and also doing 3d graphics stuff.