Hacker News new | comments | ask | show | jobs | submit login
CERN day 1: rebuilding the first web browser (remysharp.com)
240 points by D_Guidi 8 days ago | hide | past | web | favorite | 36 comments

This reminds me of the wonderful short story by Jorge Luis Borges, “Pierre Menard, Author of the Quixote”. In the story, the character attempts to authentically rewrite Cervantes’ Don Quixote — not by simply copying the known text, not even by attempting to re-live Cervantes’ life and spontaneously writing the novel just as Cervantes did, but by somehow living his own 20th century life and happening onto writing a novel that is word for word identical to Don Quixote. It’s a marvelous, impossible premise which speaks to our fantasies of creativity and fetishization of original artifacts.

“Those who have insinuated that Menard devoted his life to writing a contemporary Quixote besmirch his illustrious memory. Pierre did not want to compose another Quixote, which is surely easy enough — he wanted to compose the Quixote. Nor, surely, need one be obliged to note that his goal was never a mechanical transcription of the original; he had no intention of copying it. His admirable ambition was to produce a number of pages which coincided — word for word and line for line — with those of Miguel de Cervantes.”

Here’s a PDF of an English translation:


The story has some really funny sections where Borges compares a passage by Cervantes with an (identical) passage by Menard, comparing their style and meaning (which are not the same!). It's just fantastic.

This makes me think of Terry Gilligam's recent film, The Man Who Killed Don Quixote (2018), which spirals recursively into a retelling of a retelling of a retelling of a ... of Don Quixote. A mind bending film - 30 years in the making! - shame it's plagued by rights issues which prevent its general release. If it screens in a film festival near you, go see it!


I am so happy I decided to stumble into the comments section for this article. Your contribution of this short story by Borges is almost sublime in its essential similarity to the article of OP. I've already been a fan of Borges, but I had never heard of this piece of his before. It has positively tickled all the right literary fancies for me. Thanks much for the comment, as the story was a pleasant accoutrement to my lunch!

Hey, you're welcome! I'm so glad you enjoyed it.

Which is equally funny in that Don Quixote was trying to recreate stories he had read about outdated chivalry.

Borges is amazing! I just recently finished reading "Fictions" (a collection of short stories) and was blown away by all the references and topics he manages to cover in sometimes just a few pages. Sometimes I kept googling authors, philosophical concepts, etc. every few lines while reading.

If you want a web server to test against, we're still running CERN 3.0 from 1994 (on early 1990s Sparc hardware too):

  $ nc www0.cs.ucl.ac.uk 80
  HEAD /staff/m.handley/ HTTP/1.0

  HTTP/1.0 200 Document follows
  MIME-Version: 1.0
  Server: CERN/3.0
  Date: Tue, 12 Feb 2019 14:46:10 GMT
  Content-Type: text/html
  Content-Length: 8645
  Last-Modified: Tue, 09 May 2017 12:33:04 GMT
It will still speak HTTP 0.9 to you if you omit the HTTP version string in a GET request.

Here's what it looks like, in case you're curious: https://i.imgur.com/hOOEzGg.png

Thanks - that's great! Wonderful that (absent CSS), it still works.

Tell me more about your Next setup!

Oh, there's not much, I had originally created it for a CTF challenge of all things (https://github.com/o-o-overflow/chall-www) so it has WorldWebWeb, Bash, and a set of developer tools I managed to scrounge from the internet and from some Cocoa developers who happened to have the disk lying around. I just keep it around because it's fun to show off to people ;)

That's so awesome. The NextCube is one of my dream machines, along with an SGI Indigo and Amiga 2000

Cool challenge too - maybe ill give it a whack

I posted this on the blog but thought I post here too.

Last year I set up a WorldWideWeb.app (version 0.15) running in the Previous emulator on Ubuntu for a CTF challenge for DEF CON 2018 Quals (they had to exploit a buffer overflow in HTTP.c). There's a lot of other cruft around to set up and automate the challenge and getting input to WWW, but there's Vagrant and ansible scripts to set up and run everything.

