Archive for November, 2008

The landscape shift to mobile apps & cloud computing/SaaS

Friday, November 28th, 2008

UpdateThis blog is now also posted on SYS-CON’s Cloud Computing Journal!

It’s the day after Thanksgiving and I’m definitely using the day off from work to catch up on life in general, plus the two key markets I’m tracking: mobile applications and cloud computing/SaaS. Depending on who you ask, technically I think of Software-as-a-Service as a subset of cloud computing, but I digress.

I could not make it to attend Walt Mossberg’s keynote at the recent Dow Jones VentureWire Technology Showcase in Silicon Valley, but this writeup on ReadWriteWeb is certainly the next best thing to being there in person. Reading this article made me feel validated. I’ve been tracking the mobile apps (here), cloud computing (here), and SaaS (here) landscape for a while now, and with Walt telling the media to “pay attention here”, I just feel great that someone great (like Mossberg) feels the same way too (*not comparing myself to the great Walt Mossberg).

If you’re wondering why I bother with these two areas, hopefully the excerpts from the pro himself will shed some light (and maybe get you excited!).

On mobile apps:

[...] there is colossal developer energy, intellectual energy, going into this question of “okay we have the Web out there, the Internet out there, it’s just full of all kinds of information; commerce engines, and search opportunities, and entertainment opportunities, but we don’t necessarily need to go through a browser – we can go through an app that takes advantage of the processing power and the graphics engine and all that on the computer that is narrowly focused on whatever it is.

[...] Some of you who have tried some of these 7K apps on the iPhone know that here is pretty much a staggering variety of what you can do on there. And I at least can say in my travels and daily life, I’m as glued as the rest of you probably are to this stuff. I’m pulling out my laptop less and less often during stopovers at airports, and it’s not just like when you use to have your Blackberry or Treo and you could look at your e-mail.

I’m doing Web surfing in the browser – which is a good browser in the iPhone – and all of these, the marks of these is they have a much more real browsers than the old phones used to have, but I’m also using a lot of these apps. These are kind of big broad areas where I think it is quite fun and exciting to see competition, ideas ferment; and innovation.

On cloud-computing/SaaS (although he doesn’t directly use the same term, that’s what I group this under):

[...] trying to take what has been true in corporate America for a long time, which is a sort of service in the cloud – whether it’s the Blackberry Enterprise Server, or Microsoft Exchange or Lotus products that replicate data across devices and, push e-mail and other data out and bring that to the wider consumer world.

The shift in engineering resources:

If all else, the shift in what software developers are focused on should be an indicator of where we will see a lot of innovation next. Right?

Just as a lot of the design and engineering energy left things like CD-ROMs and rushed into the Web when it was clear that it was a big deal, I observed, and I don’t know about all of you, but I’m observing a tremendous migration of design and engineering activity into these super smart phones or hand held computers, iPhone class devices. And into these both cloud services and these kind of widgety outside the browser Web apps.

We haven’t seen too much clear synergistic benefits between mobile apps PLUS cloud computing/SaaS yet, but I sense that we can expect to see more good things out of the intersection of these two. I’ll be tracking the landscape closely.

Changing the world

Lastly, this is more than just about me geeking out and chasing a new shiny object. This has the power to change the world. Just as VC Fred Wilson said that we are “finally witnessing the impact of the end of the industrial era and the emergence of the information era”, cloud computing has the power to revolutionize non-information “soft” product sectors (like agriculture and manufacturing). Irving Wladawsky-Berger puts it best in his blog post:

.. about a year ago, the Cloud  showed up, and started us on the path of industrializing everything about e-services through the application of more advanced technologies and more rigorous science, engineering and management methodologies.  This is an absolutely critical step given our vision to offer millions of e-services to billions around the world, through a large variety of devices.  It is equally essential if we hope to make our planet – its people, companies, industries, economies and governments – increasingly smarter by collecting, analyzing and acting on information from trillions of devices, sensors and things.

We have a long way to go in this historical journey toward significantly improving the productivity and quality of services and the service sector.  The service sector accounts for about 2/3 of the GDP of the world at large, over 70% in the European Union, Japan and Mexico, and close to 80% in the US.

Over the last few centuries we have made huge advances in the productivity of the agricultural and industrial sectors, advances which were then translated into improved standards of living for a large number of people around the world.  The only way to continue these advances in the standard of living of more and more people around the world is to attack the inefficiencies in this very large sector of the economy.  This is one of the most important challenges in our emerging knowledge age, and the reason many of us are so excited by the prospects of cloud computing – including now The Economist.

