Simone Magnaschi
Senior Full Stack Web Dev

Pacchetto di CSS: 2023!

Complimenti. Il 2023 è stato un anno fantastico per CSS. Da #Interop2023 a molti nuovi punti di accesso nello spazio CSS e UI che consentono agli sviluppatori di funzionalità una volta che pensavano impossibili sulla piattaforma web.
Tags: #css #webdev
Saved on: 2023-12-08

Goodbye, Clean Code

It was a late evening. My colleague has just checked in the code that they’ve been writing all week. We were working on a graphics editor canvas, and they implemented the ability to resize shapes like rectangles and ovals by dragging small handles at their edges.
Saved on: 2023-12-08

file to life

Welcome to File Life–a tour company and travel blog about letting go of files, giving them a new life in the mountains and the oceans. Follow along as a traveling fileman wanders. Oct 12, 15:16 – Such a contrast to the sandstone towers from a few days ago.
Saved on: 2023-12-06

abracadabra: How does Shazam work?

Your phone's ability to identify any song it listens to is pure technological magic. In this article, I'll show you how one of the most popular apps, Shazam, does it.
Saved on: 2023-12-06

HTML, The Programming Language A Programming Language

HTML, the programming language, is a practical, turing-complete[1], stack-based programming language based on HTML, the markup language. It uses elements defined in HTML, the markup language, in order to do computations. HTML programs are specified in HTML, the markup language.
Saved on: 2023-12-05


Saved on: 2023-12-05

Mounting git commits as folders with NFS

Hello! The other day, I started wondering – has anyone ever made a FUSE filesystem for a git repository where all every commit is a folder? It turns out the answer is yes! There’s giblefs, GitMounter, and git9 for Plan 9.
Saved on: 2023-12-05

Let’s learn how modern JavaScript frameworks work by building one

In my day job, I work on a JavaScript framework (LWC). And although I’ve been working on it for almost three years, I still feel like a dilettante. When I read about what’s going on in the larger framework world, I often feel overwhelmed by all the things I don’t know.
Saved on: 2023-12-04

10 Dark Patterns in UX Design and How to Avoid Them

A dark pattern is a term created by designer Harry Brignull. These patterns urge or persuade the user to perform actions or accept conditions they did not intend to. Companies use them to trick users into doing things that can bring them profits.
Saved on: 2023-12-02

Stop building databases

There comes a time in every frontend engineer’s life where we realize we need to cache data from an API. It might start off benign – storing a previous page of data for that instant back button experience, implementing a bit of undo logic, or merging some state from different API requests.
Saved on: 2023-12-02

How to pick more beautiful colors for your data visualizations

Choosing good colors for your charts is hard. This article tries to make it easier. Choosing good colors for your charts is hard. This article tries to make it easier.
Saved on: 2023-12-01

Generative AI for Beginners

Saved on: 2023-11-25

CSS Animations with No-Code

Animotion lets you create CSS animations visually, by dragging, resizing, rotating, clipping, and more, including a keyframes editor, a collection of ready-to-use animations and 29 built-in easings.
Saved on: 2023-11-25

A Complete Guide to CSS Grid

CSS Grid Layout (aka “Grid” or “CSS Grid”), is a two-dimensional grid-based layout system that, compared to any web layout system of the past, completely changes the way we design user interfaces. CSS has always been used to layout our web pages, but it’s never done a very good job of it.
Saved on: 2023-11-24

Hixie's Natural Log: Reflecting on 18 years at Google

I joined Google in October 2005, and handed in my resignation 18 years later. Last week was my last week at Google.
Saved on: 2023-11-23

Email obfuscation: What still works in 2023?

These techniques protect a clickable link that will open the user’s mail client (e.g. email).
Saved on: 2023-11-23

Retries – An interactive study of common retry methods – Encore Blog

Requests over the network can fail. This is something we cannot avoid, and to write robust software we need to handle these failures or else they may be presented to users as errors. One of the most common techniques for handling a failed request is to retry it.
Saved on: 2023-11-23

An Interactive Guide to CSS Grid

