It's a shame to see so much bloated, over abstracted development these days with more emphasis on delivery than doing one thing well.
https://en.wikipedia.org/wiki/Demoscene
After seeing what the demo scene is able to pull off in very little code makes me hope that the art of fundamentals & single responsibility principals like in Unix/Linux resonates with younger developers the ability of truly understanding a problem scope before implementing a solution. Above all else have fun with it, be curious on even a low level how your program functions at an os & hardware levels. Things like what is the von Neumann bottleneck? Or even those building boolean logic gates in minecraft is inspiring to want to know "how does it work? And why?"
[0] http://people.fas.harvard.edu/~lib113/reference/unix/writing...
But that article was archived from the IBM dW site some time ago, after being there for some years. However, I wrote to IBM and got the PDF of the article, and put it on my Bitbucket account, with the C code for the utility.
This post on my blog describes the article:
https://jugad2.blogspot.com/2014/09/my-ibm-developerworks-ar...
And here is the Bitbucket project for selpg, the utility used as a case study, with the C code and the article text (as PDF):
https://bitbucket.org/vasudevram/selpg
The article and all the source files are here:
https://bitbucket.org/vasudevram/selpg/src
It may be of use to people who want to progress beyond using Unix / Linux command-line utilities (in C, but the principles and techniques can be adapted to other languages like Python, Ruby, etc.), to writing such utilities themselves, along with integrating them into shell scripts and pipelines.
https://github.com/RetroBSD/retrobsd/tree/master/src/cmd/awk