It’s been a while since I’ve talked about what’s actually happening with Glassboard behind the scenes. Here, have a breakdown:
iOS
Since the acquisition last December, I’ve gotten the iOS app up-to-snuff in terms of fixing long lingering bugs and updating everything to match the iOS 7 design language. We also introduced an in-app payment way of purchasing a year’s Premium subscription.
The iOS app is nowhere close to where I want it to be long-term, but it reached a comfort point where I’m no longer losing sleep over it.
The current focus on iOS is on solidifying the foundation. A unit test suite to exercise the API wrapper and the data model are the highest things on the list. The data and API models are both prime candidates for being blown up, and I’m much more comfortable doing heavy refactorings with a suite of tests covering my ass than without.
Platform
Most of my work right now is on the Platform/Backend side of things both in terms of improving stability and reworking things under-the-hood to support some new business model ideas I want to play with in the coming months.
We’ve had some issues with delays recently with content being distributed through our Notifications worker role during peek usage times. My main focus at this moment is rewriting that Notification worker role in Node rather than C#.
I am not a proponent of rewriting for the sake of rewriting, but after mapping out the things I wanted to change and add to notifications on Glassboard, I was going to be substantially changing the behavior over 70% of the existing code in that role. Rewriting it in Node allows me to manage less code since there are some excellent packages I want to use, and will (hopefully) be a bit more performant for what I want to do.
Android
Much like the iOS app, I’m spending a lot of my time solidifying the foundation of the Android app right now to make way for the bigger changes going forward such as adding a suite of tests to exercise various parts of the app.
The Android app also has a lot of custom-built pieces of code that can easily be replaced with built-in Android controls, so work is underway on handling that. Prime example? The sidebar right now is a custom Activity
. Internally, we’ve switched it to using the Android Drawer metaphor instead. It’s less code to manage for me, and it feels like an Android app more since the swipe mechanism works as intended now.
Part of that DrawerLayout
swap is integrating Fragments
, which is Android’s way of breaking up parts of an app into smaller chunks. This is a relatively big project, but with major payoffs long-term, especially as I start thinking about updating the app to better handle tablets.
Web App
No, I didn’t kill it. My pals at Crowd Favorite are spearheading this project right now. I’m looking forward to a new web app just as much as you.