Back of the Envelope

To infinity and beyond

Friday, February 05, 2010

Why Flash will never be on the iPhone or iPad

Since his return to Apple, Steve Jobs has been played out twice in public. The first time was when IBM dropped the ball with PowerPC. The second time was when Eric Schmidt was on the Apple board and started getting ideas about Android and world domination. Steve is not going to allow Adobe to do the same thing with the iPhone and iPad.

If you understand this, then you will understand why Apple developed its own A4 chips to power the iPad, has its own stores and datacenters, its own mobile advertising company etc. Apple wants to control 100% of its destiny, as any business should. How many corporations can say that today, with widespread outsourcing in the name of "shareholder value"?

Steve Jobs is an angry man. And because he is rich, he cannot be swayed by the promise of money.

Be afraid, be very afraid.

Friday, January 29, 2010

About iPad

Pundits pitting the "netbook" versus the iPad are totally missing the point. Yes, a "netbook" has more ports, cameras, built-in SD card slot etc. But the iPad is not meant to be compared with a full-fledged laptop, just as a "netbook" is not meant to be compared with a full-fledged laptop. A proper laptop would be far better at conventional computing tasks then either of these devices.

Can a "netbook" or even a laptop do something like Brushes? A Wacom Cintiq 12WX alone costs more than the iPad.

The iPad runs iPhone software. For a user, this means instant-on, fast and responsive apps that you know and love on the iPhone/iPod Touch.

From an ideological perspective the iPad runs on Mobile Safari which offers the best web surfing experience on a mobile device, so most web apps are covered. Look at web usage analytics for mobile devices. iPhone OS devices account for a far larger proportion than their actual market share. It doesn't have Flash support, but it does support HTML5.

If it were available 2 years ago, I would've bought it for my mom instead of the Macbook Air she has now.

That's what the iPad is. It is a Macbook Air-killer. It does everything the Macbook Air does, but with a smaller form factor and much lower price without all the pitfalls of traditional computers such as weekly security updates, viruses etc.

So the summary is, if you were never in the market for a device like the Macbook Air, even at the reduced price of US$499, then you would not be interested in the iPad.

Wednesday, December 23, 2009

The worst kind of hypocrite

John Gruber posted a link to Google's blog about "The meaning of being open". With all due respect to friends working at Google, I would have to agree with Gruber. The blog entry is a steaming pile. Lots of factual errors to mislead the non-technical reader.

I'm just going to pick out a few paragraphs in the article cos it's just too lengthy.

Another way to look at the difference between open and closed systems is that open systems allow innovation at all levels — from the operating system to the application layer — not just at the top. This means that one company doesn't have to depend on another's benevolence to ship a product. If the GNU C compiler that I'm using has a bug, I can fix it since the compiler is open source. I don't have to file a bug report and hope for a timely response.


This is true only if software exists in a vacuum, which is extremely rare these days. Additionally, even if you have the full source code, Ken Thompson (the co-inventor of UNIX) proved 25 years ago that you cannot trust source code you did not write yourself.[1] Basically Dr Thompson showed that it's possible that a bug or trojan horse will not reveal itself even if a full code audit is performed. And it is also able to self-propagate so that successive copies of itself retains this... "interesting", behavior.

While we are committed to opening the code for our developer tools, not all Google products are open source. Our goal is to keep the Internet open, which promotes choice and competition and keeps users and developers from getting locked in. In many cases, most notably our search and ads products, opening up the code would not contribute to these goals and would actually hurt users. The search and advertising markets are already highly competitive with very low switching costs, so users and advertisers already have plenty of choice and are not locked in. Not to mention the fact that opening up these systems would allow people to "game" our algorithms to manipulate search and ads quality rankings, reducing our quality for everyone.


Many problems with this paragraph alone. Google's domination of the online adverstising industry is all but complete and is pretty much the only game in town, having also just acquired Admob. So the "switching costs" angle is a strawman argument. The "think of the children" angle is also a red herring, disingenuous and an insult to free software developers everywhere. Essentially, he claims that open source code is high quality code, except Google's own closed source search and ad products, where opening it will reduce its quality. But isn't that the point of "open source" in the first place?

Open will win. It will win on the Internet and will then cascade across many walks of life: The future of government is transparency. The future of commerce is information symmetry. The future of culture is freedom. The future of science and medicine is collaboration. The future of entertainment is participation. Each of these futures depends on an open Internet.


Except that Google doesn't practice what it preaches and censors web search results. Especially in China.[2][3]

[1] http://portal.acm.org/citation.cfm?id=358210
[2] http://news.bbc.co.uk/2/hi/technology/4645596.stm
[3] http://en.wikipedia.org/wiki/Censorship_by_Google


Tuesday, December 01, 2009

Predictions for Apple 2010

1. Greater integration between desktop binaries and web apps. Customers can share documents, photos, music etc with automatic synchronization. Apple makes money from MobileMe subscription service (i.e. access fees) and from content creation i.e. you need iWork or iLife products to produce content, but it is free to view. Content creation is still on local hardware because that's what drives hardware sales but also because there is no need to complicate things with managing network connectivity/remote procedure calls.

2. With storage abstracted, as a paying subscriber you can access any of your content on your iPhone/iPod/Apple TV/desktop/laptop. This means you can have your entire iTunes library, video library etc streamed onto your Apple device.

3. TabletMac will be another device that runs on iPhone OS/CocoaTouch API framework. Exclusive content deals means Apple will either allow content providers to target ads to specific Apple customers, or get the MobileMe subscribers to underwrite an ad-free experience. Use App Store as reference revenue model.

