Engineering

Engineering

1034 bookmarks
Custom sorting
CUPID: the back story
CUPID: the back story
“If you had to offer some principles for modern software development, which would you choose?” At a recent Extreme Tuesday Club (XTC) virtual meet-up, we were discussing whether the SOLID principles are outdated. A while ago I gave a tongue-in-cheek talk on the topic, so ahead of the meet-up one of the organizers asked what principles I would replace SOLID with since I disagreed with them. I have been thinking about this for some time and I proposed five of my own, which form the acronym CUPID.
·dannorth.net·
CUPID: the back story
Stop writing CLI validation. Parse it right the first time.
Stop writing CLI validation. Parse it right the first time.
This post introduces Optique, a new library created to address the pervasive problem of repetitive and often messy validation code in CLI tools. The author was motivated by the observation that nearly every CLI tool reinvents the wheel with similar validation patterns for dependent options, mutually exclusive options, and environment-specific requirements. Optique leverages parser combinators and TypeScript's type inference to ensure that CLI arguments are parsed directly into valid configurations, eliminating the need for manual validation. By describing the desired CLI configuration with Optique, TypeScript automatically infers the types and constraints, catching potential bugs at compile time. The author shares their experience of deleting large chunks of validation code and simplifying refactoring tasks. Optique aims to provide a more robust and maintainable approach to CLI argument parsing, potentially saving developers from writing the same validation logic repeatedly.
·hackers.pub·
Stop writing CLI validation. Parse it right the first time.
File-system conventions: Parallel Routes
File-system conventions: Parallel Routes
Simultaneously render one or more pages in the same view that can be navigated independently. A pattern for highly dynamic applications.
·nextjs.org·
File-system conventions: Parallel Routes
When Does Framework Sophistication Becomes a Liability?
When Does Framework Sophistication Becomes a Liability?
How our quest for “best practices” turned a simple API change into a multi-day debugging marathon, and why I’m now convinced that strongly-typed simplicity beats framework complex…
·fastcode.io·
When Does Framework Sophistication Becomes a Liability?
Add a multi-step form/wizard to your Rails app
Add a multi-step form/wizard to your Rails app
Adding a multi-step form, for example user onboarding, is really straight-forward to do with Rails. This article outlines a solution that is easy to follow, easy to adapt and tweak.
·railsdesigner.com·
Add a multi-step form/wizard to your Rails app
CSAF and .well-known - Omar Santos - Medium
CSAF and .well-known - Omar Santos - Medium
The .well-known directory is a convention that is used by web servers to provide information about the server or website to client software. It is a standard way of exposing machine-readable data…
·becomingahacker.org·
CSAF and .well-known - Omar Santos - Medium
Challenge Types
Challenge Types
When you get a certificate from Let’s Encrypt, our servers validate that you control the domain names in that certificate using “challenges,” as defined by the ACME standard. Most of the time, this validation is handled automatically by your ACME client, but if you need to make some more complex configuration decisions, it’s useful to know more about them. If you’re unsure, go with your client’s defaults or with HTTP-01.
·letsencrypt.org·
Challenge Types
✨ Module Bundlers, Demystified: What You Actually Need to Know
✨ Module Bundlers, Demystified: What You Actually Need to Know
Struggling to understand module bundlers? This guide breaks down what they do, why they matter, and how they optimize your frontend apps. Perfect for developers who want faster, more efficient code! 🚀
·frontendjoy.com·
✨ Module Bundlers, Demystified: What You Actually Need to Know
Dopamine addiction to coding
Dopamine addiction to coding
You want to get into coding? You are already coding professionally, but are afraid AI will take your job? The solution is very easy: get…
·medium.com·
Dopamine addiction to coding
How to Think About Security in Next.js
How to Think About Security in Next.js
Learn about what security protections are built-in Next.js and view a guide for auditing applications.
·nextjs.org·
How to Think About Security in Next.js
Rails’ Partial Features You (didn’t) Know
Rails’ Partial Features You (didn’t) Know
Rails partials have many lesser known features. From counters to spacer templates! Learn all there is to know about partials.
·railsdesigner.com·
Rails’ Partial Features You (didn’t) Know
The Joy of Under-Engineering - Ham Vocke
The Joy of Under-Engineering - Ham Vocke
Try building software using basic tools only to declutter your developer toolbox and learn which tools are worth using.
·hamvocke.com·
The Joy of Under-Engineering - Ham Vocke
Handmade Hero
Handmade Hero
An ongoing project to create a complete, professional-quality game accompanied by videos that explain every single line of its source code.
·hero.handmade.network·
Handmade Hero