Most active commenters
  • diggan(3)
  • usr1106(3)
  • lxgr(3)

←back to thread

98 points thunderbong | 13 comments | | HN request time: 1.213s | source | bottom
Show context
pavlov ◴[] No.42479172[source]
> “HTTP is also too inefficient for wireless use. By using a semantically equivalent, but binary and compressed format it is possible to reduce the protocol overhead to a few bytes per request, instead of up to hundreds of bytes.”

Around the turn of the millennium, there were numerous international committees and hundreds of millions of dollars spent by companies on this idea that we simply can’t use the existing internet on mobile phones, so there needs to be something else.

Of course for the companies it was mostly a plot to capture the web, which was uncomfortably open and uncontrolled. The mobile operators were used to charging 20 cents for sending a 140-character message and 1 euro for delivering a monophonic ringtone. They wanted to be the gatekeepers and content curators of the mobile web, taking a cut on every bit of content that flows to devices. (I remember vision PowerPoints where operators imagined that one day when video can be watched on mobile phones, they’d be making more money from each watch than the studios.)

“We must save 200 bytes on HTTP headers or the network will melt!” was just a convenient excuse to build a stack they could own end-to-end.

replies(7): >>42479197 #>>42479224 #>>42479250 #>>42479283 #>>42479399 #>>42479951 #>>42481549 #
1. diggan ◴[] No.42479197[source]
I don't know if you tried to use the web via 3G or even GPRS, but I remember I did, and it was terribly slow. Opera Mini/Mobile ran some sort of proxy service that made things faster (not sure how or what that was, I was too young to understand anything) and helped a little bit, but the best thing you could come across was dedicated WAP websites that basically were "website lite" versions some websites ran concurrently with their real websites.

And even so, loading a 0.1MB WAP website still took time. The pipes were really slow back then, and the devices not being like the pocket computers we have today.

> The mobile operators were used to charging 20 cents for sending a 140-character message.

In Sweden when I was young, it was pretty common for us to have monthly plans with unlimited text messages included (but not surfing, no one did that on the phone anyways). Even with that, WAP seemed to have served some sort of purpose, at least for me personally.

replies(4): >>42479245 #>>42479287 #>>42479638 #>>42481879 #
2. usr1106 ◴[] No.42479245[source]
> Opera Mini/Mobile ran some sort of proxy service that made things faster (not sure how or what that was, I was too young to understand anything)

That is still running. The SymbianOS version of the Opera Mini browser still works.

