While I'd often dreamed as a kid of being a game developer, my tech career started in earnest when I was introduced to the fascinating world of Linux at 14. My hobby quickly became a very interesting volunteer opportunity as I cofounded a repair lab with five other students fixing computers for One Laptop Per Child. OLPC computers run a custom distribution of the Fedora Linux operating system, which meant that my growing obsession had a new outlet. Eventually when the supply of OLPC computers began to dry up and we weren't getting new machines in fast enough to keep us busy, we decided to expand our scope to include donated computers and repairs for community members. This turned out to be the winning formula that made the repair lab huge. I started designing systems to manage inventory and keep track of what equipment belonged to who after the traffic was getting fast enough that we couldn't just keep track in our heads.
Meanwhile I was learning the Python programming language. By the end of my junior year I was working on a project to index a large pile of donated books we had inside our school that nobody could use because they hadn't been organized into a library. I came back the next year and made it my Senior Project, a volunteer project all high school graduates in Washington State are required to do to earn their High School Diploma. Students design and execute the project, and mine was already designed and partially executed. The full story of my eventual success is chronicled here and here.
The following books significantly changed the way I think. I recommend them often.
Silence On The Wire by Michel Zalewski (ISBN-13: 978-1593270469)
This book more than anything else I've read shows the fundamental habits of thought that go into defeating computer security. Zalewski takes the reader through a tour of the technologies that underlie computer networking and communication. Along the way, he points out design-level vulnerabilities in systems that make them susceptible to attacks and information leaks. These usually aren't the kind of exploits you can patch, they dig deep into the fundamental structure of the system itself. He shows that by carefully analyzing whole systems in as much detail as is possible, you can find the places where false assumptions get made, coordination issues wreak havoc and useful abstractions break apart into thorny security issues. Highly recommended to anyone trying to cultivate the "evil bit", or whose work involves designing secure systems.
Silicon Dreams: Information, Man, Machine by Robert W. Lucky (ISBN-13: 978-0312055172)
Silicon Dreams is the sort of book you dearly wish were available in an updated edition. Using information available to him in 1989 Robert Lucky attempts to sketch the fundamental limits of human computer interaction. To ground this analysis Lucky uses Shannon's information theory, which lets him clearly examine the information processing abilities of humans and computers. While the computer side of this equation has changed significantly in the last 30 years human capabilities have not, and it's human abilities that create the bottleneck. Lucky's wise choice of information theory for his analysis has kept his thoughts relevant and useful through 30 years of transformative change in the computer industry. I suspect this book will not be obsolete until humanity has become a true cyborg, and begins moving past its traditional information handling limits. Even then, the perspective it uses is fascinating and seemingly applicable to more kinds of systems than just human computer interaction. I would love to see a similar book that looks at the information processing capabilities of human organizations, for example.
Call Center Management On Fast Forward by Brad Cleveland (ISBN-13: 978-0985461119)
Don't let the title fool you, this book is relevant to much more than just call centers. Brad Cleveland understands the subject deeply enough to see a call center for what it is: A resource management problem that arises whenever a system has to deal with randomly distributed queues. In this stunningly accessible distillation of best practices for running call centers Cleveland takes the reader through every aspect of designing a system that smoothly handles fluctuating resource demands. Beginning by defining a problem that seems too complex for rigorous analysis, Cleveland shows the reader tools they can use to define the 'physics' of call center management. There is little fuzziness here, this book lets you answer questions like "how many resources are required to get this level of performance" with confidence. Outside of the subject itself, the book serves as a beautiful example of a worked problem in logistics. It lays out its subject so clearly that you'll begin seeing places to apply it everywhere. I would recommend it to anyone who is working with complex systems.
Rationality: From AI to Zombies by Eliezer Yudkowsky (ISBN-13: 978-1939311238)
In this ambitious text Eliezer Yudkowsky attempts to put together accumulated research in psychology, epistemology, game theory, morality, statistics, and philosophy to create a self-repairing adaptable worldview that guides the user towards an accurate map of the world and effective action. As any such attempt would, it leaves some things to be desired. But it delivers on the basic premise far more effectively than any other attempt I've seen to date. Yudkowsky calls his philosophy 'rationality', or the art of winning. Rationality in this sense has very little to do with Spock's inflexible logic, instead referring to the game theoretic rationality discussed by economists focusing on making choices that maximize an agents utility. While certain ideas he focuses on have become much more popular over the last decade, the real value is not in any one idea or concept but the hints towards a deeper underlying attitude of effectiveness that the work leans towards but has trouble precisely defining. By the authors own admission it's something of a rough draft, but it's a rough draft that does a great deal of what it's intended to.
Superforecasting: The Art and Science of Prediction by Philip E. Tetlock & Dan Gardner (ISBN-13: 978-0804136693)
If empiricism is the king of science, then measurement is the queen. The thesis of Superforecasting is that expert predictions fail because we don't use standard measures of performance. Most predictions can't even be clearly evaluated as true or false, lacking objective criteria for resolution. Tetlock takes the reader inside his Good Judgment Project, an alternate reality where predictions have clearly satisfiable conditions and what matters is your track record not your credentials. In the process he introduces the concept of the Brier Score, a way to measure prediction accuracy over time by aggregating a series of probability estimates for events with boolean true or false outcomes. He also takes the reader through the techniques that his best performers use. These "Superforecasters" outperform even professional intelligence agents with access to classified information. The book is in a similar genre to Yudkowsky's, but less weird and more narrowly focused. If you're more interested in being correct than feeling correct, you'll like this one.
I cofounded a computer repair lab with five other students in my Freshman year of high school. What started out as an interesting summer project bloomed into a multi-year program that's still making headlines in my local community:
In 2016 I ran the LessWrong survey, which has had some interesting 3rd party analysis.
To get in touch with me, I can be reached by email at: firstname.lastname@example.org If you would like to send me an encrypted message, my PGP key is available here.