Once upon a time a kid me realized that anything he put in autoexec.bat gets executed when the computer boots. Soon after i figured out how to do branching and input and made a start-menu-of-a-sorts thingy. It only went downhill from there.
In other words, it just so happened that my first programming project and interest turned out to be an OS. Took me about 6 years and 12 attempts to actually succeed at making a usable one.
Eventually that interest driven my choice of department in the late university, and the OS i made was shown off at my first job interview. I got the job, and that's how i got to writing Linux drivers and kernel tweaks for high-performance (mid-TOP500-ish level) machines for a few years.
Around 2000-ish I had a USB webcam that didn't work. I could already code in C, so I learnt the USB subsystem, then onto kernel drivers, then into filesystems when I decided to write a FAT32 implementation (for learning)
Huh, I was assigned to Windows km development for my first ever internship. I had a decent amount of winternal and cpp experience, but it really is a different ball park and made me a much better computer scientist.
first job, had a EE background, wanted a software job. Embedded software is where I could sell myself. I work on the Nucleus RTOS, have been for the past 2 years. Couldnt have asked for a better job than this. If I had gotten straight into web dev, or app dev. I would have had an imposter syndrome. Now I will have a smooth transition.
4 comments
[ 2.8 ms ] story [ 14.7 ms ] threadIn other words, it just so happened that my first programming project and interest turned out to be an OS. Took me about 6 years and 12 attempts to actually succeed at making a usable one.
Eventually that interest driven my choice of department in the late university, and the OS i made was shown off at my first job interview. I got the job, and that's how i got to writing Linux drivers and kernel tweaks for high-performance (mid-TOP500-ish level) machines for a few years.