Since I couldn’t wait to begin reading it, I have started working with Python a bit sooner than expected.
I moved through those first few plans in the first month or so of learning to program. Since then, I have been planning to learn Python and I’ve been excited about that prospect.
My current plan, we’ll call it 5.1, is to continue to work primarily on JS while dabbling in Python.
Taking on a second language while still learning a first isn’t ideal but I think there are some valuable lessons in The Self-Taught Programmer. Because of that, I read that book sooner rather than later and that means using Python.
Easier the Second Time Around
When you are learning your first programming language you are actually learning two different things. You are learning the syntax of that language and you are also learning overarching programming concepts like variables, data types, and control structures.
Once you start working on your second language you have a better understanding of programming concepts and you can focus on the syntax of that language. That is what makes learning a second language so much easier.
Take For Loops for example.
The first time you learn about For Loops you have to learn what they are used for, how they work, what the different statements mean, and finally, how to write them.
Learning For Loops in a new language is just a matter of finding out how to write them. Even without knowing Python, if I told you the following snippet of code was a For Loop you could easily figure out how it works.
Not content to distract myself with a little bit of Python on the side, I decided to double down and start the Automate the Boring Stuff with Python course on Udemy as well.
I am a sucker for building projects and the course is aimed at teaching the user how to use Python to automate common tasks.
Yes, it is a bit of a tangent but it is a fairly short course and the appeal of being able to complete a few projects while learning the basics of Python appeals to me.
The Algorithms Continue
Besides my normal Treehouse lessons and the side trip into Python, I also continued working on the Basic Algorithm Challenges from freeCodeCamp.
These have been difficult but fun. The solutions to some problems have just jumped out at me while others have required a lot of trial and error and Google-foo.
One of the things that I really enjoy about working on algorithms is how there is more than one solution. As a new programmer, I find it interesting and informative to compare my solutions with those of others.
I couldn’t help but chuckle the time I realized that my complex solution with multiple variables could be boiled down to this:
If you want to check out my work you can find all my solutions in this CodePen Collection.
Happy New Year and I’ll talk to you again soon!