The midpoint blog post.

This week my team discovered that a problem with the authentication platform on our mobile app was actually not a problem after all. Yes, after my many hours pulling out my own eyebrows (a colloquial term for “working hard”), it turns out they were failing to compile the newest version of the code. Oh sweet relief, oh bitter pang of wasted energy.
Also, this week, I put together the midpoint report. Well I only got it started, and wanted to give someone else the opportunity to do the right up, and they made some edits, yes, but it was unpolished. So I revised that, split it into the correct file structure, made the formatting more consistent, and expanded the content so it was more thorough. I got the sign off from everyone and turned it in. OK.
This week, I’m going to the dentist to fix a chipped tooth. Between starting a new job and writing blog posts and standup discussions, I didn’t find time to make an appointment until the week after the “incident” with the fork, but finally my dentist had time to get me in, so I’ll take a half day Friday.
The “infotainment” system in my car was stuck in a bootloop. According to the dealership, during the 1hr I was listening to HD radio during the past 6 months, NPR, this is really what they told me- NPR sent a pixel over the HD radio signal which fried the CMU. OK. If the part was available, they repair would cost $1500. OK… It was a software issue, but they refuse to provide the patch for free. Ook…The same thing happened in Boston to a different model of Mazda and they extended the warranty, but for mine? No mercy. Ok. To Ebay we go, and if I have to find a way to update the CMU software myself, so-be-it! I held off in the past because I was afraid of bricking the CMU. Oops.
This week I’ll have to record a video demonstrating my contribution to our team’s app. I’ll give you a sneak preview, 70% of everything – planning, designing, code. Despite cajoling and urging and prodding, I’ve discovered you can’t herd cats. Maybe the saying should be, when life gives you cats, grind them up into meat and make hamburgers, but I have to work with this guys for the rest of the quarter.
My point being – this is my midpoint blog post – A reflection of my experience as an overworked and strung out final term college student and full time employee. Is it polished, cohesive, with a formal beginning middle and end? Probably not.

I was once told a story about a PhD fine art program. The instructor gave the class the assignment to create a work of art that demonstrated Life. The top grade in the class was a student who walked to the front of the class, took a bite out of an apple, set it on the instructor’s desk, and walked out.

*sips coffee aggressively*

Tell, don’t show.

It was a long and winding road: a circuitous path: a roundabout way: we took the scenic route deciding which framework to use to develop our cross-platform crowd sourced fitness app. We, in this instance, being myself and the folks that I was randomly paired with to work on our final Capstone project for graduating from the OSU Computer Science Post Baccalaureate program. And although we did our due diligence and performed a spike to determine the best fitting framework for our requirements, we have none the less run into the first limitation of our chosen framework. Let me walk you through our decision process.

Initially, I performed a spike comparing the different cross platform development frameworks, React Native, with the three flavors of Ionic, with Xamarin. It was discovered that Facebook owned React Native would not be the ideal solution, since it required multiple code bases – one for each platform. It was considered that the higher performance payoff, by virtue of natively compile executables, was not an enticing enough boon to take on that additional effort in this course where time may or may not be of the essence. So, despite these reasons and having high satisfaction from developers who adopt it, we decided to disqualify React.

We next considered Microsoft’s, Xamarin, which fulfilled our single codebase requirements. Xamarin provides a simple testing environment, and many job opportunities for its practitioners. However, unlike React and Ionic, Xamarin requires knowledge of C# and .NET, neither of which have been discussed or alluded to in this program. Even though my introductory classes were taught in C/C++, and the transition wouldn’t have been as painful for my Python prone partners, it was decided the learning curve was too steep for this class. Even though Xamarin products tend to have high performance due to their, like React Native’s, natively compiled executables, we decided to forgo Xamarin was disqualified for a hybrid solution.

Of our three considered platforms, this left us with only Ionic left to consider. If only it were that simple. Ionic itself can be paired with 3 different javascript frameworks. Angular, React, and Vue. Angular being the most robust, full featured, and flexible of the bunch, and Vue, on the other end of the spectrum, being much easier to use, but allowing for less functionality. Believing our app would not require too many advanced features, and knowing that we would be crunched for time, we first elected to use Ionic + Vue. After further discussion and research, we realized that React and Angular might be more difficult to learn, but in the end would provide better experience and help develop more marketable skills. So we decided react was the way to, naively assuming it would support all of the features advertised in Ionic’s UI library. Woe upon us all.

In fact, Ionic + React does not support Ionic’s basic navigation system. This was our original strategy for displaying different types of challenges in our fitness app. So we made a hard pivot toward using Modals, but this presents other challenges with dynamically populating lists, as Ionic Modals expect functions to be passed. How will it be resolved? Well, that we will that will be the adventure of coming weeks.