A chip of the old block
[Frameworks & Libraries]
21 Mar 2020
3 min read time
By Kalle Bertell
Table of Contents
I'm not a big Ruby fan but RoR was (or is) the most productive framework bar none. Since 2004 there was nothing that could match it if you wanted to throw together a full end-to-end CRUD webapp with a bunch of forms validating your data and persisting it into a database.
Then somewhere after 2012 single page apps (SPA) became popular, and the Rails core team down-played it as a fad and proposed turbolinks and so forth as good enough for rich UX.
A few years pass and eventually the Rails core team concedes that these SPAs might not go away, but by then the majority of the developer hive mind had already gone on to the next hot thing and Ruby (and Rails) wasn't shiny anymore.
No one could bridge the Backend - Frontend gap brought forth by the almighty SPA.
No one really ever came up with a Developer eXperience (DX) that matched Rails though. It wasn't possible because of the new strict Backend-Frontend separation that occured when SPAs became popular. The gap was too wide and technologies and standards with enough mindshare didn't exist. It also didn't help that developers kept changing frontend frameworks like underwear (i.e. every once or twice a year).
Enter RedwoodJS. It is very Rails-like on the surface as it has a very similar DX, but under the covers what makes it tick is more revolutionary than evolutionary compared to Rails.
Redwood slaps together the current best libraries
Redwood slaps together the current best libraries in a "omakase" framework (they chose all the libraries for you), closes the database-backend-frontend gap using GraphQl, Prismic2, React, generators and standard conventions; then tops it off with the sort of delightful documentation which is very friendly to newcomers. All updated to the futuristic year of 2020 where the boundaries of frontend and backend finally start to fade away again.
Sort of. It all works. Many devs are still going to want Typescript support and Prisma2 is not super mature yet, but the core is there. It may take a year or two before it has big ecosystem which brings stuff like a wide array of cloud or auth providers and whatnot, but this is the first time I've seen an actual contender against Rails which can do the same stuff end-to-end, but basically better.
This is super exciting.
I don't want to be over-optimistic, but this is super exciting. I'm 95% sure this will be the stack which will be used in bootcamps to teach new devs how to build todo apps or blog engines going forward; and that will power the MVPs of the next generation of successful startups.
Welcome to the world RedwoodJS, we've been waiting for you quite a while.
By Kalle Bertell
[More from our Blog]
The #1 resource on how to integrate with Klarna's payment API to deliver a kick-ass in-store checkout app.
Svelte3 is one of the newest contenders for relevant frontend frameworks. It unique value prop is compiling the frameworks itself away during build time.
Kalle stresses the fact that productive React developers are great listeners that understand your business and empathize with your clients, and use tools they're well acquainted with, and work in small kick-ass teams.