3 ms·
I am reminded also of Opera Mini back in the day. It did not stream the DOM, but they were rendering pages on their servers and then using fancy compression tec
by codetrotter 4y ago
I am reminded also of Opera Mini back in the day. It did not stream the DOM, but they were rendering pages on their servers and then using fancy compression techniques to deliver the rendered page to your mobile phone. This was a godsend back in the bad old days of slow mobile phone internet.
I am talking about the Java ME application. Not the more recent browsers they’ve made.
> It was primarily designed for the Java ME platform, as a low-end sibling for Opera Mobile
> […]
> The functionality of the Mini mode is somewhat different from a conventional Web browser, with the amount of data which has to be transferred much reduced, but with some loss to functionality. Unlike straightforward web browsers, Opera Mini fetches all content through a proxy server, renders it using the Presto layout engine, and reformats web pages into a format more suitable for small screens. A page is compressed, then delivered to the phone in a markup language called Opera Binary Markup Language (OBML), which Opera Mini can interpret. According to Opera Software, the data compression makes transfer time about two to three times faster, and the pre-processing improves the display of web pages not designed for small screens.
https://en.wikipedia.org/wiki/Opera_Mini https://en.wikipedia.org/wiki/Opera_Mini
Interestingly I found that someone has written a script to convert OBML to HTML. Their intended use-case for the script is to make pages saved with Opera Mini viewable in other browsers. But to me the main interest is that I would like some day to make something similar to Opera Mini on my own, and the README of the conversion script has some technical details about OBML.
> because OBML files are the output of Opera's HTML rendering engine, many elements are pixel-positioned according to the original device's screen size and font metrics. Because many J2ME devices had custom fonts (optimized for low-res screens), it's possible that your computer will show the same text as too-tall or too-wide, and lines may overlap.
> […]
> OBML does not have <a href=...>, i.e. you cannot actually have text that is also a link. Instead the engine outputs text and links as two separate layers – first it places the actual text at position (X,Y), then overlays it with "link" rectangles at position (X,Y,W,H).
> […]
> OBML does not have styled widgets the way HTML would. The style is actually pre-rendered, and those pretty 3D effects are made out of pixel-positioned lines and rectangles. Even button gradients are pre-rendered and drawn as a series of 1-pixel thin lines.
https://github.com/grawity/obml-parser https://github.com/grawity/obml-parser
- KronisLV 4y ago> I am reminded also of Opera Mini back in the day. I can definitely confirm that Opera Mini was one of the more usable browsers back in the day. I think I remember using it on a few S60 Symbian devices and when sites worked, they did so really well and you could open dozens of tabs with no problems. I actually miss those Nokia phones and computing back then, hah. I used Opera Mini (not Opera Mobile) on a few Android devices as well, because the built in browser was too sluggish in comparison. I recall about 3 open pages causing issues on an Android 2.0 or 2.1 device, though that problem more or less persisted to some newer budget devices, too. It is just with my newer devices that I've switched to Firefox on the mobile and find it largely sufficient nowadays (though now Chrome would also be okay).
- lxgr 4y agoOpera Mini was absolutely amazing. I remember being able to browse the web for a whole month on a 30 or so MB data cap and never even getting close to exceeding it. It also supported an unbelievable number of devices, some of them barely capable of properly running any J2ME application, let alone a web browser. They also used to publish a really interesting report called "State of the Mobile Web" for many years based on the data they collected running their proxy service: https://web.archive.org/web/20140704014910/http://www.operasoftware.com/smw https://web.archive.org/web/20140704014910/http://www.operas... > [...] I would like some day to make something similar to Opera Mini on my own [...] That would be great! Unfortunately I think today's websites might make this even harder than when Opera Mini was popular, but the original could handle some amount of JavaScript server-side execution surprisingly well. Also, your post just made me try Opera Mini again – unbelievably, it still seems to be working on my iPhone! The app does not look like it's available anymore, but there must have been an update recently enough to still allow it to run on my device without obvious UI stretching or Apple incompatibility/deprecation warnings.