4. New iPhone will check all relevant feature sets i.e. better performance, battery life etc.

5. Further tinkering under the hood with OpenCL and Bonjour networking, building upon what was available via Xgrid. Ability to donate spare CPU/GPU cycles from any Apple device so that all computationally-intensive tasks can be sped up just by bringing the device to within wireless network range.


Tuesday, September 29, 2009

App Store download stats

On June 17 to June 18 last year, Mozilla set a new world record for most number of downloads in a 24 hour period for Firefox.

According to stats supplied by Apple and as reported by AppleInsider:

#####

Since it first opened 445 days ago, the App Store has seen an average of 4.5 million downloads per day. In the last 80 days alone, that total has accelerated to nearly 6.3 million each day.

For comparison, in its first 365 days, the store had an average 4.1 million downloads per day. From April to July 2009, that pace increased to 6.3 million each day.

#####

If this growth rate continues, by the end of 4th quarter 2009 App Store downloads will exceed the world record set ON A DAILY BASIS.


Thursday, September 17, 2009

Safari on iPhone OS 3.1 SunSpider Javascript benchmark

My iMac is 39.4x faster at SunSpider. :P

============================================
RESULTS (means and 95% confidence intervals)
--------------------------------------------
Total: 16213.8ms +/- 5.3%
--------------------------------------------

3d: 2537.6ms +/- 11.8%
cube: 889.4ms +/- 15.1%
morph: 797.2ms +/- 4.1%
raytrace: 851.0ms +/- 15.8%

access: 2070.6ms +/- 15.2%
binary-trees: 268.2ms +/- 21.0%
fannkuch: 571.8ms +/- 19.6%
nbody: 1007.6ms +/- 16.9%
nsieve: 223.0ms +/- 41.1%

bitops: 1035.4ms +/- 3.3%
3bit-bits-in-byte: 176.0ms +/- 0.9%
bits-in-byte: 220.2ms +/- 0.9%
bitwise-and: 200.6ms +/- 1.0%
nsieve-bits: 438.6ms +/- 7.5%

controlflow: 142.4ms +/- 1.0%
recursive: 142.4ms +/- 1.0%

crypto: 965.8ms +/- 1.9%
aes: 289.6ms +/- 2.6%
md5: 340.6ms +/- 2.1%
sha1: 335.6ms +/- 1.9%

date: 1413.4ms +/- 15.4%
format-tofte: 501.6ms +/- 1.1%
format-xparb: 911.8ms +/- 24.0%

math: 2101.2ms +/- 2.3%
cordic: 682.0ms +/- 2.5%
partial-sums: 1015.2ms +/- 3.0%
spectral-norm: 404.0ms +/- 1.3%

regexp: 1722.8ms +/- 1.0%
dna: 1722.8ms +/- 1.0%

string: 4224.6ms +/- 2.8%
base64: 497.2ms +/- 1.0%
fasta: 672.0ms +/- 5.0%
tagcloud: 1016.0ms +/- 0.9%
unpack-code: 1161.6ms +/- 5.2%
validate-input: 877.8ms +/- 7.0%



Wednesday, September 02, 2009

Webkit r47948 with Snow Leopard SunSpider Benchmarks

Last year October WebKit was the undisputed leader when it came to running the SunSpider benchmark. How does it compare with the latest nightly build of WebKit under Snow Leopard?

============================================
RESULTS (means and 95% confidence intervals)
--------------------------------------------
Total: 411.6ms +/- 1.8%
--------------------------------------------

3d: 52.8ms +/- 2.6%
cube: 16.2ms +/- 3.4%
morph: 20.0ms +/- 4.4%
raytrace: 16.6ms +/- 4.1%

access: 40.2ms +/- 3.4%
binary-trees: 4.8ms +/- 11.6%
fannkuch: 16.0ms +/- 5.5%
nbody: 11.2ms +/- 5.0%
nsieve: 8.2ms +/- 6.8%

bitops: 22.0ms +/- 6.9%
3bit-bits-in-byte: 3.2ms +/- 17.4%
bits-in-byte: 7.0ms +/- 0.0%
bitwise-and: 4.8ms +/- 21.7%
nsieve-bits: 7.0ms +/- 0.0%

controlflow: 3.8ms +/- 14.6%
recursive: 3.8ms +/- 14.6%

crypto: 22.4ms +/- 6.3%
aes: 12.4ms +/- 5.5%
md5: 5.4ms +/- 12.6%
sha1: 4.6ms +/- 14.8%

date: 54.4ms +/- 3.5%
format-tofte: 26.4ms +/- 4.2%
format-xparb: 28.0ms +/- 3.1%

math: 37.4ms +/- 3.8%
cordic: 9.8ms +/- 5.7%
partial-sums: 19.4ms +/- 3.5%
spectral-norm: 8.2ms +/- 6.8%

regexp: 22.4ms +/- 5.0%
dna: 22.4ms +/- 5.0%

string: 156.2ms +/- 1.4%
base64: 16.0ms +/- 5.5%
fasta: 30.8ms +/- 1.8%
tagcloud: 34.4ms +/- 2.0%
unpack-code: 45.8ms +/- 2.3%
validate-input: 29.2ms +/- 3.6%


So, with all hardware remaining the same, the only changes are Snow Leopard and the WebKit build. I've gone from 745ms to 411.6ms. That's a speed bump of 1.8x. Not bad at all!

Blog Archive