Front-end Web Development

From Noisebridge
(Difference between revisions)
Jump to: navigation, search
(Class for 2013-10-28: Backbone.js)
(25 intermediate revisions by one user not shown)
Line 2: Line 2:
 
<h1 style="text-align: center; border: none; font-weight: bold; font-size: 4em; margin: -1em 0 0; overflow: visible; background: #fff; position: relative; padding-top: 1em;">Frontend Web Development</h1>
 
<h1 style="text-align: center; border: none; font-weight: bold; font-size: 4em; margin: -1em 0 0; overflow: visible; background: #fff; position: relative; padding-top: 1em;">Frontend Web Development</h1>
 
<h2 style="text-align: center; font-weight: bold; font-size: 2em; border-bottom: 0;">A free, weekly class on HTML, CSS, and JavaScript</h2>
 
<h2 style="text-align: center; font-weight: bold; font-size: 2em; border-bottom: 0;">A free, weekly class on HTML, CSS, and JavaScript</h2>
<div style="text-align: center; font-size: 2em; color: red;">On vacation until September 9!</div>
 
 
<div style="border: 1px solid #ccc; background: #efefef; background-image: -webkit-gradient(linear, left top, left bottom, from(#fafafa), to(#d9d9d9)); background-image: -webkit-linear-gradient(top, #fafafa, #d9d9d9); background-image: -moz-linear-gradient(top, #fafafa, #d9d9d9); background-image: -o-linear-gradient(top, #fafafa, #d9d9d9); background-image: linear-gradient(to bottom, #fafafa, #d9d9d9); color: #333; padding: 10px; -webkit-border-top-left-radius: 10px; -webkit-border-top-right-radius: 10px; border-top-left-radius: 10px; border-top-right-radius: 10px; margin: 3em 0 1em;">
 
<div style="border: 1px solid #ccc; background: #efefef; background-image: -webkit-gradient(linear, left top, left bottom, from(#fafafa), to(#d9d9d9)); background-image: -webkit-linear-gradient(top, #fafafa, #d9d9d9); background-image: -moz-linear-gradient(top, #fafafa, #d9d9d9); background-image: -o-linear-gradient(top, #fafafa, #d9d9d9); background-image: linear-gradient(to bottom, #fafafa, #d9d9d9); color: #333; padding: 10px; -webkit-border-top-left-radius: 10px; -webkit-border-top-right-radius: 10px; border-top-left-radius: 10px; border-top-right-radius: 10px; margin: 3em 0 1em;">
 
<div style="width: 25%; float: left;"><div style="padding: 0 1em;">
 
<div style="width: 25%; float: left;"><div style="padding: 0 1em;">
Line 40: Line 39:
 
<div style="border: 1px solid #d9d9d9; margin-bottom: 2em; -webkit-border-bottom-right-radius: 10px; -webkit-border-bottom-left-radius: 10px; border-bottom-right-radius: 10px; border-bottom-left-radius: 10px;"><div style="width: 50%; float: left;"><div style="padding: 1px 1em 1px 2em;">
 
<div style="border: 1px solid #d9d9d9; margin-bottom: 2em; -webkit-border-bottom-right-radius: 10px; -webkit-border-bottom-left-radius: 10px; border-bottom-right-radius: 10px; border-bottom-left-radius: 10px;"><div style="width: 50%; float: left;"><div style="padding: 1px 1em 1px 2em;">
 
<h2 style="border-bottom: 0;">When does the series start over?</h2>
 
