I’ve spent the past couple of weeks trying to learn Python with increasingly beginner-friendly delivery modes, to no avail. Even the simplest exercises were leaving me drawing a massive blank. I got frustrated and bored, frustrate and bored again, I was ready to give up—just as I have done many, many times before. What usually happens when I try to learn something that isn’t immediately easy to me:
I try a simpler text.
When that doesn’t do the trick, I try to go even simpler.
I fail at that.
I take it to the point of absurdity.
The way Homer learns about marketing is eerily similar to my usual learning process:
I only rarely use shotguns.
I decide that it’s my ability to learn in general that is the problem and I chase after some new technique or system that will be the breakthrough this time that some YouTuber, lifehacker, or podcast guru is hawking.
The free trial part anyway.
Thank god I’m not rich. As a former gifted kid, now college dropout who is embarrassed by his lack of formal education, I am definitely a total mark for this kind of hype:
Not that I think all of it is bullshit. I happen to own The First 20 Hours by Josh Kaufman. I think that it is a fine book. I probably would never have had the chutzpah to try a project like this if I didn’t believe his assertion that twenty hours of focused practice will reap huge dividends in performance. I am about 10 hours into practicing guitar, and I am miles better than I thought I would be at this point. I’m still a rank beginner, but I am learning much faster than when I was taking lessons in my teens. My practice was unfocused back then, but I have a very definite practice plan now, and I improve every day.
In his book, Kaufman learns to code in Ruby. He had a specific need for an application for his business, and Ruby was the right fit for him.
I chose Python, if I’m being completely honest, because I already owned a book on learning Python, Learn Python the Hard Way by Zed Shaw.
It’s hard all right. Too hard for me right now. Too boring as well. I do plan to come back around to it, because I think that Python is probably the only general purpose language that I have a chance of understanding right now. That said, I am taking on a lot of new skills this year, and I need something that will get me thinking like a programmer quickly. To start understanding how programming works.
I think that I have found it.
Last week Jennifer and I went to dinner at the house of a couple she is friends with, but that I was meeting for the first time. Lovely people, new friends for sure. We talked about my project, and the husband, who works in IT, suggested that I use Scratch to learn how to program. He said that that I could even use it to make a simple game.
Scratch is a visual programming language developed by MIT to teach kids how to code. Instead of lines of code, it has little blocks that are analogous to lines of code that you join together to perform functions and build programs. There are sounds and images and shapes that you can use to create your app or game or animated birthday card etc. It looks like this:
Last night I finally gave it a try. It’s awesome. It’s teaching me how to learn a language in the way that kids do. They want something, and they throw the sounds and words together until it gets them what they want. Grammar and finesse come with practice, but they speak long before they learn the rules. I’ve been needing something like this, where I can focus on learning the process of programming instead of constantly mistyping and getting countless syntax errors with no understanding of what I’m actually asking the computer to do.
I have approximately two hours into it, and I have already programmed a game. Technically I could stop this challenge, because I have written a program, but I have an actual idea for an app that is much more ambitious than this little thing I made in a couple of hours of playing around.
As for my little game, called Henrietta Clicker—in honor of our little girl kitty, Henrietta Kim Wexler Pussycat, I want to make it into a richer and more complex game as I learn to use Scratch more.
If I had had Scratch when I was a kid, I am convinced I would have become utterly hooked on it. I’m 46, and I’m kind of hooked on it now!
Here is a link to my game:
Give it a play, won’t you?
Thank you, as always for reading,
Jeremy
Drop me a line: jeremydnichols@gmail.com
Follow me on Twitter: @jeremydnichols
Or Instagram (mostly pictures of bedhead): @germynickels