Jan 09, 2015
In my downtime the Winter Term Workshop, I’ve been learning some web scraping, setting up this Jekyll site, and learning a little bit about bash scripting. I wrote my first shell script, which creates a new post for the website, stamping it with the date and a title, and helping with the markdown header jekyll expects.
Of course, after writing a functioning but understandably bad version of the script, I realized that I ought to check to see if someone else had written something that does the same thing. Of course they had.
While I am proud of what I wrote, and glad that I goto to practice a new skill, I am swapping out my script for someone else’s (I am picking the pippy script, since it is nicely interactive). It’s better for a few reasons - it has more functionality, letting me input a description, tags, keywords, and images from the prompt. It is also slightly more correct, downcasing any uppercase letters in the post title for the filename and getting rid of punctuation that rightly shouldn’t be in the URL.
I am generally interested in how people learn to code, and this situation seems worth a few lessons:
Automating tedious tasks is a great place to find small projects to learn coding. The problem is real, you know exactly what success looks like, and you probably don’t need anything fancy in order to make something that works.
Thinking more about it,
4 - I should have written the script in Ruby!
Using what you know is almost always faster and better than trying to learn something new. If I had decided to write the script in Ruby, I wouldn’t have learned as much, but I would have had a working script in a few minutes, rather than a few hours.
Lots of lessons learned! If you want to learn coding, find a few problems that are interesting to you and someone willing to help you, and get started!