From my Web server log:

    88.88.88.88 [20/Dec/2024:18:55:10 "GET /redacted HTTP/1.1" 200 75 r:- "Opera/9.80 (Series 60; Opera Mini/7.1.32444/191.361; U; de) Presto/2.12.423 Version/12.16"
replies(1): >>42479256 #
3. diggan ◴[] No.42479256[source]
I don't think their proxy server would use Opera Mini as the user-agent. What I seem to remember, was that they run this proxy which did the fetching for you, did some ridiculous compression or similar, and then sent you the compressed reply.

If I remember this correctly, I'd expect the user-agent to be something like "Opera Proxy" or "Opera Compressor", not the user agent of the browser itself. But again, I might remember this all incorrectly, was a long time ago and I was just a kid.

replies(2): >>42479290 #>>42479691 #
4. pavlov ◴[] No.42479287[source]
Both are true: WAP was technically a well-intentioned (if poorly designed) solution to a real problem, while also being a cynical power grab by the operators.

The problem turned out to be more short-lived than anyone imagined in 1999, and fortunately the power grab failed too. Steve Jobs hammered the definitive last nails onto that coffin. Mobile operators became the dumb pipes that was always their worst nightmare.

replies(1): >>42480868 #
5. usr1106 ◴[] No.42479290{3}[source]
I know the user causing those log entries personally. They use Opera Mini on an ancient SymbianOS phone.

Yes, it works like you describe. They use a compressed protocol between the client and the proxy. The DOM might not even be based on HTML, not sure about that.

replies(1): >>42479309 #
6. usr1106 ◴[] No.42479309{4}[source]
Actually I would not have needed to redact the IP address. It's not the end user but Opera's proxy:

    82.145.211.80 [20/Dec/2024:18:10:36 "GET /redacted HTTP/1.1" 200 75 r:- "Opera/9.80 (Series 60; Opera Mini/7.1.32444/191.361; U; de) Presto/2.12.423 Version/12.16"
7. rollcat ◴[] No.42479638[source]
> Opera Mini/Mobile ran some sort of proxy service that made things faster [...]

In 2017ish, I've overheard from a friend who used to work for Opera, that back in their time they were using Presto (their in-house engine) on the backend to pre-render/optimise/compress pages. Think smart VPN/proxy.

Also, heck yes, Opera on "dumb" phones was an amazing experience - compared to the built-in contemporary browsers.

replies(1): >>42479671 #
8. lxgr ◴[] No.42479671[source]
This was how I browsed the web on the go for the better part of a decade, before browser became good enough and prices (and download times) per megabyte cheap/fast enough to actually use the full web on mobile devices.

It was absolutely amazing. And it's still around! I have an install on my iPhone; while the app seems to be unpublished in most western countries' App Store, I can still use it just fine. I believe the Android and J2ME versions are still actively installable.

Although I just gave it a try, and the iOS version seems to not be the real deal anymore; it seems to use a media compression proxy and regular WebKit to render on the iOS side. The Android version still does server-side rendering.

replies(1): >>42481779 #
9. lxgr ◴[] No.42479691{3}[source]
> I don't think their proxy server would use Opera Mini as the user-agent.

It does, I just checked:

> Opera/9.80 (Android; Opera Mini/87.0.2254/191.361; U; en) Presto/2.12.423 Version/12.16

> What I seem to remember, was that they run this proxy which did the fetching for you, did some ridiculous compression or similar, and then sent you the compressed reply.

That's Opera Turbo, a feature of Opera Mobile (which is a full browser, HTML, JavaScript and all), which indeed compressed images and other media in a lossy way (and text losslessly, if it wasn't already at the HTTP level, I assume).

Opera Mini actually renders HTML (and executes JavaScript for a couple of seconds) server-side and then sends a binary version of that pre-render to the phone. I imagine it to be closer to SVG or PDF than to HTML and CSS.

10. diggan ◴[] No.42480868[source]
The influence of Steve Jobs in Sweden was basically nil at that point in time when it comes to cellphones and internet on cellphones. What put the nail in the coffin there, was the launch of a new company (called 3 or "Three", was new in Sweden at least) which promised connection to a new network/stack called 3G. With 3G, you no longer needed to use WAP. We were all using Sony Ericsson and Motorola Razor (Razer?) when 3G arrived, and the iPhone was still years away at that point.
11. anthk ◴[] No.42481779{3}[source]
At https://f-droid.org you have a J2ME emulator.
replies(1): >>42482662 #
12. mxuribe ◴[] No.42481879[source]
I remember those days, and agreed things were slow...but i feel like at least the thought that went into trying to ensure code and assets implemented for mobile were better simply because devs at least tried to optimize things to improve/have the best experience possible (even with the slower pipes). Nowadays, i feel many devs fill as much javascript and framework libraries for the web experience, that we have so much bloat...and when some of these devs or their leaders are asked "what about the mobile experience for our mobile visitors/customers, etc.?"...they often respond with something along the lines as "Don't worry, we'll just send'em to the mobile app, which is managed by the separate mobile dev team....etc.". Or, maybe i',m too cynical these days? :-)
13. lxgr ◴[] No.42482662{4}[source]
I've also tried that with J2ME Loader (which is also on the Play Store), and itw works! But the native Android version still works for me as well.