My Journey into Python and Programming Part III

This is Part III of my blog. See Part I here and see Part II here.

Where I’ve been

At the beginning of this journey I stated how I felt stuck with my current life. I wasn’t sure where I was going and what was next for me. I wasn’t getting any of the desired results with online learning. I was learning few things, but nothing felt like I was getting any traction. My coding life was basically a mess and I didn’t know where to turn. I needed help and guidance learning how to learn.

Reframing the target

I originally started out with a goal to choose horse racing as my project. I thought this would alleviate some past challenges of losing passion for what I was doing. I learned that it wasn’t the topic that mattered, but rather the progress I was making that was frustrating me. We have since regrouped and dedicated my project to focus on scrapping Amazon for reviews and building a wordcloud for each review. We decided to focus on Python books to keep along with the theme. Changing my project has been a bit of a stumbling block, but I have since seen the most progress since I first started. I am learning that the process is the most important part of this experience.

Lesson: There will be failures. Its how you react to those fails that will determine your success.

What I’ve been doing since last blog

Since my last blog after changing my project I have become more focused on my project. Scrapping the web has been an interesting endeavor. I have focused on learning to utilize the Beautiful Soup package to parse Amazon’s website. The two most useful resources I’ve used are:

Where I am now

I have successfully been able to parse the Amazon HTML code. I have been able to identify the tags that I need to pull the text of reviews. I have run into a problem of an empty list when pulling the reviews. The confusing thing is I used my code on a mock website and successfully pulled the text. I am continuing to work on this, but I haven’t let this stop my progress. I have already coded what I will need with a temporary wordcloud once I am able to figure out my problem.

Lesson: There’s always more to work on. Don’t let road blocks stop you.

Have I accomplished my stated goals?

Overall this has been a very frustrating experience for both myself and my mentor. I am nowhere close to where either of us wanted me to be by this point. But I can say that the skills and habits that I have developed will allow me to be successful in the future. For me, this has been more about how to learn rather than what to learn and for that it has been an invaluable experience.

Originally one of my goals was to bridge the gap between what I see written in textbooks and finding a problem myself and writing a program to solve that. I would say I have accomplished bridging that gap. I am certainly not there yet, but I have developed the tools and confident to understand how to take on those tasks. I have definitely overcome my fear of coding and learning to code. It is true that the only way you can get better in coding is by coding.

Where I want to go

Once I am able to pull the reviews and build a wordcloud I plan on adapting this so that I can use it as an app of some sort. I would like to be able to enter in any book of my choosing and have it return a wordcloud that can easily be used to decide on a book. Then taking it to the next level I would like to use the individual words and use data science techniques to see how many stars compare to certain words in the individual reviews. It would be interesting to see if certain types of books are rated higher for certain recurring review words. Comparing book reviews to lengths and analyze them on a genre basis.

Things I would’ve done differently/advice for new mentees:

I don’t view this as a total waste or a waste at all. I believe that from my experiences I’ve learned a lot and will continue to learn. I believe that if I can be of assitance to anyone going before them then this is a success. Here are some of the things I’ve learned and/or would’ve done differently:

1. Its the process not the product. Don’t focus on the outcome.
2. You’ll learn more from your failures than you will from your successes.
3. Start early and fail fast. Embrace your failures.
4.”Planning is essential, but plans are useless.” -Dwight D. Eisenhower
5. While choosing a project you’re interested is fun it isn’t essential.
6. Getting frustrated just means you are learning and you’re further than you were before.

All in all this has been an incredible life changing project for me and I’m excite to see where my next coding adventure takes me!