As someone who obtained a computer science (CS) degree after finishing a doctorate in political science in the 1980s, I took a walk down memory lane with this book. It was fun to reminisce using the author’s four waves of coders, following the four stages that computer technology has gone through over the past 60 years: from the first generation of the 1950s, when it was not yet a career and part-timers dabbled in coding and programming, to the second stage of the 1960s and 1970s, when a generation of hackers enjoyed the challenges of open sourcing, to the third stage in the 1980s and 1990s, when the personal computer made it possible for many to engage in coding, and finally to the current stage, when the dawning of the mobile phone has made it possible for many to make millions.
Gone are the days when programming was done by an individual who wrote the code on paper and submitted it to a computer operator, who then punched it into Hollerith cards and fed it to humongous computers that crunched the data and produced output in hours or days (depending on the workload). The wait could result in a wrong line somewhere that causes the program not to work, so back to the drawing boards we go.
This book takes readers into the world of programming languages such as BASIC, COBOL, Fortran, Pascal, and C and C++, as well as current languages that I know nothing about, such as Python. It refers to the rise of Netscape, Yahoo, Google, Facebook, and Instagram, among others, as well as PayPal, Uber, Bitcoin, and Tinder. It provides information that may seem trivial to some but interesting to others, for example, Linux has 25 million lines of open-source coding, and thousands of contributors take part in the unraveling of various portions of it that may work or could be made to work more efficiently.
As a political scientist, it is quite interesting to read Thompson’s insights into the society of coders, from the libertarian who does not care for government intervention in any aspect of life except for protection, to the economic capitalists who are projected by the characters of Star Wars, to the socialists/communists who, much like Trekkies, would like to create a peaceful, equitable world. He indicates that the ability to code creates a meritocratic society, that is, one does not have to have a CS degree to learn code, just the drive and the patience to pursue the goal of finding the “fix.” It brought back memories of many nights spent in the computer lab trying to debug a program, only to find out that a mere comma made all the difference.
The psychological profile of coders seems to point to the introverted, antisocial individual who will retreat to a place where one can be alone, trying to decipher the spaghetti code of if-then statements that could stifle the proper functioning of a program. A good logical thinker is ideal, thus philosophy majors make for good coders. Other characteristics include a curiosity about the way things work and a masochistic ability to endure the brutal, grueling frustration of debugging a program (for example, brilliant jerks who can be such divas because they can fix others’ blunders). However, as the author points out, whereas coding used to be an individualistic endeavor, it is now done in teams.
The author is also concerned with diversity, especially the role of women. Few women have stood out in the field, among them Ada Lovelace and Grace Hopper. Today, the percentage of women in coding and programming has declined from a high of about 37 percent to below 20 percent; in fact, the author uses the figure of 15 percent. Thompson seems to indicate that much of the reason why women have not gotten into the field is because of the inhospitable environment. Some will contend that it’s because of the built-in authoritarianism. Being a benevolent dictator and a brilliant jerk is not my cup of tea.
Another interesting aspect of the book is the invention of words, some of which may already have entered the English language/vocabulary/dictionary, such as “engineery,” “nerdery,” “cyborgic,” “coderly,” “neatening,” “coderish,” “characterological,” “pseudonymously,” “monomaniacally,” and so on. It would not be so much of an issue as long as the term is understandable within the sentence’s context. That is how new words are formed in this day and age, when new technology allows us to create new words to describe what is taking place.
The book is of general interest and can be recommended to all types of readers. It is specifically for individuals in the CS and information technology (IT) field who want to read and learn about what people might think of them.
Finally, the book made me think of what could have been if I had pursued the CS road rather than the political science one. I could have been one of those in-demand COBOL programmers who are needed to decipher the old programs that many companies have come to rely on. But being in the classroom with today’s youth, discussing and unraveling politics, is still a more fulfilling vocation for me.
More reviews about this item: Amazon