Vladimir Klepov as a...
How useRef turned out to be useMemo's father
It's no secret that react's useCallback is just sugar on top of useMemo that saves the children from...
over a year ago
It's no secret that react's useCallback is just sugar on top of useMemo that saves the children from having to see an arrow chain. As the docs go:
useCallback((e) => onChange(id, e.target.value), [onChange, id]);
// is equivalent to
useMemo(() => (e) => onChange(id,...
swyx's site RSS Feed
Using Datasette for an ELT Personal Twitter Data Warehouse
EDA tools like Datasette dramatically lower the cost of data analysis, with a surprisingly simple...
over a year ago
EDA tools like Datasette dramatically lower the cost of data analysis, with a surprisingly simple ELT contract - You handle the Extract phase, it handles the Load, and exposes a standard UI for you to do dynamic Transforms.
Steve Klabnik
"C is not how the computer works" can lead to inefficient code
over a year ago
bt RSS Feed
February 2022 Update
February 2022 Update
2022-02-23
It’s been a little quiet around here lately and for good reason: my...
over a year ago
February 2022 Update
2022-02-23
It’s been a little quiet around here lately and for good reason: my wife gave birth to our third child last Thursday. Her name is Harmony and she was born in the late afternoon weighing in at 7 pounds 8 ounces.
Besides the lack of sleep, everything...
Nelson's Weblog
Toto C5 Washlet power usage
I got a fancy bidet toilet seat. It works fairly well and having
water for washing is great. But I...
a year ago
I got a fancy bidet toilet seat. It works fairly well and having
water for washing is great. But I don’t love some details, see notes
below. Mostly I wanted to share how much power the thing uses.
About 80 Watt-hours a day, or an average of 3 watts. Note this is
without the seat...
Making software...
Quick and Dirty Theme Switcher
Quick and Dirty Theme Switcher
2020-06-04
Update: This article is no longer relevant since my blog...
over a year ago
Quick and Dirty Theme Switcher
2020-06-04
Update: This article is no longer relevant since my blog design has changed. I'm keeping this post up since it will still be useful for those wanting to implement a theme switcher on their own site.
I recently added a fairly...
Steve Klabnik
Draper 1.0.0.beta2 release
over a year ago
Kagi Blog
Kagi's approach to AI in search
Kagi Search is pleased to announce the introduction of three AI features into our product offering.
a year ago
Kagi Search is pleased to announce the introduction of three AI features into our product offering.
Paolo Amoroso's...
Fixing and enhancing the WebCard card constructor
<![CDATA[I fixed a bug in the initial code of WebCard, my RetroChallenge 2024 project.
An infinite...
2 months ago
<![CDATA[I fixed a bug in the initial code of WebCard, my RetroChallenge 2024 project.
An infinite loop in the constructor of the Web card type caused a stack overflow that aborted Medley. The Web constructor was supposed to call the constructor of the parent card type Text. But...
Steve Klabnik
Show solidarity to all who resist
over a year ago
PostHog's RSS Feed
Google is about to make it a lot harder to track website and app users without third-party cookies
Google says they intend to deprecate the use of third-party cookies in 2023. But why is this...
over a year ago
Google says they intend to deprecate the use of third-party cookies in 2023. But why is this important, and how will this affect product analytics…
David Heinemeier...
Linux as the new developer default at 37signals
For over twenty years, the Mac was the default at 37signals. For designers, programmers, support,...
7 months ago
For over twenty years, the Mac was the default at 37signals. For designers, programmers, support, and everyone else. That mono culture had some clear advantages, like being able to run Kandji and macOS-specific setup scripts. But it certainly also had its disadvantages, like...
swyx's site RSS Feed
You Should Have A Virtual Mailbox
If you fit one of these criteria:
11 months ago
If you fit one of these criteria:
Confessions of a...
Reflections on 2024 and Exciting Plans for 2025
Looking back at what we accomplished in 2024, and plans for 2025
4 days ago
Looking back at what we accomplished in 2024, and plans for 2025
Julia Evans
Some notes on nix flakes
I’ve been using nix for about 9 months now.
For all of that time I’ve been steadfastly ignoring...
a year ago
I’ve been using nix for about 9 months now.
For all of that time I’ve been steadfastly ignoring flakes, but everyone keeps
saying that flakes are great and the best way to use nix, so I decided to try
to figure out what the deal is with them.
I found it very hard to find simple...
ntietz.com blog
Fight Burnout, Go For a Run
Here's something we don't talk about enough: burnout sucks and it can happen to any one of us. We...
over a year ago
Here's something we don't talk about enough: burnout sucks and it can happen to any one of us. We need to talk about it. We need to know how to deal with it and recover from it. And we need to recognize that everyone can come back from it, stronger than ever.
In the software...
Tinloof - Blog
10 Shopify SEO best practices with Sanity and Remix
Ecommerce competition keeps increasing - for each product you now have dozens of alternatives.
As a...
a year ago
Ecommerce competition keeps increasing - for each product you now have dozens of alternatives.
As a result, CAC (Customer Acquisition Cost) increases, pushing ecommerce business owners to look for more affordable lead generation strategies.
SEO is one of them. Online store...
Joel Gascoigne
The evolution of culture at a startup
* Tweet [https://twitter.com/share]
*
* Buffer [http://bufferapp.com/add]
*
It’s now 2 years...
over a year ago
* Tweet [https://twitter.com/share]
*
* Buffer [http://bufferapp.com/add]
*
It’s now 2 years since I launched Buffer [http://bufferapp.com], and the company
has grown from just myself (working from my bedroom) to a team of 7. In the last
few months, I’ve been thinking a...
Tinloof - Blog
ReasonML vs TypeScript: comparing their type systems
A type is a labeled set of constraints that can be imposed on a value. A type system analyses values...
over a year ago
A type is a labeled set of constraints that can be imposed on a value. A type system analyses values in a piece of code, and validates them against their types. JavaScript has a type system, but it’s dynamic. This is one of the key advantages of using the language, providing an...
Alice GG
DEFCON 30
This summer I had the opportunity to attend DEFCON 30, a cybersecurity conference gathering around...
over a year ago
This summer I had the opportunity to attend DEFCON 30, a cybersecurity conference gathering around 27000 hackers in the fabulous city of Las Vegas, Nevada.
With more than 30 villages and 3 main conference tracks, the event managed to cover pretty much every subject from malware...
Steve Klabnik
Book review: New Programmer's Survival Manual
over a year ago
Words and Buttons...
Interactive mnemonics for dot and cross vector products
Dot and cross vector products are absolutely essential for everything three-dimensional. Whatever 3D...
over a year ago
Dot and cross vector products are absolutely essential for everything three-dimensional. Whatever 3D thing you do: graphics, printing, physical simulation, — as soon as you want anything beyond what your framework provides, you have to do some vector magic, and these are your...
Making software...
Write HTML Like It's 1999
Write HTML Like It's 1999
2019-06-06
I am sure it's safe to say that most developers love to use the...
over a year ago
Write HTML Like It's 1999
2019-06-06
I am sure it's safe to say that most developers love to use the latest and greatest web tools available. Helpful resources such as preprocessors, template engines, syntax formatters - you name it - can all make a developer's life easier....
ntietz.com blog
Work on tasks, not stories
One tenet of big-a Agile1 is that developers should all work on individual user stories as the...
9 months ago
One tenet of big-a Agile1 is that developers should all work on individual user stories as the smallest unit of work2.
That a ticket should almost always be a story, because that means it's something that delivers concrete value to the users.
There are some cases in which this...
Engineer’s Codex
How one line of code caused a $60 million loss
60,000 people lost full phone service, half of AT&T's network was down, and 500 airline flights were...
a year ago
60,000 people lost full phone service, half of AT&T's network was down, and 500 airline flights were delayed
Steve Klabnik
Create a more compelling experience for your users through game mechanics
over a year ago
swyx's site RSS Feed
Why Svelte? (The Short Version)
The short version of Why Svelte
over a year ago
The short version of Why Svelte
ntietz.com blog
Optimize sprint points to get nowhere fast
As developers, we can be metric obsessed. We tend to like objective measures of things. 99th...
a year ago
As developers, we can be metric obsessed. We tend to like objective measures of things. 99th percentile request times, CPU percentage, disk utilization. Nothing escapes our attempts to quantify it, not even our productivity: enter story points1.
We measure our productivity in...
bunnie's blog
Name that Ware, July 2024
The Ware for July 2024 is shown below. Thanks again to jackw01 for contributing this ware! The last...
4 months ago
The Ware for July 2024 is shown below. Thanks again to jackw01 for contributing this ware! The last two images might be killer clues that give away the ware, but they are also so cool I couldn’t not include them as part of the post.
A Smart Bear
In command
Being "in control" is impossible, perhaps not even desirable. Being "in command" is ideal: honest,...
a year ago
Being "in control" is impossible, perhaps not even desirable. Being "in command" is ideal: honest, introspective, agile, aware, and proactive.
Joel Gascoigne
I have no idea what I am doing
* Tweet [https://twitter.com/share]
*
* Buffer [http://bufferapp.com/add]
*
I want to give a...
over a year ago
* Tweet [https://twitter.com/share]
*
* Buffer [http://bufferapp.com/add]
*
I want to give a special thanks to my co-founder Leo [http://leostartsup.com]
who listened to and discussed some of these thoughts with me before I turned
them into a blog post.
In the last few...
Making software...
CSS Character Unit
CSS Character Unit
2019-04-23
When it comes to proper readability with large portions of text, the...
over a year ago
CSS Character Unit
2019-04-23
When it comes to proper readability with large portions of text, the golden standard is to have no more than 75 characters per line. This is easy to achieve in the world of print but on the responsive, ever-changing web - statically defined...
blag
Recurse Center Day 18
Disk Storage II
over a year ago
Dan Slimmon
Interviewing engineers for diagnostic skills
In SaaS, when we’re hiring engineers, we usually imagine that their time will mostly be spent...
10 months ago
In SaaS, when we’re hiring engineers, we usually imagine that their time will mostly be spent building things. So we never forget to interview for skills at building stuff. Sometimes we ask candidates to write code on the fly. Other times we ask them to whiteboard out a sensible...
A small freedom area...
From roots to polynomials
Polynomials can be represented in various forms. The most common ones are
those I call the "sum of...
over a year ago
Polynomials can be represented in various forms. The most common ones are
those I call the "sum of powers" (for example f(x)=ax³+bx²+cx+d) and the
"root factors" (for example f(x)=(x-r)(x-s)(x-t), where r, s and t are
the roots). The process of transforming the former into the...
Irrational...
Notes on Technology Strategy Patterns
Technology Strategy Patterns by Eben Hewitt is a methods-based approach to engineering strategy,...
a year ago
Technology Strategy Patterns by Eben Hewitt is a methods-based approach to engineering strategy, with a particular focus on the methods wielded by McKinsey consultants, software engineering mainstays like Thoughtworks, and philosophy. A valuable read for anyone looking to build...
A Smart Bear
p-Hacking your A/B tests
Half of your "successful" A/B tests are false-positives. This is why, and how to fix it.
a month ago
Half of your "successful" A/B tests are false-positives. This is why, and how to fix it.
Dan Slimmon
5 production surprises worth investigating
As an SRE, I’m a vocal believer in following one’s nose: seeking out surprising phenomena and...
a year ago
As an SRE, I’m a vocal believer in following one’s nose: seeking out surprising phenomena and getting to the bottom of them. By adopting this habit, we can find and fix many classes of problems before they turn into incidents. Over time, this makes things run much smoother. But...
swyx's site RSS Feed
Make your own Dev.to CMS livestream - Part 3
This is day 3 of my livecode Dev.to CMS.
over a year ago
This is day 3 of my livecode Dev.to CMS.
bt RSS Feed
Width or Flex-Basis?
Width or Flex-Basis?
2018-11-28
Creating rows and columns of elements that adapt dynamically can be...
over a year ago
Width or Flex-Basis?
2018-11-28
Creating rows and columns of elements that adapt dynamically can be a little tricky depending on the desired outcome. Let’s breakdown how to solve this issue using both inline-block paired with width and flex-basis.
Width
Setting the width of the...
PostHog's RSS Feed
How to harness the awesome power of growth loops
A growth loop is a series of actions that amplify each other to fuel perpetual growth. New inputs...
over a year ago
A growth loop is a series of actions that amplify each other to fuel perpetual growth. New inputs repeatedly power the series to exponentially grow…
Ink & Switch
Upwelling: Combining real-time collaboration with version control for writers.
Collaborative writing tools don’t work well for writers or editors. With Upwelling, we demonstrate a...
a year ago
Collaborative writing tools don’t work well for writers or editors. With Upwelling, we demonstrate a design that gives writers privacy while still offering editors transparency into how a document is changing.
Acko.net
Stable Fiddusion
Acko.queue(function () {
renderMathInElement(document.querySelector('article'), {delimiters: [
...
a year ago
Acko.queue(function () {
renderMathInElement(document.querySelector('article'), {delimiters: [
{left: "$$", right: "$$", display: true},
{left: "$", right: "$", display: false},
]});
});
Frequency-domain blue noise generator
In computer graphics, stochastic...
alexwlchan
Parsing CloudFront logs with Python
I’ve been doing work recently to analyse some CloudFront access logs.
There are lots of ways to do...
a year ago
I’ve been doing work recently to analyse some CloudFront access logs.
There are lots of ways to do this, and I normally reach for Python inside a Jupyter Notebook because those are tools I’m very familiar with.
I’ve done this a few times now, so I thought it’d be worth pulling...
Josh Collinsworth
A response to "Defending Open Source: Protecting the Future of WordPress"
I feel it's important to issue a critical reading of Automattic's post, as it doesn't seem to offer...
a month ago
I feel it's important to issue a critical reading of Automattic's post, as it doesn't seem to offer much of a serious or objective examination of the issues at hand. Rather, the post unfortunately reads as something more akin to a puff piece, or corporate propaganda.
Miguel Carranza
Effective code review
Fortunately, I don’t think the necessity of code review is a controversial topic these days for most...
over a year ago
Fortunately, I don’t think the necessity of code review is a controversial topic these days for most tech companies1. However, it is not always implemented as well as it should. In this post, I will describe some practices that I try to follow when opening pull requests, and that...
Joel Gascoigne
10 lessons from my startup journey so far
* Tweet [https://twitter.com/share]
*
* Buffer [http://bufferapp.com/add]
*
It’s almost...
over a year ago
* Tweet [https://twitter.com/share]
*
* Buffer [http://bufferapp.com/add]
*
It’s almost exactly a year since I started documenting my startup lessons
learned through this blog, and since my first post last November, I’ve blogged
26 times. I’ve been lucky enough to have...
bt RSS Feed
Simple Navigation Setup in Jekyll 3.9.0
Simple Navigation Setup in Jekyll 3.9.0
2020-09-29
I have found that there is a lot of information...
over a year ago
Simple Navigation Setup in Jekyll 3.9.0
2020-09-29
I have found that there is a lot of information on the internet in regards to setting up “dynamic” navigation in Jekyll. The problem I’ve noticed is that a good amount of these implementations are overly complex. Here is the...
HTMHell
The road to HTMHell is paved with semantics
by Vadim Makeev
HTML semantics is a nice idea, but does it really make a difference? There’s a huge...
a year ago
by Vadim Makeev
HTML semantics is a nice idea, but does it really make a difference? There’s a huge gap between HTML spec’s good intentions and what browsers and screen readers are willing to implement. Writing semantic markup only because the good spec is a spec, and it is good,...
Ferd.ca
My Blog Engine is the Erlang Build Tool
From time to time, people ask me what I use to power my blog, maybe because they like the minimalist...
3 months ago
From time to time, people ask me what I use to power my blog, maybe because they like the minimalist form it has. I tell them it’s a bad idea and that I use the Erlang compiler infrastructure for it, and they agree to look elsewhere.
After launching my notes section, I had to...
Founder's blog
I'm finally dumping Visual Studio
After years of working with the "big" Visual Studio, I've had enough.
It's buggy, slow, and...
6 months ago
After years of working with the "big" Visual Studio, I've had enough.
It's buggy, slow, and frustrating, and I've decided to make the switch to Visual Studio Code.
While as a C# developer I'm still unsure if I can replicate every aspect of my workflow in VS Code,
I'm...
Jake Zimmerman
Why don’t constructors have override checking?
11 months ago
Joel Gascoigne
How to name your startup
* Tweet [https://twitter.com/share]
*
* Buffer [http://bufferapp.com/add]
*
Choosing a name...
over a year ago
* Tweet [https://twitter.com/share]
*
* Buffer [http://bufferapp.com/add]
*
Choosing a name is one of the parts of a startup I find the most difficult. It’s
also something you can easily get hung up on. We all know that the key thing is
to move on to actually
Liz Denys
Chemistry at its finest: inverted sugar syrup for cocktails
Simple syrup finds its home in any well-stocked bar because sometimes sugar doesn't dissolve easily...
over a year ago
Simple syrup finds its home in any well-stocked bar because sometimes sugar doesn't dissolve easily enough. Simple syrup is traditionally made by dissolving white sugar into water on a stove and then cooling before use, but sometimes, in a pinch, people will shake superfine sugar...
swyx's site RSS Feed
Revolutionizing Audio with Descript and Temporal
A case study I published for my work at Temporal
over a year ago
A case study I published for my work at Temporal
A Beautiful Site
SimpleImage 3.0
Back in 2011, I released the first version of SimpleImage for PHP — an open source project for...
over a year ago
Back in 2011, I released the first version of SimpleImage for PHP — an open source project for working with images.
Today, version 3.0 has landed, and there's a lot to love about it.
Overview #
Here's how it works at a glance:
try {
// Create a new SimpleImage object
$image =...
Vladimir Klepov as a...
OOP for FP lovers: Simplistic Dependency Injection
With all the enthusiasm around functional design in javascript community, we've come to reject the...
over a year ago
With all the enthusiasm around functional design in javascript community, we've come to reject the concepts whose names remind us of object-orientation. We throw constructors, methods and classes out of the window because they seem to smell of bank cubicles, water coolers and...
PostHog's RSS Feed
In-depth: ClickHouse vs PostgreSQL
Honestly, it is a bit ridiculous to compare Postgres and ClickHouse. The two database solutions are...
over a year ago
Honestly, it is a bit ridiculous to compare Postgres and ClickHouse. The two database solutions are as similar as grapes and grapefruit. ClickHouse…
swyx's site RSS Feed
Moving in Big Cities: Lugg vs Clutter
i recently had to move (from smolhaus 1.5 to a temporary place) and so had to evaluate some choices...
a month ago
i recently had to move (from smolhaus 1.5 to a temporary place) and so had to evaluate some choices in moving options. TLDR: I made a huge mistake not choosing Clutter.
David Heinemeier...
Multi-tenancy is what’s hard about scaling web services
Computers have gotten so ridiculously fast that there is scarcely any organization in the world that...
11 months ago
Computers have gotten so ridiculously fast that there is scarcely any organization in the world that can overwhelm a web-based information system running on a single server. All the complexity and sophistication required to run web services today stem from multi-tenancy. From...
A Beautiful Site
Web standards are just "minor details"
A friend of mine recently graduated and spread his wings by venturing into the corporate world. He...
over a year ago
A friend of mine recently graduated and spread his wings by venturing into the corporate world. He obtained a position as a junior project manager for a web consulting firm in Atlanta. Their work is very professional and their designs are great, but it was immediately evident...
Jim Nielsen’s Blog
How I Take and Publish Notes
I publish notes at notes.jim-nielsen.com.
I’ve written about why I made that site as well as some of...
a year ago
I publish notes at notes.jim-nielsen.com.
I’ve written about why I made that site as well as some of my favorite aspects of its design.
But I’ve yet to write about how I take and publish notes to it.
The other day Bill Beckelman emailed me and told me he made a similar site of...
Remains of the Day
And You Will Know Us by the Company We Keep
It feels as if we're at the tail end of the first era of social media in the West. Looking back at...
over a year ago
It feels as if we're at the tail end of the first era of social media in the West. Looking back at the companies that have survived, certain application architectural choices are ubiquitous. By now, we're all familiar with the infinite vertical scrolling feed of content units,...
samwho.dev
API Design: Errors
Errors are one of the easiest things to overlook when creating an API. Your users will have problems...
over a year ago
Errors are one of the easiest things to overlook when creating an API. Your users will have problems from time to time, and an error is the first thing they're going to see when they do. It's worth spending time on them to make using your API a more pleasant experience.
›
Guiding...
Liz Denys
Unintuitive default: who can edit access in Google Docs
When you create a new Google Doc, you have the option to share it with others to view or edit....
over a year ago
When you create a new Google Doc, you have the option to share it with others to view or edit. Viewing permission is straightforward, just view access, but by default, editors have the ability not just to edit the content of the document but also to edit sharing permissions. If...
Acko.net
Frickin' Shaders With Frickin' Laser Beams
Hassle free GLSL
I've been working on a new library to compose GLSL shaders. This is part of a side...
over a year ago
Hassle free GLSL
I've been working on a new library to compose GLSL shaders. This is part of a side project to come up with a composable and incremental way of driving WebGPU and GPUs in general.
#pragma import { getColor } from 'path/to/color'
void main() {
gl_FragColor =...
bunnie's blog
Name that Ware, August 2024
The Ware for August 2024 is shown below. Thanks to Howie M for contributing this ware!
4 months ago
The Ware for August 2024 is shown below. Thanks to Howie M for contributing this ware!
David Heinemeier...
Hating Apple goes mainstream
This isn't just about one awful ad. I mean, yes, the ad truly is awful. It symbolizes everything...
7 months ago
This isn't just about one awful ad. I mean, yes, the ad truly is awful. It symbolizes everything everyone has ever hated about digitization. It celebrates a lossy, creative compression for the most flimsy reason: An iPad shedding an irrelevant millimeter or two. It's destruction...
Elad Blog
Defensibility & Competition
Are early SaaS or AI companies ever defensible early? What is the basis for competition for a...
a year ago
Are early SaaS or AI companies ever defensible early? What is the basis for competition for a startup?
bt RSS Feed
Happily Paying For macOS Apps
Happily Paying For macOS Apps
2022-06-29
It’s no secret that I am a huge advocate for open source...
over a year ago
Happily Paying For macOS Apps
2022-06-29
It’s no secret that I am a huge advocate for open source software. A solid chunk of my day-to-day workload is done so via FOSS1 systems. I also manage a handful of fun side projects that are normally shipped under either MIT or GPL...
Elad Blog
Startup Decoupling & Reckoning
The coming reset in mid-to-late stage startups in 2023-2024 is at this point likely largely...
a year ago
The coming reset in mid-to-late stage startups in 2023-2024 is at this point likely largely decoupled from interest rates and inflation. Implications are discussed.
David Heinemeier...
Rails World and Rails 8 in 2024
The first major Rails conference on the European continent in over a decade was a smashing success...
11 months ago
The first major Rails conference on the European continent in over a decade was a smashing success this past October in Amsterdam. Not only did the conference sell out more than 700 tickets in less than 40 minutes, but it was the atmosphere from those in attendance that really...
Florian Bellmann |...
Time to market for personal projects
How I created my blog in just 2 days.
a year ago
How I created my blog in just 2 days.
Vadim Kravcenko
Mental Health in Software Engineering
Question:
Answer:
The post Mental Health in Software Engineering appeared first on Vadim Kravcenko.
8 months ago
Question:
Answer:
The post Mental Health in Software Engineering appeared first on Vadim Kravcenko.
EXPLAIN EXTENDED
Happy New Year: GPT in 500 lines of SQL
Translations: Russian This year, the talk of the town was AI and how it can do everything for you. I...
11 months ago
Translations: Russian This year, the talk of the town was AI and how it can do everything for you. I like it when someone or something does everything for me. To this end, I decided to ask ChatGPT to write my New Year's post: "Hey ChatGPT. Can you implement a large language model...
Charles Chen
Using useMemo and useCallback to Save the Past from React Langoliers
If you're confused about useMemo and useCallback and you have 10 minutes and nostalgia for 90’s...
a year ago
If you're confused about useMemo and useCallback and you have 10 minutes and nostalgia for 90’s sci-fi? You came to the right place!
Krzysztof Kowalczyk...
Tutorial for github.com/kjk/flex Go package (implementation of CSS flexbox algorithm)
Package github.com/kjk/flex implements CSS flexbox layout algorithm in Go.
It’s a pure Go port of...
over a year ago
Package github.com/kjk/flex implements CSS flexbox layout algorithm in Go.
It’s a pure Go port of Facebook’s Yoga C library.
High-level API overview
Despite implementing CSS flexbox spec, it isn’t tied to CSS/HTML in any way. Yoga, for example, can be integrated with...
Maggie Appleton
The Linear Oppression of Note-taking Apps
over a year ago
Steve Klabnik
Matz is nice so we are nice
over a year ago
Nelson's Weblog
Relaxation Dynamics of a Lattice Spin System
Way back in 1994 I wrote an undergraduate thesis for my math degree at
Reed College. It was a fun...
over a year ago
Way back in 1994 I wrote an undergraduate thesis for my math degree at
Reed College. It was a fun project, studying
a discrete dynamic system that was an extension of the
Ising
model. Sort of cellular automata meets statistical mechanics.
It's the only significant thing I've...
Hixie's Natural Log
Meeting philosophy
Decline meetings aggressively. Always try to resolve issues by e-mail or chat first if...
a year ago
Decline meetings aggressively. Always try to resolve issues by e-mail or chat first if possible.
Decline any meeting without an explicit agenda (I make exceptions for my immediate manager).
Decline any meeting where the agenda doesn't seem relevant to your work. Decline any...
Jim Nielsen’s Blog
There’s Something You Need to Know About Web Design and Development
You’re doing great at it.
(❤️ from Bluey: Baby Race)
Email, Twitter,
Mastodon
a year ago
You’re doing great at it.
(❤️ from Bluey: Baby Race)
Email, Twitter,
Mastodon
Making software...
Goodbye WordPress, Hello Jekyll (Again)
Goodbye WordPress, Hello Jekyll (Again)
2020-08-13
For the past four months this blog has been...
over a year ago
Goodbye WordPress, Hello Jekyll (Again)
2020-08-13
For the past four months this blog has been running on WordPress - but that ended today. I've officially switched back over to Jekyll. I'm not going to spend too much time delving into why I made the transition back, but I'll...
Joel Gascoigne
Make progress faster by cooperating: 4 tips to try with your co-founder or co-worker
* Tweet [https://twitter.com/share]
*
* Buffer [http://bufferapp.com/add]
*
For a number of...
over a year ago
* Tweet [https://twitter.com/share]
*
* Buffer [http://bufferapp.com/add]
*
For a number of years now, I’ve found that I generally always had a “training
partner” for my entrepreneurial goals. A few years ago, this was my great friend
Khuram...
Words and Buttons...
Bi-whatever transformations
An interactive explanation of how polynomial transformations such as trilinear or biquadratic or...
over a year ago
An interactive explanation of how polynomial transformations such as trilinear or biquadratic or even linear-cubic work, and how to craft your own that fits your particular task the best.
Making software...
Skip to Content Button
Skip to Content Button
2019-03-25
One of the golden rules for testing your website's accessibility...
over a year ago
Skip to Content Button
2019-03-25
One of the golden rules for testing your website's accessibility is the "keyboard-only" audit. This is where you test navigating through your entire site without the use of a mouse, but instead rely solely on tabbing through your...
Basta’s Notes
That time I broke login at Box
and what it says about business logic and code re-use
a year ago
and what it says about business logic and code re-use
bt RSS Feed
Tabbed Content Without JavaScript
Tabbed Content Without JavaScript
2019-01-28
Creating tabs is a fairly trivial and common practice...
over a year ago
Tabbed Content Without JavaScript
2019-01-28
Creating tabs is a fairly trivial and common practice in web design, but many times it requires JavaScript to properly implement. Fortunately it is possible to create tabbed content with only using CSS.
Live CodePen...
Irrational...
Building your executive network.
In most of my roles, I’ve learned more from my peers than from my manager. Even when you get along...
a year ago
In most of my roles, I’ve learned more from my peers than from my manager. Even when you get along well with your manager, your peers’ perspective will usually be closer to yours than your manager’s. Once you transition into an engineering executive role, you’ll still have peers,...
PostHog's RSS Feed
How to seed, grow, and scale Developer Relations (and how we're doing it at PostHog)
Developer Relations exists and is executed in different ways at almost every company. Our Developer...
over a year ago
Developer Relations exists and is executed in different ways at almost every company. Our Developer Relations journey at PostHog has just begun, and…
ntietz.com blog
Achieving awful compression with digits of pi
Compression is a really hard problem, and it attracts a lot of interesting ideas.
There are some...
9 months ago
Compression is a really hard problem, and it attracts a lot of interesting ideas.
There are some numbers whose digits contain all sequences of digits1.
People have long hypothesized that pi is one such number; a proof remains elusive.
If we have a number which contains all...
TokyoDev
The Best Resources for Entrepreneurial Developers
My background is as a developer, but I've been running my own business since 2008. For advice about...
over a year ago
My background is as a developer, but I've been running my own business since 2008. For advice about business, I've always found other entrepreneurial developers are the best source, as they tend to have faced similar challenges to my own. If you're a developer starting your own...
Steve Klabnik
Announcing Rust Contributors
over a year ago
PostHog's RSS Feed
Array 1.42.0: Get beta features via our roadmap!
Want to know more about what we're up to? Subscribe to our new newsletter , which we send once...
over a year ago
Want to know more about what we're up to? Subscribe to our new newsletter , which we send once every two weeks! 1.42.0 update guide for self-hosted…
Patrick Kayongo
Of Coups, Wars, and Corporate Digital Transformations
In mid-April 2023, Sudan was plunged into civil war. The para-military group Rapid Support Forces...
a year ago
In mid-April 2023, Sudan was plunged into civil war. The para-military group Rapid Support Forces (RSF) was formed during the war in Darfur, outside the control of the national army for “special operations”. Because they weren’t under the leadership of the army, normal war...
Alex MacCaw
The six principles of lifestyle businesses
Let's talk about what makes a great lifestyle business.
over a year ago
Let's talk about what makes a great lifestyle business.
swyx's site RSS Feed
How to Reverse Interview Investors
I honestly never expected this to be a topic that was common enough to write up, however, it...
a year ago
I honestly never expected this to be a topic that was common enough to write up, however, it suddenly hit me today that it is the ultra niche topics that deserve writing up since it is the stuff that is outside the usual SERP riffraff.
swyx's site RSS Feed
React Miami: Temporal - React for the Backend
These are the raw notes of my talk prep for my React Miami 2022 talk - Temporal - React for the...
over a year ago
These are the raw notes of my talk prep for my React Miami 2022 talk - Temporal - React for the Backend. Includes links and initial draft at the bottom.
Steve Klabnik
Rust is surprisingly expressive
over a year ago
Josh Comeau's blog
Refreshing Server-Side Props
Next allows you to do server-side data-fetching, but what happens when that data needs to change on...
over a year ago
Next allows you to do server-side data-fetching, but what happens when that data needs to change on the client? This brief tutorial shows how to re-fetch the props without doing a full server reload.
Liz Denys
French onion soup redux
If I call the soup I've been making nearly weekly for the past few months French onion soup, I'm...
over a year ago
If I call the soup I've been making nearly weekly for the past few months French onion soup, I'm probably lying a little bit. What most people call French onion soup is mostly a thing of the past for me.
But this soup is very similar. I grew out of the big croutons and the...
The Pragmatic...
What is a Senior Software Engineer at Wise and Amazon?
Common expectations for the senior level at the two companies, and compensation packages at Wise.
a year ago
Common expectations for the senior level at the two companies, and compensation packages at Wise.
bt RSS Feed
CSS Video Backgrounds
CSS Video Backgrounds
2018-04-16
With the release of Safari 11.1 on macOS and Safari on iOS 11.3,...
over a year ago
CSS Video Backgrounds
2018-04-16
With the release of Safari 11.1 on macOS and Safari on iOS 11.3, developers now have the ability to support background videos (mp4 support only - at the time of this article) with pure CSS.
Example:
.video-background {
background-image:...
Paolo Amoroso's...
The Boot Sector Games book series
<![CDATA[The short ebooks on Intel 8086 Assembly programming Oscar Toledo self published are some of...
a year ago
<![CDATA[The short ebooks on Intel 8086 Assembly programming Oscar Toledo self published are some of the best 8086 resources I've seen.
After introducing the 8086 instruction set and Assembly, Programming Boot Sector Games describes the source code of several games each of which...
A Smart Bear
Finding Fulfillment
What creates a fulfilling existence? Exploring the question from different directions leads to a...
a year ago
What creates a fulfilling existence? Exploring the question from different directions leads to a framework I’ve used for years for myself and the people around me. I hope it helps you too.
the singularity is...
The Elon Swing Voter
I’m getting on a plane back to America tonight, been away for over 3 months. It sort of fills me...
2 weeks ago
I’m getting on a plane back to America tonight, been away for over 3 months. It sort of fills me with dread and anxiety. I remember going to the Apple store before I was leaving, the uhhhhhhh from the sales people was awful. 0 pride. Nobody cares. So different from the sales...
Ognjen Regoje •...
Lessons in DDD from building an e-commerce platform
In a recent conversation with some colleagues, we were talking about how startups make the trade-off...
11 months ago
In a recent conversation with some colleagues, we were talking about how startups make the trade-off between design, domain-driven specifically, in favor of speed. They intentionally take on debt, technical and otherwise, to move faster.
I wasn’t in favour of employing DDD in a...
blag
Zero Disk Architecture
State is pain. The next generation of infrastructure tools will be built on diskless paradigm. In...
4 weeks ago
State is pain. The next generation of infrastructure tools will be built on diskless paradigm. In this short post I will explain what is Diskless / Zero Disk Architecture
Darek Kay
Migrating a Create React App project to Vite
Create React App (CRA) provides an all-in-one development toolchain for your React applications. It...
over a year ago
Create React App (CRA) provides an all-in-one development toolchain for your React applications. It is great for beginners, as you don't need to care about configuring your toolset. However, I've encountered more and more limitations without "ejecting", mostly due to the...
Paolo Amoroso's...
Building a GUI for Insphex
<![CDATA[I added a GUI to Insphex, the hex dump tool I'm writing in Common Lisp on the Medley...
6 months ago
<![CDATA[I added a GUI to Insphex, the hex dump tool I'm writing in Common Lisp on the Medley Interlisp environment.
The initial version printed the hex dump only to the standard output, now optionally to a separate TEdit window with a command menu. The menu has items for...
Joel on Software
Strange and maddening rules
There's this popular idea among developers that when you face a problem with code, you should get...
over a year ago
There's this popular idea among developers that when you face a problem with code, you should get out a rubber duck and explain, to the duck, exactly how your code was supposed to work. Read more "Strange and maddening rules"
Patrick Kayongo
Use Local Technology Services
On 18 September 2022, the Competition Tribunal of South Africa ordered that bank accounts of the...
over a year ago
On 18 September 2022, the Competition Tribunal of South Africa ordered that bank accounts of the Sekunjalo Group of Companies should remain open after closure by some banks, and imminent closure by others. The reason the various banks were closing the accounts of Sekunjalo was...
Josh Comeau's blog
Why My Blog is Closed-Source
In our community, it's so common for developer projects to be open-source. I'm breaking with this...
over a year ago
In our community, it's so common for developer projects to be open-source. I'm breaking with this trend for my blog, but I have good reasons! In this article, I'll share my reasoning, as well as a workaround in case you _really_ want to see the source. If you're considering...
Jim Nielsen’s Blog
Just Build Websites
Here’s something you might not know about me: I like to play golf. As such, I follow a couple of...
4 months ago
Here’s something you might not know about me: I like to play golf. As such, I follow a couple of golf-related brands on social media as a guilty pleasure.
The other day an image surfaced on Taylormade’s account which showcases Tommy Fleetwood playing some of their newest...
the jsomers.net blog
Most book clubs are doing it wrong
The standard way to run a book club is to have everybody finish the book before meeting to talk...
over a year ago
The standard way to run a book club is to have everybody finish the book before meeting to talk about it. You have one meeting per book. The discussion goes on for one or two hours before it runs out of gas, and then the group picks the next book, and you agree to meet […]
Words and Buttons...
Challenge your performance intuition with nanosecond sorting
If the operation you want to speed-up already runs in a few nano-seconds, your reasoning about...
over a year ago
If the operation you want to speed-up already runs in a few nano-seconds, your reasoning about algorithmic complexity probably wouldn't apply. The most effective algorithms become mediocre while the useless rise from the oblivion to shine and amaze. One of these algorithms is the...
PostHog's RSS Feed
Array 1.0.11
Like what you see and self-hosting? Update your instance. First our updates and new features. Also...
over a year ago
Like what you see and self-hosting? Update your instance. First our updates and new features. Also as you will see below we have added Celery…
Josh Comeau's blog
Styling Ordered Lists with CSS Counters
Styling an ordered list can be surprisingly tricky; there's no way to get at that bullet! In this...
over a year ago
Styling an ordered list can be surprisingly tricky; there's no way to get at that bullet! In this tutorial, we'll see a handy trick using CSS counters that lets us style ordered lists without breaking proper semantics.
Ink & Switch
Universal version control and rich text on Automerge
In this dispatch we're sharing some updates about our ongoing research on universal version control.
7 months ago
In this dispatch we're sharing some updates about our ongoing research on universal version control.
Code Of Honor
The StarCraft path-finding hack
Game-unit path-finding is something that most players never notice until it doesn’t work quite...
over a year ago
Game-unit path-finding is something that most players never notice until it doesn’t work quite right, and then that minor issue becomes a rage-inducing, end-of-the-world problem. During the development of StarCraft there were times when path-finding just didn’t work at all. As...
Making software...
My Changing Opinion on Personal Website Design
My Changing Opinion on Personal Website Design
2021-05-19
Hey would you look at that - my personal...
over a year ago
My Changing Opinion on Personal Website Design
2021-05-19
Hey would you look at that - my personal blog has been redesigned again! Although I am still using good ol' Jekyll for the backend, I have now added a more fleshed-out CSS design which also includes a set of open source...
swyx's site RSS Feed
Why I'm not a VC (yet)
There is too much money chasing too few operators.
over a year ago
There is too much money chasing too few operators.
The Pragmatic...
The Roots of Today's Modern Backend Engineering Practices
What accidentally taking down Amazon.com in 1997 taught Joshua Burgin; tech industry veteran and one...
a year ago
What accidentally taking down Amazon.com in 1997 taught Joshua Burgin; tech industry veteran and one of Amazon’s first 100 employees
bt RSS Feed
Website Backups with Apple iCloud
Website Backups with Apple iCloud
2024-02-16
My main work machine, an M2 MacBook Air, meshes really...
10 months ago
Website Backups with Apple iCloud
2024-02-16
My main work machine, an M2 MacBook Air, meshes really well with my iPhone SE (they are in the same ecosystem after all - duh!). Since both of these devices are Apple products, it makes sense that I pay for the optional iCloud service...
swyx's site RSS Feed
How to transcribe podcast audio (WhisperX with speaker diarization)
I do a lot of podcast transcription work and had need for it again today. The HuggingFace spaces...
a year ago
I do a lot of podcast transcription work and had need for it again today. The HuggingFace spaces (like this one https://huggingface.co/spaces/vumichien/whisper-speaker-diarization) always error out so aren't very useful.
A Beautiful Site
Thoughts on Framework Churn
I often worry about framework churn. A lot. But using a framework isn't a bad thing. After all, they...
a year ago
I often worry about framework churn. A lot. But using a framework isn't a bad thing. After all, they save time. They help you build things faster.
Yes, there are costs associated with frameworks later on, especially as new versions come out and your app instantly feels like...
ntietz.com blog
Writing a basic code formatter
I've been working on my programming language for a couple of months now, in fits and starts1.
In the...
a year ago
I've been working on my programming language for a couple of months now, in fits and starts1.
In the original post, I laid out my plan for it, and after creating the parser the next step was writing a formatter.
I thought this would be a nice intermediate step after writing the...
PostHog's RSS Feed
Building an all-remote company from scratch
Many companies are currently having to adjust to remote work, but what about the ones that started...
over a year ago
Many companies are currently having to adjust to remote work, but what about the ones that started this way from scratch? PostHog has a team of 1…
Darek Kay
Building a photography website
Last year, I started a photography hobby. Soon after, I've created a place where I can share some of...
a year ago
Last year, I started a photography hobby. Soon after, I've created a place where I can share some of my work, without any attention-driven algorithms dictating the terms. Here's a technical write-up of my journey.
Table of...
alexwlchan
create_thumbnail: create smaller versions of images
I’ve made a new command-line tool: create_thumbnail, which creates thumbnails of images.
I need...
4 months ago
I’ve made a new command-line tool: create_thumbnail, which creates thumbnails of images.
I need image thumbnails in a lot of projects, and I wanted a single tool I could use in all of them rather than having multiple copies of the same code.
It takes three arguments:
Your...
Blog - Bitfield...
Rust error handling: Option & Result
The night is dark and full of errors, so how should we handle these
gracefully and safely in our...
6 months ago
The night is dark and full of errors, so how should we handle these
gracefully and safely in our Rust programs? Let’s introduce two of every
Rust programmer’s favourite types: Option and Result.
Charles Chen
Vue 3x3 - A Mental Model for Building Fast
A mental model for helping you get oriented with with Vue3 and Composition API
a year ago
A mental model for helping you get oriented with with Vue3 and Composition API
Stephen Wolfram...
How Did We Get Here? The Tangled History of the Second Law of Thermodynamics
This is part 3 in a 3-part series about the Second Law: 1. Computational Foundations for the Second...
a year ago
This is part 3 in a 3-part series about the Second Law: 1. Computational Foundations for the Second Law of Thermodynamics (forthcoming) 2. A 50-Year Quest: My Personal Journey with the Second Law of Thermodynamics (forthcoming) 3. How Did We Get Here? The Tangled History of the...
Josh Collinsworth
If WordPress is to survive, Matt Mullenweg must be removed
I believe Matt Mullenweg's abuses of his unilateral, unchecked powers prove that it is in the best...
2 months ago
I believe Matt Mullenweg's abuses of his unilateral, unchecked powers prove that it is in the best interest of the entire WordPress community that he be removed from power immediately.
Paolo Amoroso's...
Upgrading from Linux Mint 21.3 to 22: failure and success
<![CDATA[I upgraded my System76 Merkaat mini PC from Linux Mint 21.3 Cinnamon to Mint 22 "Wilma". It...
4 months ago
<![CDATA[I upgraded my System76 Merkaat mini PC from Linux Mint 21.3 Cinnamon to Mint 22 "Wilma". It didn't go as hoped but some extra effort eventually made Mint 22 run fine.
I began by starting the upgrade process from Mint 21.3.
I didn't get a good feel for the upgrade tool,...
Florian Bellmann |...
Scripting = Configuration
The idea of using a scripting language to write configuration is brilliant. Here is why.
a year ago
The idea of using a scripting language to write configuration is brilliant. Here is why.
Paolo Amoroso's...
My ChromeOS to Linux migration: requirements and setup
<![CDATA[I'm going back to Linux after nine years of ChromeOS.
In 2015 I had been using Linux for a...
5 months ago
<![CDATA[I'm going back to Linux after nine years of ChromeOS.
In 2015 I had been using Linux for a couple of decades. Exasperated by the frequent maintenance issues, that year I migrated to ChromeOS. I was living in the browser anyway and ChromeOS seemed like a stable...
HTMHell
Reading the meter
The <meter> element is a little known and rarely used semantic element. It's a non-interactive form...
over a year ago
The <meter> element is a little known and rarely used semantic element. It's a non-interactive form element that renders as a partially filled horizontal bar. Browsers provide user-agent styles, but the <meter> element can also be styled.
<meter min="10" max="200"...
Liz Denys
Bacon cheddar scallion biscuit sliders
Earlier this week, I made bacon cheddar scallion biscuits because I had been craving an especially...
over a year ago
Earlier this week, I made bacon cheddar scallion biscuits because I had been craving an especially savory breakfast bread option for those mornings that you wake up a little bit later than you'd like. Nothing too fancy, just fifteen traditional country biscuits except that I...
Tinloof - Blog
Asynchronous JavaScript - what is it? (Promises, callbacks, async/await)
JavaScript code is executed synchronously. In other words, from top to bottom and one line at a...
over a year ago
JavaScript code is executed synchronously. In other words, from top to bottom and one line at a time.
First, the code will execute the function and know what to return when getText() is called.
Then it assigns the getText() function to the variable text.
samwho.dev
I finally figured out how to take notes!
I’ve never been good at taking notes. I’ve tried. Oh boy, have I tried. Name a
piece of note taking...
over a year ago
I’ve never been good at taking notes. I’ve tried. Oh boy, have I tried. Name a
piece of note taking software, odds are I’ve tried it. I’ve even tried going old
school with pen and paper. Nothing sticks.
Until recently.
Some time ago, I learned about Apple’s
Shortcuts app. It’s...
Irrational...
Making engineering strategies more readable
As discussed in Components of engineering strategy,
a complete engineering strategy has five...
7 months ago
As discussed in Components of engineering strategy,
a complete engineering strategy has five components: explore, diagnose, refine (map & model), policy, and operation.
However, it’s actually quite challenging to read a strategy document written that way.
That’s an effective...
Josh Comeau's blog
Statements Vs. Expressions
One of the most foundational things to understand about JavaScript is that programs are made up of...
over a year ago
One of the most foundational things to understand about JavaScript is that programs are made up of statements, and statements have slots for expressions. In this blog post, we'll dig into how these two structures work, and see how building an intuition about this can help us...
Marco.org
The Overcast Redesign: Part One
Overcast’s latest update (2022.2) brings the largest redesign in its nearly-eight-year history, plus...
over a year ago
Overcast’s latest update (2022.2) brings the largest redesign in its nearly-eight-year history, plus many of the most frequently requested features and lots of under-the-hood improvements. I’m pretty proud of this one.
For this first and largest phase of the redesign, I focused...
alexwlchan
The Collected Works of Ian Flemingo
On Monday evening, about two hundred Mincefluencers descended on the Fortune Theatre for “Operation...
11 months ago
On Monday evening, about two hundred Mincefluencers descended on the Fortune Theatre for “Operation Human Thermos”, a fan gathering to celebrate Operation Mincemeat, a musical that gives us all the warm and fuzzies.
A lot of people dressed in cosplay to mark the occasion, and I...
Vadim Kravcenko
Fake it till you make it
If you’ve been doing anything related to the startup world the last few years, then you’ve heard the...
over a year ago
If you’ve been doing anything related to the startup world the last few years, then you’ve heard the term “fake […]
The post Fake it till you make it appeared first on Vadim Kravcenko.
David Heinemeier...
That Model S Plaid
I've owned a lot of great cars in my time. It's been one of the few places where hitting it big has...
a year ago
I've owned a lot of great cars in my time. It's been one of the few places where hitting it big has allowed for something that wouldn't otherwise be possible. From Lamborghini to Pagani, Porsche to Ferrari, Aston Martin to Bentley, I have owned and loved them all. A+ use of...
Making software...
Stuffing an SSD Inside the Raspberry Pi 400
Stuffing an SSD Inside the Raspberry Pi 400
2021-08-13
I have successfully jammed an mSATA SSD into...
over a year ago
Stuffing an SSD Inside the Raspberry Pi 400
2021-08-13
I have successfully jammed an mSATA SSD into the main shell of my Raspberry Pi 400. It wasn't as straightforward as I thought it would be - in fact, most real hardware tinkerers will probably vomit in their mouths once they...
swyx's site RSS Feed
Every Web Performance Test Tool
Check your site's speed quickly with a battery of tests
over a year ago
Check your site's speed quickly with a battery of tests
Joel Gascoigne
Why you should start marketing early
* Tweet [https://twitter.com/share]
*
* Buffer [http://bufferapp.com/add]
*
I’ve been...
over a year ago
* Tweet [https://twitter.com/share]
*
* Buffer [http://bufferapp.com/add]
*
I’ve been thinking a lot recently about when the right time is to start
marketing a startup. In my previous startup [http://myonepage.com], we were
hesitant to attempt to get press early. We were...
Engineer’s Codex
How Apple built iCloud to store billions of databases
Apple uses Cassandra and FoundationDB for CloudKit, their cloud backend service. We take a look into...
11 months ago
Apple uses Cassandra and FoundationDB for CloudKit, their cloud backend service. We take a look into how exactly each is used within their cloud and the problems they've solved.
PostHog's RSS Feed
The best HIPAA-compliant A/B testing tools
What do Google Optimize, Optimizely, Convert, Webtrends Optimize and Splitbee have in common?...
over a year ago
What do Google Optimize, Optimizely, Convert, Webtrends Optimize and Splitbee have in common? They're popular A/B testing tools None of them are HIPAA…
Tony Finch's blog
BIND zone transfer performance
This year I have rewritten BIND’s DNS name compression and
decompression code. I didn’t plan to, it...
over a year ago
This year I have rewritten BIND’s DNS name compression and
decompression code. I didn’t plan to, it just sort of happened!
Anyway, last week my colleague Petr was doing some benchmarking,
and he produced some numbers that seemed too good to be true, so I
have re-done the...
Blog System/5
The IDEs we had 30 years ago... and we lost
A deep dive into the text mode editors we had and how they compare to today's
12 months ago
A deep dive into the text mode editors we had and how they compare to today's
A Beautiful Site
Lessons from a failed Kickstarter
Last week, I launched Particle on Kickstarter. Today, I pulled the plug and canceled the campaign....
over a year ago
Last week, I launched Particle on Kickstarter. Today, I pulled the plug and canceled the campaign. We had 50 backers and were 5% funded. So why would I do this with 25 days left to go?
The fact is, this campaign failed before it started, and it was all my fault. I became so...
Epic Web Dev
Writing Tests That Fail (article)
There can be a lot of confusion and doubt when it comes to writing tests. Answering this simple...
2 months ago
There can be a lot of confusion and doubt when it comes to writing tests. Answering this simple question may help clear a lot of it out.
PostHog's RSS Feed
How we built our onboarding email flow (with actual performance data)
Marketers believe onboarding emails are a powerful tool for driving engagement. Everyone else thinks...
10 months ago
Marketers believe onboarding emails are a powerful tool for driving engagement. Everyone else thinks they're annoying and ineffective. The truth, as…
bt RSS Feed
Stop Using Sticky Navigation on Mobile
Stop Using Sticky Navigation on Mobile
2019-10-06
Stop styling your web elements to be “sticky” on...
over a year ago
Stop Using Sticky Navigation on Mobile
2019-10-06
Stop styling your web elements to be “sticky” on mobile. This creates a horrible experience for your users and also looks like trash from a UI perspective. Don’t style your navigation (or any components for that matter) to be...
TokyoDev
Tech Meetups in Tokyo
Now that you’re in Tokyo looking to start or further your IT career, you might want to look into...
a year ago
Now that you’re in Tokyo looking to start or further your IT career, you might want to look into attending tech meetups.
Tech meetups are events held online and offline, and attending them is a great way to form connections and establish yourself in the tech community. It...
blag
Accepted to the Recurse Center!
I got accepted into Recurse Center, wooo!
over a year ago
I got accepted into Recurse Center, wooo!
A Beautiful Site
Images display in Firefox and Safari, but not in Internet Explorer
I ran into a little "gotcha" today where an image was displaying properly in Firefox and Safari, but...
over a year ago
I ran into a little "gotcha" today where an image was displaying properly in Firefox and Safari, but not in Internet Explorer. The weird thing is that it wasn't showing up as a broken link (no missing image icon with the infamous red 'X'). Instead, it wasn't showing up at...
Tinloof - Blog
A basic introduction to functional programming principles in ReasonML
Functional programming is a programming paradigm based on several principles such as immutability...
over a year ago
Functional programming is a programming paradigm based on several principles such as immutability and purity.
ReasonML extends the functional language OCaml and compiles to JavaScript.
This article aims to introduce you to some very basic functional principles present in...
ntietz.com blog
You should make a new programming language
Every software engineer uses a programming language, usually multiple.
Few of us make programming...
4 months ago
Every software engineer uses a programming language, usually multiple.
Few of us make programming languages.
This makes sense, because the work we need to get done can typically be done just fine in the languages that exist.
Those already have people making them better.
Let's...
HTMHell
#10 <section> is no replacement for <div>
Bad code
<section id="page-top">
<section data-section-id="page-top" style="display:...
over a year ago
Bad code
<section id="page-top">
<section data-section-id="page-top" style="display: none;"></section>
</section>
<main>
<section id="main-content">
<header id="main-header">
<h1>...</h1>
<section class="container-fluid">
<section class="row">
...
Vadim Kravcenko
💀 Every app has its skeletons
You need to accept one truth – every shop is messy and every app has its skeletons. Period.💀 🦄 You...
over a year ago
You need to accept one truth – every shop is messy and every app has its skeletons. Period.💀 🦄 You […]
The post 💀 Every app has its skeletons appeared first on Vadim Kravcenko.
Irrational...
Numbers go up.
There’s a genre of computer games called incremental games, whose entire design philosophy can be...
3 months ago
There’s a genre of computer games called incremental games, whose entire design philosophy can be summarized as, “numbers go up.” These games focus on the fundamental gaming loop rather than plot, characterization or anything beyond the foundational satisfaction of numbers...
Maggie Appleton
On Openings Essays, Conferences Talks, and Jam Jars
8 months ago
swyx's site RSS Feed
Being a minor AI public figure
I was recently involved in moderating a chat with Kanjun Qiu of Imbue at the MIT AI conf:...
a year ago
I was recently involved in moderating a chat with Kanjun Qiu of Imbue at the MIT AI conf: https://photos.google.com/share/AF1QipNJ9i78ICeg2YuemyAXmtStKvqr9l0Tao3xQWxmeAVjBALHn_NnFvPXFlNSkdMfqA?pli=1&key=dTFRRHBTLVRZTEVCem0zal8tNVkxblh0V3k4VXhR
David Heinemeier...
We’ve resubmitted the HEY Calendar app to Apple
Apple waited until end of business on Friday to send us the formal rejection of the HEY Calendar...
11 months ago
Apple waited until end of business on Friday to send us the formal rejection of the HEY Calendar app. It seems they love to play these little games to try to drown any controversy with the cover of a weekend. But we don’t roll over that easy, so the team worked through the...
Joel Gascoigne's...
The significance of Bluesky and decentralized social media
The significance of Bluesky and decentralized social media
I'm delighted to share that we have...
4 months ago
The significance of Bluesky and decentralized social media
I'm delighted to share that we have introduced support for Bluesky in Buffer. This is an important moment for us as a company, and there are a number of reasons that adding Bluesky is personally meaningful for me. With...
alexwlchan
Setting up Fish to make virtualenv easier
Since I started my new job, I’ve been doing a lot more work in Python.
As I was starting with a...
a year ago
Since I started my new job, I’ve been doing a lot more work in Python.
As I was starting with a completely clean slate, I wanted to try setting up Python the “right” way – or if not “right”, at least better way than my previous pile of hacks and kludges.
(I don’t remember much of...
somenice
Whistler High Note Trail
Gorgeous clear day around the back of Whistler Mountain yesterday. Hiked the High Note Trail...
over a year ago
Gorgeous clear day around the back of Whistler Mountain yesterday. Hiked the High Note Trail backwards from Harmony Lake Loop up to the Peak chair.
Marco.org
Introducing Voice Boost 2: Remaster your podcasts
The latest update to Overcast includes a feature that I’m especially proud of that took over a year...
over a year ago
The latest update to Overcast includes a feature that I’m especially proud of that took over a year to build.
Voice Boost 2 is an all-new audio engine that includes professional-grade, mastering-quality loudness normalization.
When I first introduced Overcast in 2014, Voice Boost...
swyx's site RSS Feed
Versioned Docs in 30 Seconds with Amplify Console's Branch Subdomains
Amplify Console just got the ability to create a custom subdomain for every new branch. This makes...
over a year ago
Amplify Console just got the ability to create a custom subdomain for every new branch. This makes creating versioned docs a cinch!
Posts on Nikita...
Databases = Frameworks for Distributed Systems
This article was originally posted on dev.to, but it turns out that HackerNews banned this website,...
over a year ago
This article was originally posted on dev.to, but it turns out that HackerNews banned this website, so I decided to create my own.
Feel free to join the discussion on HackerNews.
Lego of the database world It is quite common for a distributed database to have the following...
PostHog's RSS Feed
Using Gatsby and Puppeteer to create dynamic Open Graph images
The image preview you see when sharing a link is a great opportunity to get your brand’s message in...
over a year ago
The image preview you see when sharing a link is a great opportunity to get your brand’s message in front of people without them even clicking through to your website. Most sites just opt to display a logo and some brand elements.
Ferd.ca
A Distributed Systems Reading List
2024/02/07
A Distributed Systems Reading List
This document contains various resources and quick...
10 months ago
2024/02/07
A Distributed Systems Reading List
This document contains various resources and quick definition of a lot of background information behind distributed systems. It is not complete, even though it is kinda sorta detailed. I had written it some time in 2019 when coworkers...
Words and Buttons...
Why did I write Geometry for programmers
This is not an interactive page, it has zero didactic value. It does explain why Words and Buttons...
a year ago
This is not an interactive page, it has zero didactic value. It does explain why Words and Buttons has been stagnant for a while though. I have been writing a book. Why? Well, visit and see.
HTMHell
#17 inaccessible cards
Context: A list of linked cards, each with heading, image, and teaser text.
Bad code
<section>
...
over a year ago
Context: A list of linked cards, each with heading, image, and teaser text.
Bad code
<section>
<section>
<h2>Overview</h2>
<figure class="card" data-url="image1.html" style="background: url(image1.jpg)">
<figcaption>
<h4>My heading</h4>
...
Maggie Appleton
The Dark Forest and the Cozy Web
over a year ago
The Changelog
Visiting Germany: Reflections on Schloss Charlottenburg
200 years ago, my ancestors migrated from Prussia to Ukraine. They left for many reasons, many of...
over a year ago
200 years ago, my ancestors migrated from Prussia to Ukraine. They left for many reasons, many of which boiled down to their strong pacifism in the midst of a highly militarized country. Last week, my wife, the boys, and I walked through the favorite palace of Friedrich Wilhelm...
Alice GG
How to publish your Godot game on Mac
Since 2019, Apple has required all MacOS software to be signed and notarized.
This is meant to...
3 months ago
Since 2019, Apple has required all MacOS software to be signed and notarized.
This is meant to prevent naive users from installing malware while running software from unknown sources.
Since this process is convoluted, it stops many indie game developers from releasing their Godot...
Steve Klabnik
The first week of rstat.us: users, press, and scaling, oh my!
over a year ago
David Heinemeier...
Dare to connect a server to the internet
The merchants of complexity thrive when they can scare you into believing that even the simplest...
10 months ago
The merchants of complexity thrive when they can scare you into believing that even the simplest things are too dangerous to even attempt by yourself these days. That without their rarified expertise, you’ll be left vulnerable. So best just to leave ever-more of your burdens to...
Tony Finch's blog
My spaghetti carbonara recipe
In recent weeks I have been obsessed with carbonara: I have probably
been eating it far too...
a year ago
In recent weeks I have been obsessed with carbonara: I have probably
been eating it far too frequently. Here’s my recipe. It works well for
1 - 3 people but gets unweildy at larger quantities.
ingredients
Rough quantities per person:
100g pasta
Spaghetti is traditional but I’ll...
Dan Quach Blog
West Coast Trail – The 75km/48 mile death hike
Author Note: This trip was taken in 2021, but updated in 2023 with updated details. I’m not really...
over a year ago
Author Note: This trip was taken in 2021, but updated in 2023 with updated details. I’m not really sure where I get these crazy ideas, but a friend and I booked the West Coast Trail. It is this multi day thru hike in the west coast of Vancouver Island, which is accessible via...
TokyoDev
Renaming an Active Record has_one_attached Attachment: A Step-by-Step Guide
Recently, we had a piece of code that looked something like this:
~~~
has_one_attached...
a year ago
Recently, we had a piece of code that looked something like this:
~~~
has_one_attached :resumee
~~~
Does it look a little off to you? I’m sure you’ve seen (or even perpetrated) a scenario like this before, where you name something and when you revisit the code later you...
Writing - Andreas...
Overconfidence and future-proofing
“Just to future-proof things” is perhaps the most common argument I hear to
defend questionable...
a year ago
“Just to future-proof things” is perhaps the most common argument I hear to
defend questionable design decisions. Future-proofing only makes sense if
you have some idea of what the future will look like and you understand
what the tradeoffs are.
Liz Denys
Starlit sky hexagonal teacups, 2024
Starlit sky on a clear night / the milky way / eternity / clarity / raindrops sticking to window...
5 months ago
Starlit sky on a clear night / the milky way / eternity / clarity / raindrops sticking to window glass
David Heinemeier...
Wonderful vi
The speed of change in technology often appears to be the industry's defining characteristic....
3 months ago
The speed of change in technology often appears to be the industry's defining characteristic. Nothing highlights that perception more than the recent and relentless march of AI advancements. But for as much as some things in technology change, many other things stay the same....
somenice
Hummingbird at the feeder
With a recent blast of winter I noticed a few hummingbirds already here so I put up the feeder.Not...
8 months ago
With a recent blast of winter I noticed a few hummingbirds already here so I put up the feeder.Not 30 seconds later, this fella showed up.
Josh Comeau's blog
Chasing the Pixel-Perfect Dream
Is it possible to create an implementation of a design that matches to-the-pixel? Well, not really,...
over a year ago
Is it possible to create an implementation of a design that matches to-the-pixel? Well, not really, but that shouldn't discourage us! In this article, I'll show how I became designers' best friend by leveraging a series of tricks to get my implementation looking...
Paolo Amoroso's...
Adding an Exec command and File Browser support to Insphex
<![CDATA[I implemented the last features originally planned for Insphex, my hex dump tool in Common...
6 months ago
<![CDATA[I implemented the last features originally planned for Insphex, my hex dump tool in Common Lisp for Medley Interlisp.
The first new feature is an Exec command for invoking the program. The command HD works the same way as the function INSPHEX:HEXDUMP and accepts the...
Daniel Immke's Blog...
How I write blog posts every month
Back in September of last year I started this blog and seeded it with a few posts. I wrote in my...
over a year ago
Back in September of last year I started this blog and seeded it with a few posts. I wrote in my first post that my goal was to write one…
Max Countryman
Data for Decisions
Data is a powerful tool that can have an outsize impact on how we develop products and operate our...
a year ago
Data is a powerful tool that can have an outsize impact on how we develop products and operate our businesses. That said, the value of data is rarely the data itself but instead the insights we derive from it. In order to ensure these insights are meaningful and impactful it's...
ntietz.com blog
RC Week 11: Learning is best when multiplayer
As I come up on the end of my batch at Recurse Center, I've been doing some reflecting on my time...
over a year ago
As I come up on the end of my batch at Recurse Center, I've been doing some reflecting on my time here.
One of the standout themes is how much I've learned through struggling with other people.
In particular, this learning together has make some difficult topics approachable,...
A Smart Bear
When being “first” is not a competitive advantage
Is it good to be “first?” It seems so – what’s the point of building a new startup that does nothing...
over a year ago
Is it good to be “first?” It seems so – what’s the point of building a new startup that does nothing new? On the surface being “first” sounds impressive, implying innovation and leadership. But reality is different.
A Beautiful Site
On Buttons and Links
I posted a tweet yesterday that was met with some controversy, so I thought it would be a good idea...
over a year ago
I posted a tweet yesterday that was met with some controversy, so I thought it would be a good idea to unravel it.
Unpopular opinion: in a design system, a "link" and a "button" should be one component.
— Cory LaViska (@claviska) October 5, 2021
At face value, I understand why...
Marco.org
Overcast 5.1 with Instant Search
▶️
The first thing someone does in a podcast app is add some podcasts, and most active Overcast...
over a year ago
▶️
The first thing someone does in a podcast app is add some podcasts, and most active Overcast users add at least two new podcasts each month.
Over 80% of podcasts are added to Overcast by searching, with the vast majority as searches for a specific podcast by name (rather...
Elad Blog
Transcript & Video: Claire Hughes Johnson Fireside Chat on Scaling People
I interview Claire about her new book "Scaling People". Thanks to Stripe for hosting.
a year ago
I interview Claire about her new book "Scaling People". Thanks to Stripe for hosting.
elementary Blog
elementary OS 7 Available Now
It’s been just over a year since we released elementary OS 6.1 Jólnir which brought new features and...
a year ago
It’s been just over a year since we released elementary OS 6.1 Jólnir which brought new features and fixes based on your feedback, introduced new office productivity features, and expanded compatibility with a wide range of hardware. So far, OS 6.1 has been downloaded from our...
TokyoDev
Oh, that's not your job
My first job was as [a Ruby developer at a Japanese...
over a year ago
My first job was as [a Ruby developer at a Japanese startup](/articles/finding-a-job-as-a-ruby-developer-in-japan). The company had a stellar development team, and in a couple of months of working there I learned more about developing software than I did in my entire computer...
swyx's site RSS Feed
The introduction to TypeScript Generics you've been missing
> Note: this is an unfinished draft, but I'm sharing it anyway as an outline
over a year ago
> Note: this is an unfinished draft, but I'm sharing it anyway as an outline
alexwlchan
Documenting my DNS records
I had to change some of my DNS records recently, a phrase which strikes fear into the heart of...
7 months ago
I had to change some of my DNS records recently, a phrase which strikes fear into the heart of sysadmins everywhere.
It all went fine, but I definitely felt like I was playing with fire.
My current domain registrar is Hover, and the only way I can manage my domains is through a...
bt RSS Feed
Setup Jekyll from Scratch on a New Linux System
Setup Jekyll from Scratch on a New Linux System
2022-09-19
Special Note: Credit needs to be given to...
over a year ago
Setup Jekyll from Scratch on a New Linux System
2022-09-19
Special Note: Credit needs to be given to user Achraf JEDAY for putting these instructions together on Stack Overflow (although his comments were targeting an older version of Ruby). This post is more for my own personal...
Remains of the Day
American Idle
I promised one final piece on TikTok, focused primarily on the network effects of creativity. And...
over a year ago
I promised one final piece on TikTok, focused primarily on the network effects of creativity. And this is that, in part. But it discusses a bunch of other topics, some only tangentially related to TikTok.
All the points I wanted to cover seem hyperlinked in a sprawling loose...
alexwlchan
Making the fish shell more forgetful
For quite a few years, I’ve been using fish (https://fishshell.com/) as my shell.
One of the cool...
a year ago
For quite a few years, I’ve been using fish (https://fishshell.com/) as my shell.
One of the cool things it does is autosuggestions from my shell history.
As I’m typing, it suggests (in light grey) a command I’ve run before.
I can press the right arrow to accept the suggestion,...
Patrick Kayongo
The Fruitfulness of Grunt Work
I had an interesting software development problem the other day. I was working on a NodeJS...
7 months ago
I had an interesting software development problem the other day. I was working on a NodeJS application, doing general maintenance work, which led me down an interesting rabbit hole. I could’ve used an online knowledge tool such as the various LLM-based tools available now. But...
Ralph Ammer
David Hume — Why we change our mind
How do we know which food is best for us? We might start a low-carb diet. Then we switch to whole...
a year ago
How do we know which food is best for us? We might start a low-carb diet. Then we switch to whole grains, or even go fully vegan—only to return to a low-carb diet yet again. We constantly change our minds. Even scientists keep revising their perspectives. Why is it so difficult...
PostHog's RSS Feed
We're building a better PostHog community by closing our public Slack
One of the great things about being open source is that we’ve grown a vibrant community around the...
11 months ago
One of the great things about being open source is that we’ve grown a vibrant community around the project. Since launch we’ve accepted code from over…
Julia Evans
Confusing git terminology
Hello! I’m slowly working on explaining git. One of my biggest problems is that
after almost 15...
a year ago
Hello! I’m slowly working on explaining git. One of my biggest problems is that
after almost 15 years of using git, I’ve become very used to git’s
idiosyncracies and it’s easy for me to forget what’s confusing about it.
So I asked people on Mastodon:
what git jargon do you find...
PostHog's RSS Feed
What is SSO and why you should enable it for PostHog
Existing at an intersection of convenience and security, single sign-on (SSO) authentication is used...
over a year ago
Existing at an intersection of convenience and security, single sign-on (SSO) authentication is used and appreciated by both IT teams and everyday…
Jim Nielsen’s Blog
All About That Button, ’Bout That Button
In modern SPAs it’s common to immediately escape baked-in browser behaviors. For example, using...
5 months ago
In modern SPAs it’s common to immediately escape baked-in browser behaviors. For example, using <button> often looks like this:
<div>
<input type="text" name="q" />
<button
type="submit"
onClick={(e) => {
// Stop the baked-in behavior
...
bt RSS Feed
Burning & Playing PS2 Games without a Modded Console
Burning & Playing PS2 Games without a Modded Console
2024-09-02
Important: I do not support pirating...
3 months ago
Burning & Playing PS2 Games without a Modded Console
2024-09-02
Important: I do not support pirating or obtaining illegal copies of video games. This process should only be used to copy your existing PS2 games for backup, in case of accidental damage to the original...
Words and Buttons...
Yet another alternative to floating point numbers
This shows how computeable intervals written in rational bounds may not only account for the input...
over a year ago
This shows how computeable intervals written in rational bounds may not only account for the input error but keep computational error under control as well.
alexwlchan
Documenting my DNS records
I had to change some of my DNS records recently, a phrase which strikes fear into the heart of...
7 months ago
I had to change some of my DNS records recently, a phrase which strikes fear into the heart of sysadmins everywhere.
It all went fine, but I definitely felt like I was playing with fire.
My current domain registrar is Hover, and the only way I can manage my domains is through a...
Kevin Chen
Ideas for fooling Amazon Go
Amazon Go is a grocery store that does away with checkout lines by
using computer vision to figure...
over a year ago
Amazon Go is a grocery store that does away with checkout lines by
using computer vision to figure out what you purchased.
What happens if you…
Take an item off the shelf and give it to someone else.
Go shopping with your identical twin.
Use the restroom to put on a face...
Josh Collinsworth
The Five Things I Wish Somebody Had Told Me as a Design Student
Your worst instructor as a design student will lay out clear goals and expectations which will not...
over a year ago
Your worst instructor as a design student will lay out clear goals and expectations which will not change; this is not a given with clients.
PostHog's RSS Feed
Should open source projects track you?
Many open source projects now track their usage in some way, shape, or form. So much user tracking...
over a year ago
Many open source projects now track their usage in some way, shape, or form. So much user tracking is horrible. It's usually buried deep in the…
Oxide Computer...
dtrace.conf(24)
Sometime in late 2007, we had the idea of a DTrace conference.
Or really, more of a meetup; from the...
2 weeks ago
Sometime in late 2007, we had the idea of a DTrace conference.
Or really, more of a meetup; from the primordial e-mail I sent:
The goal here, by the way, is not a DTrace user group, but more of a
face-to-face meeting with people actively involved in DTrace — either by
porting...
David Heinemeier...
We are a place of business
After the disastrous launch of their Gemini AI, which insisted that George Washington was actually...
8 months ago
After the disastrous launch of their Gemini AI, which insisted that George Washington was actually Black and couldn't decide whether Musk's tweets or Hitler was worse, Google's response was timid and weak. This was just a bug! A problem with QA! It absolutely, positively wasn't a...
Making software...
Blogging for 7 Years
Blogging for 7 Years
2023-06-24
My first public article was posted on June 28th 2016. That was seven...
a year ago
Blogging for 7 Years
2023-06-24
My first public article was posted on June 28th 2016. That was seven years ago.
In that time, quite a lot has changed in my life both personally and professionally. So, I figured it would be interesting to reflect on these years and document it for...
David Gerrells
how to use web workers with typescript
A practical example of where web workers can improve performance and UX but there are gotchas and...
over a year ago
A practical example of where web workers can improve performance and UX but there are gotchas and limits
The Changelog
Tools for Communicating Offline and in Difficult Circumstances
Note: this post is also available on my website, where it will be updated periodically. When things...
over a year ago
Note: this post is also available on my website, where it will be updated periodically. When things are difficult – maybe there’s been a disaster, or an invasion (this page is being written in 2022 just after Russia invaded Ukraine), or maybe you’re just backpacking off the grid...
Liz Denys
Where books travel
i
I sit down in my premium economy seat, the abbreviated way of saying "economy as it was fifteen...
over a year ago
i
I sit down in my premium economy seat, the abbreviated way of saying "economy as it was fifteen years ago, but at a higher premium," and deeply internalize my physical constraints for the next six hours. A small box outlined by my seat, the side of the plane with its tiny...
charity.wtf
Architects, Anti-Patterns, and Organizational Fuckery
I recently wrote a twitter thread on the proper role of architects, or as I put it,...
a year ago
I recently wrote a twitter thread on the proper role of architects, or as I put it, tongue-in-cheek-ily, whether or not architect is a “bullshit role”. It got a LOT of reactions (2.5 weeks later, the thread is still going!!), which I would sort into roughly three camps: “OMG this...
Joel Gascoigne
5 reasons as a CEO you should develop a habit of daily meditation
* Tweet [https://twitter.com/share]
*
* Buffer [http://bufferapp.com/add]
*
Through my...
over a year ago
* Tweet [https://twitter.com/share]
*
* Buffer [http://bufferapp.com/add]
*
Through my journey from a founder whose role it was to essentially build the
product and code all day, to growing into a CEO role with more management duties
and a fast growing team of 7 people,...
bunnie's blog
Winner, Name that Ware July 2024
The ware for July 2024 is an Ingenico Axium DX8000. I hadn’t had a chance to tear down a modern POS...
4 months ago
The ware for July 2024 is an Ingenico Axium DX8000. I hadn’t had a chance to tear down a modern POS terminal myself, so it was pretty interesting to see all the anti-tamper traces built into the product (thank you jackw01 for sharing it!). I wonder how effective these are, and...
Maggie Appleton
A Fruitful Guide to JavaScript's Comparison Operators
over a year ago
Jim Nielsen’s Blog
I Don’t Like The Term “IC” Either
I really liked Robin’s piece, “Stop calling yourself an IC”.
I still remember the way I felt the...
5 months ago
I really liked Robin’s piece, “Stop calling yourself an IC”.
I still remember the way I felt the first time I heard that term. It was used in a way where its connotations conveyed a kind of laziness via lack of ambition. And I thought, “But wait, I am an individual contributor —...
Steve Klabnik
Rust has finally outgrown me
over a year ago
Julia Evans
Introducing "Implement DNS in a Weekend"
Hello! I’m excited to announce a project I’ve been working on for a long time:
a free guide to...
a year ago
Hello! I’m excited to announce a project I’ve been working on for a long time:
a free guide to implementing your own DNS resolver in a weekend.
The whole thing is about 200 lines of Python, including implementing all of the
binary DNS parsing from scratch. Here’s the...
Seán Barry
Getting Started With Docker (Part 1)
What is docker? Why do I need it? How do I use it? If you're asking any of these questions, this...
over a year ago
What is docker? Why do I need it? How do I use it? If you're asking any of these questions, this article is for you.
Making software...
CSS: Indenting Text
CSS: Indenting Text
2019-04-05
A lot of developers tend to do the bare minimum when it comes to...
over a year ago
CSS: Indenting Text
2019-04-05
A lot of developers tend to do the bare minimum when it comes to implementing proper website typography. This isn't an insult - I'm happy that typography is given any thought at all during development, I just believe more can always be done to...
Max Countryman
Indie Web Stack of the Future
You're a soloprenuer building a SaaS in 2023. What does your ideal tech stack look like? There's a...
a year ago
You're a soloprenuer building a SaaS in 2023. What does your ideal tech stack look like? There's a few things that make indie development different and we should design our stack around our unique goals. Let's explore an ideal web stack we can build the future on.
Computer Things
An idea for teaching formal methods better
I was recently commissioned by a company to make a bespoke TLA+ workshop with a strong emphasis on...
4 months ago
I was recently commissioned by a company to make a bespoke TLA+ workshop with a strong emphasis on reading specifications. I normally emphasize writing specs, so this one will need a different approach.
While working on it, I had an idea that might make teaching TLA+— and other...
swyx's site RSS Feed
Waterfall
The worlds of software, business, and music use the word "Waterfall" incredibly differently and they...
over a year ago
The worlds of software, business, and music use the word "Waterfall" incredibly differently and they are completely ignorant of each other. I figured I would make a quick note to compare and contrast them!
bt RSS Feed
Quick and Dirty Theme Switcher
Quick and Dirty Theme Switcher
2020-06-04
Update: This article is no longer relevant since my blog...
over a year ago
Quick and Dirty Theme Switcher
2020-06-04
Update: This article is no longer relevant since my blog design has changed. I’m keeping this post up since it will still be useful for those wanting to implement a theme switcher on their own site.
I recently added a fairly...
David Heinemeier...
Every generation needs their own apocalypse
Danish 8th, 9th, and 10th graders vote in a mock election every year in Denmark. The results for...
10 months ago
Danish 8th, 9th, and 10th graders vote in a mock election every year in Denmark. The results for 2024 were a startling refutation of the idea that young people must be inherently left-leaning. The dominating winner was Liberal Alliance, a center-right party that speaks to the...
Vadim Kravcenko
✍️ Being an Amateur
When you’re an expert, you’re so far from the realities of the beginners that your advice might not...
over a year ago
When you’re an expert, you’re so far from the realities of the beginners that your advice might not be useful. […]
The post ✍️ Being an Amateur appeared first on Vadim Kravcenko.
bt RSS Feed
Goodbye CSS Preprocessors
Goodbye CSS Preprocessors
2017-09-07
I have been using preprocessors across all my side projects...
over a year ago
Goodbye CSS Preprocessors
2017-09-07
I have been using preprocessors across all my side projects since they first popped onto the scene. Sass, Stylus, LESS — you name the CSS preprocessor and I’ve most likely used it because CSS preprocessors are awesome.
But that all changes...
alexwlchan
How we do bulk analysis of our Prismic content
At work, we use Prismic as a headless CMS for our public website.
If you see images or text that...
over a year ago
At work, we use Prismic as a headless CMS for our public website.
If you see images or text that aren’t part of the catalogue, they’re probably managed through Prismic.
To help us manage our growing Prismic library, we’ve built a number of tools and scripts to analyse our content...
swyx's site RSS Feed
How rollup-plugin-svelte Works
Svelte is often thought of as a compiler. But really it is a compiler within a bundler.
over a year ago
Svelte is often thought of as a compiler. But really it is a compiler within a bundler.
ntietz.com blog
I'm taking a sabbatical and attending Recurse Center!
It's been almost a decade since I graduated from college.
In that time, I've worked at three...
over a year ago
It's been almost a decade since I graduated from college.
In that time, I've worked at three startups, co-founded a non-profit immigration tech company, consulted for the United Nations, and noped out of grad school after one semester (twice!).
I've also struggled with depression...
Seldo.com
You Will Never Be A Full Stack Developer
over a year ago
Julia Evans
New talk: Learning DNS in 10 years
Here’s a keynote I gave at RubyConf Mini last year: Learning DNS in 10 years.
It’s about strategies...
a year ago
Here’s a keynote I gave at RubyConf Mini last year: Learning DNS in 10 years.
It’s about strategies I use to learn hard things. I just noticed that they’d
released the video the other day, so I’m just posting it now even though I gave
the talk 6 months ago.
Here’s the video, as...
Making software...
Transferring Media from macOS to a Jellyfin Server (Raspberry Pi 4)
Transferring Media from macOS to a Jellyfin Server (Raspberry Pi 4)
2022-03-12
I run a personal...
over a year ago
Transferring Media from macOS to a Jellyfin Server (Raspberry Pi 4)
2022-03-12
I run a personal media server using Jellyfin on a Raspberry Pi 4 in my home. It's pretty great and works well across most devices - Google TV, iOS and Android devices, Chromebooks, etc.
The only small...
Steve Klabnik
Today is my first day at Oxide Computer Company
over a year ago
Liz Denys
Sometimes, the outside is inside
Just a few pages off the bustling infinite corridor, there's another hallway, but unlike the...
over a year ago
Just a few pages off the bustling infinite corridor, there's another hallway, but unlike the infinite, it has four-story-high glass ceilings, my favorite piece favorite piece from the Percent-for-Art Program, and no traffic.
The exterior of building 6C fascinates me. The...
Josh Collinsworth
Ten tips for better CSS transitions and animations
Creating high-quality, polished web animations is both a science and an art. This post covers the...
a year ago
Creating high-quality, polished web animations is both a science and an art. This post covers the best things I've learned over the last decade of crafting web UIs.
The Pragmatic...
Is the “AI developer”a threat to jobs – or a marketing stunt?
One startup released “the first AI software engineer,” while another aims to build a “superhuman...
9 months ago
One startup released “the first AI software engineer,” while another aims to build a “superhuman software engineer.” As intimidating as these sound: what if it’s more marketing than reality?
37signals Dev
Basecamp code runs 18% faster with YJIT
Basecamp runs ~18% faster with YJIT. In this post I’ll share our setup, and the performance...
a year ago
Basecamp runs ~18% faster with YJIT. In this post I’ll share our setup, and the performance improvements we achieved.
Our setup
Basecamp is currently running Ruby 3.3.0-preview3 and Rails Edge (master branch).
We configure YJIT in our servers via RUBYOPT=--yjit-disable...
37signals Dev
The radiating programmer
You are an individual contributor at heart. You like writing code and solving technical problems....
a year ago
You are an individual contributor at heart. You like writing code and solving technical problems. You dislike meetings and ceremony. Here’s what you can do to maximize what you like and minimize what you don’t: radiate information.
The daily standup meetings that Scrum...
Coding Horror
Building a PC, Part IX: Downsizing
Hard to believe that I've had the same PC case since 2011, and my last serious upgrade was in 2015....
over a year ago
Hard to believe that I've had the same PC case since 2011, and my last serious upgrade was in 2015. I guess that's yet another sign that the PC is over, because PC upgrades have gotten really boring. It took 5 years for me to muster
Josh Comeau's blog
The Surprising Truth About Pixels and Accessibility
“Should I use pixels or rems?”. In this comprehensive blog post, we'll answer this question once and...
over a year ago
“Should I use pixels or rems?”. In this comprehensive blog post, we'll answer this question once and for all. You'll learn about the accessibility implications, and how to determine the best unit to use in any scenario.
PostHog's RSS Feed
PostHog is now available on Segment!
We're happy to announce that PostHog is now available as a destination on Segment. Segment is a...
over a year ago
We're happy to announce that PostHog is now available as a destination on Segment. Segment is a platform that works as an integrated data pipeline to…
TokyoDev
2019 International Developer in Japan Survey Results
*This survey has become a yearly thing. Browse [all our survey results](/insights).*
If you're an...
over a year ago
*This survey has become a yearly thing. Browse [all our survey results](/insights).*
If you're an international software developer looking for a job in Japan, it can be hard to tell what your market rate is. Sure, there's data (in Japanese) for the market as a whole, but that...
Neil Panchal
Berkeley Mono Font Variant Popularity
Berkeley Mono Typeface
Absolutely thrilled by the response after Hacker News launch of Berkeley...
over a year ago
Berkeley Mono Typeface
Absolutely thrilled by the response after Hacker News launch of Berkeley Mono Typeface. I am truly humbled by the feedback, interest and people that have keen interest in typography.
Berkeley Mono Font Variants
Quick update on people asking what's the...
TokyoDev
On the Value of Software
One of the biggest challenges in moving from a software developer to entrepreneur has been changing...
over a year ago
One of the biggest challenges in moving from a software developer to entrepreneur has been changing my perception of the value of software. As a developer, the underlying assumption was the more functionality software had, the more valuable it was. This proposition was...
ntietz.com blog
A student asked how I keep us innovative. I don't.
Last week, I did a Q&A session for a friend's security class.
One of the students asked a question...
a year ago
Last week, I did a Q&A session for a friend's security class.
One of the students asked a question that I loved.
They asked something like, "As a principal engineer, how do you make sure your company stays at the forefront of innovation?"
There are two reasons I love this...
Words and Buttons...
Rational interpolation
Rational interpolation is a step forward from polynomial interpolation towards rational splines....
9 months ago
Rational interpolation is a step forward from polynomial interpolation towards rational splines. With rational interpolation, you can build functions that run through a set of points and also have vertical asymptotes whenever you want. With this capability, you can now model...
bt RSS Feed
Pure CSS Simple Dropdown Plugin
Pure CSS Simple Dropdown Plugin
2018-09-20
I find myself blowing away default browser select styling...
over a year ago
Pure CSS Simple Dropdown Plugin
2018-09-20
I find myself blowing away default browser select styling and implementing my own custom dropdowns far more often than I’d like. So, I recently created a very simple and clean component using just pure CSS.
Check out the CodePen below...
macwright.com
Hooking up search results from Astro Starlight in other sites
At Val Town, we recently introduced a command-k menu, that “omni” menu that sites have. It’s pretty...
8 months ago
At Val Town, we recently introduced a command-k menu, that “omni” menu that sites have. It’s pretty neat. One thing that I thought would be cool to include in it would be search results from our documentation site, which is authored using Astro Starlight. Our main application is...
bt RSS Feed
Improving Github's New Design
Improving Github’s New Design
2020-07-07
Like many other Github users, I am not a big fan of their...
over a year ago
Improving Github’s New Design
2020-07-07
Like many other Github users, I am not a big fan of their recent repository page redesign. In my mind it seems like a change just for the sake of change - the original UI worked perfectly fine.
Sigh.
I was planning on recreating the...
alexwlchan
Launching a rocket in the worst possible way
Last month, NASA made headlines as they (finally) launched their SLS rocket as part of the Artemis 1...
over a year ago
Last month, NASA made headlines as they (finally) launched their SLS rocket as part of the Artemis 1 mission.
The long and expensive development of SLS has been the subject of much debate, and caused a lot of online rage.
I will now induce similar rage at a fraction of the...
A Smart Bear
Business Advice Plagued by Survivor Bias
Advice from "successful entrepreneurs" might be unreliable due to Survivor Bias. What's real, and...
a year ago
Advice from "successful entrepreneurs" might be unreliable due to Survivor Bias. What's real, and what's random?
Irrational...
Performance & Compensation (for Eng Execs).
Uber’s original performance process was called “T3B3” and was remarkably simple: write the...
a year ago
Uber’s original performance process was called “T3B3” and was remarkably simple: write the individuals top 3 strengths, and top 3 weaknesses, and share the feedback with them directly in person. There was a prolonged fight against even documenting the feedback, which was viewed...
Mahmoud Felfel's...
Logical Fallacies, Biases, and Useful Heuristics
A list of logical fallacies and biases I found useful for a better understanding of human behavior...
over a year ago
A list of logical fallacies and biases I found useful for a better understanding of human behavior and decision making.
Epic Web Dev
React Server Components: An Optimistic Future (article)
React Server Components are going to improve the way we build web applications in a huge way... Once...
5 months ago
React Server Components are going to improve the way we build web applications in a huge way... Once we nail the abstractions...
Elad Blog
The False Narrative Around Theranos
One of the interesting aspects of the Theranos trial is the degree to which some folks are buying...
over a year ago
One of the interesting aspects of the Theranos trial is the degree to which some folks are buying into part of the defense's narrative that "Theranos was just acting like every Silicon Valley startup". This is of course blatantly false, but it is being adopted as some form of...
Confessions of a...
What Happens When Python Starts Up? CPython Runtime Internals
CPython JIT Internals, Part 1: What is the Runtime and How is it initialized?
8 months ago
CPython JIT Internals, Part 1: What is the Runtime and How is it initialized?
PostHog's RSS Feed
Feature flag best practices and tips (with examples)
Feature flags, aka feature toggles, are awesome. New feature for your beta test group? Use a feature...
a year ago
Feature flags, aka feature toggles, are awesome. New feature for your beta test group? Use a feature flag. Testing multiple variants of a new UX? Use…
Chris Nicholas
Live cursors with Liveblocks & Next.js
Displaying other users' cursors live on-screen has always been tricky to implement... but no longer!...
over a year ago
Displaying other users' cursors live on-screen has always been tricky to implement... but no longer! Using Liveblocks and Next.js we can get it working in a matter of minutes.
A Beautiful Site
Find and replace hyperlinks and email addresses in PHP
These two PHP functions use regular expressions to add the appropriate HTML anchor tags around...
over a year ago
These two PHP functions use regular expressions to add the appropriate HTML anchor tags around hyperlinks and email addresses in $string.
PHP code #
function parseHyperlinks($string) {
// Add tags around all hyperlinks in $string
return...
Vladimir Klepov as a...
The complete guide to safe type narrowing in TypeScript
Say I'm building a TODO app with two tabs: done and pending tasks. To make the app routable, I put...
a year ago
Say I'm building a TODO app with two tabs: done and pending tasks. To make the app routable, I put the active tab into the ?tab query parameter, so that mytodo.io?tab=done takes me directly to the done tasks. I implement routing like this (pardon my hand-coded querystring...
Jim Nielsen’s Blog
Get You Some Practical Accessibility
Sara has been working on a new course titled Practical Accessibility and it is available for...
a year ago
Sara has been working on a new course titled Practical Accessibility and it is available for pre-order right now.
I’ve never met Sara in person, but have been an online follower for some time. She is one of those people who has the discipline and eye to make everything they...
Computer Things
Goodhart's Law in Software Engineering
Blog Hiatus
You might have noticed I haven't been updating my website. I haven't even looked at any...
3 months ago
Blog Hiatus
You might have noticed I haven't been updating my website. I haven't even looked at any of my drafts for the past three months. All that time is instead going into Logic for Programmers. I'll get back to the site when that's done or in 2025, whichever comes first....
David Heinemeier...
Optimize for bio cores first, silicon cores second
A big part of the reason that companies are going ga-ga over AI right now is the promise that it...
3 months ago
A big part of the reason that companies are going ga-ga over AI right now is the promise that it might materially lower their payroll for programmers. If a company currently needs 10 programmers to do a job, each have a cost of $200,000/year, then that's a $2m/year problem. If AI...
The Changelog
Using git-annex for Data Archiving
In my recent post about data archiving to removable media, I laid out the difference between backing...
a year ago
In my recent post about data archiving to removable media, I laid out the difference between backing up and archiving, and also said I’d evaluate git-annex and dar. This post evaluates git-annex. The next will look at dar, and then I’ll make a comparison post. What is git-annex?...
Steve Klabnik
We forget that open source is made of people
over a year ago
Ognjen Regoje •...
Do forgettable work
There was a great post about doing unforgettable work. Absolutely. Go above and beyond. Do what’s...
11 months ago
There was a great post about doing unforgettable work. Absolutely. Go above and beyond. Do what’s right.
But also, do forgettable work. Work that you won’t remember the following week.
Do a lot of it.
In fact, do at least 30 minutes of utterly forgettable work on something you’re...
Ink & Switch
02 · Writing prose
Writers of books, blog posts, and science papers could benefit from powerful version control.
10 months ago
Writers of books, blog posts, and science papers could benefit from powerful version control.
A Beautiful Site
Is your product the reason your startup is failing?
The idea of launching a product, running your own business, and being your own boss is very...
over a year ago
The idea of launching a product, running your own business, and being your own boss is very appealing. Perhaps that's why so many people risk doing it. The problem is, many of them don't succeed.
There are hundreds of reasons a startup can fail, but let's focus on one for a...
Maggie Appleton
A Naive Exploration of Computer-Supported Collaborative Learning
over a year ago
the jsomers.net blog
The best general advice on earth
These are excerpts (emphasis mine) from William James's 1890 classic, Principles of Psychology,...
over a year ago
These are excerpts (emphasis mine) from William James's 1890 classic, Principles of Psychology, Chapter IV, "Habit": The great thing, then, in all education, is to make our nervous system our ally instead of our enemy. It is to fund and capitalize our acquisitions, and live at...
HTMHell
My favourite colour is Chuck Norris red
by Declan Chidlow
Setting the colour of text on a webpage is usually a simple affair involving...
2 days ago
by Declan Chidlow
Setting the colour of text on a webpage is usually a simple affair involving whipping it out the good ol' CSS color property. But this is HTMHell, dammit. None of that wishy-washy CSS nonsense here. No siree. We use HTML as the good lord intended and shalln't...
swyx's site RSS Feed
Bring Back Short Stories
There was a time, before the screens took over, when people read these things called "books"....
11 months ago
There was a time, before the screens took over, when people read these things called "books". Remarkably efficient things. Always-on display. Could survive dropping from a great height. Somewhat fragile but who cares when you could mass produce thousands of the things for...
Making software...
Stop Using Sticky Navigation on Mobile
Stop Using Sticky Navigation on Mobile
2019-10-06
Stop styling your web elements to be "sticky" on...
over a year ago
Stop Using Sticky Navigation on Mobile
2019-10-06
Stop styling your web elements to be "sticky" on mobile. This creates a horrible experience for your users and also looks like trash from a UI perspective. Don't style your navigation (or any components for that matter) to be...
Joel on Software
HASH: a free, online platform for modeling the world
Sometimes simulating complex systems is the best way to understand them. Read more "HASH: a free,...
over a year ago
Sometimes simulating complex systems is the best way to understand them. Read more "HASH: a free, online platform for modeling the world"
ntietz.com blog
Making it fast shouldn't be the last step
There's a common quote in the software world that you should "make it work, make it right, then make...
a year ago
There's a common quote in the software world that you should "make it work, make it right, then make it fast."1
This is a catchy aphorism, and it is often taken as a rule.
But in its short form, it misses some crucial nuance.
Let's unpack it to see what's missing, then how to do...