Dev Chair : Why is Safari on Windows?
So Apple went and released Safari for Windows. It is interesting why Apple did this. Safari may be faster, as the Royal Steveness claimed, and provides a number of nice features that are not in IE7 or Firefox by default (e.g. Forms auto-fill and resizable text fields) but I am not sure it would get much traction in the long term once the novelty factor has worn off.Steve Jobs also announced that 3rd party developers will get access to the iPhone via web apps. Traditionally, cell phone application development is 'hard'. Hard in the sense that, by nature, cell phone manufactures are not software companies, so either the software development kit (SDK) use lower level languages (C++, etc.), an unsupported developer community (compare with web or desktop development), or antiquated OS (Palm OS 5.x). Whereas web development has a much lower learning curve as well as much bigger pool of developers to pull from.
It is obvious, at least to me, that releasing Safari for Windows is primarily a move to open up the iPhone's development environment to the largest audience possible. If Apple were to actually make a proper SDK for the iPhone, it would mean the SDK would have to support the Cocoa framework on OS X, and either port Cocoa to Windows (possible), or use 3rd party framework for Windows (not likely, given how much Apple likes to be in control). Either way, I doubt this hypothetical SDK would be OS X only, and asking 3rd party developers to purchase a Mac just to develop for the iPhone would be the death keel that many have been predicting.
With Safari running in Windows, iPhone developers can develop new mini-web apps for the iPhone and test them in the same platform, even without laying out the money for an actual iPhone. There is no need for an emulator like the Windows Mobile platform requires, which in theory should allow developers to test out their apps, but in reality there are always limitations of one sort or another. However, I am very curious as to how a web app can 'making a phone call, send an email and displaying a location in Google Maps,' because most of these operations involve interacting with the phone at the OS level. Does this mean the iPhone's Safari exposes a different DOM (Domain Object Model) than the desktop version, with phone-specific functionality?
There are already heated debates on whether using the web as a portal for 3rd party developers to make apps for the iPhone is a good (or even right) idea. But remember, Apple is not just about computers or even Mac OS X anymore. The company now focuses more broadly on electronic products (yes including, but not exclusive to, computers). They even dropped the 'computer' from their name! So I think it is unrealistic for Mac OS X developers to ask for a 'proper' SDK that works on OS X unless Apple makes one that works on both OS X and Windows.
Further, making an SDK for a complex piece of electronic like a cell phone is hard. Yes, Apple has more than six months. Yes, they must be using something in-house. But making a public SDK is hard (just ask Nokia and Sony Ericsson). And unless the SDK works really well out of the box (i.e. Not even minor bugs), we will end up with 3rd party apps that may crashes the phone, a la Treo style. Now, maybe the Palm and Microsoft users can accept that, though I doubt his Royal Steveness would. Certainly I do not; that is the reason I abandoned my Treo 650 for the Nokia E61 after all.
Robert Scoble does not think there will be Flash or Silverlight for the iPhone. I sincerely hope he is wrong. Safari is already supported by Silverlight on Mac OS X. There is no reason why Silverlight cannot work on either Safari on Windows or the iPhone, apart from Apple stopping them. Scott Hanselman has already tried to run Silverlight on the Windows version but has gotten nothing. The Silverlight team is on it so there is still hope. I would love to see whether Google Gear, Adobe's AIR, or Silverlight runs on the iPhone's Safari, and how well.
Despite all these unknowns, having Safari on Windows and the iPhone can only be good for Apple and the users. It raises Apple's awareness in users, whether it is good or bad, and shows them that Firefox's success on the desktop is not a one off. There are alternatives out there and better browsers can be developed by people other than Microsoft. And on the iPhone, Apple raises the bar on what is possible on the web with a cell phone. It shows that we do not have to put up with cut-down version of the web. And it finally frees up the tight constraints that cell phone software developers normally have to work with. Google Map may be cool, but I don't think we've seen anything yet.