Clearly, Richard “RMS” M. Stallman is wrong about cloud computing – it is he, who is stupid. Disclaimer: I love emacs and the FSF, I’m just not a fan of RMS and his occasional extremism.

(char)lotte: my- *love –

Monday, November 24th, 2008

I almost fell off my chair reading this. Funniest thing I’ve seen in a while! :D C/C++ hackers would <3 this! Even if you’re not a hacker, you can still appreciate the English poetry. It’s just expressed, differently ;)

From the International Obfuscated C Code Contest, may I present to you this lovely poem:

char*lie;

	double time, me= !0XFACE,

	not; int rested,   get, out;

	main(ly, die) char ly, **die ;{

	    signed char lotte,

dear; (char)lotte--;

	for(get= !me;; not){

	1 -  out & out ;lie;{

	char lotte, my= dear,

	**let= !!me *!not+ ++die;

	    (char*)(lie=

"The gloves are OFF this time, I detest you, snot\n\0sed GEEK!");

	do {not= *lie++ & 0xF00L* !me;

	#define love (char*)lie -

	love 1s *!(not= atoi(let

	[get -me?

	    (char)lotte-

(char)lotte: my- *love -

	'I'  -  *love -  'U' -

	'I'  -  (long)  - 4 - 'U' ])- !!

	(time  =out=  'a'));} while( my - dear

	&& 'I'-1l  -get-  'a'); break;}}

	    (char)*lie++;

(char)*lie++, (char)*lie++; hell:0, (char)*lie;

	get *out* (short)ly   -0-'R'-  get- 'a'^rested;

	do {auto*eroticism,

	that; puts(*( out

	    - 'c'

-('P'-'S') +die+ -2 ));}while(!"you're at it");

for (*((char*)&lotte)^=

	(char)lotte; (love ly) [(char)++lotte+

	!!0xBABE];){ if ('I' -lie[ 2 +(char)lotte]){ 'I'-1l ***die; }

	else{ if ('I' * get *out* ('I'-1l **die[ 2 ])) *((char*)&lotte) -=

	'4' - ('I'-1l); not; for(get=!

get; !out; (char)*lie  &  0xD0- !not) return!!

	(char)lotte;}

(char)lotte;

	do{ not* putchar(lie [out

	*!not* !!me +(char)lotte]);

	not; for(;!'a';);}while(

	    love (char*)lie);{

register this; switch( (char)lie

	[(char)lotte] -1s *!out) {

	char*les, get= 0xFF, my; case' ':

	*((char*)&lotte) += 15; !not +(char)*lie*'s';

	this +1s+ not; default: 0xF +(char*)lie;}}}

	get - !out;

	if (not--)

	goto hell;

	    exit( (char)lotte);}

iPhone Tech Talk – Los Angeles

Monday, November 10th, 2008

(I’ve been rather caught up lately, and this is a slightly late post!)

Update 11/11/08: Correction, when I wrote below that a certain Apple product did not have a camera, I was referring to the iPod Touch, not the iPhone 2G! Tks CaArRrRny.

About 2.5 weeks ago, I took a day off from work and drove 2 hours up to LA to attend a mini iPhone developer conference. It was a free event, but seating was limited and reservation was a must. I was lucky to get a spot, a few of my developer buddies from the San Diego area were not able to secure one (the event “sold out” almost immediately!)

photo.jpg
 

Apple also announced that they have just launched a developer forum site just the night before. This forum is late in the game, also because it was only recently that Apple decided to lift the developer-community-killing NON DISCLOSURE (duh) agreement.

I got to meet some interesting dev guys, and learned a bit more about this new mobile platform (below are some pictures). Some of my thoughts:

The iPhone App Store really does provide value

As much as some folks criticise this “centralized” distribution method, it provides value like Digg.com, Reddit.com, and Slashdot.org does – in discovery. Does Digg create its own content? No. Digg’s largest value prop: The most interesting news at that point in time on the ‘net, when you visit the site (great for ADD news addicts). It’s a great discovery service. So if you’re an iPhone app developer, the App Store is a great way for people to discover your app. You are exposed to an audience world-wide. Or at least, the 50-60 some countries that iPhone is officially distributed in.

To contrast, in absence of the App Store, you can distribute your app on your own personal web site. Uhh, and how are you going to get discovered? Are you going to spend $ on a marketing SEO force? Look at Windows Mobile and Symbian. If you developed an app on these said platforms, you are free to give/sell it exclusively from on your own web site. There’s not an equivalent “App Store” for Windows Mobile and Symbian OS. (And how are apps doing on those platform again? Right..)

