The series is a wrap, my friends! Thanks for reading and a big special thanks to all the authors this year who shared something they have learned. Many authors really swung wide with thoughts about how we can be better and do better, which, of course, I really love.
- Adam showed us logical properties and, through their use, we’re building layouts that speak the language of the web and are far more easily adaptable to other written languages.
- Jennifer told us that even basic web skills can make a huge difference for organizations, especially outside the tech bubble.
- Jake used TypeScript as a literal metaphor that may be good, or not, to apply to ourselves.
- Miriam defended the genre of CSS art. Not only is it (more than) OK to be a thing, it can open up how we think and have practical benefits.
- Natalya released our tension, telling we can and should waste our time, since this year is all wrong for creativity and productivity anyway.
- Geoff had an incredibly salient point about CSS. Since everything is relative, think about what it’s relative to.
- Mel showed us that there are a variety of interesting sources of open-source-licensed imagery.
- Kitty gave us permission to stop chasing the hype.
- Matthias paid homage to the personal website.
- Ire said that the way websites are built didn’t change all that much this year, and ya know what, it didn’t have to.
- Eric opened the door to other accessibility professionals to have their say. There are some bright spots, some of which came ironically from the pandemic, but the fight is far from over.
- Kilian blamed our collective feeling of being behind on the idea that we think the newfangled is much more widely used than it is. The old is dependable, predictable, and crucially, the vast majority of what we’re all doing anyway.
- Shawn demonstrated that each of us has our own perspective on what is old and new based on when we started. We can’t move our “Year Zero” but we can try to see the world a bit more like a beginner.
- Manuel told us that keeping up isn’t a game we need to play, but it is worth learning things about the languages that we already “know” as there are bound to be some things in there that will surprise you.
- Andy said that every solution to a problem he faces is solved by simplification.
- Erik thinks one of the keys to great design is great fonts.
- Eric went on a journey of web standards, browsers, and security and not only learned a lot but got some important work done along the way.
- Cassidy is seeing old ideas come back to life in new contexts, which makes a lot of sense considering we’re seeing the return of static file hosting as a fresh and smart way to build websites.
- Eric shared a trick that your neighborhood image compression algorithm can’t really help with: indexing colors. If your PNG can look good with a scoped color palette, you’ll have tremendous file size saving there even before it is optimized.
- Kyle is changing his bet from everything changing to things being more likely to stay the same.
- Brian learned to be OK with not knowing everything. Focus on one thing can mean understanding less about others, but that’s the nature of life and time.
- Lea has the numbers on web technology usage on a very wide slice of the internet. Her findings echo what many others in this series are saying: there is a lot more old tech out there than new.
- Jeremy compared video games and the constraints they face (and thrive from) to the constraints we face on the web (which are many).
If I had to pick the biggest major thread that people latched on to (with absolutely zero prompting), I’d say it’s the idea that the web is full of old technology and that’s not only OK but good. There is no pressing need to learn new things, which haven’t always settled out, and can bring more complexity than is necessary.
I’ll do one myself here.
I’m going with the concept of the edge. I definitely didn’t understand what that word meant before this. I’m not entirely sure I have it right, but my understanding is it means global CDNs, but with more capability. We’ve long known CDNs are good, and that we should serve all our static asset (like images) from them. An image served from a physical server 50 miles away arrives at your browser a lot faster than a server 2,000 miles away, because physics.
Well serving images from CDNs is great, but we’re starting to serve more from them. A Jamstack site might serve literally everything from a global CDN, which is an obvious performance win.
And yet, we still need and use servers for some things. A website may need to have a logged-in user, which then pulls a list of things from database which that user owns. A classic single-origin server can do that. Like I literally buy a server from some company to do this work, and while that’s all virtualized, it’s still a physical computer in one physical location (like how AWS has regions like
But there is a (relatively) new alternative to buying a server: serverless. You don’t have to buy a server; you can run your code serverlessly (a “cloud function” like AWS Lambda). I think this is awesome (cheap, fast, secure, easy) but, believe it or not, these cloud functions still have a single physical location they run from. I think that’s weird, but I imagine that’s what helps keep it cheap in these early days. That’s changing a bit, and cloud functions are starting to be available (wait for it) at the edge.
As I write, [email protected] is about 3× the cost of Lambdas in one particular region.
I definitely want my cloud functions to be run on the edge. If I do, it’s better for literally everyone in terms of performance. Right now, I just have to decide if I can afford it. But as time has proven, costs in this market trend downward even as capability increases. I think we’re trending toward a world where all cloud functions are always running at the edge at all times.
Extend that thinking a little further, it’s all-edge-all-the-time. All my static assets are at the edge. All my computing is at the edge. All my data storage is at the edge. The web will always need physical infrastructure, but as the world is more and more covered in that infrastructure, I’m hoping that the default way to develop for the web becomes edge-first.
Oh, and if there is a team that is going to go build out infrastructure in Antarctica, can I come? I really wanna go there.
Such scenario seems fine, with one caveat: the security of everything.
Having all eggs in same basket could be quite risky nowadays. All things on the edge (as in your understanding) means to abandon ourselves into the hands of just several big cloud providers which run those great lambdas :( Ah, don’t tell me that another Solarxyz thing couldn’t happen again and break not only one website but all from that idilic paradise of edge and co.
Thanks, but no, thank you.
I prefer to keep it simple as in the old days (fix myself what breaks to my product or hire a near expert hand). I think all great answers from your What have you learned series could be summarized into one word / acronym: Kiss.
Why? Here’s my answer, too, which could also be a life teaching (should you asked me the same question) :
Don’t change a problem with another problem.
Don’t do it. Ever.
You Aren’t Gonna Need It.
We, as programmers and (nicely called) developers have a mission to develop or fix things and improve them. Not to multiply the bugs’ probability of appearing.
Not just to speed the delivery of our stuff. If we just stay RELEVANT, don’t worry, people will stick to our content no matter where it is hosted.
By the way, the content is king, not the speed. Speed is only a feature of it.
My point is that maybe, just maybe, it’s more easy to break one big cloud provider (crashing thus about 10% of the edgy internet) than a total 10% of the other free, distributed internet at the same moment in time.
Not to say that if the free internet crashes, site after site, probably those sites won’t be too connected as the edgy ones. It’s like when you hammer a physical server, making damage to the entire ecosystem. Take a look at what just happened to Google these days. Just because a simple routine denied access to further authentication transactions or so. Many interconnected services almost “died”. This (general failure of big companies) exactly is the reason why some evaded to non-proprietary or open source (Ms versus *nix, anyone?)… People like to have alternatives. Good ones. Keep the “separation of concerns” but keep it under your control. We cannot outsource just everything. Not at this scale.
Because I’m an advertiser and a content creator and a web developer the immediate thing about running “serverless everything” at the edge is how much more performant display advertising can be.
Imagine the running the ad auction and serving the assets super close to the user? How much would that speed up the ad supported web?
Have you met Cloudflare Workers already? I still have no experience at it, but seems mind blowing at a small cost (need to evaluate use cases and usage strategies). I can’t wait to do something using Workers and I’m eagerly waiting to use their new child Cloudflare Pages.