Two-Bit History

twobithistory.org · Personal blog · on HN since 2017

Two-Bit History is a long-form blog on the history of computing ideas, covering Lisp, REST, Simula, and the Semantic Web.

What HN saysCommenters describe it as deeply researched long-form history and cite it as the best overview of the Semantic Web and common REST misconceptions.
100HN people shared it
36linked it in comments
89stories submitted
5.5Kstory points
3 months agolast shared
2017people per year2026

Most-shared posts

  1. 1
    What Did Ada Lovelace’s Program Actually Do?
    10 people · 776 points · first shared 2018 · 129 comments on HN
  2. 2
    Roy Fielding's Misappropriated REST Dissertation (2020)
    10 people · 352 points · first shared 2020 · 208 comments on HN
  3. 3
    OOP Before OOP with Simula
    8 people · 92 points · first shared 2019 · 19 comments on HN
  4. 4
    How Lisp Became God's Own Programming Language
    7 people · 777 points · first shared 2018 · 307 comments on HN
  5. 5
    The genius of binary space partitioning in Doom (2019)
    7 people · 599 points · first shared 2019 · 159 comments on HN
  6. 6
    Whatever Happened to the Semantic Web?
    7 people · 400 points · first shared 2018 · 201 comments on HN
  7. 7
    Things to Know About GNU Readline
    7 people · 380 points · first shared 2019 · 113 comments on HN
  8. 8
    A Short History of Chaosnet (2018)
    6 people · 88 points · first shared 2018 · 6 comments on HN
  9. 9
    Where Vim Came From
    5 people · 429 points · first shared 2018 · 259 comments on HN
  10. 10
    Codecademy vs. the BBC Micro
    5 people · 133 points · first shared 2019 · 62 comments on HN
  11. 11
    The Rise and Demise of RSS (2018)
    5 people · 40 points · first shared 2019 · 75 comments on HN
  12. 12
    Friend of a Friend: The Facebook That Could Have Been
    4 people · 203 points · first shared 2020 · 58 comments on HN
  13. 13
    The Rise and Rise of JSON (2017)
    4 people · 174 points · first shared 2017 · 167 comments on HN
  14. 14
    The Real Novelty of the Arpanet
    4 people · 88 points · first shared 2021 · 4 comments on HN
  15. 15
    How the Arpanet Protocols Worked (2021)
    4 people · 54 points · first shared 2021 · 9 comments on HN

What HN people wrote when they linked it