Comments
16
Subscribe to commentsbonelyfishJun 12th 2007 2:32AM
I don't think it is mainly for developer. A better explanation is that with iTunes to provide content to iPod, Apple needs something to complete the controlled environment for iPhone even on Windows. Safari is the bridge. Not surprise to see when Safari is out of beta, you can try those iPhone AJAX programs on Safari and through it to sync them into iPhone. Why not using iTune? iTune is not suppose to be a web browser. Moreover forcing iPhone users to use Safari can build up another distribution channel for Apple's future.
elijahJun 12th 2007 2:50AM
no sdk is going to be released :-(
Alex HungJun 12th 2007 7:14AM
@bonelyfish
There is no need for syncing apps to the iPhone. By nature, web app is just that, on the web and iPhone users will access them via Safari on the web. Sure, iPhone users can try them out first at home using Safari either on Windows or OS X but I still believe the main purpose of having Safari on Windows is as a test platform for developers.
JennyJun 12th 2007 7:28AM
Safari for windows is just a footstep. Iphone will definitely have an open platform for developers.
Jenny
http://www.spaml.com
Alex HungJun 12th 2007 7:32AM
@Jenny
No doubt Apple will eventually produce a proper SDK. It's just a matter of how long.
Mike SchleifsteinJun 12th 2007 11:10AM
no sdk, its unneeded just like the wii the iphone will only be open via the web (though I'm sure it'll be hackable via safari security holes) flash on this platform will be great only if its the latest version... and only if it is setup like flash is set in ie (click to enable) otherwise i could see the phone crashing regularly from ad heavy pages... as you said the real reason for safari on windows is for iphone devs. now you can test that web app in safari before june 29 and get your app running perfect in time for the release... should be interesting to see this move away from apple and mac specific developers to a wider array of web devs
that is why everyone is complaining about the sdk... this move means a new set of developers gets a real chance at a platform and that platform is inherently more open that the mac
JasonJun 12th 2007 11:26AM
Apple really doesn't make any sense... They put out a phone with a FULL web browser and give it last gen data capabilities... There is/was a mobile web that was stripped down for several reasons:
- data bandwidth
- data charges
- small screen
Its a mistake to compare the iPhone to a normal phone... you should compare it to a palm,blackberry, or windows mobile device... All of which have SDKs that allow companies to make REAL software for them... not just give them access to websites and say "developers can do whatever they want"... sure its fine if you using WiFi... but not on EDGE... the first generation iPhone will be a failed device right from the start.
Windows Mobile has FANTASTIC development tools... to say that development for mobile phones is "HARD" is just ignoring the platforms that are made for developers.
The more info we hear about the iPhone the lamer it sounds...
Alex HungJun 12th 2007 11:48AM
@Jason
I agree with the concerns with running web 2.0 apps over EDGE. I don't really want to think about the amount of data some of those web 2.0 apps send to the client via AJAX calls! But I think it is unrealistic to presume the majority users will want to do the same thing on the iPhone as on their desktop. Would you really want to use Flickr's Organzr or Map section on your iPhone, even on Wi-Fi?
To me, the apps and developers that Apple is targeting are mobile/web apps such as Twitter, Facebook, location based service, etc. where you would want minimum interaction, maximum information but with much improved UI due to the capability of Safari/WebKit engine.
i.e. apps that are actually useful to the users verses cool to show off to your friends.
DiddleJun 12th 2007 12:14PM
I don't even use it on my Mac, what makes Steve think I'm going to use it on my PC?
bonelyfishJun 12th 2007 1:11PM
@Alex Hung
By nature, web app is just a browser to Internet. BUT: will user like to have their apps execute only if connected to Internet? How about games? I don't think so. Remember Adobe's Apollo and I think it is the answer.
phoenixJun 12th 2007 9:12PM
Finally! Someone gets it! Great work on this piece, Alex.
Alex HungJun 13th 2007 12:38AM
@bonelyfish
Yes, I mentioned my interest in Google Gear and AIR in my post.
JamesJun 13th 2007 5:11PM
OK, guess I'm late to the party, but where has it been confirmed that iPhone Safari will be "desktop" Safari and not "Pocket Safari" or "Safari Lite, over 80% Real Safari!"? All the other mobile browsers (Opera Mobile, Pocket IE, even MiniMo) suffer compatibility issues because they do things differently than their big brethren -- why do we think Apple will be different?
GerdJun 14th 2007 7:33AM
Well may be the primary reason is to introduce a runtime platform that is agnostic to the underlying OS (be i Mac OS X, Windows, iPhone etc.) but under the control of Apple.
My guess would be that the development environment provided by Apple will still be MacOS X only, but they can say: Use whatever you want to develop.
I think the underlying idea is to provide something that in the long run that compares to AIR, Silverlight, OpenLaszlo, … etc in the RIA space and in the short run to enable developers to write widgets for the iPhone in the short run.
Yes, i believe that Apple is going to open up 3rdParty development for the iPhone and you can find my reasoning at http://relations.ka2.de/?p=178
M
atrixJun 15th 2007 2:18AM
great finally apple unveils it's browser on x86 machine, looking forward to try these new thing on my laptop !! good job ..
Alex HungJun 22nd 2007 9:50PM
@ James
Because WebKit has already been deployed as a web browser over a year ago by Nokia in E61/E62. In that phone, the browser works just like the desktop browser with the exception of Flash and only has support for basic JavaScript. I would imagine Apple has advanced the code since them...