Week 9 is the start of project mode at the Flatiron School, and that entails developing an app of choice for 3 straight weeks with 3 other classmates. We sort of had a choice with what we are going to make; the deal is each team submits three ideas to our instructors so that they get the final word on what project to pursue. They, of course, have a better handle as to what work is viable and challenging enough for our 3 weeks time.
We just submitted our ideas to our instructors, and they are currently deciding which idea best fits our time and effort. The process was enjoyable since they had each team pitch its ideas to all 5 instructors Shark Tank style- that was funny. We came up with an idea to reinvent the tour-guide marketplace in which tourists can find specialty, off-the-beaten-path trips created by locals . We want to create an on demand spontaneous tour guide searching experience.
Day 3 of Project Mode
We’ve been making our app for 3 days, and I’m enjoying the process. We ran into our first merge conflicts yesterday on git. It was awful in the beginning, but I think we’re getting the hang of it. Prior to project mode, I figured that my pace of learning would begin to slow down now that we no longer sit for lectures. That thought is so far from the truth.
This weekend, I learned how to properly solve a merge conflict on Xcode; I learned how to integrate xibs, collection views, and tab bar views in my projects. It feels empowering self-sufficient and not always rely on our instructors!
On to Week 10.
Nibbin’ and Xibbin’
Our app is slowly coming together. It’s become apparent that collaborating with 3 other developers can be extremely difficult. I came into this capstone project imagining that our app can and will be pushed to the app store. But as our lead instructor pointed out, the point of this project isn’t meant for each group to divide work on what each person is best at. Rather, you should be focusing on what you suck at. And if that’s the case, it becomes clear that our broader goals to experiment and learn are not conducive to getting this thing out in production. I’m sure it’s possible; past students have done it
before, but not only did we shoot for the damn stars with this project idea, getting paid as a tour guide is illegal without a license. Yeah.
Despite the overwhelming stress and crunch time pace of school, I grew tremendously as an developer this week. More so than any other week over the past three weeks. I have more confidence in my ability to code and I feel incredibly self-sufficient.
I understand xibs a whole lot better now that I’ve made 10+ of them. I have a stronger handle on implementing custom delegates. In our project, I created a filter tour class which returned a sorted array that allowed my table view datasource to display a segmented control table view. I also integrated a completion block with that process as well! Fetching the user’s sorted tours occurred asynchronously and only when the operation completed, a two-dimensional array would get passed back.
In our tour guide project, I’ve also incorporated vertical and horizontal scroll views, as well as collection views in our project. Like I mentioned above, I understand blocks and its design pattern purpose now that I’ve had a chance to play with it and create my own callbacks.
We have one more week left and we’re beginning to feel the pressure.
You can get a lot done coding for 5 days, but it’s easy to assume a mission impossible coding sprint will get a 30% complete app done. It’s not healthy to try— and on top of that, the goals to finish the 70% will more often end up not happening. I’ve been a victim of that too many times, and I wanted to make sure our team did not fall into that trap either. Let’s finish next week strong.
On to Week 11.