Schedule day 1

9:00

Registration + Breakfast

10:00

Opening Remarks

10:10

Reactive Programming: Why You Should Care and How to Write More Future Proof Code

This talk explains reactive programming in its simplest form, explores the various places we see reactive programming paradigms appear in our every day code, and discusses the future of reactive primitives in TC39 and WHATWG.We'll walk through code samples using RxJS, a push based primitive and domain specific language that sits on top of JavaScript and you'll see just how easy it is to create a more composable application architecture and use reactive programming paradigms to essentially future proof your code from common JavaScript fatigue. You'll see how concepts and paradigms/code remain consistent from framework to framework and how easy it becomes to copy paste 90% of our code from framework to framework and what you can accomplish with the arsenal of lego bricks RxJS provides with its declarative syntax and intrinsic portability.

Learn more »
10:50

Robots Don't Cry: Automation with Schematics

It is not a secret that robots are better at tedious, repetitive tasks than humans. Angular CLI took care about code scaffold and significantly improve DX (developer experience) for Angular. Tooling used behind it was exposed as the separate package. It gave us the ability to create new generators collections like NgRx. You can and should create your schematics to reduce copy-paste development style. During this talk, I am gonna to show how to implement custom schematics and make machines work for us.

Learn more »
11:30

Supercharge your Angular forms!

You're building a large data-driven app? Lots of form fields, selects, autocompletes,...validation? You're tired of typing all the HTML inputs? Maybe Angular wasn't the right choice for this after all? Stop it!In this talk we're going to level up our skills and uncover the true power of Angular forms. We'll dive deep into fully configuration based, model driven, dynamic forms that will supercharge every Angular app. We will see how to create an abstraction layer around our forms that facilitate high reusability and allows us to create new forms in minutes.

Learn more »
12:00

Coffee Break

12:30

Web components with Angular: The what, the why and the how

In this talk, we are going to look at what web components are, why we need them and how we can construct them according to best practices. In order to do this we will see several examples, and each example will be tackled with its own approach. Through these examples we will be able to see the pros and cons of different ways of structuring web components.

Then we will take a look at how we can construct these with Angular and Angular Elements. Thanks to the Angular team and their latest release (version 6) we can create Angular Elements more efficiently. In our code examples will with use version 6 because of this and show the best approach to creating Angular Elements.

Learn more »
13:30

Recursion, Iteration, and JavaScript: A Love Story

Recursion and iteration are two alternative paradigms for solving problems by breaking them down into smaller chunks; this talk is a deep dive into how these paradigms work, and how JS supports them both. There's a fundamental tradeoff between the two: the stateful repetition of iteration is often more performant as it's closer to the way our machines "think", whereas many programmers find the self-referential abstraction of recursion easier to read & write. In JS prior to ES6, neither paradigm was especially easy to work with: iterative loops were laborious to read and write (not human-efficient), and recursion was limited by the fact that subsequent recursive calls to a function require additional frames added to the stack, potentially leading to stack overflow (not machine-efficient). Eventually, however, all three - recursion, iteration, and JS - were finally brought closer together. In this talk we'll dive into the nature of the two paradigms, examine what an Iterable and a tail-recursive function are, and learn how Tail Call Optimization unites the two paradigms, allowing us to write code recursively and run it iteratively.

Learn more »
14:00

Lunch

15:30

Fast PWAs With Angular And Ionic

Progressive Web Apps! We're constantly hearing about PWAs and why we should care about them. 

But when it comes to making one, we're often left to build out all the core features of a PWA, by hand. Thankfully, we have Angular, and have the right tools to help us out. We'll looks at patterns you can take in your Angular app to start to make it an Progressive Web App, and what tools are available to make sure our app is ready to be a PWA.

Learn more »
16:00

From web to mobile with NativeScript and Angular

Do you have a web app, but you also need a mobile app?Would you like to be able to build both with a single project?Would you like to reuse your existing code and also share it with a mobile app project?Come and see how you can use the Angular CLI to extend your existing web application with mobile applications for Android and iOS.

Learn more »
16:30

It’s Alive! Dynamic Components in Angular

The main use-case for using dynamic components is when we can decide only in run-time which component is loaded. They’re also the only solution when we want to embed Angular components in non-Angular ones. In many cases, replacing in-template components with dynamic ones is beneficial to performance and code quality. In this talk we’ll learn how to create and use dynamic components, and discuss several types of usages. 

Learn more »
17:00

Coffee Break

17:30

Angular, What's Coming Next

2018 is an existing year for the Angular platform. Join me in this session where we will cover this year's roadmap of the upcoming features of the Angular platform. We will discuss the new build system, the Material CDK, Observables, the new rendering engine and many other great features. Get ready!

Learn more »
18:00

Changing the Game with Cypress

When we talk about UI tests, the first thing that comes to mind is  probably Selenium. No wonder, it’s the most widely used testing  framework for web applications. It was originally developed in 2004 and  now, after 14 years, it still takes a dedicated team of QA engineers to  implement it correctly. Tests are often flaky, painful to debug, and the  overall developer experience is rather poor. But for many years there  wasn’t another choice, until Cypress was born. Cypress tries to solve  the biggest testing challenges, e.g. painless setup, easy to write  tests, support for async testing, performance, and a good understanding  of why  tests fail. Cypress is made from scratch focusing on developer  experience, debuggability and consistency.  In this talk, we’ll look at how to get started with Cypress and dive  into some basic tests. We’ll also see how to work with http requests and  explore the debugging capabilities of Cypress.

Learn more »
18:30

Modules are not what you think they are

Some developers believe that Angular has different types of modules like shared, feature or routing module. They’d be surprised to learn that Angular has none. Using a simple application, this talk will demonstrate how Angular uses a compiler to merge all modules into a single injector. We’ll learn where lazy loaded modules fit into this picture and why modules hierarchy and encapsulation simply don’t exist at runtime. By the end of the talk, you’ll have enough knowledge to avoid unexpected results and will be able to link, load or compile modules like a pro.

Learn more »
19:00

Closing Day 1

19:00

After Party

Get your ticket today!

Sponsors

Interested in sponsoring this event? Please get in touch with us to request a Sponsor Pack.

Partners

Informational partners

Don't hesitate to contact us. We don't bite!