After 80 hours of development on Puffin, a work planning/tracking app for IOS, the buzzer has sounded and it’s time to look at what I accomplished.
The purpose for this MVP was to replace the spreadsheet that I had been using to track my work session.
What I managed to accomplish at the end of 80 hours
What went well?
Gaining clarity on the tracking portion. My attention was initially focused on the standup aspect of the app, so it wasn’t until I created a spreadsheet to track my work sessions that my understanding of what I wanted became clearer. I don’t have a desire to track hours specifically, that feels like a regression to my previous 9-to-5 work life. But I do want is a way to know when I am working and for how long in the overall context of my life. I’ve become more protective of my free time and wanted to make sure I wasn’t spending too much time working on any one project. Conversely, I still wanted to make sure that each project was getting the attention that it deserved.
What didn’t go well?
I spent an inordinate amount of time wrestling with the a few things that I thought would go smoother, namely the calendar. I’m using a 3rd party component because I wanted to save time. I soon discovered that my situation would still require making tweaks. I need a weekly view of the calendar and that means that I still have to adjust some of the settings. I still have to create a way to display the relevant information for a given date range. That said, it presented an opportunity for me to learn more about calendars and date calculations (Yippee!!) and this can be applied to an existing product Gobo.
On the project level, I didn’t do a great job at switching between this project and others. Part of the reason I’m working on Puffin is to create a tool that allows me to move more seamlessly between my projects.
What I learned?
I need to tone down the color usage in my designs.
I have a habit of picking a primary color for each new app idea and having it permeate all aspects of the design. While it works well for the icon creation portion of the project, it tends to make my screens overwhelming. I’ll change my approach to using color more judiciously, which will keep my designs in line with where things are now. I also find that using non-standard fonts is distracting and feel out of place on my device.
On the coding front, I experimented with creating all of my views in code, instead of using storyboards. I’ve tried going full storyboard in the past and now was on the other in of the spectrum. I learned so much about layout with this approach although it was a bit slower. Taking advantage of playgrounds in the early stages should help create a faster feedback loop. I’ll be taking a hybrid approach moving forward as I still see some advantages in using storyboard in my process.
What still puzzles me?
The app is still missing crucial connective tissue. While I’m clear on of the individual components that I need/would like to have, I’m struggling to create a cohesive vision. One of my biggest challenges is determining the correct entry point into the app. I’m not satisfied with the current information hierarchy. There are already too many tabs and I haven’t gotten the planning portions in.
What would I do differently?
My primary focus when I started was in the daily standup aspect. I was attempting to replace my daily journal with an software solution. It wasn’t necessarily the wrong way to go, as I made discoveries along that allowed me to throw away much of my early work. And that’s fine. Early versions don’t have to last. They’ve served their purpose as prototypes that I could use, learn from, and discard. As in writing, I have no issues with “killing my darlings”.
I’d also document the intermediate stages, There is value in being an “app historian” and capturing thoughts and decisions throughout the stages of development. Tracking what assumptions were made at the beginning and how/why they changed could be helpful further down the line. When revisiting features, there may be valuable historical information in determining the optimal time for if/how/when they should return.
Is it worth it to keep working on this? Why?
I’m still deeply interested in seeing this product continue. I find myself using the session tracker portion daily and it has replaced the spreadsheet in conveying how I’ve been spending my time. I’ll continue development by integrating the missing components and discussing them in further posts.
This MVP was a success and I’m looking forward to applying the lessons learned to the next one.