CSS Grid is one of the most amazing parts of the CSS language. It gives us a ton of new tools we can use to create sophisticated and fluid layouts. It's also surprisingly complex. It took me quite a while to truly become comfortable with CSS Grid!
Tags: #css #css-grid
Saved on: 2023-11-21

Maschietti – Loris Mag

Maschietti entrano in casa, maschietti entrano in casa. Maschietti, e con essi entrano in casa idee da maschietti (idee grevi, riduttive, inflessibili).
Saved on: 2023-11-21

Why I Tend Not To Use Content Negotiation

I have written a lot about Hypermedia APIs vs. Data (JSON) APIs, including the differences between the two, what REST “really” means and why HATEOAS isn’t so bad as long as your API is interacting with a Hypermedia Client.
Saved on: 2023-11-20

Alan Kay: Doing with Images Makes Symbols Pt 1

Share to Twitter Share to Facebook Share to Reddit Share to Tumblr Share to Pinterest Share to Popcorn Maker Share via email Want more? Advanced embedding details, examples, and help!
Saved on: 2023-11-16

Push Ifs Up And Fors Down

As in the example above, this often comes up with preconditions: a function might check precondition inside and “do nothing” if it doesn’t hold, or it could push the task of precondition checking to its caller, and enforce via types (or an assert) that the precondition holds.
Saved on: 2023-11-16

HTML Web Components

“Web components” sounded like the web platform’s equivalent to “React components”. JSX had <MyComponent> and now the web had <my-component>.
Saved on: 2023-11-14

HTML First

HTML First is a set of principles that aims to make building web software easier, faster, more inclusive, and more maintainable by... The main goal of HTML First is to substantially widen the pool of people who can work on web software codebases.
Saved on: 2023-11-13

How I got here

This post will be relatively long, and not of the technical content that I hope to write about in the future, simply because the tl;dr just doesn’t cut it here. You don’t just throw out words like “dev-log from my prison cell” and not follow through with a story…
Saved on: 2023-11-12

Horrible edge cases to consider when dealing with music

I'm a huge fan of navidrome, and thus spent some time reading its source code, and discussing with Deluan about its data model, making this list of weird edge-cases as we went. Take a look at Musicbrainz' database schema to have a glimpse on how to tame this madness.
Saved on: 2023-11-12

Cheat sheets

Download PDF
Saved on: 2023-11-11

How to boss without being bossy : Hacker News

Ensure people know what and why something is important, ideally by arriving at that conclusion jointly and as part of an overarching plan that everyone can feel involved in - thus requests shouldn't be a surprise, they aren't coming from you so much as from the plan (nebulous though it may be).
Saved on: 2023-11-11


Since the earliest days of the teletype machine, code has been set in monospaced type — letters, on a grid. Monaspace is a new type system that advances the state of the art for the display of code on screen.
Saved on: 2023-11-10

Sad clown paradox

I think, by the fact that you find you can get laughs when you are in school-and this is where most of the guys start, when they are growing up in the neighbourhood-they're jerking around, doing silly things, interrupting the class.
Saved on: 2023-11-09

Practical Techniques to Reduce the Harm of Active Record : ShawnMc.Cool

Data model objects such as Active Record models have many negative impacts to software. This article presents a few effective mitigation strategies to reduce the negative business impact of this approach.
Saved on: 2023-11-07

In the bad old days we had Punchcards. How did people deal with that?

In the fall of 1976 I started as a Freshman at SUNY Stony Brook intending to major in Math and Computer Science. I took Honors Calculus I and CS 1.
Saved on: 2023-11-07

HTML DOM — Phuoc Nguyen

Web development moves at lightning speed. I still remember when I first started using libraries like jQuery, Prototype,, Zepto, and many more. Even with modern tools like Angular, VueJS, React, Solid and Svelte, we still have to deal with the Document Object Model (DOM).
Tags: #webdev
Saved on: 2023-11-06

The Ultimate Goutte Cheat Sheet for PHP

Goutte is a battle-tested PHP web scraping library. This comprehensive reference aims to thoroughly cover its capabilities.
Saved on: 2023-11-01

