3 ms·
Yes, the author's observation is true, but I don't think it's particularly interesting for two reasons: 1) This isn't anything new. A complete understanding is
by sherwin 15y ago
Yes, the author's observation is true, but I don't think it's particularly interesting for two reasons:
1) This isn't anything new. A complete understanding is not only no longer possible, it was never possible. What level of detail counts as a "complete" understanding? Even when computers were much simpler, you probably wouldn't have a thorough understanding of every layer of abstraction, from software to hardware to the physics of the underlying electrical components.
2) This sort of complete understanding is unnecessary anyway; these references exist as references for a reason. To do your job, you need familiarity and layered understandings of the relevant processes, and when you absolutely need to know the fine details of something, you can simply look it up.
- Spearchucker 15y agoRespectfully, I disagree. Such a complete understanding is eminently possible. It is as easy to understand as any other complex system. You work at a high level of abstraction to understand the breadth of complexity, and then work down into the component level to understand the depth of complexity. Rinse, and repeat for every subsequent level. The caveat is that it takes time and dedication. I can't comment on whether it's necessary or not. There might be scenarios where it is. There might be other scenarios where you're better off studying kung fu, because that might be a quicker route to enlightenment.
- DanBC 15y agoClifford Stoll, in "The Cuckoo's Egg"[1] describes the hardest interview he ever had. The interviewer asked "Why is the sky blue?" and then, after Stoll gave his answer, asked "Why?" This process repeated several times, until Stoll was describing in great detail some advanced physics and chemistry and math. In that spirit: Please could you describe electron and hole flow in semiconductors? Why? Why? Why? There's lots of bits of computing that works because it works even though we don't really know why it works.
- gtani 15y agohttp://news.ycombinator.com/item?id=3606653 http://news.ycombinator.com/item?id=3606653
- sherwin 15y agoI think we are talking about different meanings of "understand". You seem to be using the general meaning -- any expert in a field, given enough time and dedication, can gain understand both the high level complexity and the individual components of a complex system; I agree with you here. But the sort of understanding I'm referring to, and what I believe the author is referring to, is a comprehensive, infinitely detailed understanding -- the sort of understanding of OS X APIs after internalizing 5000+ pages of reference. I think this sort of "complete" understanding is not what we mean when we say a expert has an excellent understanding of a subject; instead, when we mean that that expert can work knows what is important. For example, you could be an expert (and have an excellent grasp of the material) of some programming language, but if someone asked you about the exact name of a rarely used library call, you might not know it off the top of your head. You would know where to look it up, and you would know how to use it, and you would know that that library call exists, but you wouldn't recall the exact name. I think many people can obtain these expert understandings of complex systems, but that's not what the author is referring to (or if he is, then I think his argument is unsound because no one would approach gaining an expert understanding of OS X by reading 11,000 pages of reference material). The author is talking about a unnecessarily detailed "complete" understanding in which you know everything about the system.
- gojomo 15y ago…never possible… I disagree. Consider a computer like the Apple ][. I didn't 'completely understand' it at the time, but with what I've learned since (including a CS degree), it is now very plausible to me that it could be exhaustively understood, down to every wire and line of OS/firmware code. I can see the boundaries of the areas I don't know clearly, and know that a bounded amount of extra effort could get me down through every 6502 opcode, or all relevant functional physical/electrical properties of all the subsystems. (While I'm still not strong in the electrical engineering parts, the exercise in my undergrad EECS class where we built a 4-bit CPU from TTL components was the key for me in connecting the electrical world of circuits and logic gates to the abstractions of executable software.) Maybe, nowadays, the typical systems (like the article's MacBook Air example) are too big, drawing from too many specialties and involving too many details, for any one person to decompose 'all the black boxes' with comprehensive understanding. But just a few decades ago, that wasn't yet the case.
- waterlesscloud 15y agoWhat I think was possible was understanding down to the level that you could reliably know what caused the Apple II to act in any given way. Was it possible all the way down to the transistor level? Maybe not, but it didn't have to be in order to understand the behavior. It was certainly possible down through the IC level, and there were any number of people who achieved that sort of mastery. I don't believe that's still possible with any consumer general purpose computer. I think there are people out there with that level of understanding of specialized devices, probably up to and including things like Xbox and PS3. I don't know if there are people that understand an airbook to that level, or a desktop PC, or their webserver. Maybe, but it seems unlikely.