riordan · 2023-11-08
This is a big step forward, and is also making me nostalgic for the Friend-of-a-Friend (FOAF)[0] blogrolls of the early 00’s. RDF-in-HTML standard that could express recommendations and relationships. That said, I’m glad to see Webmention adoption. It’s got a much clearer purpose than FOAF (it might’ve been a little too expressive) and fits nicely into the current web ecosystem. [0]: https://twobithistory.org/2020/01/05/foaf.html
SamLL · 2022-08-19
Ada Lovelace wrote what is often considered the first computer program, a set of instructions for the (unbuilt) Analytical Engine to calculate Bernoulli Numbers. Appropriately, if this is the first computer program, it also contains the first bug! It's impossible to say whether this was a typesetting error or Lovelace's original, but the transcription of her instructions accidentally transpose a "v4" and "v5". source: https://twobithistory.org/2018/08/18/ada-lovelace-note-g.html
gklitt · 2020-09-25
Semantic Web postmortem seems like one of those things where everyone is touching their own part of the elephant. This is the best overview I've found of the basic history: https://twobithistory.org/2018/05/27/semantic-web.html
cryptos · 2020-09-10
There was a great article about the common misconceptions about REST recently: https://twobithistory.org/2020/06/28/rest.html The longer I think about it, the more I come to the conclusion that REST is simply not useful for application development in general. It is no accident that most APIs called "RESTful" by their creators are violating basic REST principles. But REST has some useful attributes even if not used strictly - caching comes to mind. The question is: should we have another "standard" for web application development? Something more like RPC? There are some approaches, but nothing that I would call a broadly accepted standard. How should such a standard look like?
weebst · 2020-04-07
https://twobithistory.org If you think you'd enjoy long-form, deeply researched essays that look at the development of technical ideas throughout the history of computing, I've got you covered.
anarchyrucks · 2019-09-23
Two bit history does something similar. https://twobithistory.org
ttepasse · 2025-09-10
I was surprised to see an Eckart Walther cited as an co-creator of RSS. That was news to me, and I followed the RSS wars since 2000. I thought I knew the names of everyone involved. Turn's out: he really is. RSS was created by Ramanathan Guha, Dan Libby and Eckart Walther at Netscape first as an RDF Site Summary but only Guha and Libby are named on the original specs. That format then got transformed into a pure XML-based format, then merged with Dave Winer’s format, who then became chief author for the following RSS 0.9x and 2.0 versions. And of course in parallel there were the rivalling RSS 1.0 specs (again RDF based) and the Atom effort. Should anybody be interested in now obscure histoy: Twobithistory did a longer retrospective of the feed wars: https://twobithistory.org/2018/12/18/rss.html And the (slightly disputed) RSS Board, its own fractal in the RSS history, keeps copies of the original specifications: https://www.rssboard.org/rss-history
benzible · 2023-08-01
Worth reading this: https://twobithistory.org/2020/06/28/rest.html > REST purists often complain, for example, that so-called REST APIs aren’t actually REST APIs because they do not use Hypermedia as The Engine of Application State (HATEOAS). Fielding himself has made this criticism. According to him, a real REST API is supposed to allow you to navigate all its endpoints from a base endpoint by following links. If you think that people are actually out there trying to build REST APIs, then this is a glaring omission—HATEOAS really is fundamental to Fielding’s original conception of REST, especially considering that the “state transfer” in “Representational State Transfer” refers to navigating a state machine using hyperlinks between resources (and not, as many people seem to believe, to transferring resource state over the wire).8 But if you imagine that everyone is just building FIOH APIs and advertising them, with a nudge and a wink, as REST APIs, or slightly more honestly as “RESTful” APIs, then of course HATEOAS is unimportant.
dralley · 2021-09-15
Likewise, people dispute that Ada Lovelace was the first programmer, because Babbage and Menabrea had previously created a few simple example programs. But that downplays her accomplishments too much. She didn't write the "first program" but she was the first to understand what computers would be capable of doing (for example, that by assigning numbers to letters and symbols, computers could do more than simply perform numerical computations), and she was the first to invent foundational control flow structures such as loops and conditionals. Her program was much more rigorously defined and sophisticated than any previous examples. >The longest program that Menabrea presented was 11 operations long and contained no loops or branches; Lovelace’s program contains 25 operations and a nested loop (and thus branching). https://twobithistory.org/2018/08/18/ada-lovelace-note-g.html https://writings.stephenwolfram.com/2015/12/untangling-the-tale-of-ada… https://projectlovelace.net/static_prod/img/Diagram_for_the_computatio…
memexy · 2020-07-06
The semantic web was meant to be the substrate on which personal agents would serve people by doing the type of thing you described but it didn't happen > The entertainment system was belting out the Beatles’ “We Can Work It Out” when the phone rang. When Pete answered, his phone turned the sound down by sending a message to all the other local devices that had a volume control. His sister, Lucy, was on the line from the doctor’s office: “Mom needs to see a specialist and then has to have a series of physical therapy sessions. Biweekly or something. I’m going to have my agent set up the appointments.” Pete immediately agreed to share the chauffeuring. At the doctor’s office, Lucy instructed her Semantic Web agent through her handheld Web browser. The agent promptly retrieved the information about Mom’s prescribed treatment within a 20-mile radius of her home and with a rating of excellent or very good on trusted rating services. It then began trying to find a match between available appointment times (supplied by the agents of individual providers through their Web sites) and Pete’s and Lucy’s busy schedules. I think Alan Kay is right, the computer revolution hasn't happened yet. There is much potential that computer networks can unlock but we haven't done the work to unlock it. -- https://twobithistory.org/2018/05/27/semantic-web.html
carapace · 2019-09-17
Know your stack. Intimately. There's a very interesting book called "Hollywood Secrets of Project Management Success"†. Actually, IMO only about half of it is interesting, the parts about how Hollywood makes movies is fascinating, the rest of the book seems to me to be a mildly enterprisey pitch for Agile Methods, (of which YMMV.) THe fascinating thing about Hollywood is that it's old (over a century) and they have developed a system that works: it's rare for a film to go over-budget or over-schedule. I can't do a proper summary here, but the fundamental gist is that they have detailed plans, that experience says are realistic, and they track those plans closely and deal with divergence systematically. †https://www.oreilly.com/library/view/hollywood-secrets-of/978073562569… Anyway, one of the tools they use, if transposed to the IT industry, would be something like an Inventory of Dependencies. It would list every piece of software that your system depends on along with costs, risk assessments, and alternate dependencies for each. I don't have the book with me or I'd give more details. My point is, we should do this and usually don't. It's kind of on the company management if you're using, e.g. cURL, and your stack blows up and only then do you discover there's not a great "support story" there, eh? Taking infrastructure for granted is not how you get reliability. FWIW. - - - - BTW, readline and bash are maintained by one volunteer. > GNU Readline is today…
BoingBoomTschak · 2025-05-24
Please read https://twobithistory.org/2019/11/06/doom-bsp.html and https://30fps.net/pages/pvs-portals-and-quake/ Also, I think most of the x86 magic was done by Abrash.
asicsp · 2025-04-19
See also: "Where Vim Came From" https://twobithistory.org/2018/08/05/where-vim-came-from.html Discussion: https://news.ycombinator.com/item?id=17696023 (420 points | Aug 6, 2018 | 259 comments)
bazzargh · 2024-09-09
bash and readline - Chet Ramey. Both originally by Brian Fox https://twobithistory.org/2019/08/22/readline.html maybe less of a bus factor now with OSH approaching feature/speed parity and having more maintainers https://www.oilshell.org/
rakoo · 2024-08-21
Over on lobste.rs, someone cited another article retracing the history of the Semantic Web: https://twobithistory.org/2018/05/27/semantic-web.html An interesting read in itself, and also points to Cory Doctorow giving seven reasons why the Semantic Web will never work: https://people.well.com/user/doctorow/metacrap.htm. They are all good reasons and are unfortunately still valid (although one of his observations towards the end of the text has turned out to be comically wrong, I'll let you read what it is) Your comment and the two above links point to the same conclusion: again and again, Worse is Better (https://en.wikipedia.org/wiki/Worse_is_better)
cmrdporcupine · 2023-09-20
I have come to the place where I feel like the word "persistence" when applied to data / knowledge / information in this way is almost offensively reductionist and actually ignorant of the background in the field... ... Just going to put this here, since it's clear the world still hasn't read and absorbed this knowledge, 50 years later. I wish people would stop retreading the same broken paths over and over again. https://twobithistory.org/2017/12/29/codd-relational-model.html https://cs.uwaterloo.ca/~david/cs848s14/codd-relational.pdf "Future users of large data banks must be protected from having to know how the data is organized in the machine (the internal representation) ... A model based on n-ary relations, a normal form for data base relations, and the concept of a universal data sublanguage are introduced."
divbzero · 2023-07-17
Nice, I didn’t pick up on that one. And yes, I do have Caps Lock mapped to remapped to Escape haha. If any vim enthusiasts haven’t read this history before, this article [1] provides a good overview of how ex/vi came to be. The photo of the Lear Siegler ADM-3A keyboard used by Bill Joy largely explains the odd choice of keys. [1]: https://twobithistory.org/2018/08/05/where-vim-came-from.html
TrickardRixx · 2022-12-14
I'm aware that I'm abusing the tool, but I wrote a htmx extension that overrides the mimetype and JSON encodes all the parameters. The JSON is decoded into a data bag on the back end. Basically I can do "fuck it over HTTP"[0] with needing close to zero JS. HTMX has been a god-send to me. [0]: https://twobithistory.org/2020/06/28/rest.html I misremembered the name, it is actually "fuck it, overload http"
jcynix · 2022-07-14
They where used for Chaosnet, which was, for example, implemented and usef on lisp machines from Symbolucs and others. cf. https://twobithistory.org/2018/09/30/chaosnet.html
marginalia_nu · 2021-12-10
cxr · 2021-10-29
No, what JMAP is doing and what I described are two totally different things. My proposal centers on URIs and Fielding-style REST that requires no special knowledge of the server implementation or even media type. JMAP is straight up FIOH-style[1] "REST", requiring out-of-band information on both. 1. See <https://twobithistory.org/2020/06/28/rest.html>; also discussed in the comments at <https://news.ycombinator.com/item?id=29009729>
philwelch · 2020-11-21
REST isn’t an architecture for designing HTTP API’s; it’s an architecture for designing HTTP itself. https://twobithistory.org/2020/06/28/rest.html
xvilka · 2020-07-02
Semantic Web[1] reborn (after alleged[2] death)? Also I wonder how helpful Prolog infrastructure could be since they provided some useful frameworks [3][4] for that. [1] https://www.w3.org/standards/semanticweb/ [2] https://twobithistory.org/2018/05/27/semantic-web.html [3] https://www.swi-prolog.org/web/ [4] https://www.swi-prolog.org/pldoc/doc_for?object=section(%27packages/se…
ashtonbaker · 2020-04-18
Check out two bit history! https://twobithistory.org/about.html
flobosg · 2020-03-27
I remember reading about the project and the BBC Micro in a nice writeup at the Two-Bit History blog: https://twobithistory.org/2019/03/31/bbc-micro.html
nellypat · 2019-05-26
This is a good write-up on this exact question: https://twobithistory.org/2018/05/27/semantic-web.html
eternalban · 2019-04-23
https://twobithistory.org/2018/12/18/rss.html grep'd for Dave Winer, check. Grep'd for OP - not found.
kmelve · 2018-12-05
I think this article lends an interesting perspective on the XML vs. JSON thing. https://twobithistory.org/2017/09/21/the-rise-and-rise-of-json.html
shntx · 2018-10-19
Awesome. Two-Bit History's latest essay is also a fascinating dive into Lisp. https://twobithistory.org/2018/10/14/lisp.html

Keyboard shortcuts

/Search
j kNext / previous blog
EnterOpen selected blog
vVisit the blog site
fFollow / unfollow
lSwitch grid / list view
dSwitch dark mode
g hHome
g pTop posts
g tTopics
g fFollowing
g lLiked
g yHistory
g qFAQ
EscBack / close