JavaScript For Developers

JavaScript is everywhere today, and there's no way around it. Now you can even run JavaScript on the server with node.js. Why not embrace this powerful language and learn the secrets. The need for proficient JavaScript programmers is increasing, and this course will give you a good basis to take on this role.

The course teaches the JavaScript programming language from the ground up, with all it’s quirks and powers. You’ll also learn how to leverage modern JavaScript with ES2015 and beyond.

The course has a practical format with roughly a 50/50 time split between lectures/discussions and exercises.

Delegates are expected to have basic programming knowledge through experience with at least one other programming language. HTML and CSS alone is not enough background to take this course, as introductory programming concepts are not part of the course.

Course structure:

Day one focuses on the basic syntax of the language, as well as its built-in types and language features.

Day two focuses on functions, objects, closures and how to combine these to create abstractions.

Day three focuses on asynchronous JavaScript, while also gives an overview of debugging, the ecosystem and an introduction to tooling available for building JavaScript applications.

Preparations needed:

install nodejs (usually latest)

install chrome and/or firefox

install atom or sublime-text (or your favorite editor/IDE with syntax support for JSX/ES2015)

if you’re using windows, follow this guide: https://github.com/Microsoft/nodejs-guidelines

Pre-requisites:

Delegates should be proficient with at least one other programming language. HTML and CSS alone is not enough background to take this course. Delegates will benefit from experience with web technologies such as HTML and CSS, but it is not strictly necessary.

Subjects:

Web Development With React And Redux

Want to build performant maintainable web and mobile applications using modern JavaScript? This course teaches you how to utilize the popular React/Redux stack and other useful tools to build web applications, focusing on how to approach problems in a functional and declarative style.

React introduces a new way of thinking when it comes to building user interfaces in JavaScript. With its declarative style it challenges established best practices. Together with Redux as the application state container you can start to leverage some of the powers of functional programming without any former experience in the field.

This course has a mix of about 50/50 theory and practice. We’ll solve a lot of exercises, and also build a complete project from scratch, so that you’ll have working knowledge of every part of your application.

Course Outline:

Part 1 (intro and fundamentals):

Functional JavaScript Intro & Why React?

React fundamentals

Part 2 (advanced react):

Higher order components

Practical projects

Testing

Part 2 (the ecosystem around react):

Unidirectional data flow

Redux

Routing

Ecosystem and tools

Who should attend:

Developers who want to to build performant web/mobile applications that are easy to maintain and reason about using a functional approach.

Preparations needed:

install nodejs 8.X.X

install chrome and/or firefox

install atom or sublime-text (or your favorite editor/IDE with syntax support for JSX/ES2015)

if you’re using windows, follow this guide: https://github.com/Microsoft/nodejs-guidelines

Hoardr

Hoardr.in is an ongoing attempt to make it easy to collect, structure and share all the things you find on the web. It also provides a clean reading experience without ads. Think of it as a combination of Pocket and Pinterest. Stay tuned for more!

Hearsay

Hearsay.me is an attempt to make a great multi-platform news experience, with the latest tech news from the (highly opinionated) best sources around today. It enables a clean reading experience without ads, and it's insanely fast.

Eventflyt

(Shut down) web service that enables you to create live slideshows from social media for your events. Think large screens at festivals. Integrated with PayPal payments. (Current only available in norwegian!)

Flytr

SpotiPi

With SpotiPi you can set up a computer of any kind (that runs node) to work as the receiver/streamer, with either a bundled web interface for controlling it, or just outsource the web interface to the cloud. Just make sure you connect both the player and web interface to the same redis and mongodb. Now anyone you want can have access to your queue and add music. Suitable for parties and other occasions where you want your guests to add music to the queue from their own device.