Today we learn Gutenberg!
And no build process? Sure, you’ll probably want to minimize and maybe concatenate your JS files, but the recipes presented here are written in (mostly) ES5 with no JSX, so there’s no transpiling. As others have pointed out, it’s faster to create and update blocks this way, particularly if you are someone who is not in the business of doing a lot of JavaScript. I also think that the older syntax, and the creation of elements without JSX, gives beginners a better idea of what is actually going on.
After my initial learning curve, I’ve come to appreciate that Gutenberg is accessible to all levels of programmers. Even though Gutenberg is undeniably based on React, you don’t need to have experience with React to create your own blocks. But you do need good examples, and with the current absence of any books on Gutenberg, the best place to look for examples is the core block library in the Gutenberg repository. This site is also meant to provide examples, not tutorials. Much of the explanations are included as comments in the code.
I was initially skeptical about Gutenberg being added to the core, and I still do think that the release of WordPress 5.0 should have been delayed. Gutenberg today, at 6 months on, is what the initial release should have looked like. Pushing Gutenberg out in December 2019 led to a lot of unnecessary frustration, and the whole transition has not been kind to developers. But as a designer and a developer, I will give Gutenberg this — it’s nice to have the convenience of designing and working with components (blocks) while knowing that the burden of the client-side JavaScript falls only on the site’s content author and not its visitors.