Coding and language

During these first four weeks of Anyone Can Learn To Code, I’ve learned a lot of new words. Really, new meanings may be more accurate. Object, method, argument, for example, all have Ruby-centric meanings that didn’t exist in my head a month ago. Like any other little world, coding has a vernacular all it’s own. I’m guessing that within different programming languages, that vernacular becomes even more specific.

Our instructor Jay has mentioned that there are different conventions related to different languages: “Javascript does it this way, Ruby does it that way.” So on top of learning new vocab, there is also the question of syntax. How is everything constructed and put together in Ruby so that it makes sense to a computer? I have to put things in a particular order or create certain relationships for it to make sense. Learning Ruby is not unlike learning any other human language in that there are rules and order and structure. English has nouns and verbs and adjectives that have specific relationships and have to agree in certain ways or the meaning of a sentence becomes very difficult to understand. It helps if I look at Ruby in the same way.

Jay mentioned the other day that Github can be a useful resource for reading more advanced developers’ code. That idea of looking up code to read it, was not something I would think of doing on my own. I mean, I learned a lot of HTML and CSS by looking at source code, but I never thought of it as reading code. It was more like I needed to figure something out, so I went looking for very specific answers. Now, the idea of performing the act of reading as a way of expanding my understanding and studying code, is really quite revelatory. I can practice reading a language to help myself get a better understanding, whether it’s Ruby or English.

Speaking of Github, that is a whole other space of learning new vocab. It’s not specific to Ruby, but it’s related to the world of programming in a deep way, so learning how that site operates, how developers use it, and how I’m expected to understand it is significant.

One last thing regarding language…Jay mentioned that Ruby was created by Japanese programmer Yukihiro Matsumoto. I wonder if Matz, as he is more popularly known, wrote it in English? Or why it’s in English if he is Japanese? Are all programming languages designed to be written and read using English words?

Vocabulary: Object, instance, method, argument, parameter, variable, instance variable, constructor, interpreter, nil, return, puts, gets, pull, push, fork
(this is just a running list of new words I learn as I go through the course)

The Codeblog is Born

I’m enrolled in this new year’s Anyone Can Learn To Code cohort! Classes start in a few weeks, but our prework starts today – yesterday, really.

As part of the course, our instructor, Jay Wengrow, asks that each student maintain a blog where we discuss our experiences and what we’re learning. I’ve asked students to do something similar when I was teaching the future librarians of the world. It’s generally a really useful tool for students to reflect and review what they’re learning. It can be incredibly affirming to look back at what you didn’t know at the start of a class compared to what you end up knowing when it’s done.

So here it is, my Codeblog. Looking forward to learning lots of stuff!