During this talk we'll discuss the fundamentals: promises, generators and coroutines - and introduce async await. We'll have sequential and parallel processing explained, along with most common usecases - and gotchas. After this talk you'll never say that generators scare you or that async await is complicated - expect to find them simple.

JavaScript + Java = TypeScript

In this talk I'll highlight the native-JS problems that TS solves and compare it to its rivals, CoffeeScript and ES6. Moreover, we'll see how do non-Frontenders see TypeScript. I'll share my experience of banking software development.

ng-enterprise

Click... and here it is. Our AngularJS application has been deployed to 120 Scandinavian banks, starting to replace an old legacy system. It took us over 1 year to reach production and we learned some lessons you'll never read in any tutorial.

Click... tech-part. How would you deal with data binding and cross-component communication in a huge system? What does a directive represent in an enterprise-scale application? How to make 2 architectures, the legacy and angular, co-exist? And, damn, the backend is down again!

Click... business-part. So all these people are Java developers...? Guys, are you really sure, that this latest JS buzzword is our biggest concern at the moment? By the way - did Angular 2 make our AngularJS interface a legacy app already? And does anyone know if the backend is up anyway?

I'll share my experience of doing something really amazing, yet difficult, having Angular playing the lead role in crazy financial sector!

5 Architectures of Asynchronous JavaScript

In this talk we'll discuss 5 alternative approaches to handle async operations: callbacks, events, promises, coroutines and reactive streams. None of them is either legacy or a silver bullet - a good dev needs to pick the right tool for the job.

However, in order to understand them, we must step back to fundamentals all these rely on: the mechanics of event loop and run to completion rule, as well as learn to distinguish between sync and async flow. Then we proceed to design patterns built on top of each of the 5 approaches, discussing their strengths and limitations. Funfacts, such as famous Promise.race() included!

Enterprise Interface Architecture: JSON Schema

JSON is the most widely used data exchange/definition language in the web. It's as flexible as XML and as concise as possible. However, the structure flexibility of JSONs comes with a price of losing control of what data is being stored. If you want to have your JSON under control, let's dive into JSON Schema. It made my work easier, hope it makes yours too!

Enterprise Interface Architecture: Seeking Scalable Design

Single-Page App architecture is still being adapted into huge enterprise systems. Each design mistake costs a lot and is very difficult to refactor, if possible at all. The good and bad parts of growing JavaScript code.

Backend-less Development Revisited

“It’s obvious that SPA interfaces rely on RESTful APIs”. But does it have to be like this always? Tight-coupling between interfaces and APIs result in great development issues. Backend-less development is an emerging approach of decoupling the two sides, enabling them to be developed independently.

The costs and the benefits of mocking the entire API. The three possible architectural approaches in doing so. Simulating business logic in mocks using plain JavaScript and JSONs. Mock engine Examples in Angular.js and sinon.js. The technical and business aspects of separating frontend and backend - these are the topics I will cover, basing on my banking software development experience.