top of page
zachdmangus

Learning Software Engineering: Python

Updated: May 6, 2022

I went from knowing nothing about Python to building websites and AI programs in 6 months. This blog will share how that happened, and tips that may be helpful in your journey.


Backstory:


I had graduated with my Bachelors in mechanical engineering when I realized software was what I was passionate about. I had no money, so I went looking for free resources. I found a treasure trove of amazing information, and many helpful teachers, for free online.


The next step was to narrow it down. I knew I wanted to gain these skills, but wasn't sure where to start. I needed to focus on one language to become familiar with before attempting anything super complex. I started researching what languages were growing, and also used in professional industry. Based on those factors, I ended up choosing Python.


This brings me to my first major point. Have a specific goal/desire! I desired to have the ability to build and create. I wanted to be able to create websites, and machine learning programs. My interests were in AI, and automation at the time which helped narrow my focus.

Automated Sorting Machine I Designed and Built

Tip #1: Figure out what interests you have, and then use that to choose a language.


Start thinking about what you want to get involved in or create. Is it a website? An app? Do you want to get involved in automation or robotics? Are you interested in cryptocurrency? Each of these areas will need different skills. Also, certain languages may be more applicable than others.


Having a narrow focus allowed me to dive deeper into the skills specific to my desired outcome. Which also stopped the massive amount of information from overwhelming me.


I landed on Python because of its usability, and how common it is in work environments. It was the best language for what I wanted to build, and where I wanted to go with software.


This led to me reading books, and watching videos to teach myself Python. I wanted to be able to build. I read Learning Python by Mark Lutz, and How to Automate The Boring Stuff With Python by Al Sweigart. These books were helpful in learning the fundamentals of Python. I also watched Youtube videos that were like the projects I was working on.


This was a good start for getting into Python. Yet it only made a difference when I practiced and learned consistently. There would be days where I did not look at Python, or my computer at all. It is good to take a break from time to time, but in order to see real growth, and hence real gains it will require consistency which is tip #2.


Tip #2: Set a plan, and stick to it to stay consistent and achieve significant growth.


Setting a schedule, and staying consistent were two of the biggest things that helped me. I picked a time everyday that I could spend at least 15 minutes studying or coding. 15 minutes alone isn't much, but when you do it every single day it begins to add up. Also, the more experience you gain the more enjoyable it is to practice. Eventually you will practice, and study for longer than 15 minutes. It is the act of doing it every day that allows you to create a habit.


The best way to stay consistent is by making it a habit. Practicing every day causes your brain to feel more comfortable doing the activity. It becomes something you do not have to force yourself to do. When it becomes a habit, you will think about it subconsciously. Which will cause you to spend more time learning. Which brings me to my third tip...


Tip #3: Focus on the fundamentals. Do not try to learn too much too quickly. If you're fundamentally strong the high level topics will come.


Focus on the fundamentals of what you are doing. Do not try to rush into the high level problems right away. Start small and achieve easy victories to help build the habit.


Once I had created the habit to code regularly, the results started to come much faster and easier. This led to me creating my own website, my own AI program, and games using Python. It also got me introduced with many other topics in the realm of software. This brings me to my final tip which is to do what you enjoy!


Tip #4: Becoming skilled in something requires spending a lot of time practicing. You will practice and learn the most if you enjoy doing it. Find the areas of software that you enjoy, and go from there!


This fourth tip has been one of the most important things that I have learned. It has allowed me to have a clear idea of what I want to work on, and why I want to do that. I have been able to work on some amazing projects throughout my career, so far. This has been the result of me following my passion, and doing the things that I enjoyed




I hope you have enjoyed reading and learning from my experiences with software. I aim to provide value in all my writing, so if this has been of any use to you then I would ask you to kindly share it with others. I will regularly post blogs on this topic and others.








4 views0 comments

Recent Posts

See All

Comments


bottom of page