Journey from imperative to reactive JavaScript with stops

JavaScript is an interesting language. It can mimic almost any style you want: procedural, object-oriented, functional, etc. In this presentation I will take a simple problem and will solve it using different approaches. With each step we will see the power of each approach to take the complexity away, while still being the JavaScript we all love to hate. The following topics will be shown: - procedural (imperative) style - object-oriented - functional - point-free - lazy evaluation - immutable data - async processing using promises - async processing using event emitters - advanced topics: transducers and streams - reactive programming using event streams Any team looking to improve its code should attend this presentation. Making a single leap from object-oriented approach to reactive programming is too difficult, but you can make it step by step.