Why I Value Native Software
When the original iPhone OS was introduced, many people loved it, and many developers wanted to be on the platform. iPhone OS 1 had broken through Safari browser and Steve Jobs implied that third-party developers could use the power of WebKit to build and distribute their applications. However, they were never “first class” applications. Apple didn’t use HTML, CSS and JavaScript for their apps.
With iPhone OS 2 and iPhone 3G, Apple opened up some of their internal frameworks, like UIKit and Foundation for any third-party developers. Now you can run applications that can compete with software developed in Apple itself. Like we always could do it with AppKit on Mac. It was the right and very successful decision.
During my software engineering career, I preferred and prefer to use the same tools and technologies available to the OS vendor. It feels more fun to me, I tend to want more control over the software I build. I value freedom in power to express any kind of idea, and I do not tolerate any kind of performance cost or compromise in user experience. I never cared about building something available to the largest group of people possible, but I always wanted to build the best kind of experience possible, and, most importantly, to deliver experiences which is better than alternatives. That’s a cornerstone of my race to succeed, be better than others, sometimes it means to be different.