Coming into this course, I wanted to make a presentable, resume-worthy project, or at least build some skills that would be beneficial to add to my resume. My hope was to be assigned to either a cross-platform or mobile application project to gain experience working with mobile apps. Up until then, my courses at OSU had only really covered web pages apps. I originally wanted to take CS 492 Mobile Software Development to learn about this side of software engineering, but it ended up not aligning with my schedule, so I knew I had to find a different way to learn the material. As a result, I was very excited when I was assigned to the Dating app for Animal Adoption project, which is both a mobile app (as agreed upon by my group) and a topic that I am personally invested in.
I knew that there would be challenges associated with learning to build a mobile app from scratch, especially since this course is mostly self-guided. However, instead of scaring me away, this pushed me to take initiative into searching for different options then researching them to identify the pros/cons and justify my decision in choosing one over the other (ex: Java vs. Kotlin vs. Python for mobile app development and SQLAlchemy vs. MySQL Connector for handling database queries). I then had to figure out the task of actually implementing whichever technology I chose. One of my first struggles was with setting up and organizing the GitHub code base. I wanted to construct some organizational structure instead of just having all of the files in one big folder. In doing so, I ran into issues with imports (which I learned was due to Python seeing them as basic scripts instead of modules). After figuring this out and finding a fix, I also practiced writing documentation to teach my teammates about how to configure their local python environments and navigate and work with the code base.
Though this process was stressful and nerve-wracking at times, I learned a lot from it and have continued to improve each week as either I or my teammates run into new problems. This built both my independence and confidence in finding solutions, which I view as my biggest success and greatest takeaway from this course. I realized that, while a course that teaches you how to do one specific thing or write in a specific language makes the learning process much smoother, I won’t have that luxury out in the real world. No matter which company I end up working at, I will have to learn new technologies on the go, and this course has definitely given me a good start towards that.
Leave a Reply