Wednesday, March 09, 2016

#35 Getting Tech again.(Dated)

This post relates to the challenges I faced back in Dec-2015. It all seems like a blur now. It started with Android Lollipop upgrade in Jan-2015.

The app I built back in 2012, worked fine with its limited mobile capabilities for good 2 years. Then, I got my wife a Moto G and within weeks the OS upgrade to 5.0. I'm always trigger happy and I promptly upgraded the OS. Alas! it broke my Sencha app such that it stopped showing the screen. I tried searching the web for possible remedies, but there was hardly any chatter around it. No document or discussion threads. Well, it still worked on my iPhone iOS 8 and for the time being it was okay. I hobbled along with my iPhone.

Back in July I bought a cheap Android phone to host my India SIM. Around the same time the Moto G started acting strange. I think the moisture got to it and it started freezing up. M has little patience with technologies, so she promptly exchanged her Moto G with my Alcatel. Alcatel was still running Android 4.4 and the app sprang back to life. Life moved on.

Then in September, iOS came up with version 9. I promptly downloaded it and What The Heck, the App broke again. This time iOS.

After Nov incident, as I looked for ways to fill time, I decided to fix the issue. By the time Sencha had upgrade to version 2.4, I had moved on to Ubuntu and the world looked new and full of promise. But that enthusiasm didn't last long. I thought porting the application to Sencha should be a breeze as I was not using any of exotic plugins. When I tried building the application, it broke badly. I tried no end fixing it but to no avail. The application would not refresh and the older structures, Models and Stores that worked perfectly stopped working. I painstakingly almost completely rebuilt the application to find out just commenting out a few lines is all I needed.

Anyhow, I built the application for prod to first deploy the minimised version on test but it would not build. Struggle started all over again. The error messages did not help and the threads were all over the place. If I thought that was bad, when I tried deploying a new war on prod, it completely broke  down.

The AWS world had moved on since 2012. My platform with Tomcat 7 and Amazon Linux were an unsupported lot. There were no 32 bit versions available or supported. Meaning, I had to rebuild the entire infrastructure from grounds up. Once I had created a brand new infra, the application would not deploy on Tomcat 8. I then had to upgrade my development env with Tomcat 8 and fix all the libraries which was mostly 32 bit libraries. Well, I fixed the few logging jar conflicts and deployed it back. Fortunately the site came up. But the I had to upload the exploded version of the Sencha on prod. Terrible, Terrible. It took 45 seconds to load on a 12 mbps line and a minute on 3G. Atrocious.

I had to find a way to fix the build issue. And I did. It was weird. I thought the minified version kept everything including models, views and stores in app.js. Yet the app.js kept asking for store files from some location which did not exist. So, just to make it shut up, I created that folder structure and put raw store files there. And Viola, it worked. This was around week's worth of effort in Dec. Just for records...

No comments: