Week 9 - Practice project

The week

It’s week nine, we are only three weeks away from graduation. This week we worked in teams on a project that we chose. On Monday we had a brainstorming session were we pitched our ideas. Teams were allocated based on our preferences. We decided to create an app for children where they can fill the blanks in a story by choosing words from a list. We completed our MVP by Tuesday, and implemented new features such as displaying cartoons for the chosen characters, and a canvas for children to draw their story. It was a fun and empowering experience.

What I learnt

This week we worked as an Agile team, and practised the XP values: communication, feedback, simplicity, and courage. This approach allowed us to have a very pleasant and productive week as a team. We had stand-ups every morning to share our successes and struggles of the previous day, plan the new day, and discuss the project with the members of the team. We also had retros every day, to analyse what went well on that day and what needed to be improved on the following day.

Struggles

One of our struggles as a team was managing expectations. Initially, we estimated times for certain tasks that ended up taking longer. By the end of the week we were able to adjust timings more accurately.

Also, since we were adding new functionalities to our initial MVP, finding the best way to implement them in a clean and readable way was challenging.

At the start of the week we had a team meeting to decide the direction of the project, define the user stories, and choose the technology. Our first choice was React. Building an app using this JavaScript library was very appealing, since we wanted to learn something new this week. But after analysing pros and cons, and how our app would benefit from using React, we decided to go with vanilla JavaScript (with a tiny bit of jQuery) instead.

We struggled debugging our code. But putting into practice the advice of our fantastic coach Mary, console.loging and using the Chrome debugger, we managed to identify and tackle all our issues.

By Friday we had migrated most of our jQuery functions to JavaScript and our app logic and user interface were controlled from only four functions. We only used jQuery to make our Ajax request to an API that we created in order to provide random stories to complete. We ended the week very proud of our product: a single-page web app for children to create their own stories.

« Week 8 - Introduction to Rails Week 10 - Individual technical challenges »