<h2 style="border-bottom: 0;">When does the series start over?</h2>
I estimate the next series will begin in '''November'''.
+
The next series will most likely begin on '''November 11'''.
  
 
If waiting for the next series sounds too long, remember that you can start coming to class immediately! You can catch up by watching videos from [[Frontend_Web_Development/Notes|previous classes]], doing [[Frontend_Web_Development/Assignments|assignments]], or attending [[#Lab|lab]].
 
If waiting for the next series sounds too long, remember that you can start coming to class immediately! You can catch up by watching videos from [[Frontend_Web_Development/Notes|previous classes]], doing [[Frontend_Web_Development/Assignments|assignments]], or attending [[#Lab|lab]].
Line 57: Line 56:
  
 
<div style="color: #000; background:#eeeeff;padding:.5em 10px; margin: 1em 0; -webkit-border-radius: 10px; border-radius: 10px; -webkit-box-shadow: 0 0 10px rgba(0,0,0,.25); box-shadow: 0 0 10px rgba(0,0,0,.25);">
 
<div style="color: #000; background:#eeeeff;padding:.5em 10px; margin: 1em 0; -webkit-border-radius: 10px; border-radius: 10px; -webkit-box-shadow: 0 0 10px rgba(0,0,0,.25); box-shadow: 0 0 10px rgba(0,0,0,.25);">
==== Class for 2013-09-09: HTML5 elements ====
+
==== Class for 2013-10-28: Backbone.js ====
We'll take an entertaining (in my opinion) look through [http://jeffreyatw.com/static/frontend/series4/class16/html.zip this page containing every currently valid HTML element]. Many of them are considered "HTML5" elements, but that's just because they're relatively new.
+
We'll learn about the basics of [http://backbonejs.org/ Backbone.js], one of the simplest Model-Collection-View libraries available for the front-end. Libraries such as these make it easier to manage data-rich views by keeping everything in sync with each other, and with data in the back-end.
  
[https://plus.google.com/events/cp6uk4aqvsn9prg5ouf8ao4erko Join the Google+ Event to be notified of the video livestream (you don't have to be a Google+ member).]
+
To prepare for this class:
 +
* Install [https://rvm.io/ RVM] if you're using OS X or Linux, or Ruby 1.9.3-p448 via [http://rubyinstaller.org/ RubyInstaller] for Windows
 +
* Install [http://git-scm.com/ Git]. Those on Windows should install [http://msysgit.github.com/ Git for Windows] instead (all default options are fine).
 +
* Install [http://dev.mysql.com/downloads/mysql/ MySQL Community Server]. For OS X, get the DMG version. For Linux, consider installing it from your app manager of choice.
 +
* Go to https://github.com/jeffreyatw/jeffreyandanna and fork the repository (button in the upper right).
 +
* Clone your own repository: <code>git clone <nowiki>https://github.com/&lt;your username&gt;/jeffreyandanna.git</nowiki></code>
 +
* On OS X, you might need to install Command Line Tools: <code>xcode-select --install</code>
 +
* On Linux, install GCC.
 +
* <code>cd</code> into the new <code>jeffreyandanna</code> directory and run <code>gem install bundler; bundle install; rake db:migrate</code>
 +
 
 +
[https://plus.google.com/events/c2ie7kp49apktqj197j8t02hnk4 Join the Google+ Event to be notified of the video livestream (you don't have to be a Google+ member).]
 
</div>
 
</div>
  
Line 75: Line 84:
 
<div style="color: #000; background:#eeffee;padding:.5em 10px; margin: 1em 0; -webkit-border-radius: 10px; border-radius: 10px; -webkit-box-shadow: 0 0 10px rgba(0,0,0,.25); box-shadow: 0 0 10px rgba(0,0,0,.25);">
 
<div style="color: #000; background:#eeffee;padding:.5em 10px; margin: 1em 0; -webkit-border-radius: 10px; border-radius: 10px; -webkit-box-shadow: 0 0 10px rgba(0,0,0,.25); box-shadow: 0 0 10px rgba(0,0,0,.25);">
  
==== [http://jeffreyatw.com/static/frontend/series3/class15/assignment.html Assignment for 2013-08-15] (jQuery plugins) ====
+
==== [http://jeffreyatw.com/static/frontend/series3/class19/assignment.html Quiz for 2013-10-03] ====
 
</div>
 
</div>
  

Revision as of 13:13, 27 October 2013

Frontend Web Development

A free, weekly class on HTML, CSS, and JavaScript

What

Learn HTML, CSS and JavaScript - and put them to good use! This class, taught by Jeffrey Carl Faden, is aimed at beginners who are interested in web development, as well as seasoned professionals looking to brush up on the latest and greatest.

Frontend web development is all about making code that runs in the browser (versus code that runs on the server). There isn't a big focus on web design (creating wireframes and mockups), but we do cover best practices for turning these designs into beautiful code.

Who

This class is for everyone! Complete beginners and more experienced developers are welcome at any time. If you're new to the class, consider coming to the lecture at 7:30 for a recap.

The space and the class are entirely free to attend. You do not have to be a Noisebridge member.

Please bring any kind of laptop.

When

Lectures start promptly at 8pm on Mondays and go for up to two hours. There is a half-hour recap starting at 7:30pm. Please try to arrive early as physical space is limited.

Labs start at 8pm on Thursdays and end two hours later.

This class runs in a weekly series, and the curriculum takes about 6 months from start to finish. Don't let it discourage you if you're starting from the middle - attend recaps and labs and you should be able to catch up!

Where

Noisebridge, 2169 Mission St., San Francisco, 94114 (at 18th St., near 16th St. BART station). Getting Here

The lecture is held in the Church classroom, which is in the back of the space.

The lab is held in the Turing classroom, the room past the wood shop.

Read up on getting in to the space. TL;DR: ring the bell!

When does the series start over?

The next series will most likely begin on November 11.

If waiting for the next series sounds too long, remember that you can start coming to class immediately! You can catch up by watching videos from previous classes, doing assignments, or attending lab.

Keep Informed

Join the WebDev or Noisebridge-announce mailing lists to be notified of upcoming class topics via email.

If you can't make it, subscribe to a mailing list to be notified when you can watch a live stream of the lecture! If you missed it, previous lecture streams are available for viewing on the Previous Classes page!

Lecture

Weekly classroom-style presentation on HTML/CSS/JS. The lecture starts every Monday at 8pm. We also have a recap starting at 7:30pm, where we'll cover the (very) basics, such as explaining what "frontend" means, discussing tools of the trade, and understanding basic HTML and CSS.

Class for 2013-10-28: Backbone.js

We'll learn about the basics of Backbone.js, one of the simplest Model-Collection-View libraries available for the front-end. Libraries such as these make it easier to manage data-rich views by keeping everything in sync with each other, and with data in the back-end.

To prepare for this class:

  • Install RVM if you're using OS X or Linux, or Ruby 1.9.3-p448 via RubyInstaller for Windows
  • Install Git. Those on Windows should install Git for Windows instead (all default options are fine).
  • Install MySQL Community Server. For OS X, get the DMG version. For Linux, consider installing it from your app manager of choice.
  • Go to https://github.com/jeffreyatw/jeffreyandanna and fork the repository (button in the upper right).
  • Clone your own repository: git clone https://github.com/<your username>/jeffreyandanna.git
  • On OS X, you might need to install Command Line Tools: xcode-select --install
  • On Linux, install GCC.
  • cd into the new jeffreyandanna directory and run gem install bundler; bundle install; rake db:migrate

Join the Google+ Event to be notified of the video livestream (you don't have to be a Google+ member).

Intro presentation

Previous Classes

Lab

We also meet for a weekly lab/workshop where we work on an assignment that covers the material learned in the lecture earlier in the week. Those working on their own personal projects are also more than welcome to come and solicit help. Every Thursday at 8pm in the Turing classroom.

Previous Assignments

Personal tools