Week 7 of Bootcamp - Survival of the Fittest
By Keisha Shepherd
Written 12/11/2019
I want to make an Alexa app. I’ve been asking since day one how do I do this but it hasn’t happened. But
with the project we were assigned I got my chance. I was too excited. I wanted a 30-minute workout app
that reads the exercises out loud and allows for voice prompt responses. I had a team of people to work
with and they all brought strengths to the team. We split the backend work between Jacob and myself. The
frontend work between Gregg and Mike. We were challenged to use API’s for this assignment.
-
-
Challenge 1 - Finding Exercises
So we found wger.de. This was great, 100s of exercises with names, descriptions, and images. One
problem...it was mostly in German. Solution, I just asked my cousin that is a pro-basketball player
to send me a workout that I could use in a JSON format. Yeah, it didn’t come in perfect JSON but he
tried. I had the exercises, so now we needed the gifs.
-
-
Challenge 2 - Finding Gifs of Exercises
I tried to use gifs and videos from the internet but they just weren’t what I was looking for. The
lateral slides exercise was terrible, it started with a 12 second commercial with John Cena, that no
one needed to see and I couldn’t skip it. And when you searched for gifs you only saw Spongebob
characters sliding down slides??? Then the YouTube video for body squats was soooo slow. She must
have stood there 15 seconds before she did the slowest squat ever. Then half of the YouTube videos
wouldn’t play for reasons I don’t know.
-
- Challenge 3 - Tough Love from the Tutor
I wrote a lot of the workout backend but had a lot of trouble with the timers. I had to learn how to
use promises and async function calls to get everything to work the way I wanted. I must have sat in
front of the computer for hours and hours trying to get the responsive voice to read the description
with the timer paused. I read the API a lot, but eventually, I just started over from scratch. When
I got on the line with my tutor, he was very honest about what would happen if I did that in the
real world. You can’t refactor in the middle of coding, you’ll never finish and you’ll be fired. The
words hit home since that was the situation I was in currently. So we went back to the original code
base and because I was stuck, he went the extra mile and over the weekend figured out how I could
achieve what I wanted using a callback. He’s amazing and I thank him for that.
-
- Challenge 4 - Not Taking a Break
This was over the Thanksgiving holiday. I couldn’t stop working on this project because I couldn’t
get it to work. My Dad even commented you are spending a lot of time in front of the computer, I was
near to tears because right in that moment, I made a change that somehow broke everything. As I get
more into this, I know that I could spend 24/7 doing these projects and still never finish
everything I want to get done. It’s 2:30 am in the morning now and I am working on 3 weeks of blogs
I’ve missed. But I’m learning that stopping and taking a break can help me reset and start fresh.
Also, I’m noticing the effects of not having enough sleep because I’m hitting more curbs and seem to
merge without noticing the car next to me a lot more often.
-
- Challenge and Benefit - Working with a Team
Working with a team is both beneficial and challenging. They took a break over the holiday so it was
difficult to tell what they were going to work on. But cool stuff happened. Jacob produced all of
the original music for the app. And Gregg made an amazing Logo we added to the webpage with a JQuery
scale, that was pretty cool. Everyone had something special they could add so that was really cool.
One thing I’m going to do on the next project is listening more and use “Yes And” techniques when
people say their ideas. No and negative attitudes makes it difficult for people to do more. I think
the webpage could have been desktop friendlier if I hadn’t kept saying make it mobile-first from the
weather dashboard lessons learned. The feedback was it’s mobile-friendly but not desktop friendly.
So the lesson learned there is to just design for phone, then tablet, then phone as elements are
added to the page.