What is Coding?
Ok, if you know how to code, you will think this is ridiculous. If you are a teacher or anyone else who does not know how to code, you will think this is necessary. I’m going to do my best to explain what I know and what I’m learning in a way that is understandable to those who do not know already, and accurate to those who know. (If anything I say on this page is not accurate, please email or message me!! I want to know!)
“When you write a program, you are giving a computer a series of commands that kind of looks like a weird form of English. Just think of a computer as a really obedient dog, listening to your commands and doing whatever you tell it to do. Thankfully, programming isn’t some obscure skill that only special people can do. It’s something we can all do. Kids, teens, adults, from all over the world are learning programming today.”
Here’s a great article that explains the nitty gritty in a really accessible way: http://www.codeconquest.com/what-is-coding/how-does-coding-work/
Programming v. Coding
Since I decided to undertake this project, I have been a little confused about what the difference between programming and coding is. Some people say they are roughly interchangeable, some people say they are completely different. This article says they are different, but my guess is that if you are not really familiar with either of these words, you will not really understand this article. I chose “coding” to title this blog, because I see my mission as one of learning about code, how it functions, and how to use it and write it. Maybe that’s programming, maybe not. I think I will probably be able to update this page as I learn more, but for now I’m just going to use the terms interchangeably. If you are someone who knows better and can offer a good differentiation/explanation…please offer it! I’m all for crowdsourcing good information.
Need to know what code is more basically? Here are a couple examples:
Code is this:
Code is this:
That’s the HTML code used to generate the teacher pictures on my full disclosure post. I didn’t write that…I inserted the pictures, and WordPress generated that. I know what purpose it serves, but I don’t know what any of it really means. As I continue this blog, I hope to learn that. HTML is used to create webpages, and HTML’s good friend CSS is used to design the look and feel of webpages. They are “languages”, but different from “programming languages”.
When I started this adventure, I thought I would probably start learning to code with HTML. I have played with template-based web builders before. Template-based web-builders are the kind where you can easily create websites without having to write any code. You click and drag elements, like photos or text boxes into your blank web page, and the web-builder generates the HTML and CSS code as you do . (These types of web-builders are are awesome! Weebly & Squarespace are a couple examples.) When you use these, you don’t have to know how to code, but you do see some code from time to time, and what you see is HTML and CSS. Since I had seen these before, I thought it a logical place to start. Then this conversation happened:
Husband: “No, don’t learn HTML, learn Ruby.”
Lauren: “Why? I already know what HTML looks like and stuff.”
Husband: “Yeah, but that’s not really programming.”
Lauren: “What??? It’s code.”
Husband: “Yeah, but it doesn’t make things happen, it just decorates things. If you learn HTML first, you might be confused when trying to learn a programming language like Ruby. If you learn Ruby first, you will be able to learn HTML easily.”
Ok, so after some more back and forth, I think I figured out what he meant. I could use a programming language like Ruby to write a program to generate 4 as the answer to 2 + 2 (yes, I know…a calculator can do this, but stick with me)
I could not use HTML to generate 4 as the answer to 2 + 2, but I could use HTML to make my website say 2 + 2 on it.
- HTML: <span style=”color: #000000;”>2 + 2</span></span></p>
- Makes this appear on my webpage: 2 + 2
- A programming language like Ruby or Java Script makes this happen:
Get it? I only think I do, but still consider this a major victory…I learned something! As I learn better ways to explain coding, I’ll offer them on this page. I know what I have right now is pretty lame, but I think I’ll get better!