WPBlockTalk April 2020

A first WPBlockTalk live event happened two weeks ago, and it was a blast! You could see speakers from all across the WordPress community, from theme designers to plugin developers to the people who’ve been key to designing and developing the block editor itself. I played my role in it, and you can already watch two talks where I appeared.

Continue reading WPBlockTalk April 2020

Adding Formatting Buttons to the Block Toolbar in Gutenberg

In April last year, I had a lot of fun doing a live coding session for the WordPress Block Editor. The demo was hosted by Birgit Pauli-Haack as part of the Gutenberg Times, Live Q & A series. I paired with Zac Gordon, an educator at JavaScript for WordPress with a ton of Javascript online courses for WordPress developers. This is what we covered:

We explored how to customize format controls like bold or italics and extend the block toolbar with your control allowing to change the color of the selected text.

Continue reading Adding Formatting Buttons to the Block Toolbar in Gutenberg

JavaScript for WordPress Conference 2019

In my presentation from the 2019 JavaScript for WordPress Conference, I talked about how you can grow your JavaScript and related skills through building with WordPress. You can watch the recorded video on YouTube.

There is also a written version of the same talk published on my blog a few months back. If you prefer reading, check out Growing JavaScript Skills with WordPress post.

Continue reading JavaScript for WordPress Conference 2019

Growing JavaScript Skills with WordPress

This is a written version of the talk I gave at the JavaScript for WordPress conference on July 12th.

WordPress has always been recognized as a very welcoming platform for developers at any level of expertise. The block editor introduced in WordPress 5.0 release is not only an entirely new editing experience for users, but it also redefines the way plugins and themes are developed.

In this post, I want to explain many of the architectural decisions that have sought to make the transition as smooth as possible for those familiar with WordPress development. I will discuss all the tooling that the Gutenberg project uses behind the scenes to benefit from the massive growth of the JavaScript ecosystem. Finally, I’d like to demonstrate how you can leverage the same software in your projects using the @wordpress/scripts npm package to improve your skills.

Continue reading Growing JavaScript Skills with WordPress

Starter kit and reusable scripts

The JavaScript ecosystem has reached a very interesting point in its history. There are members of the community overwhelmed by the learning curve required to start a new project and based on that they express JavaScript fatigue. There are also contradicting opinions announcing renaissance of JavaScript because it became truly general purpose language and dominated front-end development. So the question is, how to take advantage of all existing tools but at the same time change the first impression in a way that makes the following joke irrelevant:

Continue reading Starter kit and reusable scripts

Migrating to Jest test runner

I have already shared my comparison of two JavaScript testing solutions where I admitted that I favor Jest over Mocha. Back then, I listed all major differences between those tools summarized with advantages and disadvantages of migrating to Jest:

Pros:

  • Simpler API, less boilerplate code.
  • Flexible and easy configuration.
  • Test files executed in isolation.
  • Advanced watch mode.
  • Snapshots support = easier start with testing.
  • Code coverage.

Cons:

  • Another migration.
  • Mocha has still a bit better performance (according to my quick tests).

My analysis got very positive feedback, with only a few little concerns, so I got encouraged to take action and verify the assumptions stated. I picked two different projects to play with to ensure both of them will uniformly benefit from using Jest.

Continue reading Migrating to Jest test runner

Calypso – new WordPress.com

I’ve been working at Automattic only for 8 months now, but I must admit that so far this is the most exciting period of my 10 years long professional career. I’m lucky to work with amazing people on new WordPress.com admin interface called Calypso. This is an universal (aka isomorphic) JavaScript single page app written in ES6 using webpack, express, ReactFlux, WordPress Rest API and many other front-end libraries.

Continue reading Calypso – new WordPress.com