My First Post
• 6 minutesPersonal Projects
My coding career has taken many turns throughout the years. In some ways it feels like it just began after a little under three years as a professional, but in others it feels like it has progressively culminated through all of my life’s interests.
In my 7th grade technology lab, I simply could not get myself to stop working on and perfecting my recreation of Hal Laboratory’s Kirby in the coding program Scratch. For a simple two week project with minimal requirements, I ended up spending every available minute in that two weeks on it. Remembering this, it makes me wonder why I was reluctant to enroll in an introduction to computer science class my 1st semester at my University. I am especially surprised now when I saw that same passion translate into me completing all of my programming assignments months in advance while that time should have been allotted for other course assignments. Even after the compelling nature of my first computer science class, I was shockingly reluctant again when it came to declaring myself as a computer science major. Ultimately, I am so thankful I did commit to computer science.
Coding has grabbed my attention like nothing else has, while I achieved my lifelong dream of being an engineer I never would have imagined it transpiring through code, but then again maybe I should have. Software engineering is the engineering field for me that is the perfect culmination of math, logic, problem solving, and art. It’s hard to articulate that feeling of perfect cohesion into words; Yet, it seems to always manifest itself as hours pass like minutes. While that 7th grade scratch project might have been my first traditional coding project, I am writing this post to highlight my first released software and how it encompasses the importance of following interests and the power in leveraging engineering to solve problems.
Engineering is improving the quality of life through innovation. This could mean anything to anyone, however to me in early high school that is increasing the competitive nature of the fantasy football league I have been commissioner of since 2012. How does one increase competition? I thought hard and well my answer was inerasable, concrete facts derived from historical data. I didn’t know it at the time, but I was already taking the steps towards creating my first application by spending countless hours on excel copying league data into spreadsheets. Close to ten years later now and I have cultivated that spreadsheet into a full web application with every decision, score, and rivalry cemented into history. The current working version is visible here!
What stands out to me the most about this project is it is representative of my growth as a software engineer without me ever realizing it. What started out as something to pass the time with between high school homework assignments and extracurriculars, slowly blossomed until my first functioning display of work. Every step of the way it consistently added something new I picked up along the way, from introducing a programming language after my introduction to programming, adding a backend server after my first internship, creating a frontend after my introduction to web applications, finally incorporating a database to replace spreadsheets, and then lastly then pivoting to django rest framework after my current job. Slowly and surely as I evolved this application in turn grew with me.
Even though I didn’t necessarily have the full software engineering tool box at the start, I still was able to solve a problem computationally. Engineering can take many forms and to be a software engineer there will probably/eventually be a need to work with software, but even then I learned to not let what I don’t know turn me away from what I do know. In other words, I want to look towards always using my foundational knowledge as a starting base instead of a pitfall. For me I knew I loved solving problems computationally and I’m glad I did not ultimately let my lack of understanding around software and my late introduction to core principles turn me away. Working with spreadsheets and my experiences up to that point were the basis of computation and by starting there and letting my passion guide me allowed my interests and knowledge to grow side by side.
Taking this new approach, I also learned that motivation acts in the same way as unearthed knowledge to me. If motivation serves as an opposing force to progress, it can block any process from initiating; however, diving into something even when motivation is low can in turn cause both to progress and motivation to grow side by side also. Throughout my process from creation to release I learned in some cases the best motivation for any undertaking is achieved through the undertaking itself.
These realizations helped me to never ignore those things that draw attention during spare time. From my experience when partaking in something that is of interest no matter how much progress is achieved it will never be wasted time. Just the very act of treading down unfamiliar paths can take you to places never thought possible by enabling lack of experience and motivation to serve as a guide for enthusiasm rather than an adversary.
As I went down the path in releasing this project, I exemplified the mantra, growth is not linear. I mentioned earlier this project has taken many years and forms to get to where it is today from where it started. There were even periods with no activity at all or where it moved away from the desired outcome. The path can take you any direction, but in the end when working towards something growth is always approaching an upward trajectory. That upward trajectory and end goal is limitless. That being said I also learned that no end goal is never really the end and no project is truly complete. I have learned to expect and to hope to be embarrassed by code written 6 months ago, especially the very code highlighted in this post because it means I have grown and the current version of myself would have done differently in the past.
The reason I have always strived to be an engineer, is so that I can leave an everlasting positive impact on society through creation both technically and ethically; However, like my many science fair projects in my youth and my coding projects today, a project doesn’t have to be a revolutionary success to change the world. As long as something is learned and the process is of interest, then a step has been taken towards solving a problem and the world has taken a step towards becoming a better place. I’m not sure if Thomas Edison actually said this, but with 100% certainty these words were attributed to him on a poster in my elementary school: “I didn’t fail 1000 times. The lightbulb was an invention with 1000 steps.” This quote to me is a perfect representation of the same sentiment that inspires me to be an engineer. Engineering is not a beginning state and an end state, but rather the not always successful series in between that culminates into growth and solving a problem.