Picking Jest over Mocha – testing tools comparison

At Automattic we use Mocha to run all tests written for Calypso project which powers WordPress.com. It also includes end-to-end tests, which live in their own repository. We have been using this setup for over 3 years now. I think it is a good moment to revisit this choice. I found this unit testing tools comparison very helpful when evaluating alternatives. I strongly agree with the conclusions shared by Martin Olsson in his article:

Staying with Javascript, I think it’s hard to ignore the momentum behind Jest. I would be awesome if someone fixed #2059 though. Then again, Mocha seems to work well enough for a lot of people.

Continue reading Picking Jest over Mocha – testing tools comparison

Time to get interactive as a performance measure

I have already published one post about Progressive Web Apps (PWA) a few months back. It looks like Google is investing a lot of efforts to make it a new standard of building websites. At the last Google I/O, there were a few announcements made related to making PWA a default feature in a few popular boilerplates and CLIs for libraries like React, Preact, Polymer or Vue. I recommend watching the following presentation by Addy Osmani:

Continue reading Time to get interactive as a performance measure

React as a cross-platform UI

I got very excited when watching this talk for React Europe by Leland Richardson:

Continue reading React as a cross-platform UI

Functional Light JavaScript workshop

Functionite company did an impressive job bringing JavaScript expert Kyle Simpson to their hometown Warsaw, Poland in September last year. He lead You Don’t Know JS Workshops, 5 days of JavaScript classes focused on learning new skills and the best practices. I joined on the last day to attend an excellent workshop titled Functional-Light JavaScript. In this post I wanted to share slides and my coding exercises from this course. If you are curious what topics related to functional programming were covered I strongly recommend checking notes from a similar workshop shared by Beth Allchurch.

Continue reading Functional Light JavaScript workshop

A journey to functional JavaScript: Part 1 – fundamentals

JavaScript has a quite fascinating history. Brendan Eich created on his own the first language prototype in just ten days. Its implementation was highly influenced by the concepts of first-class functions from Scheme and prototypes from Self. Initially it was developed under the name Mocha, but released as LiveScript. The latter name didn’t last long either. Java was so hot back in 1995, that Netscape decided to take marketing move and rename their new language to JavaScript. This decision has greatly influenced the way JavaScript has been perceived for many years. Outward similarities to Java promoted imperative, object-oriented style among developers using it. Ideas borrowed from Scheme have always enabled using functional programming styles as well. However it was never the case until it started to get momentum a few month ago.

Continue reading A journey to functional JavaScript: Part 1 – fundamentals

ReactJS Wrocław meetup #7

In September of this year, I experienced my first exposure to the art of public speaking. I gave a talk at ReactJS Wrocław #7 meetup. I already published my presentation on my blog and you can find it here. I’m glad that I decided to share my lessons learned while working on the Calypso project. I’m satisfied with the topic I picked, but I’m afraid I could do a way better job explaining code examples I presented. It looks like I’m going to have plenty of opportunities to work on projects based on React in the upcoming year. I’m looking forward to it and I hope to find another excuse to speak to the audience again.

Continue reading ReactJS Wrocław meetup #7

Exploring functional JavaScript

I started exploring functional programming (FP) concepts over a year ago. I have already shared my initial learning materials in one of the previous posts. It was only the beginning of my journey and today I would like to give you a much more detailed update on that topic. I picked the most interesting resources I discovered in the recent months. They helped me understand how functional programming can improve the developer’s experience when you work with JavaScript.

Continue reading Exploring functional JavaScript