school Summary

All my courses are designed for small private teams, delivered live and remote, and fully tailored to your training requirements and schedule.

Core JavaScript

JavaScript is one of the most commonly used yet totally misunderstood and poorly welded languages. It is very easy to do something basic in JavaScript, so people consequently think it is a an easy language to master. Not true.

Subscribers to my youtube channel know how much I love JavaScript, and I love it warts and all.

I have spent a good part of my life being blown up by JavaScript. More accurately by 'my misunderstanding' of JavaScript. It is a minefield and if you don't know what you doing, it is just a matter of time before you get blown up.

Mastery of JavaScript is very difficult, and your team needs an instructor who can take them by the hand and walk them safely across the minefield.

Many things at first glance make no sense, and many common programing paradigms seem twisted, however many of the WTFs are not actually WTF, and make a lot more sense after you take the time to think about them some more.

I aim to demystify JavaScript for your team, and empower them to do truly incredible things with the language.

verified_user Team Training Goals

What will your team be able to do after the training?

As each class is customized for the team, each training outcome is different. However your team will:

  1. Be able to debug other people's’ JavaScript effectively.
  2. Be able to write structured and maintainable MVC code.
  3. Not be able to distinguish which person in the team wrote that code (that’s a good thing btw).

Some teams may be more interested in general best practices and fundamentals, and others may want to achieve a deep understanding of the language, and are only interested in learning the more advanced subjects.

I can also help teams that have decided to adopt a particular framework (Angular, Ember) and need a deeper understanding of core Javascript so they can wield the framework more favorably.

playlist_add_check Outline

Course contents

The course content (outline) is the secret sauce of good teaching.

Of course we need your team to be able to read the content page of a JavaScript book and know all the subjects. That is 'a given' going on one of my courses.

Most importantly there needs to be a firm focus on the subjects that matter, and a distinct lack of focus on the subjects that don't.

In JavaScript there are many useless parts. Sub sections of the language that should never be used, because there are known better practices for doing the same things.

All my courses are custom, with the topics listed below being a non exhaustive list of subjects I may or may not touch on at some point during the course.

If you have any specific topics you are interested in including in your course please email me.

Naturally if you don’t provide any suggestions you can be assured that the Core JavaScript class (uncustomized) will still be of great value to your team.

  • Grammar
  • Whitespace
  • Names
  • Numbers
  • Strings
  • Statements
  • Expressions
  • Literals
  • Functions
  • Object Literals
  • Retrieval
  • Update
  • Reference
  • Prototype
  • Reflection
  • Enumeration
  • Delete
  • Global Abatement
  • Function Objects
  • Function Literal
  • Invocation
  • Arguments
  • Return
  • Exceptions
  • Augmenting Types
  • Recursion
  • Scope
  • Closure
  • Callbacks
  • Module
  • Cascade
  • Curry
  • Memoization
  • Pseudoclassical
  • Object Specifiers
  • Prototypal
  • Functional
  • Array Literals
  • Length
  • Delete
  • Enumeration
  • Confusion
  • Methods
  • Dimensions
  • Construction
  • Global Variables
  • Scope
  • Semicolon Insertion
  • Reserved Words
  • Unicode
  • typeof
  • parseInt
  • +
  • Floating Points
  • NaN
  • Phony Arrays
  • Falsy Values
  • hasOwnProperty
  • Object
  • with
  • eval
  • continue
  • switch case
  • Block-less Statements
  • ++ −−
  • Bitwise Operators
  • Typed Arrays
  • new
  • void
  • Undefined Variables and Functions
  • Members
  • Options
  • Semicolon
  • Line Breaking
  • Comma
  • Required Blocks
  • Forbidden Blocks
  • Expression Statements
  • var Statement
  • =
  • == and !=
  • Labels
  • Unreachable Code

attach_money Getting a quote for your team

My quotation process is really simple

We simply set up a conference call between myself, you (presumably the training coordinator) and optionally your senior developer(s).

During this call we will get the opportunity to discuss your specific training requirements, and I will then be able to tailor the course to suit your needs and schedule.

Within 24 hours of our call, I will email you a fully customized quote.

To get the ball rolling, email me, and let me know when you are available for a conference call.