Kalv

Hello Remix

I've been making things for the web since mid 90s. Static HTML, server side rendering (cgi-bin, dyanmic languages), mobile, and front end rendering. For the most time, my default stack has been Ruby & Rails. Love all that it has brought to everyone and my career.

With my current product, I've been reviewing new stacks that are faster, more fun to use, attractive to developers & designers, and have growing communities. So thought I'd share a bit about it.

I've found in the last couple of years, I've been working with React developers and Frontend development teams. Through that I've seen the power that comes from a thriving front end community that have many React based examples, workflows and expertize. It's a given today, that a UX developer will know React, most if not all design systems are designed to work with React. Examples from Figma or other animation styled components tend to be in React.

One important aspect for our new company is to attract and retain the best talent. I'm aware that there is startup risk with a bold vision, so want to make sure developers working with us can have fun and walk away with experience that will be invaluable to them in the industry. On Hacker News, the who is hiring posts show a clear signal for the uptake of React (hnhiring.com).

Rails is taking a great approach in getting back to basics with web development. There is also a lot of investment in Web Components; even I have advocated for web components in specific strategies that require a clear need for interoperable use of them. Front end developers out there are not adopting these techniques though. I start to feel that perhaps it's the old timers that want to bring back simplicity, but in reality it doesn't matter. Using a bundler is fine, similar to how programming languages introduced a VM (Java vs C). There are problems and issues with NPM and other aspects of the Javascript ecosystem, but all development language have their issues.

It was clear that we needed it to be a React app. I selected two growing frameworks to compare, Remix and Redwood. I didn't add Next JS to my list; don't really have a great reason, so I could be missing out on that ecosystem but felt that Remix and Redwood would have the latest innovative approaches for modern web development.

Redwood

I started with Redwood. There were a number of reasons that I liked it.

After starting to build a prototype, I quickly learnt that Redwood won't be the stack for us. For a couple of reasons.

My conclusion of Redwood is in no way a judgement of how well they are executing on their approach, it's amazing. But more of a preference of architecture for the first version of our application we want to build. I don't want to build it with a GraphQL API, introducing overhead that isn't required at the stage we're at.

Remix

I had been following Remix when they were a paid for early preview. Mainly due to the amazing Michael Jackson and Ryan Florence working on it.

The key areas that jump out for Remix.

I went ahead and started building a prototype with the Blues stack, and quickly realized that this is the stack that I'll be building with.

There are some areas I have yet to work through such as background work but am confident that the architecture will form itself, following the philosophy set with Remix.

If I get time, I will share again how it goes building out Path.dev.


Have thoughts on what I've shared? Please tweet me @kalv publicly or privately, would love to chat.