π in Other Universes

Everyone loves $\pi$. It’s usually the first irrational number someone encounters. $\pi$ is conceptually simple enough that it can be explained with basic geometry.
Saved on: 2023-10-30

Making Music with Google Sheets and Web MIDI API

Do you know that the modern web browser can access real musical instruments? With the help of Web MIDI API, we can create a web application that can access MIDI devices connected to our computer.
Saved on: 2023-10-29

Staring at a Wall: Embracing Deliberate Boredom

You should spend more time being bored. I spent twenty minutes staring at a wall. Was it worth my time? Yes. Did I look a little bit crazy doing it? Maybe a little.
Saved on: 2023-10-28

The Negative Impact of Mobile-First Web Design on Desktop

Summary: Mobile-first web designs cause significant usability issues when viewed on desktop. Content becomes overly dispersed across long scrolling pages with expansive white space and enlarged images and fonts, making it difficult for users to consume and understand the information.
Saved on: 2023-10-27

(11) A Philosophy of Software Design | John Ousterhout | Talks at Google -

John Ousterhout, Professor of Computer Science at Stanford University, discusses complex techniques on how to become a more confident coder. John is excited to announce that he just published the first edition of a new book on software design, based on material from a software design class he has b
Saved on: 2023-10-25

The Grug Brained Developer

Introduction this collection of thoughts on software development gathered by grug brain developer grug brain developer not so smart, but grug brain developer program many long year and learn some things although mostly still confused grug brain developer try collect learns into small, easily digesti
Tags: #programming
Saved on: 2023-10-25

Calculus Made Easy

Table of Contents Buy paper version On* Second hand from* What next? * Affiliate link About this edition & thanks This text is based on the PDF version from Project Gutenberg converted to html by hand. Thanks to Paula Appling, Don Bindner, Chris Curnow, Andrew D.
Tags: #mathematics
Saved on: 2023-10-25

Before Computers Were Logic Diagrams and Machines

I often think about ancient civilizations. I’m sure you do too. I cogitate and ruminate on all the people who lived, loved, and died, and I’m saddened by the fact that we no longer remember their names.
Saved on: 2023-10-25

There are two sides to an interview

I talk to a lot of software engineers who are gearing up for a job hunt. Sometimes they left willingly, sometimes unwillingly, and sometimes they just anticipate leaving soon.
Saved on: 2023-10-25

(9) Using CSS custom properties like this is a waste - YouTube

If you're interested in checking out ICodeThis, you can find it here: and if you want to sign up for one of their premium plans, use KEVIN at checkout for an extra 10% off. Custom properties are amazing, but a lot of people don’t take advantage of how awesome they
Tags: #css
Saved on: 2023-10-23

Origins of the 3.5in Floppy Disk - YouTube

I got sucked into researching the origins of the 3.5in floppy disk after looking into one of my recent HP drives. That sent me on a long quest to better understand the format and finding out some very interesting things I didn't even know existed! Chapters: 0:00 Intro 0:43 Precursor History 2:05 3.
Saved on: 2023-10-23

2023-10-22 cooler screens

Audible even over the squeal of an HVAC blower with a suffering belt, the whine of small, high velocity fans pervades the grocery side of this Walgreens. Were they always this loud? I'm not sure; some of the fans sound distinctly unhealthy.
Saved on: 2023-10-23

Base64 Encoding, Explained

When you're programming, it's easy to get by with a superficial understanding of many things. You can easily fool yourself by thinking that you are programming when you are blindly copy + pasting code from Stack Overflow or some random article you stumbled upon.
Tags: #programming
Saved on: 2023-10-23

Build your own BitTorrent | CodeCrafters

Learn about .
Saved on: 2023-10-19

Write more "useless" software

After my last blog post about Hurl, someone asked me, and I quote: "... why?" The simple answer is "for the joke." But the longer answer is that useless software1 is a fantastic way to explore and experience the joy of computing. Play is an important part of exploration and joy.
Tags: #programming
Saved on: 2023-10-19

How Disney Packed Big Emotion Into a Little Robot

