Difference between revisions of "Introduction to JavaScript Fall 2011"

esse quam videri
Jump to: navigation, search
Line 1: Line 1:
== Introduction ==
+
== Class Schedule ==
 +
* Class 01 (2011-09-06): [[Introduction_to_JavaScript_Fall_2011_Class_1|Introduction]]
 +
* Class 02 (2011-09-13): Programming Syntax and Concepts
 +
* Class 03 (2011-09-20): Functions and Events
 +
* Class 04 (2011-09-27): Objects, Arrays, & Loops
 +
* Class 05 (2011-10-04): More DOM Scripting
 +
* Class 06 (2011-10-11): Libraries, jQuery
 +
* Class 07 (2011-10-18): Project 1 Critique
 +
* Class 08 (2011-10-25): Midterm Exam
 +
* Class 09 (2011-11-01): AJAX and JSON
 +
* Class 10 (2011-11-08): Client Storage, HTML5 APIs
 +
* Class 11 (2011-11-15): Object Oriented Programming
 +
* Class 12 (2011-11-22): Scripting the Canvas
 +
* Class 13 (2011-11-29): Performance Optimization
 +
* Class 14 (2011-12-06): Project 2 Critique
 +
* Class 15 (2011-12-13): Final Exam
  
JavaScript is a scrappy little language that has seen a lot of changes since its introduction in 1995. Though the language has often been abused, there has been a resurgence of interest since the introduction of highly dynamic web applications like Gmail and Google Maps, which take full of advantage of JavaScript's capabilities.
+
==Student portfolio sites==
 
 
This class will treat JavaScript with the respect that it deserves. Instead of relying on poorly designed tools to generate half-baked JavaScript, we will be hand writing clean and compact JavaScript.
 
 
 
I fully expect that this class will include students with little to no experience with programming or JavaScript. Luckily, JavaScript is a simple language to work with. Unlike many other languages, JavaScript doesn't require any fancy development environments or expensive tools. I hope that everyone will come away from this class knowing a lot more about JavaScript than they did before starting.
 
  
== Who's teaching this class? ==
+
Coming next week
  
My name is Brian Nielsen. I am a Front End Developer at Sears Holdings Corporation.
+
== Contact the instructor ==
  
You can contact me at [mailto:bnielsen@colum.edu bnielsen@colum.edu].
+
[mailto:bnielsen@colum.edu bnielsen@colum.edu].
  
I won't have any office hours on campus, but if you would like to meet with me, I am available before and after class by appointment.
+
==Course Deliverables ==
 
 
===Class Deliverables===
 
Class work will fall into these categories:
 
  
 
===In-Class Work===
 
===In-Class Work===
 
+
10 points each
In-Class works are quick and dirty examples of concepts I just talked about in lecture.
+
====In-Class 1====
 
+
Due:
They are worth 10 points each
 
 
 
 
===Assignments===
 
===Assignments===
 
+
40 points each
Assignments are homework. 
+
====Assignment 1====
 
+
Due:
They are worth 40 points each
 
 
 
 
===Projects===
 
===Projects===
 +
125 points each
  
Projects are homework with a much longer timeline. 
 
There are only two them for the whole semester, and they should be stunning portfolio pieces.
 
  
They are worth 125 points each
 
 
===Exams===
 
 
There will be midterm and final exam for this class. 
 
 
Each will be worth 100 points
 
  
 
== Tools for this class ==
 
== Tools for this class ==
 
This is a list of tools that will come in handy for JavaScript development.
 
  
 
=== Text Editors ===
 
=== Text Editors ===
Line 69: Line 63:
  
 
=== Books ===
 
=== Books ===
 
I won't be teaching directly out of a book for this class, but there are a few books that will come in handy:
 
  
 
