• fb-icon-cyan
  • twitter-icon-cyan
  • linkedin-icon-cyan
  • youtube-icon-cyan
Venkat Subramaniam - online course

Online course

Programming in

Modern JavaScript

Delivered by Venkat Subramaniam
3 weeks/5 hours per week

You will learn about...

  • ​Prototypal inheritance

  • Arrow functions in Modern JavaScript

  • Concise fluent syntax in metaprogramming

  • How to add Incredible JavaScript functions 

  • Practical knowledge of the concepts to immediate use in real projects


3 weeks


5 hours per week








JavaScript, Node.js


Software developers


3 weeks


Course description 

JavaScript is one of the most ubiquitous and powerful languages, yet it’s one of the languages that’s largely misunderstood and underutilized. In JavaScript we can create objects, but that’s different from how its done in OO languages. 

We can use inheritance, but that’s prototypal inheritance, which is far more powerful and superior to class based inheritance in a number of ways. 

While programmers have in general struggled to use JavaScript to the fullest extent, the language itself has evolved considerably. This course covers both the breadth and width of the essential parts of modern JavaScript.

Learn about prototypal inheritance, arrow functions, concise fluent syntax to create classes and properties, metaprogramming, annotations and more.


Course topics 

  • JavaScript


    1. Optionals that really are not 

    2. Dynamic and weak typing

    3. Semi-colon

    4. == vs ===

    5. Issues that arise from weak typing

    6. Array weirdness

    7. Exercises

  • Variables Functions, and Scopes

    1. Variable scoping

    2. Using strict

    3. var, let, and const

    4. Ways to define function

    5. Hoisting and issues

    6. Higher-Order Functions

    7. Lexical scoping

    8. call, apply, bind

    9. The problem of “this”

    10. Exercises

  • Asynchronous Programming

    1. Asynchrony

    2. Callbacks

    3. Issues with callbacks

    4. Promises

    5. Using Promises

    6. Creating Promises

    7. Exercises 

  • Object and Classes

    1. Creating objects

    2. Creating classes

    3. Examining properties

    4. Ways to access properties

    5. Prototype

    6. Prototypal inheritance

    7. Properties and inheritance

    8. hasOwnProperty

    9. Exercises 

  • JavaScript Programming Idioms

    1. Creating Fluent Interfaces

    2. Cascade Method Pattern

    3. Execute Around Method Pattern

    4. Currying

    5. Memoization

    6. Functional Style

    7. Function Pipeline pattern

    8. Exercises

  • Programming

    with Node

    1. Node.js

    2. Programming for the node

    3. Creating services

    4. Talking to services

    5. Exercises

  • ECMAScript 2015 and 2016 Features 

    1. Variable Declarations

    2. Block scoping

    3. Looping

    4. Template Strings

    5. Enhanced Object literals

    6. Symbols

    7. Lazy Iterators

    8. Generators

    9. Destructuring

    10. New Collections

    11. Modules

    12. Exercises

  • Arrow


    1. Functions

    2. Concise syntax

    3. Lambda expressions

    4. Benefits of arrow functions

    5. Issues with arrow functions

    6. Change in semantics

    7. When to use arrow functions

    8. Exercises

  • Fluent Class


    1. Creating classes

    2. Constructor

    3. Methods

    4. Static methods

    5. Properties, getters, and setters

    6. Inheritance

    7. default pass through

    8. Exercises 

  • Metaprogramming in JavaScript

    1. Annotations and decorators

    2. Symbols and metaObjects

    3. Proxies

    4. Using Reflection

    5. Exercises 

  • JavaScript

    Code Quality

    1. Caring about code quality

    2. Design Principles

    3. Multiple tools to measure and

    4. Improve quality of code

    5. Exercises

Taking this course you will get:


Slides, references,

real-world examples


you will get a collection of visual references compiled by our artist


After each lesson


Get direct access to the trainer & attendees On Slack Channel. Chat, share & ask directly


Collaborative team-work tools


Book by the author


Course dates & time

Each session includes a lecture, Q&A, and hands-on coding exercises, as well as optional homework to help connect the days and weeks. 


The course is designed so that it can fit in with your other commitments for work and home.



Dr. Venkat Subramaniam is an award-winning author, founder of Agile Developer, Inc., creator of agilelearner.com, and an instructional professor at the University of Houston. He has trained and mentored thousands of software developers in the US, Canada,
Europe, and Asia, and is a regularly invited speaker at several international conferences. Venkat helps his clients effectively apply and succeed with sustainable agile practices on their software projects. Venkat is a (co)author of multiple technical books, including the 2007 JoltProductivity award-winning book Practices of an Agile Developer. You can find a
list of his books at agiledeveloper.com. 


Book the course privately or request more information about this course

Build Stuff online courses provides the same experience and access to experts that you would have in an in-person course, without needing to leave your desk or couch.

The format is set to be flexible and you have to dedicate only a few hours of your time a week.

Course details

Who should attend?

​This course is aimed at anybody who wants to improve their knowledge and deepen in JavaScript.

Take this course if:
You want to speed up and get better at programming both front-end and backend JavaScript applications.
Build Stuff 2019

About the course

The course has a good balance of interactive lectures and hands-on exercises. The attendees are expected to pair up and work on exercises. 

The objective of the course is for the attendees to gain an in-depth practical knowledge of the concepts so they can put them to immediate use on their real projects.

Build Stuff Conf 2018

Join other courses

Get updates!

Signing up for newsletters indicates you agree with our Privacy Policy.

@2021 Official organizer FIX EVENTS, LITHUANIA