#24 Steve Jobs Ruined My Engineering Career
It was early 2010’s (feels weird saying that by way) and Steve Jobs had just nixed adobe flash running on iOS (see Jobs’ Thoughts on…
This is post #24 of my #365 day series.
It was early 2010’s (feels weird saying that by way) and Steve Jobs had just nixed adobe flash running on iOS (see Jobs’ Thoughts on Flash). If you aren’t a developer, this didn’t really matter to you all that much. For those of us, however, that made a career out of programming using Adobe Flash’s (previously Macromedia) powerful scripting language — ActionScript, this was a serious blow to an entire industry. ActionScript had built up solid base of fans and developers, and its platform was seriously powerful. In many ways, Javascript’s latest features are a superset of what we already had with ActionScript. The removal of Flash (and therefore ActionScript) from the iOS ecosystem was a major step backwards for the entire programming industry. Jobs’ thoughts on flash were really nothing more than him trying to create a walled-garden for the iOS ecosystem.
What Flash let us do was create cross-platform applications by writing software in ActionScript on the Adobe Flex / Air frameworks. Adobe managed the Flash emulator for every supported operating system, which meant that we could write the same code and we would be ensured that it would run and render the exact same way on every platform. Pixel perfect rendering wasn’t a thing that you could do (frankly we can barely do it now…). The threat to Apple came because Flash / Adobe Air framework allowed developers to create applications for both the iOS ecosystems and others, including Microsoft Windows and Google’s android platform. This meant that there couldn’t be as many exclusive applications on the iOS platform, and Jobs recognized that exclusive titles kept folks coming back to purchase the hardware. Even more important, exclusivity meant that programmers had to commit to developing on iOS, which was a whole other set of purchasing decisions for consumers.
Prior to leveraging Adobe’s Flex framework for my clients, I was laboring over the .NET framework, which had a mash up of different standards and specs that made my life a living hell. From having to deal with various dependencies on the backend to frontend code not rendering the same way on various different browsers, it was a big ball of yarn that would unfurl every time I needed to add a new feature. Needless to say, when I discovered Adobe Flex and the Adobe Blaze server backend, both of which allowed me to use one click installers and configuration, it changed my life (and the lives of my clients). I was able to roll out new products and features as a one man show. Dare I say, I felt like the John Wick of coders (and no, I feel no shame or embarrassment in saying that).
The death of Adobe Flash and the Flex Framework is a great example about how capitalism can get in the way of technological development. By rough estimates, I’d say that Javascript has taken about 10 years to catch up to where ActionScript was already at and Javascript still doesn’t provide the pixel perfect rendering consistency that we once had.