# Bookshelf To understand computers and operating systems in general, first I should probably read Computer Architecture by Charles Fox. Then I should pick up The C Programming Language by K&R to begin a formal introduction into computer programming. Afterwards, after I grok C, I should begin [Operating Systems: Three Easy Pieces](https://pages.cs.wisc.edu/~remzi/OSTEP/) by Arpaci-Dusseau. After this I should probably start my journey into [The Linux Programming Interface](https://man7.org/tlpi/) by Michael Kerrisk.