Jonathan E. Steinhart - The Secret Life of Programs (2019)

GuDron

dumpz.ws
Admin
Регистрация
28 Янв 2020
Сообщения
7,780
Реакции
1,451
Credits
25,410
The Secret Life of Programs
Автор: Jonathan E. Steinhart (2019)
фронт.jpg
I was born a geek. According to my father, I used an imaginary switch to turn on the swings before using them, and I would turn them off when I was done. Machinery just spoke to me about its inner workings. I resembled C-3PO understanding “the binary language of moisture vaporators.” I was fortunate to grow up in a time in which one could examine the workings of most things without a microscope. In hindsight, I had a very surreal childhood growing up in New Jersey. I tinkered with everything, often to the detriment of my mom’s nervous system. My parents gave me lots of “50-in-one” project kits but became uncomfortable when I started hooking them together for projects that weren’t in the books. This culminated with the Pillow Burglar Alarm, which caught the tooth fairy in action—a poor economic choice that was nevertheless emotionally satisfying. I collected broken televisions and other appliances that people would leave out on garbage day so that I could take them apart, learn how they worked, and build things out of the parts. One of my favorite toys was my dad’s 1929 Erector Set. The space program made it a great time to be interested technology; I remember standing in our front yard with my father one night watching Echo 1 fly over. Most kids had paper routes; I repaired televisions and stereos. My father worked for IBM, and I occasionally went with him to work and was awed by the big computers. He took me with him to the Electro Show in Atlantic City when I was eight, and I remember playing with an IBM 1620. I also remember being fascinated by the equipment at the Tektronix booth, which may have influenced my later choice to work for them. A year later I went to the World’s Fair in New York and was awed by the Bell System exhibit; by chance I later worked with one of its designers. I received an amazing post-Sputnik public school education, the likes of which no longer exists in America. We passed around the jug of mercury in fifth grade. I blew up the chemistry lab in sixth grade and learned from the experience instead of being locked away. (I can still quote the recipe for making nitrogen triiodide.) I remember my eighth-grade science teacher marching us out of the classroom and taking us into New York City to see the movie 2001: A Space Odyssey because he thought that it was important. He did this with no parental notes or permissions slips; a teacher who did that today would likely lose their job, or worse. We made gunpowder in high school chemistry, shot rockets at each other on the football field in physics class, lanced our own fingers to do blood typing in biology. A far cry from today when so many millions are drowning in five-gallon buckets that warnings are required, wet floors strike fear into the hearts of man, and government officials are dismissive of science and unable to distinguish tinkering from terrorism. Outside of school, my parents signed me up for the Boy Scouts, which I loved, and Little League, which I hated. Scouting taught me a lot about the physical world from horseback riding to safely playing with fire to outdoor survival. Little League taught me that I didn’t like team sports. Ham radio was big in those days; it was where tinkering happened. I volunteered for the local Civil Defense emergency radio communications group just so I could play with the equipment. They had a primitive radioteletype system, which I redesigned and ended up building units for other municipalities. I loved the three-dimensional mechanical contraption that was a Teletype. When I was in high school, a friend told me about an Explorer Scout post that met every Monday evening at Bell Telephone Laboratories in nearby Murray Hill. I joined and got to play with computers back when they were the size of large houses. I was hooked. It wasn’t long before I was leaving school early, hitchhiking up to the Labs, and talking people into letting me in. This turned into a series of amazing summer jobs working with incredible people that changed my life. I learned a lot just by poking my head into people’s labs and asking them what they were doing. I ended up writing software for them even though I planned to study electrical engineering, because hardware projects just couldn’t be finished in a summer. I felt that the best way to honor my scout advisors was to follow in their footsteps by trying to help newer generations of budding young technologists along their path once I was in a position to do so. This turned out to be difficult, as the heyday of American research has given way to increasing shareholder value; products themselves are not valued as highly as the profits they generate, which makes research hard to justify. Companies rarely let kids run wild on their premises anymore, for liability reasons. I had originally thought I would work through scouting, but realized I couldn’t because scouting had adopted some polices that I couldn’t support, as I had never gotten my sexual discrimination merit badge. Instead, I volunteered in my local school system. I started writing this book to supplement a class that I volunteered to teach. I did this before the internet was as readily accessible as it is today. I currently live in a fairly poor rural farming community, so the original draft of this book tried to be all-inclusive under the assumption that students wouldn’t be able to afford supplementary materials. That turned out to be an impossible task. Lots of material about different programming languages and concepts is now available online, and most people have internet access at home or at their school or library. I’ve rewritten the material with the expectation that readers can now much more easily find additional information online. So, if something isn’t clear or you want more information, look it up. Recently, a number of students I know have expressed frustration with the way they’re being taught programming. Although they can find information online, they keep asking where they can find everything they need in one place. This book is written to be that resource. I was lucky to grow up contemporaneously with computers. We developed together. I have a hard time imagining what it must be like to jump into the mature field that computing is today without having the background. The most challenging parts of writing this book were deciding how far to reach back into the past for examples and choosing elements of modern technology to discuss. I settled on sort of a retro feel, as one can learn most of what’s necessary from older, simpler technology that’s easier to understand. Newer, more complex technologies are built using the same building blocks as the older ones; knowing those blocks makes understanding new technologies much easier. It’s a different age now. Gadgets are much harder to take apart, repair, and modify. Companies are abusing laws such as the Digital Millennium Copyright Act (DMCA) to prevent people from repairing devices they own, which is fortunately resulting in “right to repair” laws in some places. As Americans, we get mixed messages from our government; on the one hand we’re encouraged to go into STEM careers, while on the other hand we see science denigrated and STEM jobs outsourced. It’s not clear that the US would have ever become a technology powerhouse if this environment had existed a half-century ago. Then again, there are bright spots. Maker spaces are proliferating. Some kids are being allowed to build things and are discovering that it’s fun. Electronic parts are cheaper than they’ve ever been, as long as you don’t want ones with wires on them. Smartphones have more processing power than all the computers in the world combined when I was a kid. Computers are cheaper than anybody ever imagined; small computers such as the Raspberry Pi and Arduino cost less than a pizza and have a huge variety of available toppings. With such power available, it’s tempting to just play with the high-level functionality. It’s like playing with LEGO. My parents gave me one of the first LEGO sets made; it pretty much just had rectangular blocks. But I had my imagination and I could build anything I wanted. Today, you can get a Star Wars LEGO set and deploy a prefabricated Yoda. It’s much harder to invent new characters. The fancy pieces hamper the imagination. There’s a great scene in the classic 1939 movie The Wizard of Oz in which the wizard is exposed and bellows, “Pay no attention to that man behind the curtain.” This book is for those of you who aren’t going to listen to that and want to know what’s behind the curtain. My intent is to shine light on the fundamental building blocks on which high-level functionality is built. This book is for those whose imagination isn’t satisfied by high-level functionality alone; it’s for those who are drawn to creating new high-level functionality. If you’re interested in becoming a wizard in addition to being a mere wielder of magic items, then this book is for you.
Скрытое содержимое могут видеть только пользователи групп(ы): Premium, Местный, Свои