Assignment 3 is finally over, and so is the first half of CS3216! It sure had been a painful few weeks, thinking about the various problems faced in this assignment almost 24/7. Here’s a brief summary of my takeaways.
As the main front-end developer in the team for most of the time, I did understand more about AngularJS, some limitations the framework placed on what I wanted to achieve, as well as a few hacks to get around them. It was my first time dealing with HTML5 technologies that make Web applications look and feel like a native mobile app, let alone make it useful even when offline.
I felt quite fortunate to be in my current team. The app, TL;DR, though is a simple app with few features(at least in my opinion) as it is meant to be a convenience app for reading articles on the go, has its benefits to me as a developer. The uniform UI layout for the feeds page means I can just reuse the same HTML template for all the different categories, adding a little extra logic in the controller to differentiate between the pages. This frees up more time for us to deal with annoying CSS bugs(more like CSS properties of the UI components we used from Angular Material that we did not want), as well as thinking about the tougher problems of offline functionalities, synchronisation etc.
In terms of app reviews, to be honest, most of the comments/bugs we received were already known to me when I was developing the UI(and testing concurrently). It’s just that either I decided to leave them till after the app review as I knew I could not fix them in time or that I considered them low priority compared to getting more features up.
Of all the front-end work I did, the work that I was most satisfied with myself was the background job queue. I felt it’s the closest thing to OS-level related stuff(I’m not very good at OS though) and I like to implement things that are PERFECTLY REUSABLE.
One of the few things which I felt was a pity was not doing splash screen for Android devices. I managed to get it to work on several types of iOS devices that are still on iOS 8. iOS 9 destroys our splash screen milestone on iOS. Why did iOS 9 have to come at this time!? Thereafter I got lazy since there are too many different devices running Android, each with different screen dimensions. Another thing is the inability to postpone initializing of Facebook SDK till the app gets Internet connectivity. Most of the times I get “err: NETWORK CHANGED” when the app tries to do so. Not very sure what causes this.
This post has gotten a bit too technical on the implementation side. Looking forward, I worry about the final project as we have yet to come up with a good app idea for the upcoming project proposal, even after squeezing our brains dry(creativity and human aspects are my worst stats). We have also tried emailing external parties but they usually take a few days to reply, which does not help the situation.
I really wish to say this: time for a proper mid-semester break from CS3216.