Ryan: Hmm. Well, it’s all pretty amazing really. And the funny thing is that it’s all very undervalued. The protocol I was talking about, HTTP, it’s capable of all sorts of neat stuff that people ignore for some reason.
Wife: You mean http like the beginning of what I type into the browser?
Ryan: Yeah. That first part tells the browser what protocol to use. That stuff you type in there is one of the most important breakthroughs in the history of computing.
Ryan went down a completely different path than I would have. I don't think most people who ask how the web works care about the http protocol. At least I wouldn't, if I didn't know better. I think I'd be more interested in how the network infrastructure is laid out and how requests get from my computer to a server and the data back and rendered. http is really just an implementation detail (people did this far before http existed).
Well no. Part of the web is the internet. You can't skip the internet and talk about resource representation caching in REST. But I am talking about the web -- that's why I mentioned how pages are rendered.
HTTP and HTML, while both are fundamental to the web, are also just implementation details. HTTP has evolved a fair bit since its inception for the web (there was no PUT or POST, for example).
To take your analogy, it would be like describing Cocoa library when your wife asks how an app works.
Gosh, i explained REST to my wife by explaining that it's just HTTP and then sending her a link to Roy Fielding's doctoral dissertation. So frustrating to assume that women can't be perfectly competent hackers in their own right.
Somewhat glib question, but, if your wife didn't already know about REST, how did she fare with the dissertation? Is that what she really wanted? Was her response "Thanks for not treating me like a child?" or more "I don't really have time to read a doctoral dissertation. Can't you just give me the executive summary?"
I mean, my wife is smarter than me and has a doctorate and a lot of letters after her name, but she's never cared to learn too much about how the drivetrain in a car works. If she asked a simple question like "How does a car's transmission work?", I highly doubt she'd be happy if I just linked her some pdf's covering the physics and mechanical engineering of CVT's and said, "you're welcome!"
Yes, I can see how it would be so much more approachable to throw dense text consisting of the following at someone:
"In parallel with the software engineering research in architectural styles, the object-oriented programming community has been exploring the use of design patterns and pattern languages to describe recurring abstractions in object-based software development. A design pattern is defined as an important and recurring system construct. A pattern language is a system of patterns organized in a structure that guides the patterns' application [70]. Both concepts are based on the writings of Alexander et al. [3, 4] with regard to building architecture."
That's so much simpler than "We need to be able to talk to all machines about all the stuff that’s on all the other machines. So we need some way of having one machine tell another machine about a resource that might be on yet another machine."
Your wife may have understood it, but Ryan's wife lacked the CS background.
In fairness, he didn't call it, "How to explain REST to your wife" or "How to explain REST to your grandma". He is talking about his own wife, which happens to be ignorant about computer science. There is no assumption on his part.
Most women are ignorant about computer science. It's a fact, not an assumption.
If you want the hard numbers check the number of ungraduates/graduates in CS/IT, for males and females.
I'm saying that women are not capable of grasping IT (hell, the very first programmer was a woman, mrs. Lovelace). I'm saying that in actual, real life, they statistically don't want/care/attempt to.
Maybe they are just smarter and go where the big money are these days (biology), as well as the better hours.
Ryan: The web?
Wife: Yeah.
Ryan: Hmm. Well, it’s all pretty amazing really. And the funny thing is that it’s all very undervalued. The protocol I was talking about, HTTP, it’s capable of all sorts of neat stuff that people ignore for some reason.
Wife: You mean http like the beginning of what I type into the browser?
Ryan: Yeah. That first part tells the browser what protocol to use. That stuff you type in there is one of the most important breakthroughs in the history of computing.
Ryan went down a completely different path than I would have. I don't think most people who ask how the web works care about the http protocol. At least I wouldn't, if I didn't know better. I think I'd be more interested in how the network infrastructure is laid out and how requests get from my computer to a server and the data back and rendered. http is really just an implementation detail (people did this far before http existed).