Apple’s seemingly arbitrary process of approving apps sucks

Yeah it sucks. Apple provided lunch at the Grand Wilshire hotel, so we didn’t have to go out and spend money. Nice move, because developers can discuss and get to know each other over a meal (aligned with AAPL’s motive of cultivating a developer community – and oh, I like free food too). One thing that appears to be the consensus is Apple’s no-guidance on what apps they will approve or not approve to be on the App Store.

For an app developer, after you have done building your app, you then have to wait for Apple’s final thumbs up/down on whether your app will be accepted for distribution. While some checks and balances are necessary for various reasons (quality assurance, no malware apps, etc.) – this current process is one big black box and the trouble is that if you were a real corporation who had to justify engineering resources to allocate, complete with revenue projection plans, you have this one step where it looks like it’s a dealbreaker: the review process.

The trouble is, you don’t know before hand if Apple would say “hell no” to distributing your app after you have already spent the time/money/effort toiling away learning the platform, and then painstakingly building an app. Your resources spent would be effectively be written off as a sunk lost, if they just rejected the app. This is arbitrary outcome is hard to accept, if you’re the I-allocate-my-engineering-resources-wisely-with-planning kind. If you’re a {one, two, three}-man “side project” startup guy app developer, then whatever .. because you’ll just likely chalk it up to fun. But if you’re doing this solely to put food on the table, this process sucks.

One developer over lunch mentioned how his app was submitted, and Apple did not deliver a decision within the time they said they would (IIRC, 90 days), and told him to resubmit (essentially beginning the whole submission process from beginning again). He did call once in a while to check the status, and he said the operator’s sole job was to basically just remind callers that the 90 days have not been reached, and they should just wait by the mailbox for an answer.

Fragmentation is veeeery minimal in the iPhone

Minimal, yes, not zero. Why? Because the older iPhone iPod Touch does not have a camera. So if you’re developing an app using a camera, you had to include in your code an “if no camera, do this, else do that” statement. Think about the Android. It’s made to run on a bazillion type of different hardware from different manufacturers. If you were developing an app using the a camera, you have to do a “if no camera, break, if else, camera supports X resolution, do this, else if, camera has this special feature, do this, else … ” nesting an unnecessarily long if/else conditional (or a conditional equivalent type check).

The art of symbiotic co-creation

Back “in the day”, one has to negotiate with carriers and stuff (no one man dev shop is going to do that) – clearly the barrier-to-entry has been lowered significantly for mobile app developers. Also, Apple takes care of billing, local taxation stuff (recall that the iPhone is distributed globally in 50-60 some countries), and the hosting of your app. I think the 30% cut is reasonable, as they are creating real value for mobile developers.

It’s really nice how Apple has removed a lot of friction in developing a mobile app. The success of the iPhone hinges just as much on the app developers as do the success of the mobile developers, on the success of the iPhone. The more attractive applications exist out there, the more that would drive iPhone sales globally, further strengthening the buyer-seller network-effect (like eBay, they are un-toppable at this point). As an app developer, you’d want to develop for the platform with the widest audience possible.

Anyone can engineer an app for any niche they choose, so even obscure verticals may have their needs met. Apple knows there’s no way it can possibly meet *everyones* app tastes, so it’s smart to just farm out that piece to the free capitalistic market.

On the flip side, not providing an open market for developers would mean not being able to feasibly meet a certain need by a certain category of consumers (some will be left out, by definition!), and those folks would be ripe for poaching by iPhone-competitors. Thus, AAPL is really covering themselves from a potential attack from the low-end of the market there (which if were to occur, would force Apple to keep moving higher in the market – classic b-school case study stuff). This reminds me of an article on innovation by McKinsey Quarterly that I had just previous blogged about (good read about innovation, do check it out. Warning: soul-sucking registration required).

In all, this was a nice event to get to know other iPhone devs around the Socal area (one guy actually flew in from Phoenix!). I learned a lot of best practices type stuff, e.g. excessive and unnecessary polling of the GPS quickly drains the battery life, and most apps don’t need that kind of geo-location precision (so don’t be a hog!)

Hooking up an iPhone to a Macbook for real-time live debugging:

photo.jpg
 

Real-time performance benchmark stats:

photo.jpg
 

Hey, does that spell an “A” for .. Aquaduct?

photo.jpg