Skip to content

Latest commit

 

History

History
109 lines (84 loc) · 5.39 KB

README.md

File metadata and controls

109 lines (84 loc) · 5.39 KB

creative-coding-week1

Template Project repo for Creative Coding Class, Week 1 @ Making Awesome

/////Resources:

www.c9.io Cloud 9 IDE website. IDE is simply a fancy word for text editor. We'll be using this for writing code in this class. It's totally web-based, so we don't have to install a thing. You'll have a world-class development setup in minutes that you can get at anywhere there's and internet connection. It's free and has a ton of great features. If you don't have an account, go set one up.

www.github.com Github website. Think of this as Facebook for programmers. It's where most of the open source code in the world is hosted and shared. Github works with a command-line program called git that programmers install on their computers. Uh-oh, command-line? Relax. We'll go over that below. We'll be using Github to share class notes and projects we build.

*****NOTE: CLOUD9 HAS GIT BUILT INTO IT, SO YOU DON'T HAVE TO INSTALL GIT FOR THIS CLASS. (you can if you want to work with code on you local machine).

www.github.com/themooserooster My Github account page. Follow me.

http://rogerdudler.github.io/git-guide/ This is the Cliffs Notes version on what git is about. Seriously, take 15 min and go through this.

http://think-like-a-git.net/ Comprehensive guide to git. Pretty long, but super awesome.

https://developer.mozilla.org/en-US/docs/Web/JavaScript/Guide Overall guide to Javascript. Start here. It'll go over the basics and get you up to speed on the language even if you'r totally new to programming.

///// Notes:

So this class is about doing stuff. Interesting stuff. Artsy stuff. With code.

Depending on your background, either the artsy bit or the code bit might alarm you. Chill, I'm going here to demystify both subjects. First, our tools:

JavaScript and Html5 Canvas:

JavaScript is the world's most popular programming language. Why? Because every web browser in the world comes pre-packaged with a JavaScript interpreter.

First thing to know about JavaScript: It has no relation to the Java programming language/plugin/runtime environment. At all. Besides the name. About that...

So JavaScript was invented by a really smart guy named Brendan Eich, who was working at Netscape Communications Corporation in 1995. Netscape had basically invented the web-browser and gotten the jump on Microsoft, who had been too busy taking over the world to notice the whole World Wide Web thing. But they were catching up. Fast.

One thing missing with Netscape's web-browser, Netscape Navigator, was any sort way to program complex behavior on a web page, which meant the the web was dumber than a box of hammers. Every little thing you did on a page meant the browser had to refresh the page to change even the tiniest thing on it. Adding something to your shopping cart on a website? Refresh. Updating football scores? Refresh. And that was slow. And annoying. And meant that you had to stare at a blank, reloading page all the time. On 56k. If you were lucky.

So the race was on to put a programming language in the web browser. Microsoft had been pretty quick to bust out a web browser, calling it Internet Explorer. They had also released a family of programming languages called Visual Basic (VB) and Visual Basic Script (VBScript) for programming Windows applications, and word on the street was that they were planning to build those into IE.

In 1994 Sun Microsystems had come up with this programming language called Java, and different versions of a program called a Virtual Machine. Each operating system would have a different version of the Java Virtual Machine (JVM) made just for it, but after that, the Java code that you wrote for a program would perform exactly the same across all operating systems. You could write a program once and have it run on Mac and Windows and Linux more or less the same. Sounded pretty genius.

So when Netscape felt Microsoft nipping at their heels, the made fast allies with Sun Microsystems in order to put Java in Netscape Navigator as a sort of pre-emptive answer to Visual Basic. But MS still had VBScript, which was a lighter, easier weekend-warrior kind of programming language. Which brings us back to Brendan Eich.

While the suits upstairs were hashing out the Sun-Netscape Alliance, Eich was tasked with coming up with a second, more "light-weight" language that could ship with the upcoming Netscape Navigator 2.0. In 10 coffee-drenched days he took several ideas from some of his favorite but mostly snubbed languages, mixed them together with a little bit of the ever-popular C language, used NONE of the Java language, and came up with something he called Mocha. But that wasn't confusing enough. So then it was renamed LiveScript. And then the Sun-Netscape deal went through and the suits made him call it JavaScript. Even though it had nothing to do with Java.

So when Netscape Navigator 2.0 was released in early 1996, it shipped with JavaScript and Microsoft was so left in the lurch, that they had to throw in the towel and reverse-engineer JavaScript just so that IE could properly run webpages written for the then-more-popular Navigator.

Cloud 9 and Github:

Cloud9 is a web-based code editor with all the features of a code editor you would install on your computer. One of the nifty things about Cloud9 is that it has a real honest-to-bob command line built into it with real, honest-to-bob git pre-installed, so you literally have to set up nothing.