A technical and fascinating book on the history of Japan's Shinkansen, the world's first high-speed railway. It is amazing to think that it was createA technical and fascinating book on the history of Japan's Shinkansen, the world's first high-speed railway. It is amazing to think that it was created in the 1960s, well before modern computers, and the engineers had no option but to use hand computations, paper tables and graphs to simulate all aspects of the design of the trains and railway lines.
The book covers three main parts: the first part covers Japan just after the end of World War II, when Japan was still under the occupation of the Allied Forces. Former designers and engineers from Japan's military now work on railways, and put their minds on making them better. Their theoretical and simulation work on Japan's trains and railways would include making them faster and quieter (more suitable for moving passengers instead of just cargo). These would pave the way for some to publicly state a desire for a high-speed rail network, with trains able to travel at 200 km/h or better.
The second part covers the design of the high-speed trains, looking at various aspects of the trains (aerodynamics, vibration analysis), rails (manufacturing, reliability), power supply and communications. Remember that this was in the 1950s and 1960s, so engineers have to come up with simplified theoretical models and run simulations on scale models and, later, full size models, to discover how the trains and rail networks would behave. At the time, in the west, few believed that trains could travel at 200 km/h, so the Japanese had to depend on their own research to push on. The engineers also had a short time-line to come up with the design and testing of a high-speed rail before starting production on the actual trains.
The third part looks at the early commercial history of the train and the lessons learned from running it. After an initial start, when problems tend to occur, the book concludes that the major lesson learned was to get at the root of all problems. Even minor problems must be thoroughly investigated, for the problems, if ignored, may later cause major ones. Earthquakes, and the derailments caused by them, lead to redesigns to minimize the possible damage that can occur when such events occur.
The book closes with a brief pictorial history of the various Shinkansen trains, from the earliest ones, to the ones now running in the 2020s.
This is a highly technical book, full of equations and graphs and technical discussions on aspects of trains and railway network design. Those looking for a book that goes deeply into the design of a high-speed railway will find many fascinating details: details that may cause the less technical to quickly skip over to pick out the more general details....more
A fascinating book that looks at the history of Machine Learning (ML) to show how we arrive at the machine learning models we have today that drive apA fascinating book that looks at the history of Machine Learning (ML) to show how we arrive at the machine learning models we have today that drive applications like ChatGPT and others. Mathematics involving algebra, vectors, matrices, and so on feature in the book. By going through the maths, the reader gets an appreciation of how ML system go about the task of learning to distinguish between inputs to provide the (hopefully) correct output.
The book starts with the earliest type of ML, the perceptron, which can learn to separate data into categories and started the initial hype over learning machines. The maths are also provided to show how, by adjusting the weights assigned to its testing input, the machine discovers the correct weights which can allow it to categorize other inputs.
Other chapters then cover other ways to train a machine to categorize its input is shown, based on Bayes Theorem and nearest neighbour. They have their advantages and disadvantages: choosing the right (or wrong) way to train a machine will have an impact on how well the machine can categories its data.
Matrix manipulation, eigenvalues and eigenvectors are then introduced. When there are many input parameters, it can be hard to categorize them based on all the factors. By using eigenvalues and eigenvectors, it is possible to discover which factors cause the most variation among the data, and thus categorize them. And, in an interesting reversal, it is also possible to manipulate the input by putting them into more categories, which can reveal patterns that can then be used to categorize the input.
These ML models categorize input data using one level of 'neurons'. The next step would be to introduce a 'hidden layer' of neurons that can be used to combine the incoming data in many ways, which provides new ways to manipulate the data for categorization. This would provide a boost in the abilities of machines to recognize input data.
Lastly, the book catches up to current day ML models, which feature a huge increase in the number of hidden layers and weights used to manipulate input data. The book then points out that this huge increase has caused the theory of how machines learn to fall behind: the machines now exhibit abilities that theory cannot account for. The ability of such machines to pick out patterns in data through self-learning, rather than being pre-fed known data, is also an unexpected feature that current ML theories cannot account for.
These unaccounted features of current day ML systems are a probable cause of concern. So too is the concern over the kind of data being pre-fed to the systems: data that comes with various biases that only cause the system to make yet more biased decisions. Until we know better how these systems behave, it would be best to treat their outputs with caution....more
A fascinating book and a topic that may be easily misunderstood: the application of quantum mechanics to computing. The author does not shy away from A fascinating book and a topic that may be easily misunderstood: the application of quantum mechanics to computing. The author does not shy away from the maths of linear algebra and matrix computations, but if you stick with it and work through or think about the maths, you'll get a better understanding of how quantum computing works, instead of getting a 'hand-wavy' non-mathematical view.
The book starts with the basics of quantum mechanics: how the act of measurement alters the properties of a quantum object like light (photons) or electrons. Next, linear algebra and matrix computations are introduced, and it is probably best for the reader to work through or become familiar with this, or much of the rest of the book will be incomprehensible. Next, the mathematics are then used to show how measurements of quantum objects cause them to take on the measured states: this is the 'shut up and calculate' form of quantum mechanics, where not much is said about what quantum mechanics is, but only about what it does.
Using mathematics, the author then shows what happens when two particles are entangled and their states measured. He carefully shows how measuring the state of one entangled particle 'instantaneously' causes another particle to take another known state, and why this does not lead to 'faster than light' communication. He also shows the calculations on how Bell's Inequality shows that quantum entanglement is real and not a due to a 'hidden variables' form involving classical particles.
The author then switches topics to introduce logic gates, which leads to the topic of quantum gates. Again, mathematics is used to show how such quantum gates work. These quantum gates are then combined to produce quantum circuits, which are then used to show how 'superdense coding' and quantum teleportation work.
Finally, the work culminates by looking at quantum algorithms and how they achieve 'better' results and classical algorithms. Finally, a brief look at how quantum computers could perform better than their classical counterparts is given....more
A fascinating book looking at the history of the Chinese Computer, or attempts to enable the input and display of Chinese characters in the early daysA fascinating book looking at the history of the Chinese Computer, or attempts to enable the input and display of Chinese characters in the early days of computers. Now known as IMEs (input method editors), it was not a given that the most popular method now used for Chinese, Hanyu Pinyin, would be the dominant one, nor that it is now so efficient that is can rival, or even exceed, the speed of entering words using Latin alphabets. Early IMEs used numeric coding, codes based on the structure of Chinese characters, and other methods which might have become dominant. But Hanyu Pinyin would win in the end due to politics and an advantage, compared to other methods, at entering multiple characters.
What follows is a chapter by chapter summary of the book.
"1: When IMEs Were Women: IBM, Lois Lew, and the Dawn of Electronic Chinese" looks at the history of one of the first Chinese entry systems used. It uses four-digit codes to represent the most popular Chinese characters and the ability of a typist to memorize the codes and enter them to generate the words. This was based on the telegraph system which also uses four-digit codes for Chinese characters, so it was possible for a typist to memorize most of them. And a Chinese woman, Lois Lew, would become the main person to demonstrate this ability in demonstrations by the inventor of the input method.
"2: Breaking the Spell: Sinotype and the Invention of Autocompletion" covers entry system based on the characteristics of Chinese characters. These break down Chinese characters into subcharacters and strokes and assigned to certain keys. These keys were then entered in combination to reproduce the Chinese character. Efficiency in entering characters was by arranging for the most often used strokes to be most easily accessible. More efficiency by achieve by allowing Chinese characters to be selected based on a minimum set of key entries that uniquely identify it. This was, essentially, a form of word prediction and autocorrecting. A display would show the selected character to the typist for confirmation before it was finally entered.
"3: Farewell, QWERTY: The Quest for a Chinese Keyboard" covers the period when non-Qwerty keyboards were used to input Chinese characters. At this time, many keyboards were proposed, all with hundreds of keys, with different ways of mapping a combination of keys to each Chinese character.
"4: The Input Wars: Zhi Bingyi and the Return of Hypography" covers the rise of minicomputers and microcomputers used in China, usually ones imported from the West. This gave new impetus to entering Chinese character entry using a Qwerty keyboard. It covers various schemes for generating characters based on various input schemes. Many were proposed during this period, but only a few made it to market, as they needed to work with the manufacturers of the computers to implement them.
"5: The Search for Modding China: Printers, Screens, and the Politics of Peripherals" looks at the microcomputer era with the introduction of Apple II and IBM-PC like computers. These microcomputers came with peripherals, like monitors and printers, pose new challenges to producing Chinese characters. Made for Western alphabets, they lack the resolution or ability to show or print Chinese characters. It was the rise of modders and hackers who worked to modify printer hardware to make them produce Chinese characters. Operating systems also had to be hacked or modified to handle Chinese input systems, and to display and print Chinese characters. These changes propagated back to manufacturers of the operating system, leading to the rise of 'international' operating systems that have the built-in ability to display Chinese characters and other languages.
"6: Connected Thoughts: Chinese in the Age of Predictive Text" covers the rise of Hanyu Pinyin as the most used input system today. Compared to other Chinese input systems at the time, it was less efficient at entering individual Chinese characters. But Hanyu Pinyin overcomes this due to the capabilities of modern computers for predicting input, allowing computers to quickly enter well-known multi character phrases faster than other input methods that were optimized for generating single characters. Multiple domain specific databases of Chinese characters also allowed Hanyu Pinyin to quickly produce output for specific purposes. It also didn't hurt that the Chinese Government encouraged the use of Hanyu Pinyin as an alternative writing method to traditional Chinese characters.
The book ends will a note that even today, people are still inventing input systems for Chinese and other non-alphabetic written languages. Globally, computers with such input systems now outnumber Western style entry systems (one key for each character). Now, with AI chatbots, one-letter-per-key entry systems may even see a decline in the future, as people now use chatbots to enter words on their behalf based on a prompt....more
An interesting book about seven items we often see in the modern world: the nail, wheel, spring, magnet, lens, string and pump.
Each chapter in the booAn interesting book about seven items we often see in the modern world: the nail, wheel, spring, magnet, lens, string and pump.
Each chapter in the book looks at one of the items, covering their history, variations on the item, how they were used and what they are used for nowadays, from everyday items to some of the largest structures in the world. The author also puts in some personal anecdotes on making and using the items and some social commentary on how the inventions have been put to use for creating empires and subjugating others, showing that how the inventions are used brings benefits and drawbacks to the world at large.
This is a book to read if you have an interest in engineering and how nuts and bolts (and other items) are used in various way....more
An interesting book on retro-computers. Unlike other book on retro-technology, this one presents trivia on the machines: lots and lots of trivia on loAn interesting book on retro-computers. Unlike other book on retro-technology, this one presents trivia on the machines: lots and lots of trivia on lots and lots of early home computers, some of which I later had to look on up the internet as I've never heard of them before.
The book also presents trivia on numerous games and on the idiosyncrasies of the machine themselves, both the operating systems and the tape based systems used at the time to save programs, and on the BASIC usually found on the machines. Some bring back memories of some of the POKES and PEEKS done in the past to 'bypass' game protection systems or to hack games.
The chapters, with a numbering system that starts with 0 (zero) repeatedly, and then jumps to other entries via GOTOs, are not meant to be read in sequence (although you can do that). Instead, you are meant to start with an entry of interest (computer, game related) then follow the appropriate GOTO until the end of the journey, like a 'pick-your-adventure' type book.
But whatever way you use to read the book, those who have used early computers and those who are now into retro-computing will probably find lots of entries of interest in the book....more
A fascinating and readable book about how the ecology of roads (and cars) is changing the face of the earth. With millions of kilometres of roads on tA fascinating and readable book about how the ecology of roads (and cars) is changing the face of the earth. With millions of kilometres of roads on the face of the earth, it is no wonder they are changing how animals behave and move about (or don't) when faced with a road. But it's not just animals: in the last chapter, the author shows how roads have been used to enforce racial segregation in the USA.
The first part of the book deals with how roads can kill animals. The most obvious is ending up as roadkill. But roads (and cars) also cut across migration paths, forcing animals to either starve (by staying where they are on one side of the road) or risk being killed trying to cross. Roads also cut across the territories of animals like the mountain lion in California, isolating them and causing in-breeding. Roads are especially deadly to amphibians and reptiles who bask on roads to get warm and whose natural instinct is to stay still instead of running from danger.
The second part looks at other effects roads have on the environment. The US Forest Service maintains roads in wild areas for access and safety. But these roads affect wildlife, and there is now a movement to restrict roads or to remove them. Noise pollution from roads also have an effect, with wildlife either having to call louder to be heard, or by failing to hear predators due to the covering noise. Road verges are a controversial topic, for they often have high levels of road pollution, yet may offer a refuge for animals driven off land beside the verges due to development. The story of the Monarch butterfly is a case in point, with milkweed being planted on road verges to help they survive; but doing so may kill them in the long term. Road kill also attracts scavengers like vultures, which can help them thrive, if the road doesn't kill them. Beside the land and air, roads can also affect water life. Roads cross streams and rivers using culverts, with can block the migrating path of salmon and other water life, and cause pollution in run-offs.
The third part looks at what can be done to mitigate the effect of roads. One change has been the building of wildlife crossings to help animals cross roads. But these usually work only when the crossings have been properly designed for them. People who help rehabilitate wildlife struck by vehicles also have a role, but an unappreciated one, which could lead to stress and even suicide among them. Instead of discarding roadkill, it can be collected to aid in research to learn about the condition of animals when they are killed. New road building could also be done with the needs of animals in mind, instead of adding them to roads afterwards. Finally, roads could also be removed or redeveloped, especially in areas where roads have historically been used to demolish or obstruct communities as a form of racial segregation....more
An interesting illustrated book that look that three things we take for granted: the Internet, electricity and water. It shows the history of how we cAn interesting illustrated book that look that three things we take for granted: the Internet, electricity and water. It shows the history of how we created the Internet and how we now harness it and electricity and water to power our modern society. But the book doesn't shy away from showing the damaging effects all three have had on parts of society (like the underprivileged and marginalized).
On the internet, the book shows that our desires to use it to gather information and to broadcast our thoughts (yes, I'm aware that this review is part of that desire) lead to huge resource requirements to store and transmit the information.
The discovery and harnessing of electricity, from the initial small groups to the huge modern conglomerates that generate and distribute electricity, have damaged the environment and people whose lands are now gone (flooded by electricity generating dams, for example).
Water has been misused since the beginning as a sewer and even today, much of the fresh water in the world is wasted.
But to close on a brighter note, the book's intent is to reveal just how much of how these things are used in the world are hidden from sight and, as a result, we are not aware of the damage they are doing. But now that we have a better idea of how they are used in the world, it is up to us to make better use of these systems, and the many others 'hidden systems' in the world....more
An interesting thriller involving the super rich of Silicon Valley hiding and moving their money around to make more money, and an investigative accouAn interesting thriller involving the super rich of Silicon Valley hiding and moving their money around to make more money, and an investigative accountant who works to penetrate the surrounding defences.
In tech-speak, he's a Red Team person who hates to be one defending the accounts against attacks (Blue Team). But in this story, as he works to recover some lost digital keys before they can be used to manipulate digital financial ledgers that should not be alterable, he finds himself in the middle of a dispute between money-laundering families, and is marked for death for acts that he didn't commit. Now, he has to become a Blue Team person, defending against the attacks of the thugs out to get him. But the solution to his problem may involve being a Red Team member again.
A fast moving story with interesting technical details about cryptocurrencies, security and living among the rich and the homeless. However, the story does skip putting in more details that might bore the average layman, but would give more technical depth to the story and make it feel just a little less 'hand wavy' in the way the story get resolved....more
A fascinating book on the history of counting and the rise (and fall) of the pocket calculator. The author starts with a history of humans counting anA fascinating book on the history of counting and the rise (and fall) of the pocket calculator. The author starts with a history of humans counting and remembering counted values using various parts of their body. This leads to various ways, like notches on sticks or imprints on materials, as a way to record values. The need to quickly add, subtract and record values leads to arithmetic aids like the abacus and other simple mechanical aids.
The need to quickly perform multiplications (and other operations like division, square roots, etc.) would lead to mathematical innovations. One of them would involve the creation of logarithms, which convert multiplications (and the other operations) into 'simple' additions and subtractions. Various tables would be created before, once again, machines would be created as aids, like the slide rule. Other calculating machines would become more sophisticated, finally culminating in the mechanical wonder, the Curta, a handheld mechanical calculator.
The rise of electricity and electronics would lead to mechanical relay calculators, then calculators based on vacuum tubes and then, individual transistors and those with integrated circuits. The race to cram more transistors and mathematical operations into cheaper, and smaller, packagers would culminate in the rise of the pocket calculator. The pocket calculator race would lead to various wonders, like the scientific calculator, the programmer calculator, graphing calculators. Strange variations would also appear, like watches with calculators.
The book closes with the final 'act' when computers would 'swallow' the calculator by implementing it in software like Visicalc (one of the first spreadsheet software), leading to the world we know today, where we calculate using software and actual calculators now live on a neglected life in our drawers....more
A fantastic and readable book on the history of invisibility. But before getting there, the author covers the history of the nature of light from the A fantastic and readable book on the history of invisibility. But before getting there, the author covers the history of the nature of light from the past through to the present. The excepts of fictional stories featuring invisibility found at the start of each chapter are also very interesting.
Once the nature of light is given, the author then shows how current research is looking into ways to take advantage of how light behaves to make things invisible, either by making light 'avoid' the object of interest, or by destructively interfering with the light emitted by the objects, so it cannot be detected.
The book closes with a look at how the technology and science used to make objects invisible to light can also be used to make objects invisible to other forms of energy, like sound, water waves and even earthquakes.
One property of charged particles mentioned in the book was especially interesting and new to me. Most people are probably told that accelerated charged particles emit electromagnetic radiation (light), which was one of the reasons models of atoms with orbiting electrons were hard to get correct before the advent of quantum physics. But the author points out that it is possible to accelerate charged particles on a small sphere without the emission of light, making such spheres invisible.
'Trivia' like this, as well as a good presentation of historial and current day research in to the properties of light, make the book an excellent read....more
An excellent book that introduces the Rust programming language and why its features can make it a compelling systems level programming language. The An excellent book that introduces the Rust programming language and why its features can make it a compelling systems level programming language. The book assumes the reader has some programming experience, so it doesn't go into basic programming concepts, but instead shows how Rust handles some standard programming tasks in a safer (and maybe better) way than other systems programming languages.
Rust's explicit use of ownership and keeping track of lifetimes enable the language to detect and alert programmers at compile time about issues with their code that would lead to memory access problems that are a major source of bugs in programs. Rust does not eliminate all bugs, but getting rid of memory access related bugs would be good for programming in general.
After covering those essential aspects of the language, the book then goes into some details about the ecosystem around Rust: separating code into libraries, producing test cases and documentation and adding dependencies and external libraries. The book also goes into some more advanced language features that can support object-oriented programming and use 'unsafe' features, where the programmer, instead of the language, has to take some responsibility to ensure the code is safe to use.
By the end of the book, you should have a good understanding of the language features and ready to produce code. The book also gives some pointers for those looking to use the more advance language features in their coding....more
A fascinating book about the various way computers and coding have changed the world. Some essays are on the history of coding and others are on famouA fascinating book about the various way computers and coding have changed the world. Some essays are on the history of coding and others are on famous code hacks. Some essays touch on ethics, social justice, discrimination and cheats that coding has enabled. And, of course, one essay is one that infamous comment found in the Commentary on UNIX: "You are not expected to understand this."
What follows is a summary of each essay in the book.
1. The First Line of Code: a look at what may be the first lines of code written in history to control weaving looms using punch cards.
2. Monte Carlo Algorithms: Random Numbers in Computing from the H-Bomb to Today: on the history of Monte Carlo Algorithms, whose statistics and random numbers are used in many fields to estimate the future behaviours of systems in many fields.
3. Jean Sammet and the Code That Runs the World: on programmer Jean Sammet who (with Grace Hopper), pulled together early attempts at programming languages to come up with COBOL.
4. Spacewar: Collaborative Coding and the Rise of Gaming Culture: on the history of Spacewar, the first graphical computer game, and the culture (and joy) of hacking computers that came up around it.
5. BASIC and the Illusion of Coding Empowerment: on how BASIC enabled interactive programming for students on time-shared systems. But early on, this was only for entitled students, mainly the better-off white males in the US.
6. The First Email: The Code That Connected Us Online: the ability to send messages from one user to another on the same computer system was so in demand that the need to be able to send messages from one system to another was developed and became the email that we know today.
7. The Police Beat Algorithm: The Code That Launched Computational Policing and Modern Racial Profiling: the search for a technological solution to policing at a time when racial riots were rife would lead to the surveillance systems in use today.
8. "Apollo 11, Do Bailout": on the capabilities of the computer on the Apollo Lunar Lander that enabled the moon landing.
9. The Most Famous Comment in Unix History: "You Are Not Expected to Understand This": this comment, and others in source code, show the personalities and abilities of the people who wrote the code, and left such comments in the code as guidelines (or for fun) for future programmers.
10. The Accidental Felon: on the history of the Morris worm, the self-replicating code that bought down many systems in the early days of the Internet.
11. Internet Relay Chat: From Fish-Slap to LOL: on the propagation of the culture of leaving 'actions' as words on the early internet relay chat into today's social media, leading to postings of LOLs and other kinds of interactive reactions, as well as emojis.
12. Hyperlink: The Idea That Led to Another, and Another, and Another: the history of hyperlinks, which lead people from one document to another, ad infinitum.
13 JPEG: The Unsung Hero in the Digital Revolution: how JPEG works to compress digital images and how this would lead to the fingerprinting of images to individual digital cameras.
14. The Viral Internet Image You've Never Seen: refers to the notorious single pixel image file that appears (hidden) on webpages and emails to track who is fetching the information.
15. The Pop-Up Ad: The Code That Made the Internet Worse: written by the person who wrote the first pop-up ad, it talks about taking responsiblity for what you do with technology.
16. Wear This Code, Go to Jail: starting with the Perl code for the RSA algorithm printed on a shirt, it goes on to shows the problems with trying to do export controls or to restrict software.
17. Needles in the World's Biggest Haystack: The Algorithm That Ranked the Internet: on the ranking algorithm that lauched Google.
18. A Failure to Interoperate: The Lost Mars Climate Orbiter: the Mars probe was lost due to conversion bug between metric and imperial measurements. But the article points to the bigger problem of the decline in interoperability of current day software and applications due to business decisions (to restrict competition).
19. The Code That Launched a Million Cat Videos: viral videos of cats reacting to the iRobot Roomba vacuum cleaner helped to make it popular. But the software for the Roomba at the time, that controlled its somewhat random behaviour, also helped to make it beloved for the idiosyncratic way of cleaning a room.
20. Nakamoto's Prophecy: Bitcoin and the Revolution in Trust: on the development of bitcoin and the blockchain behind it that may yet revolutionize the way people trust one another and do business without a central authority.
21. The Curse of the Awesome Button: the development of Facebook's 'Like' button started off as a way to provide feedback on the social network. But it then became a way to track users as they moved from site to site.
22. The Bug No One Was Responsible For-Until Everyone Was: Heartbleed (a buffer overflow error in OpenSSH) was a programming error, but it showed the effects of using a popular piece of code but not providing proper support to the developers of the code.
23. The Volkswagen Emissions Scandal: How Digital Systems Can Be Used to Cheat: how software became a way to cheat and get around regulations.
24. The Code That Brought a Language Online: the development of software to allow users to enter text in Bangla after a terror attack in Bangladesh would have repercussions for blogging and freedom of expression in the country afterwards.
25. Telegram: The Platform That Became "the Internet" in Iran: Telegram enabled users in Iran to communicate and to broadcast messages in channels until it became Iranian's view of the Internet, for a while.
26. Encoding Gender: the issues around storing information on gender, when most databases are set up to only accept two binary gender values....more