post.thumbnail.alt

Knowledge Production in the Tech Sphere

27th February 2021

Filed Under:

  • Blog

Photo by Henk Mul on Unsplash

Those platform engineers’ opinions are not helping you.

I address this post to Agency developers, like me. I have been a Frontend developer working at one agency or another for 13 years. Some of the places I have worked have been small and cheap, some big and expensive (Although I hear small & expensive is the sweetest spot). In 13 years I have not once had a spare afternoon set aside to do developer advocacy, or paid time to contribute to open source projects that I admire.
When you’re paid by the day, you are being paid to get the job done, and the deadline stands alone.


I keep up with the developer news, I’m on Twitter, I read the blogs, but all of our news is socially produced, via the citizen journalism model. That model serves the platforms. Twitter, Facebook, Medium and Google. The majority of that material is produced by people who work at platforms, so they produce knowledge about working on platforms that helps other platform developers, and so it should be. Sharing is caring.


But here we are again back at the chicken-egg of internet media. Whoever pays the piper calls the tune. Don’t get me wrong, I love React & Vue. The frameworks are incredibly useful tools for building applications, if you’re building a customer interaction, those are 100% the right tool for the job, but that is only the narrowest part of the funnel.

We need to remember architectural decisions are business decisions

Most of the websites I have built require a completely different model to a platform. With platforms the website is the product. Eight times out of ten I’ve built websites that are representing a product that exists in the real world. The affordances are different when a user comes and spends time on the platform. On a platform you can afford to lazy load a large javascript payload.

The Architecture that is right for a platform is almost never right for your client


You compete in terms of Search Performance, Load times, and how well data about your product is made available to the wider network (schema.org metadata via JSON-LD)
Server rendering content is always the best choice for your marketing website.
Should you even be setting up a webpack pipeline, if all that will do is encourage those that come after you to bloat the payload?

If you’re client-side rendering content, you are failing to do your job.

The most important thing you can deliver is search performance, and you should be targeting that, with each and every technology choice you make. Really the best thing you can do is work with a good backend developer, if you must, render javascript on the server.

Ask yourself are you building a product, or building something to promote a product

I was heartened to see that the React team introduced server components at the end of last year and this is a welcome change of direction, towards a better approach to content rendering, (one that has already been championed by Next.js and Preact.
Is JSX so good that it requires your backend and DevOps team to transform your infrastructure? Why try to solve a problem with technology that you could solve with reading? A couple of days with your head down and you could be up to speed on Twig, Liquid, Razor or whatever templating language that already exists in your stack. Ultimately I believe that as a frontend developer it is your responsibility to be flexible enough to deliver a performant user experience with the tools that you have.

Comments

Add your comment