For the individual who loves to color outside the lines sometimes; the sort of person who thinks of programming as yet another professional attribute that can benefit from a broader approach to understanding life.
Since the beginning of July, I've decided to inject a bit of consistency in the way I read. Like everyone else, I read something every day - a blog post, a news article, or something that ranks high on Readup, one of my favorite places to discover high-quality reading material.
So in July, I decided to return to reading about things that would enrich my reading experience overall, biasing in favor of things that will make me a better programmer. Here's a list of some books I have read in the past, and books that are on my in-progress tab which I think help me appreciate programming more instead of distracting me from the noble goal of becoming a 10X developer.
This is probably my favorite book this year. I consider it a love letter to randomness, and the school of thought that formed around it: probability theory, statistics, even quantum theory.
It's perfect for people who enjoy prose, or cleverly-written essays. It is written from the perspective of an exploration into the history of the mathematics around randomness, and you'll discover that a lot of what we know about randomness was inspired by gambling, gaming, and the worship of gods! No wonder Einstein said God does not play with dice.
I started reading this book because I wanted to understand randomness more. It started one night when I was writing several functions to help with creating generative art. I was using a library that piggybacked off of the default
Math.random() method to create 'noise' that ensured every generative art piece was different from the last. It piqued my curiosity about randomness and led me to this golden book!
This one is based on history - so probably accurate to call it historical fiction. Neal Stephenson is a masterful storyteller, and I can already see that (disclaimer: I'm about 20% into the book, which is about 1,539 pages on my Apple Books).
For anyone who's looked up Alan Turing (or watched The Imitation Game), you'd remember that in the Second World War, the Allies decrypted the Enigma Code, then spent a considerable amount of time throwing the Nazis off that scent. In Cryptonomicon, the story goes between two timelines (one set in the 1940s and 'present-day').
A fictional version of Dr. Alan Turing (among other notable scientists of history) is in this book as well, and they work with the protagonists to decode Axis communications, use it to thwart their enemies while simultaneously hiding the fact that they've compromised Axis communication codes.
In the present-day timeline, the grand-children of the World War II codebreakers continue the tradition, finally confronted with an unbreakable code that throws weirdness in the mix.
I started reading this based on a Twitter recommendation for some of the best speculative fiction (it started with someone complaining about SF being watered down nowadays), and I found this 'chunky' enough to take a stab at.
I know, I know. Screw Mathematics. All my friends hate Mathematics. But, you gotta admit - math doth rule everything about us.
I was never one for Math, and I blame the way it was taught to me as a kid - it was just one more class to pass, with no immediately-apparent connection to my real world. Who cared if a plane traveled 30 degrees west, huh?
As soon as I entered the fantastic world of algorithms, it became apparent to me how much simpler my life would be if I returned to some math concepts. Here's my unpopular opinion: many tutorials and courses will tell you you don't need to know math to be a good programmer. That's probably true, but knowing math definitely makes you a great problem-solver!
This book starts with logic, which adds the spice to your
|| pipes (or logical ORs) and logical ANDS (
&&), explains Set Theory, the principles of vectors, number bases, linear algebra among other things.
You don't need to read this deeply. Even a casual read of this will make you a better human being by far, I guarantee it.
I began reading this after getting high on The Last Invention of Man from Issue 43 of Nautilus.
If you've been infected by Elon Musk's paranoia about AI, then you should read this. Haha.
Musing on these topics reminds me of Rita King, who said: "Being human is a fleeting moment between stardust and robots."
I love Isaac Asimov, and you do too - you just don't know it yet. This book is a collection of essays his sponsors asked him to write about the future, sociopolitical events, and anthropological observations in general.
Published in 1977, Asimov made attempts to guess the future of humanity. He was uncannily accurate in some regard and hilariously off-course in others, but the main reason I'm recommending this is that it gives you a precious insight into how people think about life in the meta, or the macro if you will.
In reading the Tyrannosaurus Prescriptions, I found myself yearning for an opportunity to think about the broader implications of things (Moore's versus Eroom's law, for example). and that is a rewarding exercise in itself. It can help shake the tedium from programming (let's face it: programming does get tedious sometimes!) and offer you a new perspective about your role in the universe.
I recommend for thinkers and dreamers alike!
I am not affiliated with any of the links I shared, so this article is not a sinister plot to earn money off affiliate marketing. I just rather love recommending books!
Also, if you have interesting books I should check out, reply to this!
Have a great day, DEV sloths!