Skip to content

Instantly share code, notes, and snippets.

@smalljam
Created October 28, 2011 08:41
Show Gist options
  • Save smalljam/1321884 to your computer and use it in GitHub Desktop.
Save smalljam/1321884 to your computer and use it in GitHub Desktop.
Frontend engineering training course
// LECTURES
Frontend engineering introduction (2 x 1 hour)
- web development is
- history
- current situation
- languages and platforms
- FE definition
- Job specific
- knowledge areas
- design & development
- end-user communication
- environment
- browsers and platforms
- technical restrictions
- Technologies set
- HTML/XHTML/XML
- CSS
- javascript
The nature of things (1 hour)
- w3c
- microsoft
- javascript appear
- java applets
- JSON story
- browser wars
- vendors
- specifications following
- whatwg and open source community
Browser anatomy (2 x 1 hour)
- Introduction (high level structure)
- Rendering engines
- introduction
- rendering modes (quirks)
- HTML and it's structure (basics)
- DTD
- DOM
- CSS
- scripts (js, vb, etc)
- reflow understanding
All about HTML (2 x 1 hour) + homework
- history and evolution
- from HTML1 to HTML4
- what is semantic
- DTD
- loose vs strict
- XHTML 2.0
- HTML4 vs XHTML 1.0
- HTML5
All about CSS (2 x 1 hour) + homework
- Introduction
- history of documents styling
- CSS
- definition
- high level specification overview
- syntax
- selectors understanding (XPATH examples)
- evolution
- from 1 to 3
- tables vs div's
- CSS3 and modern web (transitions)
- CSS4 (shaders)
Information airtrain (1 hour)
- web services
- AJAX
- REST
Javascript Introduction (1 hour)
- devices and platforms
- history of the language
- ECMA specification
- syntax overview
// WORKSHOPS
Functions in javascript (4 hours) + homework
- named functions
- scopes
- function is object
- anonymous functions / closures
OOP with Javascript (4 hours) + homework
- prototypes
- that = this
- incapsulating
- module pattern
javascript frameworks overview (2 hours) + homework
- jquery
- DOM traversing
- CSS selector engines
- extjs, closure
- YUI, dojo, mootools
- backbone, underscore
Cross browser horror (2 hours)
- box model
- difference in js interpreters
- side effects
Advanced CSS technics (2 hours) + homework
- namespace emulation
- id vs class
- OOCSS
- YAML
Events (3 hours) + homework
- bubbling and capturing
- native events vs custom events
- loose coupling
- garbage collecting
- setTimeout
- webWorkers
AJAX and web services (2 hours) + homework
- XMLHTTPRequest + XHR
- JSON vs XML vs HTML
- iframe kung-fu
- comet/websockets
- multipart data
Debugging javascript (4 hours)
- tools overview
- web inspector
- RIP firebug
- dragonfly
- logging
- alert debugging is evil
TDD with javascript (2 hours) + homework
- jstestdriver
- testing frameworks overview
Frontend engineering best practices (2 hours)
- jslint
// LECTURES
Client side optimization (1 hour) + homework
- sprites
- gzip
- minification / obfuscation
- caching
Browser security (2 x 1 hour) + homework
- XSS types
- injections
- validation
- how to protect your application
Server side javascript (1 hour)
- CommonJS workgroup
- node.js
Web Content (1 hour)
- information is the key
- media & graphic formats
Information design (1 hour)
Usability basics (1 hour)
Future of the web (1 hour)
Total - 46 hours
Practice - 27 hours
Lectures - 19 hours
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment