• Best practices for front-end teams: delivering fast and high quality modern apps at scale, 2020

    Speed of development usually comes at the cost of quality: "make it right" or "quick and dirty". The business or client wants everything done today, but too much compromise leaves us a mess of technical debt and a maintainability nightmare. I'll share my recipe for success in enabling high quality software development at a fast pace, based on experience and lessons learned over years of programming, consulting and leading multiple diverse front-end projects and teams. Video of the talk: https://www.youtube.com/watch?v=VSGpXk-1ZgA

  • [WIP] Best practices with styled-components/Emotion

    After a decade of styling in various ways and platforms, I've settled on styled-components/Emotion as weapon of choice. However, with great power comes great responsibility. S-C can be used in a variety of ways. I'll present various approaches, their tradeoffs and my recommendations on how to harness the best of this awesome tech!

  • react2019 { css-in-js: overflow }

    While JS and HTML have progressed incredibly in recent years, CSS is the last bastion of old-school web development which we all love to hate. CSS-in-JS is the latest attempt at solving this hard problem. If it succeeds, CSS-in-JS will fast-forward CSS into the modern era. Moreover, it will revolutionize how we compose, maintain, share and optimize styling across the modern web, native apps and collaborate with designers and product people. I will present an overview of the history, evolution, challenges, current solutions and benefits in this exciting landscape!

  • Best practices for front-end teams: delivering fast and high quality modern apps at scale

    Speed of development usually comes at the cost of quality: "make it right" or "quick and dirty". The business or client wants everything done today, but too much compromise leaves us a mess of technical debt and a maintainability nightmare. I'll share my recipe for success in enabling high quality software development at a fast pace, based on experience and lessons learned over years of programming, consulting and leading multiple diverse front-end projects and teams. Video of the talk: https://www.youtube.com/watch?v=VSGpXk-1ZgA

  • [OUTDATED] Intro to mobx-state-tree

    Redux vs MobX is predictability vs simplicity, transactions vs automatic state derivations, immutability vs mutability, explicit vs automagical. Enter mobx-state-tree: an opinionated bridge across these opposing principles which offers the best of both worlds - in a single end-to-end state management solution.

  • react { css-in-js: overflow }

    While JS and HTML have progressed incredibly in recent years, CSS is the last bastion of old-school web development which we all love to hate. CSS-in-JS is the latest attempt at solving this hard problem. If it succeeds, CSS-in-JS will fast-forward CSS into the modern era. Moreover, it will revolutionize how we compose, maintain, share and optimize styling across the modern web, native apps and collaborate with designers and product people. I will present an overview of the history, evolution, challenges, current solutions and benefits in this exciting landscape!

  • * { css-in-js: overflow }

    While JS and HTML have progressed incredibly in recent years, CSS is the last bastion of old-school web development which we all love to hate. CSS-in-JS is the latest attempt at solving this hard problem. If it succeeds, CSS-in-JS will fast-forward CSS into the modern era. Moreover, it will revolutionize how we compose, maintain, share and optimize styling across the modern web, native apps and collaborate with designers and product people. I will present an overview of the history, evolution, challenges, current solutions and benefits in this exciting landscape!

  • Yield to iterable iterator generators

    Iterable, iterator, generator, function*, yield, yield*, spread operator, destructuring, for-of and Symbol.iterable are commonly used by ES2015 built-ins. Learn why and how these related concepts come together to implement ES2015's advanced features - so you too can harness their power!

  • Front-end automation using npm scripts

    Modern front-end consists of many moving parts which must be glued together to help you build awesome apps. This is a practical guide to curing JavaScript task-runners' fatigue by using npm scripts!

  • Managing large scale front-end application development

    Lessons learned and best practices while developing and maintaining our featureful and complex sites over the last two years: philosophy, tools, frameworks and packages; developer experience across environments - including production; JS runtime introspection, debugging, troubleshooting and reconfiguration techniques; CSS/HTML layout and component configuration troubleshooting; specific advice and best practices you can apply to your app today

  • Metaprogramming Superpowers via ES2015 proxies

    All ES2015/16 features can be polyfilled and transpiled to ES5 - except for one: Proxies! Now that these are finally implemented in all evergreen browsers and node 6, we can explore this exciting new feature. Learn all about Proxies and Reflect APIs, their use cases and their unique superpowers!

  • Practical Functional Programming Using Ramda.js

    Learn how easy it is to write functional programming in JS using Ramda.js. Master simple, yet practical FP concepts and apply to your daily work to produce more robust and DRY code. Let’s put the ‘fun’ back in function!