[HN Gopher] "Code" 2nd Edition ___________________________________________________________________ "Code" 2nd Edition Author : emme Score : 456 points Date : 2022-06-10 17:14 UTC (5 hours ago) (HTM) web link (www.charlespetzold.com) (TXT) w3m dump (www.charlespetzold.com) | muh_gradle wrote: | I am beyond excited. I have my worn out copy of the first edition | perched near me. Petzold's Code is by far my favorite computer | science and programming related book. | wly_cdgr wrote: | Hell yeah. An absolute classic | animesh wrote: | I majored in electronics (more than a decade ago) but always | worked in software development. Does it still make sense to | purchase it? I am eager to buy it, just need the push. :) | fodmap wrote: | Yes, it does. Here's a little push for you. I think you'll find | fascinating how all the pieces of the 'puzzle' fit together | beautifully. | animesh wrote: | Thank you, I decided on it. | commandlinefan wrote: | (Assuming the second edition is as good as the first) yes. This | is the kind of book you can read on a plane ride from New York | to San Francisco without taking notes or opening up your | computer, and still get a lot out of. It's captivating but | conversational and well written. | anthomtb wrote: | Buy it. | | I finished my Electrical and Computer Engineering undergrad in | 2008 and have been a software dev ever since. | | You won't learn anything new if you had computer architecture | and digital logic classes. But it's an excellent refresher. And | so well written that it reads more like light fiction than a | technical deep dive. | gjstein wrote: | I have a similar background in Electrical Engineering and, | while I enjoyed the book, it did not change my perspective. I | think the book does a good job of opening up what many | programmers (and, of course, others) may see as a "black box" | that they interact with on a daily basis. I recommend it to | those who do not already have a fairly comprehensive of how a | computer works, but if you think you pretty much already | understand how transistors become ALUs and have touched | Assembly, you may find it a bit boring (as I did). | systemvoltage wrote: | I second this. I found it to be a little elementary for me | since I already know these concepts. | | But it is useful for a _lot_ of people who don 't know how a | computer _really_ works. | animesh wrote: | Thanks for this solid comment. Assembly is the one that I am | most removed from at the moment. It is 15 years or more. So | it seems like I will enjoy it at the very least. | mypastself wrote: | Great book. It might be time to replace my first edition | hardcover. Looking forward to the follow-up blog post with the | more detailed info on the updated content. | systemvoltage wrote: | We need more people like Petzold in this world. The layers of | abstraction are stacked so high that we need to provide a | generalist view of what's going on. Some of these Jenga bricks | need realignment and people to maintain them, sometimes to re- | engineer those bricks to be stronger. | | We can't just all sit at the top of the tower and wonder why is | it behaving irratically! Please support by purchasing the book. | stevoski wrote: | This book (1st edition, at least) is astonishing. Perhaps the | best book for coders that I've ever read. I recommend it to all | the HN crowd. | | Reading it, I felt like I actually understood how computers | worked, right down to the "electricity going through wires" level | and lower, and how that builds up to if-then statements, etc, in | a high-level language. | begueradj wrote: | The content is something we learn in universities, even deeper. | I think it's good for self taught programmers | coldpie wrote: | This ~$40 book was way, way, way more valuable education | material than the many thousands of dollars I wasted on a | university program. | ThrowawayR2 wrote: | Don't oversell it. Speaking as someone who has done VLSI | layout of a 32-bit processor in my student days, Petzold's | book is a solid popularization but it doesn't cover a tenth | of what a computer engineering degree does. | coldpie wrote: | Fair point. I'm speaking about a computer science degree. | duped wrote: | Don't most CS students still have to take logic design, | microprocessors, operating systems, compilers, etc? | krallja wrote: | Depends on the school, for sure. My CS education included | a course on Computer Architecture, for which the final | project was to implement your unique architecture on an | FPGA and demonstrate it running a (simple) algorithm. I | liked that course so much, I went back for Computer | Architecture II and learned about pipelining, hazards, | etc. | LordDragonfang wrote: | I can't tell whether I had an unusually good CS education, or | if I'm missing something, but everything I see discussed in | this thread as crucial insights taken from this book are | things I recall being covered at least once in university, | yeah. Perhaps it's just especially effective in its | organization and ordering of fundamentals. Still, the praise | it's getting makes me want to pick up a copy just to see if | it can fill in any gaps I've missed in truly grokking those | concepts. | marai2 wrote: | I think the difference is that this book in about 200 pages | or so, starts from two boys using flashlights to attempt to | "communicate" with each and goes through simple circuits to | logic gates to CPU, ALU, volatile memory, rudiments of | assembly language to a high level language. That's the | difference, hand holding you through the explanations with | the emphasis on pedagogy rather than being a dry theory | book. | sixstringtheory wrote: | Yes, it consolidates a ton of information very well. I | think it can appeal both to the beginner/layperson as | introductory, or to those with more experience to put | lots of pieces together. I didn't learn much new | information but it tied together many things, and just | reviewing and recalling old theory felt like a good | exercise. | Barrin92 wrote: | As a computer science student ( _Informatik_ over here), I | have to say that my university program was heavy on | theoretical CS and maths, but there was extremely little in | terms of hardware or low level engineering. The one | networking class I took diving into the internet stack was | probably the closest to it. | | Obviously everyone's experience will be different but I think | of a CS education more of treating computers like an abstract | machine, not a physical one. | halotrope wrote: | I got the first edition and it was transformative. Finally the | connection between electricity, computers and modern | communication was made. This all while being a fun-easy read. If | it was not for this book I would never have started going down | the rabbit hole of dabbling with ICs, Arduinos and (basic) | electric circuitry. | | As Alan Kay famously said "People who are really serious about | software should make their own hardware". No need to develop a | whole computer, just getting your hands dirty with more basic | electronics than consumer hardware will make you a much more | complete technician. | jljljl wrote: | Love this book. Recommend pairing it with Nand2Tetris to get a | good understanding of how Computers work: | | https://www.nand2tetris.org/ | drivers99 wrote: | Nand2Tetris is great and I'd like to add "The Pattern on the | Stone" by Danny Hillis to the list. (I just noticed it was | revised in 2015.) | kristopolous wrote: | Great to see petzold still at it | planckscnst wrote: | I recommend this to anyone learning about programming or | computers. That's usually kids. Last year, I went back to ready | it again and it started with a story about trying to communicate | with your friend next door. I thought "oh, this story isn't | really relatable to kids today - they all have phones". | | So I'm really glad there is a second edition and I'm wondering if | there is a new story. | eterm wrote: | This is by far the best book I've read that really made computers | click for me. | | I think it's especially good for people like me who work in | software development but don't have a computer science degree or | background. Going from scratch and the very foundations of | telegraphy all the way through to what opcodes really are and how | code actually works in memory was an eye opener for better | understanding what coding really is. | peterkelly wrote: | One of the best computing books I've ever read. Looking forward | to checking out the new edition. | [deleted] | uwagar wrote: | the book that showed me what a pointer is. | | there is a hair rising line in that book in italics! almost like | in a horror book like exorcist or dracula. | | 'turn the book on its side. can you see it?, its counting' | | hair raising stuff. thanks mr petzold. | bluedino wrote: | My favorite Petzold book is 'Programming Windows 95' | bena wrote: | I got the Fifth Edition. A book that's served me well. Learning | the Win32 API, holding open doors, improvised weapon, it does | it all. | formerly_proven wrote: | My sample has a gigantic splat on its back because I threw it | at some insect many years ago and it was positively crushed | by The Petzold's impact force. Never cleaned that off because | it added to the aesthetic of raggedness. | qbasic_forever wrote: | As doors got heavier it became necessary to add Petzold's | windows programming with MFC book to the stack too, another | massive (and great at the time) tome. | Dwedit wrote: | It is a very large book indeed. | matwood wrote: | Definitely a classic from back when books were sold by weight. | JJMcJ wrote: | It's a large book but has very little fluff or padding in it. | | Covers a huge amount of ground. | | I learned a lot from it back when I did some Windows work | back around 2000 to 2005. | | Also MFC. | matwood wrote: | It was an awesome book, and was basically required for | win32 programming in the late 90s. | ultrasounder wrote: | Great. There goes my summer.:-) Essentially read this book with | my 14 old Aspie and help him understand and appreciate Software | and the hardware it runs on it. Thanks for posting this here. | mtoddsmith wrote: | I love the antiquated ordering process. Wish I could just click | buy from my iPhone or send crypto. | scop wrote: | This book was absolutely essential when I was first sinking my | teeth into software programming. Things that seemed either | arbitrary or completely mysterious suddenly made sense now that I | had a _contextual understanding of how computers worked_. Without | having that knowledge, I think my career would have been vastly | more difficult and frustrating. | | While I understand many "get started programming" books/tutorials | put an emphasis on getting coding asap, I really had to stop and | learn about _computers_ before I could start coding in a well | rounded way (and that's coming from a WebDev, who doesn't even | have to deal with low-level stuff too often!). | | Thank you Mr. Petzold!!! | coldpie wrote: | Wish I had something to say other than "me, too." I read it | sometime in high school, well after I'd learned C, and it | really made me understand what was actually happening to the | code I wrote. Very helpful later in my career and hobbies too, | when I have to do reverse-engineering. | SkyMarshal wrote: | Same. I think some of us learn best by having a map of the | territory and an understanding of how everything all fits | together first. Having that better helps us deep-dive into and | master specific areas. This one single book provides that map. | _jal wrote: | Absolutely. I tend to be mystified and lost without some way | to place what I'm doing in some larger context, even if that | context is super-vague or wrong in technical ways. | | Had several teachers who utterly refused to provide that, | repeating "it'll all make sense eventually." Well, it did, | after I got better teachers. | scop wrote: | That's a great observation about teachers. I was fully | convinced in late middle school that I was an idiot who had | no hope to achieve good grades or a grasp of subjects. Then | suddenly I found myself getting As in high school without a | real change in effort/routines. I attribute that in large | part to learning the "why" behind various subjects via new | teachers. | unwind wrote: | Uh, as someone with too many years of programming behind me to | imagine that, can you mention some concrete things that you | found arbitrary or completely mysterious, and that the booked | cleared up for you? Thanks. | jrmg wrote: | I often wonder: for someone with no understanding of how | computers work; no idea about electricity and transistors, no | idea about CPUs executing instructions, no idea about | software and abstraction: what do they think about when they | click a 'play' button in a music player, and the interface | updates and music starts? Do they think about what is | happening 'inside' the box? I think I do. | | I suspect I have a completely different mental model than | them - just a completely different casual understanding of | it. I find it hard to imagine how they must see the modern | world. It must seem like magic! | | Note that I'm not at-all speaking about intelligence here. | Just knowledge. | | Anyway: for that person, I think that if they read 'Code', | their entire understanding of the world would change, which | is sort of amazing. | thoms_a wrote: | I've asked very young students what they think a computer | is and how it works. There's always at least one student | who correctly replies: "It's a machine that does what | someone told it to do". | | Of course modern computing devices are absurdly complex and | intricate machines all the way from silicon to software, | but the basic mechanism is easily grasped by children. For | all their complexity, computers are still just programmable | calculators. | CamperBob2 wrote: | _There 's always at least one student who correctly | replies: "It's a machine that does what someone told it | to do"._ | | That's correct, right up until someone tells a computer | to beat a 9-dan Go master, but not how to do it. | pbourke wrote: | > I find it hard to imagine how they must see the modern | world. It must seem like magic! | | I think this is unnecessarily infantilizing. There are a | great many very complex things in the modern world, and | people must employ abstractions for most of it. | | I think with the rise of multi form factor computing, there | is more basic literacy about the nature of computers these | days. People don't think that a phone god makes their phone | work and a laptop god lets them work on their document. | jrmg wrote: | I said 'like magic'. I know they know they're made by | humans and understandable with effort. | | Complex chemistry and materials engineering feels 'like | magic' to me. I know I could understand it with enough | effort - but I don't understand it now. I'm sure my view | of everyday things would change if I did. | azov wrote: | What's your mental model of a dog?.. What's happening | inside when he barks or wags his tail? Why does he like | carrots more than cheese? How does his memory work?.. | | The way you think of dogs is probably not very different | from the way many people think of computers. | skripp wrote: | What makes this book great is that it more or less only | assumes you know how an on-off switch works. Then he goes on | to teach you how a (although rather primitive) CPU works and | how you would program it. | | The teaching style in this book is so unbelievably good that | even if you know all the ins and outs of a computer you want | to read on because he explains everything in a way that you | wish that you would have come up with yourself. | jgwil2 wrote: | > assumes you know how an on-off switch works. | | Really he explains how that works too. It's reasoning from | first principles at its finest. I wish school curricula | were so well-designed. | sixstringtheory wrote: | I didn't discover it until after coding for over 20 years and | getting a masters in cs, and I really enjoyed it for filling | in some gaps in my knowledge of the engineering side of | things and the historical treatment of how various things | came to be. And it was a great review of all the stuff I did | already know from formal training and experience. It was a | quick and easy read, even after tracing through every | schematic, so I found it very enjoyable. | scop wrote: | That's a great question. I started out as a programmer having | been a casual computer user through my childhood/teenage | years. I never took apart computers or ventured into how they | worked. Thus, when I decided to pursue this as a career, I | had a lot of catch up to do. Here's a couple of things off | the top of my head: | | - The terminal was completely foreign to me. Why is it | structured so? How are permissions set? Octal?!?!?! | | - Why do I have to specify a type in a programming language? | | - What/why are all these special characters used in | programming?! | | - Why is a program structured in the way it is? What are the | levels of abstraction working in a given program? | | - What happens when I run/compile my program? | | I would also say that learning a little bit of C also really | helped illuminate computers for me. Not only in the sense of | _how_ they work, but also why programs use their current | syntax. For example, for developers who look at Javascript | for the first time seeing parenthesis, colons, curly | brackets, etc all make an initial sense: they seem familiar. | However, to somebody first diving in all of these characters | seem totally arbitrary! Having gained a sense of how | computers worked and then a very basic introduction into low- | level programming, suddenly these high level languages seem | much less arbitrary. | unwind wrote: | Thanks for sharing! I can (of course) understand that many | of these things seem arbitrary, but would never have been | able to come up with the list on my own. :) | percentcer wrote: | I'm not the OP, but some personal examples: | | - why is little-end / big-end a thing? | | - why is volatile memory called volatile? and why can't we | just keep that data around? | | - what can a 64-bit computer do that a 32-bit computer can't? | | - what do people mean when they say "code is data" | | - what's an instruction, really? | | - how did people program computers before they had screens? | | - how did people program computers before they had keyboards? | | - why is it called 2's complement? | | And others that I can't recall right now. It's a fantastic | book and I recommend it to everyone who is the slightest bit | interested in how computers work. | unwind wrote: | That's a great list anyway, thanks! | kerv wrote: | I took a course like 10 years from Charles. He was amazing and | I'm sure this book is just as amazing. | bloppe wrote: | Lol "the hidden language of computer hardware and software" | imagine calling Chinese a "hidden language" on an intro text book | just because it's not immediately obvious how to speak it. | SteveDR wrote: | I mean, if we somehow used Chinese every day without realizing | it, then yeah that would be a fair analogy. Code is literally | hidden from users. | scrollaway wrote: | Any suggestions on where to preorder this from Europe (Belgium)? | beezlebroxxxxxx wrote: | > If you'd like to pre-order the book from the publisher, don't | try to find the book on the Pearson website. Instead, order the | book from InformIT.com or MicrosoftPressStore.com or your | favorite online retailer. | | So I imagine any online retailers where you might be able to | preorder technical books. If you are not adverse to doing so, | it can probably be pre-ordered in the coming months on Amazon, | as well. | rafaelhaseyes wrote: | In Europe you could for instance order at Blackwells[1], they | are an independent bookseller and fairly cheap for english | language books. Even better would be to use a local | independent bookseller in your own country of course | | [1] blackwells.co.uk | ctur wrote: | The 1st edition of this book was very influential for a | generation (or more) of engineers. I can't wait to see how it's | evolved and what I learn reading a new edition through again. | no-dr-onboard wrote: | My wife bought me this book when I was in college and I never | found time to read it. The comments here make me want to crack it | open and give it another swing. Thank you all. | bmitc wrote: | I still need to get to the first edition copy I have, but now I | think I'll wait to read it with the expanded bits on CPU | architecture. | jmconfuzeus wrote: | This is the book I used to teach myself basic CS back in 2010. | user3939382 wrote: | This is a very respected book. Famous. I've had my copy for | several years. Never did read it. | RcouF1uZ4gsC wrote: | >The iconic graphic still displays the letters CODE in Braille, | Morse code, and ASCII. | | All you have to do is add a '0' to the front of each ASCII | sequence to make them 8 bits instead of 7 bits, and then they | will be UTF-8 encoded. | localhost wrote: | Code is my favorite technical book of all time [1]. Charles does | an amazing job of building a computer up from basic principles | "two young boys who want to communicate after their parents tell | them to go to bed at night" all the way to modern (for 1999) | computers. He layers abstraction on top of abstraction all the | way to a working computer. My only (slight) disappointment in the | book is that he tries to cover operating systems -> object | oriented programming in a couple of chapters at the end. That | could have been a multi-volume series in its own right. | | It goes really well with Elements of Computing Systems (2nd ed) | [2] which I kind of think of as a "lab manual" where you get to | build a computer from first principles. | | [1] https://www.amazon.com/Code-Language-Computer-Hardware- | Softw... | | [2] https://www.amazon.com/Elements-Computing-Systems-second- | Pri... | danielvaughn wrote: | I picked it up years ago, got through the first few chapters, | but then never finished it. I _loved_ the early buildup and | still want to go back and keep reading. | greymalik wrote: | When the book "builds" a computer, I'm assuming that's a | virtual computer? If so, what language does it use? | jagged-chisel wrote: | GP said "builds up to." It's more about the abstractions | adding up so that the reader understands how electrons can be | programmed. There is no implementation of any kind of virtual | or hardware machine in the book. | | He goes: electricity, relays, logic gates, circuits (like | adders), CPU, RAM ... | | It's been awhile so I might have missed a step or two. You'll | come away knowing how we used electricity to get from | lightning bolts, to pocket computers. You will not come away | with a programmable machine. | Jtsummers wrote: | If you're actually looking for something that _does_ build to | a virtual computer, Nand2Tetris (second edition of the book | _The Elements of Computing Systems_ that goes with it is now | out) is a great companion to _Code_ : | https://www.nand2tetris.org/. | | _Code_ is more high level, Nand2Tetris and _Elements_ is | project based but covers some similar territory. | toma_caliente wrote: | I have this book and have never read it. I may just wait for the | second edition to release at this point | dmitryminkovsky wrote: | Wow this is awesome. Code was an eye-opening book for me as a | child. I have a 2 year old, and have been wondering whether he | could possibly appreciate camera film ISO codes (an early example | of "a code" in the book), given that he'll likely never see a | roll of film, or other things like that. An updated edition is | great news. | WalterBright wrote: | I suppose I came to understanding programming in an unusual way. | I first knew a bit of BASIC and could write simple programs in | it, how the computer actually worked was a baffling mystery. | | My first semester in college, I took a class in semiconductor | physics. That started with the PN junction, to diodes, to | transistors, to gates, to flip-flops, to clocking, to registers, | adders, etc. | | Later on, this made learning microprocessors straightforward, | then assembler, then C, etc. | | I suppose it would have been faster to go straight to | programming, but I am happier knowing how it works all the way | down. | ratww wrote: | I also learned electronics first, but in a much more amateurish | way. As a kid I loved electronics magazines and building | projects from them. My dream was a Z-80 kit, but even much | simpler kits were too expensive for me. I ended up making a | make-believe computer with a few logic gates, decade counters | and flip flops. That was my "computer", which taught me digital | logic. Not a lot of power, but for a 10-11 old it could compute | the stuff I wanted, and I eventually learned digital logic. | | I never got the Z-80 kit but I eventually got a computer with | DOS, which had QBasic, where I learned to code by modding | GORILLA.BAS and NIBBLES.BAS. What a weird language, there was | AND and OR, but not NOR, XOR, NAND and others... | nurettin wrote: | I learned it the hard way as well. I think my book was | "computer architecture" by Morris & Mano you start from PN to | logic gates to truth tables to carnough diagrams to writing | your own adder to D transistors to memory to bus to clock to | cpu to write your own assembly to perform machine instructions. | endofreach wrote: | I have no idea how i ended up buying this book last year (haven't | heard of it from anyone)... the best book i have read in recent | years. Definitely the best tech book i have or will ever read | (haven't even finished ,,code" fully yet, lol). | | Also: i found a book i always was too scared of starting to read | (because i didn't want to feel like the biggest idiot trying to | read it): ,,The Annotated Turing". When i looked at it again | after having read ,,Code", i saw it was also written by Petzold. | The way he wrote ,,code" i know, that this will be great. I am | very excited to read it when i have a few hours to fully block | for it. | jgwil2 wrote: | Haha I like how the cover shifted to dark mode... | Minor49er wrote: | This is great news. This book has been highly regarded for being | able to explain the magic behind what makes a computer actually | work. The new edition has about 70 pages of additional material. | | There is also a companion website that is under construction that | already has a delightful amount of interactivity, showing how | binary switches, relays, and gates work: | | https://www.codehiddenlanguage.com/ | morninglight wrote: | "Programming Windows" exposed the simplicity behind the Windows | architecture. If you had even a smattering of C experience, | Petzold could get you writing Windows applications the same day | you opened his book. He triggered an explosion of software | development. | | There are excellent books for novice Linux programmers, but | unfortunately, nothing compared to Petzold's clear and direct | presentation. | | . | shadowfox wrote: | > There are excellent books for novice Linux programmers | | Do you have any suggestions in this regard? | crispyalmond wrote: | Unsure of novice, but I have this book[0] which is pretty | great. | | [0] https://man7.org/tlpi/ | Stratoscope wrote: | This brings back fond memories. Charles thanked me in the | Acknowledgements section of the first edition of Programming | Windows as "the indefatigable Michael Geary." | | I had spent many hours on BIX and CompuServe and maybe GEnie | helping other Windows programmers get their start. | | So I like to think that in a small way I contributed to | Charles' success in educating a generation of Windows | programmers. | | Remember, friends, always pass it forward. | pacaro wrote: | Absolutely! My first software job back in 94, on my first day I | was given a battered copy of Petzold and told to read and do | the exercises up to chapter 7. It was an extremely effective | boot camp for a novice windows programmer | antiverse wrote: | Looking back it's really strange that nowhere in our CS/Soft Eng. | curriculum is it covered exactly what is meant by the term | "abstraction" when it comes to how a computer works. That it's | all, after all, shuffling of electrons (underlying MOSFET | chemistry notwithstanding) and signals is the missing link. | | There's other books out there, and Ben Eater's website, that | indepth show how to construct processor, gates, store "memory", | and so on. | 2snakes wrote: | Right. Imagine a car. Now consider how it is abstracted to you. | The wheel, the controls, the pedals. That's an abstraction of | the complex system that is a car. | skeeter2020 wrote: | You're describing what was the CompSci option for an egineering | degree when I went to Uni the first time. If you look at | another great book for learning the "full picture", Nand to | Tetris, Comp Sci is the second half of the book while | Engineering seems to fill the space between physics and low- | level software. | qbasic_forever wrote: | When I was in school 'computer engineering' was the degree you | wanted for that level of understanding. It was a blend of 50/50 | computer science and electrical engineering. You'd learn enough | analog EE to understand transistors and enough digital EE to | understand logic and computer architecture (this is really | where you learn the gory details of how a CPU works | internally). Then you'd focus on enough CS to flesh out low | level OS, systems programming, etc. to make it all work. | Basically learn enough to go from nothing but a circuit diagram | to a computer booting up a display with a login prompt for an | OS you designed and built, on hardware you designed and built. | skavi wrote: | Still is as you describe. Just graduated from a CompE | program. | xt00 wrote: | Great book -- read it when I was a teenager -- but one thing that | I think makes the book a bit harder to explain to smaller kids | these days is the use of relays for explaining lots of things. | Its a great concept to explain things but it does tend to cause a | bit of confusing for younger kids who may not have played with | electromagnets as much as kids from 20-30 years ago. Not sure | what to replace relays with but maybe having kids watch a super | easy to understand video about how relays work would help make | the book easier to understand for say like an 8 year old reading | the book. | rrauenza wrote: | My kids played a lot with "relays" in Minecraft using Redstone. | Not quite the same, though! | xt00 wrote: | Ha that's a great idea.. sounds like a good idea for a coding | book.. hey so you know minecraft.. use that knowledge to | learn how computers work.. | userbinator wrote: | Hydraulic relays? I vaguely remember coming across a similar | "bottom-up" book about how computers work many decades ago | (near the end of the mainframe/minicomputer era) which used | water flowing through pipes and valves as its analogy. | Unfortunately the title wasn't so memorable, but I do recall | the cover was a photo of a little girl filling a bucket from a | spigot on the outside of a house. Does anyone know what book | that was? I've searched a bit before, but had no luck. | ultrasounder wrote: | very easily substitute using FETs. Essentially the same as | relays and BJTs but much easier to control logic FETs than | BJTs. | squarefoot wrote: | But that would introduce more complexity (polarity, biasing, | etc) that would distract from the initial purpose. With a | relay they should only learn how connecting a battery to pins | 1 and 2 closes the contacts on 3 and 4. Using relays with | more throws they can also learn the basics of logic gates, | flip flops, etc. I believe that relays still have a place for | educational purposes. | yumaikas wrote: | The first edition of this book was my introduction into how | computers worked at a lower level. It gave me enough of a | grounding in various concepts that I was able to understand much | of a Digital Systems class. | | It also partly inspired my first efforts at building a scientific | calculator (which would never be quite finished). | | I definitely recommend it for folks who want to build context on | the lower levels of computers, as a start into understanding | CPUs, binary/hex, and other parts of how we tricked sand into | thinking with lighting. | benjaminclauss wrote: | would love a similar book for Networking up to the modern | Internet | yardie wrote: | I bought Code and Code Complete around the same time. And started | reading Code before switching to Complete. And now I'm reminded I | have the 1st Edition still sitting on my bookcase read about 1/3 | the way through. | kris-s wrote: | One of my all-time favorite works of non-fiction. Essential | reading for software engineers. | JonD23 wrote: | I read the 1st edition while I was in high school. I knew I | wanted to get into tech after reading that book. Many years | later, I worked with Charles at Xamarin. For weeks after I | joined, I thought of ways to get him to sign my book. One day I | heard he was doing a book signing at an event, and I volunteered | to go. He signed my book, "from bits to mobile", and now it lives | on the top of my bookshelf. | nightski wrote: | Bought it! I own the first one and it's just a fantastic book. | I've shared it with family members to help them understand how | computers work (more tech savvy ones at least). But yeah love | this one. ___________________________________________________________________ (page generated 2022-06-10 23:00 UTC)