CodeHubOrg / discussions

Discussion board for CodeHub Bristol
2 stars 2 forks source link

JS101 When we started from scratch - the first 5 sessions (from February 2015 on) #8

Open katjad opened 8 years ago

katjad commented 8 years ago

This is something I posted on our now defunct Discourse at the start of 2015. An outline of the first sessions, when we started from an assumption of zero JS knowledge - I sometimes think it might be good to repeat this, and it might benefit from the organisers knowing a bit more of the language than back then..

Session 1

We will use the following two books as a basis: Eloquent JavaScript by Marijn Haverbeke http://eloquentjavascript.net/1 Secrets of the JavaScript Ninja by John Resig/Bear Bibault But we will use other resources as well, if we find a concept is particularly well explained elsewhere (also, open to suggestions)

The format of the sessions will be as follows:

A rough outline for the first 4 sessions: Session 1 + 2: The JavaScript language: Data Types, Control Structure etc., Functions, Data Structures: Objects and Arrays Session 3: JavaScript in the Browser: Manipulating the DOM, Events Session 4: In-depth look at some important concepts in JS, e.g. Closures, variable hoisting, use of this

Plan for 1st session:

JS101 then started on 17 Feb 2015

From the Meetup page:

In this session we mainly looked at JavaScript's data types including the strange things 'implicit coercion' can do. There are some notes here that you can work through https://github.com/CodeHubOrg/JavaScript101-Session1

Session 2

Our next session on the road to JavaScript enlightenment. We decided to read/ work through Chapters 3 and 4 of "Eloquent JavaScript" till then.

Rough schedule: Topic for this day is 'Objects in JavaScript - the basics' (including Arrays and Functions) 10.00 - 10.30 Introduction; JS project at Uni CompSci conversion course 10.30 - 11.00 Q&A on chapters + exercises in EloqJS 11.15 - 11.30 Introducing example app 11.30 - 12.00 Introduction to Git/GitHub for those new to it; coding a JSON 'profile' file from 12.00 EloqJS exercises; code challenges

Session 3

Session 3: This time we are diving right into code, but we will also discuss and try to clarify programming concepts like we did last time.

Rough schedule: 10.00 Introductions 10.30 Working on code examples / code challenges (pair programming or individually) 11.30 or later: Discussing solutions to code challenges + topics from EloqJS 5 -7 (e.g. Higher order functions, prototypal inheritance, context of this)

-> Did unfortunately not get to discussing concepts at this session, and as from here on we had some trouble with venues, we did not do that part very much anymore; we did more coding though!

Ajara and I introduced the second iteration of a mini SPA https://github.com/CodeHubOrg/JS101_SAP

Session 4

From Bridget, posted on Meetup:

"Hi everyone, Here is the link to the code I showed this morning: https://github.com/zubron/fuzzy-octo-knits

I also mentioned the Command pattern. There's a description of it here with some code examples: http://www.dofactory.com/javascript/command-design-pattern1

f anyone has any questions about the code I've written, don't hesitate to ask :)"

We also worked through the section in Eloquent JavaScript concerning the DOM.

Session 5

From Meetup: "We can probably stick with DOM and event handling once more (EloqJS chapters 13 and 14), as most of us have some catching up to do. Otherwise, we should be looking at chapters 15 and 16, platform game and using Canvas.

Schedule: 10.30 Introductions / what are you planning to work on 11.00 Coding session 12.30 Discussing solutions to exercises, programming concepts (DOM and Event handling?), what to do next"