By the time the iPhone hit the market, there were already plenty of handheld devices that had similar specs that were running full-blown Linux.
Pretending that the iPhone was "at the edge of what was technologically possible" is rewriting history.
By the time the iPhone hit the market, there were already plenty of handheld devices that had similar specs that were running full-blown Linux.
Pretending that the iPhone was "at the edge of what was technologically possible" is rewriting history.
What was remarkable was being able to run a graphic accelerated version of AppKit built for touch screens (UIKit) and have RAM to spare to run a non trivial app, like, you know, a full blown web browser, all in 128MB.
So yeah, Darwin + window server + springboard + Safari + webpage > 128MB is pretty impressive indeed.
iOS is not OS X.
> So yeah, Darwin + window server + springboard + Safari + webpage > 128MB is pretty impressive indeed.
Maemo did all all of this years before, and in 64MB of RAM.
Show me a video of a smooth pinch to zoom on a webpage with MicroB
It used Display PostScript -- a comparably impressive achievement at the time.
It also wasn't that slow on the Intel machines, e.g. the black NextStep PCs Elonex made in the UK. It was quite nippy on some of the earlier NeXT hardware, too.
BeOS was a very different operating system and -- let's be clear -- would have been a terrible, terrible choice.
I tell you what was slow: WebObjects on the Mach subsystem layer on top of Windows NT.
> BeOS was a very different operating system and -- let's be clear -- would have been a terrible, terrible choice.
Oh, sure. But it sure was snappy. And gorgeous. And that file system was awesome.
https://pbfcomics.com/comics/beach-closing/
> Using a Turing complete language for drawing was scary.
Not particularly sure why. Aren't all apps using Turing complete languages to draw on screen? It's just a question of which layer that happens.
Display PostScript did the same, surely?
More flexible still is producing commands that can contain loops like Postscript. Now we're in tricky territory, because it's easy to make a mistake that e.g. produces an infinite loop and the whole display locks up. And it's much harder to reason about such things as the update rate of the drawing process because the drawing commands are themselves Turing complete.
This doesn't matter when you're merely printing because there is no refresh. Not so with an interactive display. That's why the "Display" in "Display Postscript" was a big deal.
With PostScript, you can have a document that renders differently every time you open it (on purpose). Or a file that will never finish rendering or printing, like the infinite loop you mentioned.
PostScript infinite possibilities are cool and cute, but not all that practical for a graphics description language.
There was a font, wasn't there -- was it Just van Rossum's Beowulf -- that drew itself slightly differently every time? Can't find a reference now.
edit: it was!
Then they would shut off one of the CPUs.
Everything was as slow as winter molasses. And they would grab a window, and it was still super snappy, while everything else almost froze solid.
I miss being the center of my computer's universe like that.
The original iPhone was a delight to use, responsive like the desktop counterparts weren’t, despite much slower hardware and running on battery.
One of the things that Microsoft got right and Google got wrong was that Microsoft copied the concept of using GPU accelerated graphics with Windows Phone and it took Google quite some time to catch up.
The iPhone was responsive like no other computer at its time, let alone phone. It prioritizes user input above all else, which is the right choice.
https://youtu.be/YW7z0uMOYrw?t=364 Does that look terribly slow to you?
I was a user at the time. Had many iMac G3s.
But even on this machine, try navigating through nested menus, dragging windows around. Now boot from Mac OS 9 and do the same. It's night and day.
First because the device and the software hadn't been optimised for each other.
And second, the fact that iPhone OS was not a "full blown" Unix OS is precisely why it _did_ have that performance on otherwise reasonably similar Samsung ARM hardware (better specs but not, you know, alien technological advance stuff).
The point is that there is this tradeoff. Developers who'd squeezed full multitasking Linux into phones would have been well aware of the kind of performance they'd see without multitasking and without a BSD subsystem.
FWIW Jim Gettys' handhelds.org project was demonstrating -- years earlier -- pretty impressive Linux GUI performance on much earlier hardware that had been only modestly adjusted for it [0]. Including for example tilt-sensitivity.
Those who knew about those projects could see that Apple had likely benefited enormously from seeing what was being done, and had decided to make an OS profile for iPhone that prioritised single-app performance with a sizeable slice of OS X.
[0] The iPaq as a product was designed in part to explicitly accommodate research from the DEC Itsy on off-the-shelf devices
I disagree entirely. Maemo as designed, built and optimized for low-powered mobile devices compared to desktops.
Both the N770 and N810 were marketed as products for early adopters and developers.
The entire mobile phone industry was -- and still is -- making these tradeoffs. (Android used and uses a slightly more advanced process model that iOS eventually adopted, but even it does not and did not offer full multitasking).
It's not shifting goals, it's an indication that there's more than one possible goal to shoot at.
The N-series Nokias (including the N95 and N97 phones) were really special, but they weren’t iPhones. The iPhone just made everything else feel old instantly.
It was out in front in a lot of ways but not witchcraft.
The common criticisms about Apple kit, at any point in time, will be led by feature comparison rather than benefit comparison.
On almost every level, the iPhone prioritised benefits (consistency, simplicity, responsiveness, discoverability) over features.
And in all but really two of the feature cases (text management/copy and paste, and the absence of 3G), they gambled right: people cared about the benefits they'd engineered for, and not about the features they'd skipped.
(They managed to bluff past the apps question: we knew they had to be working on it and they managed to tell us they were working on it without telling us they were working on it)
Commentators still make this mistake with Apple.
I’ve been running Linux since 14.
Had all the great smartphones of the age.
At 19 I purchased the first iPhone.
It was fucking witchcraft.
Judging by the maths I was running it when you were four or five and have done ever since. I'm not sure what point you're making.
> Had all the great smartphones of the age.
Good for you. So you ran the handhelds.org linux project on a Compaq iPaq back in 2002-2003, or no?
> It was fucking witchcraft.
It was not. Apart from the multi-touch implementation which is transformational.
Apple did not put anything in that device that other manufacturers didn't have access to, and their device lacked capabilities others had.
They just did it right.
People were in awe of how responsive the system was. Things like the pins dropping on the google maps app seemed faked, bo way they could do it.
The iPhone was mostly a regression from that.
X11 isn't that important, it's the large app library it brings with it (many apps that after 24 years still have no replacements on either smartphone OS.) For power users the flexibility is nice too.
Onboard dev environments aren't useful to most people but it indicates/allows a few things:
1) Individual users who are inclined can easily improve the platform with very little effort.
2) The owners of the platform aren't stopping people from doing what they want with their own devices.
Talk about tired arguments. All popularity really means is good PR.
As to toasters and Nintendos, yes I do whatever I want with those, toasters have nothing to stop me and Nintendos are usually trivial (and often have flash carts available) to get a shell on.
I’m guessing you don’t use toasters or Nintendos either then, because you can’t do what you want with those.
The tired arguments you trot out have been covered to death. You are a hyper niche use case, pretending the general users feels like you do is delusional.