In case you need clarity, I call the components of my browser engine:

* "HURL" (Haskell URL) - URL engine
-> network-uri [3rd party] - parser
* "Haskell Stylist"/"xml-conduit Stylist" - CSS engine
-> css-syntax [3rd party] - lexer
* xml-conduit/html-conduit [3rd party] - XML/HTML parser (wisely not HTML5 compliant)
* http-client/http-client-tls [3rd party] - HTTP(S) engine (lacks caching)
* base64-bytes [3rd party] - data: URLs.
* text/bytestring [3rd party] - Unicode engine.

Question: What should I call a smart TV web browser you interact with using a normal remote? What about it's layout engine or rendering engine?

I call the web browser targetting voice/audio for I/O "Rhapsode", which pairs nicely against "Odysseus".

Names are important! They aid communication about software components.

Show thread

@alcinnz This isn't the most relevant to names but I had to say just how much the idea of a remote-using TV web browser strikes up nostalgia in me. My mom had one of these when I was young and the idea of seeing that done properly makes me a lil giddy. I hope it goes well!

@IrinaIsha Thanks!

The reason why I'm keen to do this is that I'm not seeing it done well on modern smart TVs, which illustrates to me how much The Web is failing on it's promises.

So to do better than them I will be breaking compatibility with sites that assumes it's dealing with a laptop or smartphone. But I will promise that pressing the playback buttons will read the page aloud. Because I've already implemented that!

@alcinnz Teletext! 😂

*quietly sobs about the death of Ceefax*

Sign in to participate in the conversation

For people who care about, support, or build Free, Libre, and Open Source Software (FLOSS).