There's a lot of work to set up networking in NextStep and getting all the pieces right (I think I even set up an SSH server running on NextStep).

The source is all here: https://github.com/o-o-overflow/chall-www

I'd be happy to help, I love this idea of software archeology/preservation.

Ooh, I have the source code for WorldWideWeb and a binary copy of it that I had installed last year on Previous; if I remember correctly I think I got it to render Google's website (albeit in a very broken way). Maybe this might be useful?

Edit: Just fired it up and it's trying to connect to cernvax.cern.ch, lol

Any chance you can put it on github?

Yes, please. That would be really cool.

Now that I think about it, I'm pretty sure I just grabbed it from here: https://www.w3.org/History/1991-WWW-NeXT/Implementation/

Good luck Remy, sounds fun!

Among other things, Remy and his family run an excellent front-end development conference in Brighton, UK (although I'm simplifying it a lot by calling it that) called ffconf (https://2018.ffconf.org/)

I see they are getting unofficially the best fondue in the town at Bains des Paquis. Those CERN folks are indeed smart!

Immediately recognized the venue from the photo, which triggered some sensorial cues in my body. Essential part of a good meeting in Geneva.

Being at CERN has a bit with enjoying life. :)

Although I would state there used to be a few good ones in Carouge as well.

That looks really fun!

How did you end up doing this? (Assuming the poster is the author of the blog, perhaps someone else can answer this question though?)

The author of the blog is Remy Sharp. He was first involved with these projects at CERN in 2013, it looks like: http://line-mode.cern.ch/interviews/

He is a web developer.

"My role was the coding part. I have a lot of experience writing Javascript-based applications. I could see how Javascript could solve a lot of the problems to replicate this old browser. So I worked on the back end server that allows you to visit any other website and get it into the line-mode browser."

Oh, this really makes me wish I was there, that first day when they turned on the machine that says "don't power me down" and put that sign on there, at the beginning of the web, when the first browsers were being developed. So much potential, so many possibilities, so much innovation soon to occur.

Ironically, Tim BL mentions in his book "Weaving the Web" that when he first launched the web, nobody cared and people at CERN thought it was useless.

"This machine is a ? Do not POWER it down!!"

What does it say there?

"server". It's a recreation of the note placed on the first webserver.


What is the book next to the computer?

I believe it says "server".

I wonder what I'd have thought if I'd seen the NeXT browser at the time. I must have been one of the first few thousand WWW users, when I think it was largely providing access to the cernlib docs. At the time, I was working on fairly advanced networked hypermedia (with NeWS). Using line mode browser -- via X.25 then, I guess -- I thought "how primitive", and "haven't they heard of Xanadu?". So much for the important feature, the protocol/naming... I don't remember the reaction to Viola subsequently, but I think I found it before the Mosaic set-back.

I was fascinated for a while with NeXT, OpenStep, YellowBox, even had it running under Windows NT. Nowadays work in games development, and the main tool I happen to work and help with support is Radiant, which is based on QuakeEd... And QuakeEd was first released for the NeXT - https://quake.fandom.com/wiki/QuakeEd ... it also had browsers :) lol - material/textures/models/etc.

I was making maps in radiant like 15 years ago. I honestly didn't realize it was still in use.

"Somehow we'll deliver the WorldWideWeb.app directly to the machine…if only we could work out how to network the machine…"

Huh? Have these kids been so caught up in GNU/Linux that they've forgotten about ifconfig and route commands? Configuring the network and mounting an NFS share should be the very easiest part of their work.

Interesting my first experience of www was via the ITU gopher which had a link to I assume the line mode browser.

It was a curiosity at the time I was more exercised by the fact that the ITU had public access to the x.500 database I supported - god only knows what our internal security would have said.

I did it via modem dialup on the emacs gopher client. Those days our TU Graz hypertext university system was more advanced (HTP - hyper text protocol, a gopher with images, search, index and editing) than the primitive www system at CERN, but they caught up, even if it always had much less features than our system.

Applications are open for YC Summer 2019

Guidelines | FAQ | Support | API | Security | Lists | Bookmarklet | Legal | Apply to YC | Contact