It Can’t Possibly Work

I haven’t used React because I’ve been away from mobiles for a while, having experienced serial disappointments writing useful and rock-solid iOS applications that earned me almost no money. I’m not a promoter and my friends in the game business tell me that they spend twenty times as much on promotion as on development.

However I worked briefly with a company that shortly fizzled, and they were using React, and wanted me available in case they needed any native iOS code. And while I was impressed with the similarity between iOS and Android versions, it was very obvious to me, having phones of both types, that the user experiences on the two operating systems were very different and that React exposed only the intersection between the two.

Image for post
Image for post
Ummm … no

Second, there was at the time no visual editor; control placements were an iterative process, which is unacceptable and in my Windows front end work, infuriating. One reason I ended up as a back-end developer is because I hated the tedium of pixel math.

If that has since changed, I withdraw the objection but I would rather learn Android, especially now that there is Kotlin instead of Java and I would rather write two native applications than work with the few commonalities.

Thirdly, I just don’t like JavaScript. It has more dialects than rural China and I detest var. Weak-typing languages feel like Tinker-Toys to me. I might like React better if it was in a more serious language but it isn’t. On my last job I was the server developer and I offered to learn JS so I could do more than fix up $http calls to my API and both other developers told me it was a nightmare of versions and transpilers and buzz, buzz, buzz. We had a good front end developer anyway.

Back when OS/2 was a thing and in competition with Windows there were several attempts to achieve the same objective. Both were DLLs that would map a Windows application to an OS/2 application, no mean feat since their coordinate systems were different. But aside from that the interfaces were almost indistinguishable, they worked the same way, had the same controls in the same screen locations, but neither DLL ever worked quite right.

The company that hired me had wasted eighteen months trying to do this, and both times they got to 80% functionality at once, and incrementally closer with longer times and more work. At no point did they ever reach something near releasable. My first day I told them, having developed for both, that it was a lost cause and that they should expect to write native code for each operating system, possibly with some portable code that was OS-agnostic. They didn’t like hearing that because it was a company whose solution to any problem was to fire somebody and I was telling them they had wasted a year and a half. And this was just 3270 terminal emulation, which wasn’t difficult stuff.

Android and iOS are a LOT more different than OS/2 and Windows were.

I wouldn’t touch this with a ten foot pole. Sorry. It’s contrary to all my experience.

Get the Medium app

A button that says 'Download on the App Store', and if clicked it will lead you to the iOS App store
A button that says 'Get it on, Google Play', and if clicked it will lead you to the Google Play store