On Wednesday, at the 2023 IEEE/RSJ International Conference on Intelligent Robots and Systems (IROS), in Detroit, a Disney Research team presented a brand new robotic character during their evening keynote address.
Saved on: 2023-10-11

What is in that .git directory?

Well, I think most of you reading this blog use git more or less on a daily basis, but have you ever looked into what is in the .git folder that git creates? Let's explore it together and understand what is going on in there. This is a blog version of a talk that I recently gave.
Saved on: 2023-10-07

Introducing “Database Performance at Scale”: A Free, Open Source Book

So many things have to align perfectly for impressive database performance. You need to think hard about factors like: And that’s just scratching the surface.
Tags: #database
Saved on: 2023-10-06

Color for the Color-challenged

Rather than placing web folks into the bucket Developer or Designer, I think many people would find themselves somewhere in the gray zone in between, not at the extreme ends. I most certainly feel that way about myself.
Saved on: 2023-10-05


The most popular Bootstrap UI Kits with Atlassian Design for your next project quickly get you started. This repository is distributed with npm.
Saved on: 2023-10-04

Career Advice

To my great surprise, young people now somewhat frequently contact me in order to solicit career advice. They are usually in college or highschool, and want to know what the best next steps are for a career in security or software development.
Saved on: 2023-10-04

How to Produce a Rich Domain Model with Active Record

