Two months after the previous edition, I gathered enough interesting resources to share them. In this edition, you will find content about HTTP, WebDev, Versioning, Tech, and ProblemSolving.
As always, I recommend subscribing to the newsletter to not miss the next issue 👇
Also, as previously, because it makes everything on the internet better, here is another photo of my cats:
Weird and counter-intuitive things in HTTP protocol HTTP
Cache-Control: private, no-cache header do, what header name is misspelled, do websockets honor CORS and are
X-* headers custom ones?
Font size is useless WebDev
There are well-known rules for web development on setting font size to be displayed in the same way on different devices. But the sad truth is: it’s impossible because of how the size is declared in fonts themself.
HTTP SEARCH method on the horizon HTTP
To GET, POST, PUT, PATCH, DELETE, and their few lesser-known siblings, a new one can join. It aims to solve the caching and semantics for API definition, where you GET things but need to POST what exactly you want. Think Elasticsearch and GraphQL.
How Stripe handles API versioning (2017) Versioning
An interesting solution for how not to be stuck with old API decisions but incrementally update it in small steps. Backward-incompatible API updates are done so that developers can easily handle on both sides, server and client.
Project Cambria for transforming schema between versions Versioning
If the Stripe solution above got you interested, this is a tool to take it even further. Still under development, but looks promising.
Responsively – tool to preview websites on multiple resolutions at once WebDev
You can already use developer tools in your browser to see how the website looks on different devices. But with Responsively, you can preview how it looks and behaves on many devices at once.
Choose Boring Technology Tech
An explanation on why NOT choosing the fancy, cutting-edge technology can help you deliver the product. And as much a fan of the new technologies I am, I think it should be at least taken into account every time you start a new project.
Semantic Versioning Will Not Save You Versioning
SemVer is great, but if you think you are safe because all the libraries you use are semantically versioned, you can have a bad time. I also wrote about it from a little bit different perspective.
RegEx Crossword puzzle ProblemSolving
I’ve spent 2.5 hours solving this, and it was time well spent. It’s like sudoku, but better.
The Cursed Computer Iceberg Meme Tech
If you did not lose enough hours solving RegEx Crossword above, here you can waste a few more. A collection of weird, funny, and surprising facts about how things work in IT. How many did you already know?
People tend to add, not remove, when make changes ProblemSolving
A series of psychological experiments show that when given a problem, we try to solve it by adding more parts instead of removing existing ones. Even if the latter is simpler. We, developers, should be aware of this when approaching problems.