Always wear sunscreen - travel hardened lessons for software engineers

The Learning team are having vacations over the next couple of weeks, so with that excitement in mind, combined with Google announcing Gemini Advanced’s new trip planning capabilities, we thought this week’s Learning Links should show us travel lessons that can give us parallel learnings in software.

Always wear sunscreen - travel hardened lessons for software engineers

Plan your journey

Travelling from A to Z takes forward planning, but you can’t always manage delays. Meta have hit a few delays recently as they went to use their users' public facing information in Facebook and Instagram to train their AI models. And whilst they have charted their course, it shows the importance if us knowing how to navigate privacy settings and where our data is going.

Maybe Apple’s Private Cloud will be the reliable tour guide we need, as their attempts for a more robust and secure implementation of AI aim for a smoother journey across our tech landscapes.

Who doesn’t like a free upgrade to first class, with all the perks, comfort and none of the queues? @typecraft_dev gives a quick demo of fzf so you can take your system skills from economy to first class with a few commands and shortcuts, fuzzily finding, previewing and editing your content in no time at all.

Don’t forget your sunscreen

Speaking from experience, you need a high quality sunscreen that protects against all the UV types to stop cancerous growths, and should be a compulsory activity for everyone. Twilio’s Authy App Breach is an example of being in the sun unprotected, after an unauthenticated endpoint was exploited to allegedly compromise 33 million customer phone numbers.

You’ve got to reapply that sunscreen regularly- it isn’t a one-application-wonder. Similarly, we’ve got to be aware of the latest vulnerabilities and keep our systems patched. regreSSHion is one such vulnerability that allows code to be executed remotely without authentication on OpenSSH servers- worse, this was previously patched but inadvertently reintroduced in a more recent version. Check it out, and respond accordingly.

And don’t settle for a low protection- consciously choose Factor 50 UVA UVB 5* every time! In the same way, make the conscious decision to maximise protection for yourself and your software every time. Cloudflare denounced polyfill.io recently due to malicious script injection potential and offered instead offered a mirrored service that they believed to mitigate the risk. Better safe than sorry.

Something for a rainy day

The only thing that grows faster than computer performance is human expectation

Bjarne Stroustrup

Whilst we want, even expect, our holidays to have the best weather, what are you going to do on those rainy days if they come?

Maybe a jigsaw! If someone gave you a puzzle with 6 very large pieces, you’d complain that it was childish and not really fit for your purpose. You’d want a puzzle with a thousand small, regular, predictable pieces to put together and build a much better picture… The same should happen with our code! Octomind reviewed their use of LangChain and the barriers it eventually put up, but one of the takeaways was this:

A building blocks approach prefers simple low-level code with carefully selected external packages, keeping your architecture lean so developers can devote their attention to the problem they’re trying to solve.

Or maybe you want to make a model from LEGO®. In a great, 3 part blog (with some great cover art), Matthew Wilson looks at how a serverless system was built from scratch, with every building block carefully considered before being put into place.

Or why not paint some lovely canvases? Andrew Warpole gives his advice on working with CSS, and with many key lessons in being better with front end designs (such as “to be flexible, be inflexible”), one of our engineers particularly highlighted the last point- “Don’t paste CSS”. We’ll never appreciate the intricacies of a CSS landscape if we don’t try to layer each texture ourselves.

Quick links

See you later?

Until next time,

Article By
blog author

Andrew Paul

Software Engineering Trainer