Marnie Boyer has a successful, 20-year career in marketing analytics, but didn’t want to lose her edge. Even though she wasn’t interested in changing jobs, Marnie chose Thinkful’s Data Science Bootcamp to update her data toolset. By the end of Thinkful, Marnie had built an inspired final project that detects face shape and recommends hairstyles. Check out a video demo of her app to see what Marnie was able to build with Python and machine learning skills, and the help of her Thinkful mentor!
What were you up to before Thinkful’s Data Science bootcamp?
I’ve worked in marketing analytics for 20 years and started my career as an Excel guru, which was what put you ahead back then. I'm actually still doing the same job, but always working to tap into more modern and innovative data skills that will make me, my company, and all eighteen of my employees better and more challenged. I want to be able to talk the talk and walk the walk with my team as they graduate with master's degrees in computer science, statistics, or data science.
What was your goal in doing a data science bootcamp? Were you expecting to change your career?
No. I'm a different demographic for a bootcamp than the typical student, because I'm not changing careers – I'm enhancing my own skills.
I have a good job that I like with a good salary because of my seniority and leadership. In fact, I don't think my boss cares if I learned these data science skills as much as I do. Since the course, recruiters are hitting my LinkedIn profile regularly. I probably get two messages on LinkedIn a week, often referencing how they’re impressed that I've kept my skills really current, and how employers are looking for people who have done that, especially on their own.
Did you research other coding bootcamps before you decided on Thinkful?
I looked at them all! I made a Google Sheet of free bootcamps, paid bootcamps, universities, everything. My criteria came down to two things. First, the bootcamp had to be online, because even though my husband was supportive with our kids, I needed a flexible option that fit around my very busy schedule. An online bootcamp was the right solution.
Secondly, I really wanted a bootcamp that let me build my own projects. I didn’t want to build a Netflix recommender or tap into Kaggle datasets like everyone else. I wanted to do something unique. I also wanted the project to be relevant to my job, or at least a personal interest. My first project for Thinkful was actually about baseball – I wanted to have something to talk to my husband about. I don't care about baseball, but I became a super expert. It was just fun because it was relevant to what I do 162 times a year – watch baseball games.
Did you try free resources before you invested in Thinkful?
I should mention that it's really hard to be motivated when the course is free. If you’re a beginner and you don’t know statistics, Python, machine learning, AI, PySpark TensorFlow, then how do you know how to build your own path and curriculum?
As people try to navigate the free learning space, I think the big thing they're missing is someone guiding them and telling them which languages to learn. You're paying for some of that guidance. Frankly, I think doing a free course is a good supplement. Like if you're stuck on what eigenvector is, go find a free resource. But in order to get a full course and know that you've covered all the bases, you have to go with a real bootcamp.
You chose the part-time data science bootcamp at Thinkful – what was the learning experience like for you?
Thinkful is really interesting and it's a great blend of asynchronous and synchronous learning. Before I started, I went to a meetup here in DC, and learned a lot about the course and met some people from it.
The course is asynchronous in that you can do it any time of day. You learn the curriculum on your own completely and you meet with your mentor for two hours a week. Meeting with your mentor really helps you set the pace. I wanted to get through it quickly, so my mentor kept me on my toes. I had a couple of different mentors for various logistical reasons – they all worked great in different ways and they all helped me. My advice to people is, make sure you have some schedule in mind so that you don't lose track – having a mentor does help you stay on track.
Did you set up a “classroom” to work on Thinkful? I’m curious how you carved out time/space to commit to the bootcamp.
It was a little of everything. I had an office so I could shut the door and do my Thinkful work, but I worked in different places – even from bed or the pool! I liked Thinkful so much so I preferred to do my Thinkful work over a lot of things. Especially when I was doing a project, I thought, "I don't want to stop until I get a better value or until this code runs without errors.”
How many months did it take you to actually get through the whole curriculum and graduate?
It took me six months, working steadily for about 10 hours a week (20 hours/week when I had a project). There were three or four major projects that I needed to squeeze in a few extra hours of work to complete.
What did you learn in the Data Science curriculum that you didn't know before?
I was a math major, so I should have known statistics, but it's been a long time since someone asked me about eigenvectors, normalization, derivatives and linear algebra. Thinkful gives you a crash course but also teaches it in a very applicable way – it's not like going to my kid's stats class.
At Thinkful, I learned Python – I'm no expert, but I definitely know Python now. I learned machine learning and GPU processing, big data, and Docker.
Did you ever interact with other students? Was that even possible?
It was totally possible in Washington, DC because people here are so active. I can’t be downtown at 6:30pm for meetups because I have kids and soccer games. But I have an active Slack where we meetup for dinner and stuff twice a month.
I wasn’t learning the curriculum with other students, but I did present my final project in front of my peers.
Okay, Marnie – show us your final project! What did you build?
I'm so excited to show you this. My mentor told me, "find something that's applicable that you could go out and sell. Don't do Pokémon Go – create something you're passionate about, something you could sell.” Hairstyle and taking care of yourself is so important, but there's a lot of uncertainty around what looks best on you. I was inspired by something that women could use, or even stylists and salons like Hair Cuttery or Dry Bar, could use to help their customers.
This industry is very large, $20 billion, and it's really about women. There are so many high-earning women in the workplace, but they don't have time to figure all this stuff out. So I thought it would be great to automate it in a way that helps high tech women and on the move. Right now, women are spending $55,000 for their hair in their lifetime, and every week, spending two hours styling or caring for it.
One of the first things you need to know is your face shape. If you look at fashion magazines, a lot of times, they recommend based on your face shape: heart, long, oval, round, and square. I decided to automate that so that women could know once and for all what face shape they have with my app: What’s Her Face.
What are the main features in What’s Her Face?
What's Her Face allows users to upload a picture, it runs the Face Shape Classifier, and then it recommends hairstyles. She can favorite certain styles (or she can dislike styles and the recommender will adapt).
Did you use an existing data set to build this recommender or did you build that yourself?
The hardest part of any project is having data. I first collected and classified many image samples of women with different hairstyles and different faces, and then created a feature extraction. Then I tested and trained my data, ran a bunch of different models, and then developed a recommendation system as the icing on top.
I built a spreadsheet to keep track of the data set. I went to 22 different websites, and I had 234 celebrities’ faces that I started working with. Writing some scraping code was really useful and allowed me to do this very quickly. I wrote a query that scraped Google Images and put them into folders, and then my model was able to use the folders. I processed each image, which was really fun to learn – I used a facial recognition package and also rotated, aligned, and cropped to the images.
So you built that initial data set – and then used that to train future data sets?
Yeah – most of my time was spent on this. My advice is to make sure that your data set is unique because you can only be unique if your data is unique. The stability of your model will be impacted by confidence in your original data set.
How did your Thinkful mentor help with the project?
My mentor definitely had a lot of influence on the nuances of this project. I was so busy figuring out how to Google scrape, and he would send me suggestions – for example, a resource about how to align images. He was very collaborative.
My mentor really took a lot of interest in What’s Her Face, and really thought it was a pretty neat project, especially as I started to really enhance it. He was a great asset for sure. I don't think you could do this without a mentor, to be honest.
One discussion we had was, "How do we figure out the person's forehead because if they have bangs, then I can't tell where their head ends." What we did was use our own faces to figure out if there's a point where your face is cut in half, and we just used that point and doubled it. So it was really fun to think about. Sometimes you have to generate data that's not even there.
Most of your project was done in Python. Did you learn anything through this project outside of the Thinkful curriculum?
I already knew Excel, but literally every other technical component of this project, I would have never been able to do without Thinkful.
I taught myself image/facial recognition through this project. I actually tried using Docker to run these models, because the data was so big. Docker is something you wouldn’t necessarily learn in the Thinkful curriculum, but that's why I like these projects that you have to come up with yourself, because when you have to come up with your own project, there's no Thinkful answer key! You sometimes have to Google for two days until you find a way to straighten up someone's face, or make a graph of the average of the face shapes.
If you can use 50% of the things you’ve already learned, and learn 50% of new applicable skills, I think you’ll have fun with your final project. You’ll get to research on your own and find new information, which is what you’ll have to do in the real world.
You were personally motivated to go to Thinkful to build your skills – not to get a new job or to change careers. Did you meet your goal?
1000%. I'm getting recognition for some of the work I'm doing now. I work in an agency so we have very different clients and new businesses all the time. Really, creative ideas and challenges are what get you ahead in your career – not just doing the status quo. I've been part of some really big, new business pitches, and I've even applied these new, different strategies to our current clients.
I led an Artificial Intelligence workshop last month for one of our biggest clients, and there was no way I could have done that without Thinkful. The confidence, the knowledge, and the ability to know what I'm talking about, was really instrumental.
Is there anything else about Thinkful that you would want future bootcampers to know?
The toughest part of learning something new is keeping up with it after the class is over. Do whatever you can to apply your new skills so that you keep up and remember how to use the new skills you’ve learned.