Apple Bans Firefox, Lisp, Ruby, Python, Rhino, Java, Opera, .NET, Squeak, Quake, GCC, Photoshop...
blog.mozilla.com
blog.mozilla.com
What apple is doing basically shutting off a good way to keep an up updated, and forcing everything to go thru their machine.
Very anti progress, and adds more loops for companies to go thru, just as bad as the myriad of carrier restrictions. No wonder "successful mobile statup" is an oxymoronic phrase.
And yes, I hope android eats their lunch. Apple might have the eye candy, but their closed minded thinking will keep their platform at bay. It seems like a repeat of the pc wars area, and if we learned those lessons, the closed platform lost.
Apple is paving a new path with iPhone and the whole experience of iPhone. The last thing they want is for that experience to degrade because of too much chaos. This goes against the grain of geek culture where diversity is king (and I have ALWAYS subscribed to this rule). But in the long run it will server Apple and iPhone users very well.
As another example, the 2008 Subaru STI is an overall dream machine that allows you to mod the hell out of it so that you can beat a Ferrari in a quarter mile competition, but which one will get you laid more often? Which one of these cars will cost more in maintenance fees? The Ferrari is far less practical, but it has its utility as a unique experience factory. The iPhone is not a superior product but it is a superior experience in this same way.
The second you see an iPhone whipped out in public (forgive the poor imagery), you see a symbol of experience and quality, not a smart phone ('smart phone' is what I think when I see a Blackberry). I REALLY hate to admit it, but there is a certain status associated with being an owner of an iPhone in that the whole experience it represents is vastly superior to any other experience for any other phone (disclaimer: I do NOT own an iPhone, I own a Blackberry because I need to get things done).
Apple is trying to sell MUCH more than a product: it is trying to sell culture and in order to guide this culture properly it needs to exercise crazy control.
It's not the Ferrari that gets the owner laid -- it's the money required to buy one...
Good analogy, though. If your app is otherwise overpriced and impractical, putting it in the iPhone (Ferrari) may be the way to go. If your customer base would rather just get things done... well, I'll bet a lot more STIs get sold than Ferraris on any given day of the week, that's all.
But note the subtle "mac" wrap required around the code. Most of this is about "control" over the toolchain as much as the UI experience. Control the developers, make them buy macs, improve the bottom line. Where have I heard that line before?
Android is going to eat their lunch.
Phones can be forced to make calls through open bluetooth links, I believe it would be even worse for a contract iPhone to get a virus that forces you to call a premium rate number and netting someone thousands of dollars. At least with bluetooth you have to be in range, but with a trojan it could end up running 24/7. For example, whenever the phone goes into stand-by mode it starts the call and would likely go unnoticed for a good while, I've left my phone in stand-by for days, and have it disconnect whenever the phone 'wakes up'.
There needs to be serious control when a virus can make someone a profit. If it ever got to that, you can be sure the virus count would be up into the thousands as every hacker in an eastern-european country starts making iPhone viruses to net them a small fortune.
So yes it's dumb, there are better ways to protect the phones; for example a verification program built into the firmware and any time the verification gets hacked (if it does) they simply update the firmware and licensed software and any trojan would be incapable of running. This way anyone who wants to hack their phone can, and if they call up complaining they broke it Apple can simply give them a simple 'STFU moron, ToS violation'.
Consider that ObjC 2.0 on the iphone doesn't support garbage collection (unlike ObjC 2.0 on the mac). Also, note the emphasis on profiling (they have a really cool tool 'Instruments' just for that).