The Art of Failure
I’ve been a Data Science student at Lambda School for one year now, and my time here has come to an end. For anyone who hasn’t heard of Lambda School, it is a “12 month accelerated program with an immersive (part-time, 16+ hours/week) hands-on curriculum with a focus on data science, statistics, machine learning , and data engineering.”
In these last twelve months here, I have learned so much more than I expected to. I was able to discover and practice using the tools and techniques that I will use in my day-to-day life as a data scientist. I was also able to learn about some of the ‘soft skills’ that any developer needs, including: teamwork, communication, defining project scope, and others.
I was able to build some really cool projects, both by myself, and on cross-platform teams. My favorite project so far was a data analysis project on studying my sleep patterns. It was the first real-world problem I tackled, and looking back, it’s awesome to see how far I’ve come. I can easily spot things that I would do differently to get a more accurate analysis.
Learning how to work on a team was a new experience for me. Some teammates are too good at their job, and they end up carrying the team. When this happens, I like to branch out and experiment with some features that won’t necessarily pan out. This allows me to learn new techniques or tools that I wouldn’t have otherwise (I only do this with the permission of the team, and time-allowing, of course).
Other times, your teammates can let the whole group down. On one of my cross-platform projects, I was one of two data engineers, and we had a data scientist with us. The data scientist’s job was to build an NLP model to predict rent prices from the description of the listing. Unfortunately, the entire team barely heard from the data scientist. In the early stages of the project, this wasn’t too big of a deal. My fellow engineer and I were able to spin up a quick baseline model to allow our API to send responses to the back-end. Our data scientist never finished the production model before the code freeze however, which meant that our app’s predictive power was severely lacking.
So about that title. The art of failure? Here’s what I mean by that; if you learn from your mistakes, you’ll come out ahead of the guy who never fails. You know the saying:
“The master has failed more times than the beginner has even tried.” — Stephen McCranie
Let me give you a bit of background first. The last section of Lambda School is called Labs. This is where we build a project on a cross-platform team with a stakeholder defining the expectations of the build. This several week build requires quality communication and teamwork to be able to ship features in the short time frame.
During Labs, I wasn’t happy with the amount or quality of code that I was pushing to our org’s git repository. My day job had really picked up and I was working ~70 hour weeks. Because of this, by the time Labs was wrapping up, I felt like I had wasted my time and failed. However, looking back, I can see things a little more clearly.
First of all, I did get some code written — both published to the repo and amongst my team to help solve specific struggles we were facing. Some of these problems were things that I didn’t have a ton of experience with, like web scraping and FastAPI.
Another solution I worked on was cleaning up a feature in a dataset by using an algorithmic solution. The feature in question had 300+ unique values that would have been too much of a struggle to clean manually. After a late night of coding, I was able to come up with some code that served as a starting point for my team to take over from.
Another reason my time in Labs was not a write-off is the fact that I was able to get more proficient at collaborating with a cross-platform team. While I had some experience working on such a team in the past, I had more experience to bring to the table this time. This led to me being better able to understand how all the pieces were to fit together with each other. It is critical for any data scientist to have a general idea of how the full-stack works to help him be able to design his work around this common goal.
This post is my last assignment here at Lambda school. I have spent the last week reflecting on my time here and all that I’ve learned from it. In fact, I might not have joined at all if it weren’t for another data scientist’s own medium blog describing his own journey. In this last year, I have become a better programmer, communicator, teammate, presenter, and so many more things. I will take everything that I have learned here and use it to better myself and my future employer.
If you have any questions about Lambda, or about me and my journey, please feel comfortable reaching out to me on any of my socials.