You can't. It's not possible. Active Record provides complete access to a database row's fields through an object's public properties (or "attributes" of an "Active Record model", as they're called in both Ruby on Rails' and Laravel's ORMs).
Saved on: 2023-10-04

Choose Boring Technology

This is the spoken word version of my essay, Choose Boring Technology. I have largely come to terms with it and the reality that I will never escape its popularity. Here are my other talks, my website, and some Medium posts.
Tags: #programming
Saved on: 2023-10-02

Goodbye integers. Hello UUIDs!

At Buildkite, we've historically stored our data with with two keys. We use sequential primary keys for efficient indexing, and UUID secondary keys for external use.
Saved on: 2023-10-02

Introducing Enhance Music

Today, the Enhance team is excited to introduce our latest demo app: Enhance Music — a music library and audio player app built with HTML and CSS, and progressively enhanced with a couple pinches of JavaScript.
Saved on: 2023-09-30

Charlie Munger: The Psychology of Human Misjudgement

'The Psychology of Human Misjudgment', a speech given by Charlie Munger in 1995, animated by Tiny and Thinko.
Tags: #videos
Saved on: 2023-09-28

Joins 13 Ways

Relational (inner) joins are really common in the world of databases, and one weird thing about them is that it seems like everyone has a different idea of what they are.
Saved on: 2023-09-26

A literary history of fake texts in Apple's marketing materials

Like a lot of troubled young men, I used to pay close attention to Apple’s developer conferences and special announcements, eagerly anticipating each new generation of iPhone and operating system.
Saved on: 2023-09-25

A hacker's guide to language models [video] | Hacker News

Applications are open for YC Winter 2024
Tags: #ai
Saved on: 2023-09-25

Responsive type scales with composable CSS utilities

If you’ve ever attempted to create responsive type that seamlessly adapts and scales between pre-determined sizes within a type scale based on viewport or container widths, you may have wrestled with JavaScript or wrangled with CSS calculators.
Tags: #css
Saved on: 2023-09-24

How to do a full rewrite

You must rewrite this system. Rewriting is when you take a working system that is really hard to change, and instead of figuring out how to safely change it (or if it needs change), you rewrite all of its code, starting at the beginning again.
Saved on: 2023-09-24

Spoofing Emails from +2M Domains and Virtually Becoming Satan [pdf]

Slide 54 says that DKIM + DMARC does not help against this attack, but that is not completely true. If (and only if) you have set up DKIM for all your delegated senders, then (and only then) can you safely enable a DMARC p=reject policy.
Saved on: 2023-09-24

PodRocket - A web development podcast from LogRocket - HTMX with Carson Gro

HTMX has become increasingly popular in the web dev community, so we sat down with creator Carson Gross to talk about what HTMX is, why developers should use it, and what’s on the horizon for the tool. We want to hear from you! We want to know what you love and hate about the podcast.
Tags: #programming
Saved on: 2023-09-22

SQL Join Flavors

There is more to SQL joins than you might think. Let's explore them a bit. We'll use two simple tables: companies and jobs they offer.
Tags: #database #sql
Saved on: 2023-09-22 by Aaron Francis

The full course is launching soon, sign up today for a launch discount! No spam or any funny business. We’ll cover everything from planning your content, to cameras, to recording and editing. Start your screencast journey today!
Saved on: 2023-09-21

Inside New Query Engine of MongoDB

MongoDB has recently released a new query engine coming in version 7.0. I was one of the people working on this engine during my 2 years in MongoDB and I would like to share some technical details about it.
Saved on: 2023-09-21

Free for Developers

Saved on: 2023-09-18

Akiyoshi's illusion pages

Akiyoshi KITAOKA, Professor, Psychology, Ritsumeikan University, Osaka, Japan studying visual perception, visual illusion, optical illusion, trompe l'oeil, 3D, etc. ORCID This work was partly supported by JSPS KAKENHI Grant Number 21H04426 awarded to Akiyoshi Kitaoka.
Saved on: 2023-09-15

Stable Audio: Fast Timing-Conditioned Latent Audio Diffusion

The Stable Audio models are latent diffusion models consisting of a few different parts, similar to Stable Diffusion: A variational autoencoder (VAE), a text encoder, and a U-Net-based conditioned diffusion model.
Saved on: 2023-09-13

Credit card debt collection

One interesting lens for understanding how industries work is looking at their waste streams. Every industry will by nature have both a stock and a flow of byproducts from their core processes.
Saved on: 2023-09-13

What I Have Changed My Mind About in Software Development

Lately I have been thinking about what I have changed my mind about in software development. Here are the things I came up with: Self-documenting code. I used to think that the names of the classes, methods and variables should be enough to understand what the program does.
Tags: #programming
Saved on: 2023-09-11

U.S. Web Design System (USWDS)

Official websites use .gov A .gov website belongs to an official government organization in the United States. Secure .gov websites use HTTPS A lock ( LockA locked padlock ) or https:// means you’ve safely connected to the .gov website.
Tags: #design #ux #web
Saved on: 2023-09-11

Procreate Dreams

Procreate Dreams is an all-new animation app packed with powerful tools that anyone can use. Create engaging hand-drawn animations, motion graphics and enhance them with photos, videos and sound.
Tags: #art
Saved on: 2023-09-08

Design Patterns in PHP 8 Series' Articles - DEV Community

View Design Patterns in PHP 8 Series' Articles on DEV Community 👩‍💻👨‍💻
Saved on: 2023-09-08

Commit Mono. Neutral programming typeface.

Click to focus page. Commit Mono is an anonymous and neutral coding font focused on creating a better reading experience.
Saved on: 2023-09-07

Bintracker · A Chiptune Audio Workstation for the 21st Century

Bintracker is a modern programmable Chiptune music editor. It is currently in development, with a first beta release planned for Autumn 2020 Spring 2021 Autumn 2021. The source code is already available for anyone adventurous enough to try out Bintracker in its current, early alpha stage.
Saved on: 2023-09-06

ZFS for Dummies

As mentioned on previous posts, I have spent the past few weeks dealing with a ZFS crash on my FreeNAS install.
Tags: #sysadmin
Saved on: 2023-09-05

Benefits of separating core code from infrastructure code

When it comes to software design and software architecture, there are many theoretical approaches with fancy acronyms (like SOLID, CUPID, DDD, hexagonal architecture, clean architecture, …).
Tags: #programming
Saved on: 2023-09-01


Non-binding, quick and convenient stopper knot. Used to tie rope around an object and back to itself.
Saved on: 2023-09-01

How to pass a coding interview with me | Robert Heaton

In the last 10 years I’ve given more than 400 coding interviews. That’s the equivalent of 2 working months just watching strangers having a crack at the same handful of programming challenges.
Saved on: 2023-08-31

Absurd Success

So&mldr; I’ve had the most unreal week of coding.
Saved on: 2023-08-31

Accessible Palette: stop using HSL for color systems

Recently, I set out on a mission to reconstruct a color system in Postmark. This project addressed several problems with our design system, involved a lot of research, and even required building a few custom tools.
Saved on: 2023-08-29

UX Pattern Analysis: Loading Feedback

This website uses cookies to improve your experience while you navigate through the website. Out of these cookies, the cookies that are categorized as necessary are stored on your browser as they are essential for the working of basic functionalities of the website.
Tags: #ux
Saved on: 2023-08-28

Build complex automations 10x faster, without fighting APIs

Your days spent slogging through a spaghetti of scripts are over. Use JavaScript when you need flexibility and UI for everything else. You can implement multiple triggers. Branch and merge your workflows. And even pause flows to wait for external events.
Saved on: 2023-08-27

How Games Typically Get Built - The Pragmatic Engineer

👋 Hi, this is Gergely with a bonus, free issue of the Pragmatic Engineer Newsletter. In every issue, I cover topics related to Big Tech and startups through the lens of engineering managers and senior engineers.
Tags: #videogames
Saved on: 2023-08-23

The ideal viewport doesn’t exist

Before you settle on basing design decisions on a handful of strict breakpoints, make sure you consider the vast fragmentation of screen sizes and browser viewports. Here at Set Studio, we conducted a little casual experiment to answer “how fragmented are viewport sizes?”.
Tags: #webdev
Saved on: 2023-08-22

PHP Fibers: A practical example

PHP 8.1 introduced Fibers as a new feature of the language. I often see many people refer to fibers as threads, which is not accurate and I think gives some people the idea that PHP is somehow now multi-threaded.
Tags: #php
Saved on: 2023-08-22

“It Conveyed Them”: When The Beatles Recorded “Twist and Shout”

As it turned out, on that day they didn’t finish the work in the morning and afternoon sessions.
Tags: #music
Saved on: 2023-08-20

Hypermedia Systems

For web developers frustrated with the complexity of modern practice, those looking to brush up on web fundamentals, web development shops looking to bring their apps to mobile, and any workaday programmer looking for an introduction to hypermedia and REST.
Saved on: 2023-08-18

(4) PHP doesn't suck (anymore) - YouTube

PHP in 2023 is very different than PHP in 2012. Let's run through some of the changes! Looking for PHP jobs or looking to hire PHP devs? Check out Larajobs: 00:00 Intro 01:16 Traits 01:34 Short array syntax 01:47 Array destructuring 02:05 Variadic functions 02:12
Tags: #php #video
Saved on: 2023-08-17

htmx ~ Locality of Behaviour (LoB)

Locality of Behaviour (LoB) "The primary feature for easy maintenance is locality: Locality is that characteristic of source code that enables a programmer to understand that source by looking at only a small portion of it.
Saved on: 2023-08-16

The Hip Hop Historians Who Are Racing to Preserve Its Story

Brandon “Jinx” Jenkins rode his bike to Kmart after school. It was 2000 and he was 13 years old, but he wanted Ludacris’ debut album, Back for the First Time. When he got there, he had to convince the clerk to sell him the explicit version of the CD.
Tags: #music
Saved on: 2023-08-15

The Source of Readability

Readability is often treated as a subjective thing. When someone says code is more readable, what they really mean is they can more easily read it. The straw-man goes, this is all taste and convention, just follow the team’s rules and use the auto-formatter.
Saved on: 2023-08-14

Auditory illusions with examples from Daft Punk

Listening to Daft Punk every now and then is a never aging event for me. Their albums have a variety of musical diversity, and you can always enjoy their fairly repetitive songs on boring household activities.
Tags: #music
Saved on: 2023-08-13

A Blog Post With Every HTML Element

After learning a little bit more about web accessibility last year I had been exploring some of the less common HTML elements, and making changes to this website, like wrapping the text of the posts on this blog in <article> tags and adding a <main> tag in the website’s layout templates (this webs
Tags: #webdev
Saved on: 2023-08-13