[http://www.amazon.com/DOM-Scripting-Design-JavaScript-Document/dp/1430233893/ DOM Scripting: Web Design with JavaScript and the Document Object Model]: this book is very gentle introduction to JavaScript that focus on practical examples of scripting websites.
 
[http://www.amazon.com/DOM-Scripting-Design-JavaScript-Document/dp/1430233893/ DOM Scripting: Web Design with JavaScript and the Document Object Model]: this book is very gentle introduction to JavaScript that focus on practical examples of scripting websites.
Line 101: Line 93:
  
 
== Interesting JavaScript Websites ==
 
== Interesting JavaScript Websites ==
 
Each week, I will might you an interesting example of JavaScript usage in the wild. You can find a list of all of the websites here.
 
If you come across any sites that you think use JavaScript in an interesting way, feel free to suggest them.
 
  
 
* [http://www.chromeexperiments.com/ Google's Chrome Experiments / Chrome Showcase]
 
* [http://www.chromeexperiments.com/ Google's Chrome Experiments / Chrome Showcase]
 
* [http://www.beautyoftheweb.com/ Microsoft's Beauty of the Web / IE9 Showcase]
 
* [http://www.beautyoftheweb.com/ Microsoft's Beauty of the Web / IE9 Showcase]
 
== Class Schedule ==
 
 
* Class 01 (01/25/2011): [[Introduction_to_JavaScript_Fall_2011_Class_1|Introduction]]
 
* Class 02 (02/01/2011): Programming Syntax and Concepts
 
* Class 03 (02/08/2011): [[Introduction_to_JavaScript_Spring_2011_Class_3|Variables, Conditions]]
 
* Class 04 (02/15/2011): [[Introduction_to_JavaScript_Spring_2011_Class_4|Functions, Objects]]
 
* Class 05 (02/22/2011): [[Introduction_to_JavaScript_Spring_2011_Class_5|Arrays & Loops]]
 
* Class 06 (03/01/2011): [[Introduction_to_JavaScript_Spring_2011_Class_6|Forms and GET data]]
 
* Class 07 (03/08/2011): [[Introduction_to_JavaScript_Spring_2011_Class_7|Midterm Review]]
 
* Class 08 (03/15/2011): [[Introduction_to_JavaScript_Spring_2011_Class_8|Midterm Exam]]
 
* SP Break (03/22/2011): Spring Break, Woo!
 
* Class 09 (03/29/2011): [[Introduction_to_JavaScript_Spring_2011_Class_9|project1 examples]]
 
* Class 10 (04/05/2011): Project 1 Critique
 
* Class 11 (04/12/2011): [[Introduction_to_JavaScript_Spring_2011_Class_11|jQuery!]]
 
* Class 12 (04/19/2011): [[Introduction_to_JavaScript_Spring_2011_Class_12|Ajax]]
 
* Class 13 (04/26/2011): [[Introduction_to_JavaScript_Spring_2011_Class_13|jQuery Plugins]]
 
* Class 14 (05/03/2011): [[Introduction_to_JavaScript_Spring_2011_Class_14|Rapheal]]
 
* Class 15 (05/10/2011): [[Introduction_to_JavaScript_Spring_2011_Class_15|Project 2 Critique]]
 
 
==Student portfolio sites==
 
 
  
 
[[Category:Introduction to JavaScript Spring 2011]]
 
[[Category:Introduction to JavaScript Spring 2011]]

Revision as of 08:03, 6 September 2011

Class Schedule

  • Class 01 (2011-09-06): Introduction
  • Class 02 (2011-09-13): Programming Syntax and Concepts
  • Class 03 (2011-09-20): Functions and Events
  • Class 04 (2011-09-27): Objects, Arrays, & Loops
  • Class 05 (2011-10-04): More DOM Scripting
  • Class 06 (2011-10-11): Libraries, jQuery
  • Class 07 (2011-10-18): Project 1 Critique
  • Class 08 (2011-10-25): Midterm Exam
  • Class 09 (2011-11-01): AJAX and JSON
  • Class 10 (2011-11-08): Client Storage, HTML5 APIs
  • Class 11 (2011-11-15): Object Oriented Programming
  • Class 12 (2011-11-22): Scripting the Canvas
  • Class 13 (2011-11-29): Performance Optimization
  • Class 14 (2011-12-06): Project 2 Critique
  • Class 15 (2011-12-13): Final Exam

Student portfolio sites

Coming next week

Contact the instructor

bnielsen@colum.edu.

Course Deliverables

In-Class Work

10 points each

In-Class 1

Due:

Assignments

40 points each

Assignment 1

Due:

Projects

125 points each


Tools for this class

Text Editors

Cross Platform

  • Aptana (free, built on top of eclipse)

For Windows

For OS X

Browser Tools

Tools for Firefox

Books

DOM Scripting: Web Design with JavaScript and the Document Object Model: this book is very gentle introduction to JavaScript that focus on practical examples of scripting websites.

Eloquent JavaScript: A Modern Introduction to Programming: this book (also available as a free eBook) goes into more detail about programming with JavaScript, and doesn't even touch DOM Scripting until the end. Some of it's DOM Scripting practices seem a bit out of date to me, still a great read though.

JavaScript: the Definitive Guide: this is THE JavaScript reference book in my opinion. It is thick, and dry. I wouldn't try and read it cover to cover until you're already comfortable with JavaScript and you want to poke though every nitty gritty detail.


Resources

References and Tutorials

Web Development Toolbox

Tutor

Which tutors know some JavaScript?

eBooks

Interesting JavaScript Websites