<story><title>The UNIX Programming Environment (1984)</title><url>https://archive.org/details/UnixProgrammingEnviornment</url></story><parent_chain><item><author>mgaunard</author><text>Any software engineer should have written a filesystem during their bachelor&amp;#x27;s degree, and should be well familiar with the concept of inodes.</text></item><item><author>theonemind</author><text>You have to read this so that when inodes come up at your sysadmin&amp;#x2F;devops social gathering&amp;#x27;s scintillating conversation you don&amp;#x27;t have to run to the bathroom and google it on your phone and try muddle your way through without your face turning red.&lt;p&gt;(inodes just strike me as one of those weird little things like SQL, except for much smaller&amp;#x2F;easier to learn--just something critical, always there, and for some reason, not understood by a lot of sysad&amp;#x2F;devops types. I forgot the detail until rereading this book recently. I imagine you can expect the details to vary widely on modern filesystems, but ext4 (descending from and backwards compatible with ole ext2) probably has the concept, and BSD&amp;#x27;s ffs&amp;#x2F;ufs, and the idea probably gives you some hazy idea of this general area of the world for a lot of filesystems&lt;p&gt;I also find the treatment of some old topics kind of illuminating, like the stty command when I do obscure stuff like use serial terminals or try to use a text buffer as a tty--interesting that you can still tell the kernel &amp;quot;hey, do this dirty hack for my terminal when handling characters and things. Thanks.&amp;quot;)</text></item></parent_chain><comment><author>ElCheapo</author><text>I agree. Also every software engineer should have written a compiler, a scheduler, a device driver, a small kernel, an IEEE compliant floating point library and a 3D raytracer in their free time between 30 courses by the time they have completed their degree! &amp;#x2F;s&lt;p&gt;Writing a filesystem from scratch is something I would expect from a full 5 years degree entirely dedicated to operating systems, not a generic SWE curriculum</text></comment>
<story><title>The UNIX Programming Environment (1984)</title><url>https://archive.org/details/UnixProgrammingEnviornment</url></story><parent_chain><item><author>mgaunard</author><text>Any software engineer should have written a filesystem during their bachelor&amp;#x27;s degree, and should be well familiar with the concept of inodes.</text></item><item><author>theonemind</author><text>You have to read this so that when inodes come up at your sysadmin&amp;#x2F;devops social gathering&amp;#x27;s scintillating conversation you don&amp;#x27;t have to run to the bathroom and google it on your phone and try muddle your way through without your face turning red.&lt;p&gt;(inodes just strike me as one of those weird little things like SQL, except for much smaller&amp;#x2F;easier to learn--just something critical, always there, and for some reason, not understood by a lot of sysad&amp;#x2F;devops types. I forgot the detail until rereading this book recently. I imagine you can expect the details to vary widely on modern filesystems, but ext4 (descending from and backwards compatible with ole ext2) probably has the concept, and BSD&amp;#x27;s ffs&amp;#x2F;ufs, and the idea probably gives you some hazy idea of this general area of the world for a lot of filesystems&lt;p&gt;I also find the treatment of some old topics kind of illuminating, like the stty command when I do obscure stuff like use serial terminals or try to use a text buffer as a tty--interesting that you can still tell the kernel &amp;quot;hey, do this dirty hack for my terminal when handling characters and things. Thanks.&amp;quot;)</text></item></parent_chain><comment><author>userbinator</author><text>Not every filesystem has the concept of inodes. The FAT family, for example, or ISO 9660.</text></comment>