My Programming Journey (So Far)

ByHoang-Nam LuuPham

05-02-2023


In my freshman year of high school (2015), I was heavily caught up in the programming craze. As someone born and raised in Silicon Valley, I was surrounded by many classmates aspiring to work in the tech industry. Largely successful entrepreneurs we used to not hate such as Mark Zuckerberg preached programming as the New Testament and encouraged everyone to start coding as soon as possible. I remember feeling inspired to plunge into the world of software engineering after watching this YouTube video.

YouTube

My first project was very ambitious: create an e-commerce website for my clothing business using a custom payment processor. I decided to learn HTML + CSS + JavaScript through the help of Free Code Camp’s online courses. Those who have any amount of experience in programming know that building an entire e-commerce website from scratch is the worst possible decision to make as a beginner. My naive self did not realize this at the time, and I felt discouraged to continue my shortly-lived coding journey after encountering many roadblocks. I struggled with errors for hours and felt frustrated for not being able to get to the next step. Within a few weeks, I quit and decided that I was not capable enough to learn anything related to programming.

Fast forward to the present, I’m studying Business Management at Santa Clara University. I was fortunate enough to be accepted in the school’s 4+1 program, which allowed me to start taking Master’s courses during my senior year. I wanted to pursue an MS in Business Analytics to develop my technical skills. In Fall 2022, I was enrolled in an MS course called Data Analytics — Python. I was horrified at the high chance that I would fail the class due to my lack of competence in programming, so I decided to be proactive by self-learning Python through Codecademy before the quarter began.

Codecademy

For those of you who are unfamiliar with Codecademy, its interface has an in-browser IDE (integrated development environment), which makes learning how to program much more beginner-friendly. At first, I expected myself to take the course for around a week, then quit halfway through. Thankfully, Python’s structure and usability just felt intuitive and clicked with me, unlike learning how to use HTML + CSS (I wasn’t aware of CSS’s terrible reputation until years later). Within a month, I successfully completed the course.

As I became more and more comfortable with Python, my initial dread of taking this class was slowly reduced. Learning programming online has its benefits, but it also comes with certain limitations such as a lack of collaboration, tailored feedback, and more. With a small class size of ~20 students, it was much easier for me to make new friends and ask questions. The class primarily focused on concepts correlating to different Python packages (pandas, seaborn, numpy, sklearn) such as univariate time series, groupby, merge, classification, etc., which are essential to cleaning and analyzing hundreds of thousands of rows of data.

For some strange reason, I was having fun working on homework assignments for this class. The dopamine rush I get after successfully cleaning and analyzing a dataset is the exact same feeling I used to get as a kid when I completed a puzzle. Through this one class alone, I felt as if I found my true calling and aspired to become a data analyst post-graduation.

I want to thank Professor Yu-Wei Lin for being a thoughtful and supportive mentor. He always took the time to explain concepts thoroughly, answered questions, and offered valuable feedback. Without him, I don’t think I would enjoy data analytics nearly as much.

Here’s a super funny story: for our final group project presentation (check it out here), I rehearsed the slides with my group members several times and asked them to wear business-casual attire. We were extremely anxious because this was going to be our first presentation ever in a Master’s course. Once we walked into the classroom on the day of the presentation, something felt off. Instead of the usual panic felt by classmates on a presentation day, I heard laughing and saw smiling faces from my peers. It turned out that Professor Lin bought the entire class pizzas and soda. Through the power of food and refreshments, the class atmosphere was uplifted instantly. It was truly the first time when I felt happy doing a class presentation.

Group Presentations

In my last Spring quarter as an undergrad, I don't have any classes to take. For the last 4 weeks, I have been working on this website to show off my interests and projects. The recent rise of Next.js and Tailwind CSS (both of which I used) has made building websites a lot more accessible and enjoyable. I learned the absolute basics by following Next.js’s well-written tutorial and went from there. Afterward, I wanted to implement more elements to my site but didn’t know how to do so. I reached out to my web dev enthusiast friend Daniel Fu for help. We went on call for hours every week to add new features and resolve bugs/errors. Thank you Daniel for helping me out without expecting anything in return, you’re the best! Make sure to check out his upcoming project Flow!

Now that I have finally finished my website, I plan to add/create a couple of projects related to data analytics over the next couple of weeks on my GitHub. Thank you for reading, and I hope you have a great rest of your day! ❤️