I’ve always been a bit stubborn, in that I like to believe that with a bit of hard work and elbow grease, almost every problem can be solved. Last week, I ran into a bit of a blocker with Android studio and would like to share my experience along with some lessons learned:
As a student, I haven’t had the most experience with “new” languages, and generally speaking, upgrading an IDE that I’m using has been more or a leisurely stroll down the beach (I’ll do it if I remember) than ASAP PANTS ON FIRE.
Thus, I was kind of taken aback when I ran into issues after creating my project in a slightly older version of Android studio that I had previously installed on my computer. Initially, my project seemed fine and I could get the initial “hello world” screen up and running. As I was working on installing some external packages, I ran into issues with my Kotlin version. I tried just installing the Kotlin plugin version from the Jetbrains website, however, I had no luck actually loading it into android studio. Total dead end. I realized I had to upgrade my IDE and then upgrade the Kotlin version. While upgrading, I ran into issues while my android studio tried to piece itself together, in its newer and (supposedly) sleeker form. I wasted a bunch of time retrying to upgrade individual parts that were failing and ultimately ended up deleting android studio and installing the new version from scratch. Once I finally had a new version, I had to make a bunch of changes in my project build files to get it up and running.
This lesson was somewhat painful and ended up being the culmination of several days of work, but now with a much clearer head, I can reflect on the experience and hopefully remember these takeaways the next time I’m in a similar situation:
- Error messages are your friend
- Sometimes you have to just run things and see what happens
- It’s good to try to fix something, but occasionally you will run into an issue where the solution is much more painful than just starting from scratch. It’s ok to toss in the towel, especially if you end up in the same exact spot. (Note: This doesn’t mean you should erase your coworker’s or legacy code because you don’t understand it)