My Start with Mobile Software Development

I started like as app developer on Palm 3 and WinCE 5. Something to remember is how many binaries were needed just to deploy the applications to target a WinCE platforms. Each release had to build binaries for several different architectures and sub divisions of several.

Windows CE targets four processors (SHx, MIPS, ARM, and x86), versions 5 and 6 of Windows Mobile target ARM processors (ARM v4 and v5)
https://www.cryptopp.com/wiki/Windows_Mobile

Installation of the mobile applications had several different processes, such as:

  • Install a CAB file from windows which included installing a windows application to ‘talk’ to the device and install the mobile software binary
  • Install a CAB file on the mobile device
  • Directly transfer the mobile software as an exe to the device using
    • Windows Sync,
    • Over a network connection from website,
    • Or using portable media such as a compact flash card

Palm had a different processor core for PalmOS 5 going from Motorola to arm, which necessitated an entirely different emulator to run. The screen sizes were a major issue just for displaying on the screen as this was before Apple invented the resolution scaling features on the iPhone that allowed the screen to display widely different targeted screen sizes without putting the app window off the screen where it was not visible, a common occurrence on WinCE.

Additional issues for development was that there were no free IDE’s for WinCE or Palm that worked after downloading. Instead a developer would be required to setup a build environment using instructions on a distributors wiki.

The ‘smart phone’ also was a hard sell since feature phones were getting purchased in greater quantities for years after the introduction of the first ‘smart phones’ even ones that ran PalmOS and WinCE. What drove sales of the feature phone’s and smart phones were the cameras, which are comparably slow and low resolution to what is available on the cheapest android phone’s default camera capture resolution and speed of capture. In fact, people were still using disposable cameras for this reason by the time the iPhone came out for the speed and convenience as well as the introductory prices was in the several hundreds of dollars even with payment plans from mobile phone providers.

Sales of camera phones worldwide in 2005 are projected to reach 295.5 million, according to market researcher Gartner.
And phones with embedded cameras will make up 38 percent of all mobile phones shipped during the year, Gartner projected. Camera phones accounted for 14 percent of shipments last year.

In North America, camera phone sales are likely to reach 70 million units, or 47 percent of total phone sales, in 2005. In Europe this figure is 85 million, or 55 percent, of total mobile phone sales. Almost 92 percent of all phones sold in Japan have a camera.

https://www.cnet.com/culture/camera-phone-sales-on-upswing/

The reason the iPhone killed the rest of the market in my opinion? Compared to the rest of the market, it had the only billionaire beta tester, Steve Jobs. Even Google executive used blackberries until version 4 or 5 and saw the whole platform as just a way to compete with Apple even as they paid Apple to keep Google as the default search engine on the device.

Originally the iPhone was supposed to be a tablet computer, but Steve Jobs seemed to hate mobile feature phones so much he had that project pivot to make an iPhone from the iPad prototypes.

He said this during one of the interviews about the development of the iPhone and before the introduction of the iPad. Additionally, he didn’t want to use a tablet that only had 2 hours of battery life, which is what the Windows Tablet’s from 2003-7 had as far as battery life. He also didn’t want it to be an application platform because he knew it would necessitate a curated store or antivirus software. And he was instrumental in selecting a very picky approval process for iOS 2 even writing the reasons for rejects themselves or at least having them dictated.

People forget how bad web browsers were for mobile phones until the iPhone came about. Some people didn’t even know you could use a Treo or HTC’s products to browse the internet. Back then a device with only 32mb of RAM could browse the same internet as a desktop user with 256mb of RAM, but it would be slower made more tedious by a slow modem, small display and the posture of holding a device for reading. Apple’s mobile safari set the standard especially compared to everything else in the market at the time, which really just consisted of Opera Mobile and Opera Mini and Mobile IE. Android didn’t start to take off until long after the T-Mobile G1 was released and only about 2010 you started seeing it everywhere replacing Palm/WinCE until Android 2.0 came out one devices like the Motorola Droid in 2010 and that was 3 years after the iPhone was released. Apps only became a way people could use Facebook faster than a website and optimized for a particular resolution.

Before app stores, carrier’s dominated software approvals for feature phones. Sprint PCS wanted 5k to distribute on their platform, and AT&T was ‘contact for details’ with people saying it was only several hundred dollars, maybe $1500, but nothing was officially published. Apple undercut this with only a $100 annual fee and a net 30-45 payout. I don’t know how often carrier’s would pay, but I remember developers saying they had to ship code with a unique hash generator and call home features to get an accurate count of actual purchases from the carrier store. Then managers would tried to get a correct payout from the carrier.

I started using XCode 3 for iOS 3 and it was just so much to setup and code than Visual Studio without .NET it was no contest. One screen size. One binary. One free IDE.

Microsoft’s C#/VB.net environment for a time was easier to build for mobile devices, but transferring binaries to the device to run or setting up an emulator to run was never as easy as Apple’s XCode 3.