On Test Automation
PNSQC 2024 - experience report
While most of the clients I work with are based in Europe, over the last couple of years my client...
2 months ago
While most of the clients I work with are based in Europe, over the last couple of years my client base on the North American side of the Atlantic has slowly but surely started to grow, mainly in the United States. As someone who really enjoys working with and learning from...
Tyler Cipriani: blog
The beginner's guide to overcomplicating coffee ☕
Complicated coffee: plain and
simple.
There’s a scene in AMC’s “Breaking
Bad” where Gail Boetticher...
a year ago
Complicated coffee: plain and
simple.
There’s a scene in AMC’s “Breaking
Bad” where Gail Boetticher explains to Walter White how to make the
perfect cup of coffee. And it all sounds so plausible—there’s a
perfect coffee, and science will magic it for us.
That whole idea, scene,...
the singularity is...
Three Class Society
I heard something during the trucker protest in Canada along the lines of: “Most people here don’t...
a year ago
I heard something during the trucker protest in Canada along the lines of: “Most people here don’t want to live in a free society. A free society requires personal responsiblity. People here want to be managed. They want a ruling class.”
I heard something similar once from a...
bt RSS Feed
Minimal CSS: Dropdown Menu
Minimal CSS: Dropdown Menu
2019-04-26
I love the idea of stripping away as much CSS as possible,...
over a year ago
Minimal CSS: Dropdown Menu
2019-04-26
I love the idea of stripping away as much CSS as possible, while still maintaining the original UI concept. Let’s build out a demo example with a simple menu dropdown element.
Interesting facts about our final CSS menu:
Total weight 121 bytes...
swyx's site RSS Feed
Jan 2020 Recap
a belated recap, highlighting my best writing over the past couple months
over a year ago
a belated recap, highlighting my best writing over the past couple months
samwho.dev
Move Your Bugs to the Left
We all want to ship bug-free software. No-one wants to be the person that
introduced a show-stopping...
over a year ago
We all want to ship bug-free software. No-one wants to be the person that
introduced a show-stopping bug the week before release. To help with this, I’ve
come up with a simple way to visualise the points in the development process
that you can find bugs.
The further to the left...
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...
Irrational...
Getting lucky isn't a plan.
One piece of flippant commentary that you’ll hear occasionally is that it’s “Better to be lucky than...
a year ago
One piece of flippant commentary that you’ll hear occasionally is that it’s “Better to be lucky than to be good.” On an individual level, it’s almost certainly true that being very lucky outperforms being quite good: I certainly know a number of folks who are financially...
37signals Dev
The gift of constraints
One of the hardest things about shipping products is balancing this contradiction: you want to do...
3 months ago
One of the hardest things about shipping products is balancing this contradiction: you want to do the best possible work everywhere, but optimizing every piece takes time, and time is finite.
I’ve done a poor job here countless times in my career. And I have seen many others...
swyx's site RSS Feed
Profile on Livecycle.io Devx Project
I was interviewed for Livecycle's DevX interview series...
over a year ago
I was interviewed for Livecycle's DevX interview series [here](https://livecycle.io/blogs/devx-project-swyx/). Reproducing for posterity.
Irrational...
Eng org seniority-mix model.
One of the trademarks of private equity ownership is the expectation that either the company...
a month ago
One of the trademarks of private equity ownership is the expectation that either the company maintains their current margin
and grows revenue at 25-30%, or they instead grow slower and increase their free cash flow year over year.
In many organizations, engineering costs have a...
Julia Evans
Behind "Hello World" on Linux
Today I was thinking about – what happens when you run a simple “Hello World”
Python program on...
a year ago
Today I was thinking about – what happens when you run a simple “Hello World”
Python program on Linux, like this one?
print("hello world")
Here’s what it looks like at the command line:
$ python3 hello.py
hello world
But behind the scenes, there’s a lot more going on....
David Heinemeier...
Back to America
After spending much of the past three years in Denmark, our family is returning to America full time...
a year ago
After spending much of the past three years in Denmark, our family is returning to America full time this summer. The original reasons for temporarily emigrating – the prolonged school lockdowns and other pandemic madness – have long since evaporated, and we've had a solid chance...
TokyoDev
A four-stage approach for hiring women on your engineering team
“We’d love to have woman engineers on our team, but we don’t get any applying to us” is a common...
9 months ago
“We’d love to have woman engineers on our team, but we don’t get any applying to us” is a common sentiment I’ve heard from startup founders, both in Japan as well as my home country, the United States.
If you’re in a similar position, and looking to increase the gender...
ᕕ( ᐛ )ᕗ Herman's...
Why Pictures
For a brief period circa 2016 I wrote and published a weekly webcomic. I wanted to run a successful...
9 months ago
For a brief period circa 2016 I wrote and published a weekly webcomic. I wanted to run a successful webcomic along the lines of Poorly Drawn Lines, Oglaf, or The Oatmeal. I love reading these and am always thrilled when one pops up on my RSS feed.
Prior to this experiment I...
swyx's site RSS Feed
The Swyx.io 2022 Rewrite
Discussing the 2022 migration of swyx.io to SvelteKit and GitHub Issues
over a year ago
Discussing the 2022 migration of swyx.io to SvelteKit and GitHub Issues
bt RSS Feed
Looping Through Jekyll Collections
Looping Through Jekyll Collections
2022-08-12
I recently needed to add a couple new items to my...
over a year ago
Looping Through Jekyll Collections
2022-08-12
I recently needed to add a couple new items to my wife’s personal recipe website (cookingwith.casa) which I hadn’t touched in quite a while. The Jekyll build still worked fine, but I realized I was statically adding each collection by...
Engineer’s Codex
The most valuable trait of great software engineers
A mindset shift that changed the way I approach software development. The #1 trait of valuable...
a year ago
A mindset shift that changed the way I approach software development. The #1 trait of valuable software engineers.
Cognitive...
GPT-4's rebuttal to Uncensored Models
I asked GPT-4 to respond to my previous article "Uncensored Models" because it is more likely to...
a year ago
I asked GPT-4 to respond to my previous article "Uncensored Models" because it is more likely to provide civil discourse rather than the shrill demagoguery that my human opponents have tended to employ. I found it interesting and both sides have validity. But my argument is...
Remains of the Day
Catch up
It has been some time since I posted here. Outside of lots of meetings around the country and some...
over a year ago
It has been some time since I posted here. Outside of lots of meetings around the country and some trips with family and friends, a few creative projects have stolen the lion's share of my free time.
While I won't publish some Medium screed on how spending less time on social...
bt RSS Feed
Making Tables Responsive With Minimal CSS
Making Tables Responsive With Minimal CSS
2019-06-11
Update (Oct 2019): @aardrian wrote a previous...
over a year ago
Making Tables Responsive With Minimal CSS
2019-06-11
Update (Oct 2019): @aardrian wrote a previous post about how changing the display properties on tables can impact screen readers. I highly recommend his excellent article Tables, CSS Display Properties, and ARIA
I find that the...
TokyoDev
Build-Measure-Learn is a Dangerous Idea
Tonight I had a chance to talk with one of my personal heroes,...
over a year ago
Tonight I had a chance to talk with one of my personal heroes, [Eric
Ries](http://www.startuplessonslearned.com/). While talking to him, I
realized one of the pitfalls of [the...
Vadim Kravcenko
Managing difficult software engineers
In the grand scheme of a software engineering path, there’s a thread that weaves through every...
a year ago
In the grand scheme of a software engineering path, there’s a thread that weaves through every project, every failure, and […]
The post Managing difficult software engineers appeared first on Vadim Kravcenko.
swyx's site RSS Feed
Working The Reverse 9 to 5
Having weird sleeping hours is working out... very well for me.
over a year ago
Having weird sleeping hours is working out... very well for me.
Liz Denys
Recruitment is hard, part 2: goals and values
I spend a lot of time thinking about recruitment issues these days. This could be because I'm...
over a year ago
I spend a lot of time thinking about recruitment issues these days. This could be because I'm involved in a few student groups that have been spending a handful of time talking about it lately.
While a good portion of discussion about recruitment is (and should be) focused on...
The Changelog
Dead USB Drives Are Fine: Building a Reliable Sneakernet
“OK,” you’re probably thinking. “John, you talk a lot about things like Gopher and personal radios,...
over a year ago
“OK,” you’re probably thinking. “John, you talk a lot about things like Gopher and personal radios, and now you want to talk about building a reliable network out of… USB drives?” Well, yes. In fact, I’ve already done it. What is sneakernet? Normally, “sneakernet” is a sort of...
bt RSS Feed
Avoiding Featurism
Avoiding Featurism
2022-10-14
I rather enjoy the term “featurism”. I came across this term while...
over a year ago
Avoiding Featurism
2022-10-14
I rather enjoy the term “featurism”. I came across this term while reading the wonderful article Why I don’t use Netscape, which the author credits to Bernd Paysan. Although it sums up the current “digital product” industry quite well the more...
David Heinemeier...
Fonts don't have to look awful on Windows
I always thought it was a software problem — or at least a difference of aesthetics expressed in...
9 months ago
I always thought it was a software problem — or at least a difference of aesthetics expressed in software. But it turns out the reason many Mac owners, including yours truly, so strongly dislike how fonts typically look on Windows is actually a hardware problem!
See, every Mac...
the jsomers.net blog
You’re probably using the wrong dictionary
The way I thought you used a dictionary was that you looked up words you've never heard of, or whose...
over a year ago
The way I thought you used a dictionary was that you looked up words you've never heard of, or whose sense you're unsure of. You would never look up an ordinary word -- like example, or sport, or magic -- because all you'll learn is what it means, and that you already know....
Stephen Wolfram...
LLM Tech and a Lot More: Version 13.3 of Wolfram Language and Mathematica
The Leading Edge of 2023 Technology … and Beyond Today we’re launching Version 13.3 of Wolfram...
a year ago
The Leading Edge of 2023 Technology … and Beyond Today we’re launching Version 13.3 of Wolfram Language and Mathematica—both available immediately on desktop and cloud. It’s only been 196 days since we released Version 13.2, but there’s a lot that’s new, not least a whole...
Vladimir Klepov as a...
Seven habits of bad interviewers
I’ve been to plenty of bad interviews. Sometimes, only some questions are bad, but usually it goes...
over a year ago
I’ve been to plenty of bad interviews. Sometimes, only some questions are bad, but usually it goes further than that. Bizarre questions like “what’s the difference between a number and an array” are just a symptom of deeper issues.
Let’s take a step back — why are we...
Irrational...
Culture vs systems.
Recently, I had a chat with a friend who was frustrated by their company culture. They’d been...
a year ago
Recently, I had a chat with a friend who was frustrated by their company culture. They’d been pushing the company to operate with more urgency, but didn’t feel like it was landing. “How do we,” they wondered, “get the team to recognize that urgency is essential to our success?”...
Making software...
Animated Card Tiles
Animated Card Tiles
2019-02-27
The design trend of using "cards" or "tiles" to display interactive...
over a year ago
Animated Card Tiles
2019-02-27
The design trend of using "cards" or "tiles" to display interactive sections/article headings in an app or website remains a popular choice among designers. So, let's build a set of animated cards with only HTML & CSS.
What we will be building...
Nelson's Weblog
Windy.com is good weather
I’ve found a mobile app for weather I finally like enough to be happy about paying for. Windy, best...
a year ago
I’ve found a mobile app for weather I finally like enough to be happy about paying for. Windy, best known for its website. The mobile app has extra phone features like notifications and home screen widgets. Also its UI is a little more understandable.
Windy makes a strong first...
Basta’s Notes
What have I been up to lately?
Just a little update, because I've been quiet
a year ago
Just a little update, because I've been quiet
Daniel Marino
Deploying My Eleventy Site to GitHub Pages
I really like GitHub Pages, and have used it to host my site for a while. The biggest challenge of...
over a year ago
I really like GitHub Pages, and have used it to host my site for a while. The biggest challenge of switching my site to Eleventy was getting deployments to GitHub pages set up. I suppose I could have built my site locally, and then push that to the gh-pages branch, but that felt...
Kevin Chen
How to create a digital Suica card in Apple Pay (2024 Update)
Suica is a smart card used to pay at train stations and convenience
stores in Japan. In 2016, Apple...
over a year ago
Suica is a smart card used to pay at train stations and convenience
stores in Japan. In 2016, Apple added support for Suica to Apple Pay on iPhone 7
devices sold in Japan. In 2017, Apple added support to all iPhone 8/X and later, regardless of where they’re sold.1
Virtual Suica...
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...
alexwlchan
Getting the path to the note I have open in Obsidian
I have a bunch of Python scripts I use to clean up text files, and I call them by passing the path...
11 months ago
I have a bunch of Python scripts I use to clean up text files, and I call them by passing the path to the text file as an argument, for example:
$ python clean_up_text.py /path/to/text/file.md
This is mostly fine, but finding that path is a bit annoying when I want to run them...
ntietz.com blog
Reflecting on 2023, preparing for 2024
This is one of those cliched posts:
Reflection on the year that's ending, reviewing last year's...
11 months ago
This is one of those cliched posts:
Reflection on the year that's ending, reviewing last year's goals, and talking about hopes and goals for next year.
They're cliche, and they're also useful.
The planning and reflecting process is a useful one, and sharing openly means other...
Computer Things
A brief introduction to interval arithmetic
You've got a wall in your apartment and a couch. You measure the wall with a ruler and get 7 feet,...
6 months ago
You've got a wall in your apartment and a couch. You measure the wall with a ruler and get 7 feet, then you measure the couch and get 7 feet. Can you fit the couch against that wall?
Maybe. If the two measure is exactly 7 feet than sure, 7 ≤ 7. But you probably didn't line your...
EXPLAIN EXTENDED
Happy New Year: solving the Rubik’s Cube in SQL
Explain Extended New Year's post solving the Rubik's Cube in SQL
The post Happy New Year: solving...
a year ago
Explain Extended New Year's post solving the Rubik's Cube in SQL
The post Happy New Year: solving the Rubik’s Cube in SQL appeared first on EXPLAIN EXTENDED.
Steve Klabnik
Returning to Free Software, a guide
over a year ago
Vadim Kravcenko
🏆 Promotion-based development
While researching how to create a proper career path for employees and the different ways companies...
over a year ago
While researching how to create a proper career path for employees and the different ways companies do promotions, I stumbled […]
The post 🏆 Promotion-based development appeared first on Vadim Kravcenko.
The Pragmatic...
Behind the Scenes with Two New Salary Transparency Websites
On the back of US salary transparency regulations, two new salary transparency websites have...
a year ago
On the back of US salary transparency regulations, two new salary transparency websites have launched, built by the creators of Levels.fyi and Layoffs.fyi. I talked to both teams to learn how they were developed.
swyx's site RSS Feed
A Walkthrough of *that* React Suspense Demo
Annotated commentary on the code behind the Movie search demo featuring React Suspense
over a year ago
Annotated commentary on the code behind the Movie search demo featuring React Suspense
Patrick Kayongo
Online Communication & Social Hierarchy
There are a plethora of ways to communicate online, both with people you know, and people you’ve...
a year ago
There are a plethora of ways to communicate online, both with people you know, and people you’ve never met. But something the makers of these tools fail to mould to, is the social hierarchy and human structures in which they are used. There are three examples that come to mind....
PostHog's RSS Feed
Introducing Phil Leggetter, our new head of Developer Relations
We’re proud to announce a new hire; Phil Leggetter will head up Developer Relations at PostHog....
over a year ago
We’re proud to announce a new hire; Phil Leggetter will head up Developer Relations at PostHog. Developer relations sits at the intersection of…
Vadim Kravcenko
Dealing with complexity
This article is part of the series called Founders Guide which I’m writing currently to help...
over a year ago
This article is part of the series called Founders Guide which I’m writing currently to help early-stage founders tackle the problems they […]
The post Dealing with complexity appeared first on Vadim Kravcenko.
alexwlchan
Preserving pixels in Paris
Last month, I was in Paris for the IIPC Web Archiving Conference, a two-day event to discuss the...
7 months ago
Last month, I was in Paris for the IIPC Web Archiving Conference, a two-day event to discuss the preservation of websites and social media.
It was my first time attending, and I was there with both a professional and a personal interest.
This post has some thoughts and photos...
Coding Horror
Thunderbolting Your Video Card
When I wrote about The Golden Age of x86 Gaming, I implied that, in the future, it might be an...
over a year ago
When I wrote about The Golden Age of x86 Gaming, I implied that, in the future, it might be an interesting, albeit expensive, idea to upgrade your video card via an external Thunderbolt 3 enclosure.
I'm here to report that the future is now.
Yes, that's
Tony Finch's blog
An update on leap seconds
It has been a couple of years since my previous blog post about leap
seconds, though I have been...
over a year ago
It has been a couple of years since my previous blog post about leap
seconds, though I have been tweeting on the topic fairly
frequently: see my page on date, time, and leap seconds for an
index of threads. But Twitter now seems a lot less likely to stick
around, so I’ll aim to...
A Smart Bear
Building in public forces true competitive advantage
“Building in public” is increasingly popular. It’s fun to have strangers cheering you on, and it...
over a year ago
“Building in public” is increasingly popular. It’s fun to have strangers cheering you on, and it creates a self-imposed accountability. But doesn’t it ruin competitive advantage when your competitors can steal your source code and know the salaries of your employees and whether...
Dan Slimmon
Clinical troubleshooting: diagnose any production issue, fast.
Over the years, I've developed a reliable method for harnessing the diagnostic power of groups. My...
9 months ago
Over the years, I've developed a reliable method for harnessing the diagnostic power of groups. My approach is derived from a different field in which groups of experts with various levels of context need to reason together about problems in a complex, dynamic system:...
Miguel Carranza
My role as a founder CTO: Year Four
It has been one year since I wrote the blog post where I shared the learnings from the first three...
over a year ago
It has been one year since I wrote the blog post where I shared the learnings from the first three years of my journey as a first-time technical founder.
2021 was not an exception, and my role as RevenueCat’s CTO kept evolving quite a lot. As expected, my job did not get any...
macwright.com
Recently
November was another packed month of travel, work, and making the most
of New York before the snow...
over a year ago
November was another packed month of travel, work, and making the most
of New York before the snow takes over.
Reading
I finally finished Barbarian Days.
I think it took over a month to get through it - kept losing momentum by
taking a few days off from reading during a trip. It...
MMapped blog
Good names form Galois connections
8 months ago
wingolog
preliminary notes on a nofl field-logging barrier
When you have a generational collector, you aim to trace only the part
of the object graph that has...
2 months ago
When you have a generational collector, you aim to trace only the part
of the object graph that has been allocated recently. To do so, you
need to keep a : a set of old-to-new edges, used as
roots when performing a minor collection. A language run-time maintains this set...
TokyoDev
Converting a Japanese Sole Proprietorship to a Company
As I talk about in my article on [creating a company in...
11 months ago
As I talk about in my article on [creating a company in Japan](https://www.tokyodev.com/articles/creating-company-japan), I initially ran TokyoDev as a sole proprietorship, but in late 2022 converted it to a company. This involved three steps:
1. Incorporate TokyoDev Inc, a...
TokyoDev
Calculating your growth ceiling
When you have a business where customers subscribe to a monthly plan, and you have new customers...
over a year ago
When you have a business where customers subscribe to a monthly plan, and you have new customers signing up every month, it feels like your revenue will keep growing forever. However, as customers will also cancel their subscriptions (churn), eventually your growth will...
ntietz.com blog
TIL: 8 versions of UUID and when to use them
About a month ago1, I was onboarding a friend into one of my side project codebases and she asked me...
5 months ago
About a month ago1, I was onboarding a friend into one of my side project codebases and she asked me why I was using a particular type of UUID.
I'd heard about this type while working on that project, and it's really neat.
So instead of hogging that knowledge for just us, here it...
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...
Joel Gascoigne
Avoid the 50/50 co-founder model - here's why
* Tweet [https://twitter.com/share]
*
* Buffer [http://bufferapp.com/add]
*
I recently...
over a year ago
* Tweet [https://twitter.com/share]
*
* Buffer [http://bufferapp.com/add]
*
I recently received an email asking some advice about co-founders, specifically
about whether a 50/50 ownership split makes sense for a startup.
This is certainly a topic which has had heated...
ntietz.com blog
Personnel update
This is inspired by receiving a "personnel update" when a friend was fired many years ago. It felt...
3 months ago
This is inspired by receiving a "personnel update" when a friend was fired many years ago. It felt coldly impersonal for such a deeply personal event, so I imagined what it would be like if the same approach were taken to other deeply personal events.
* * *
Subject: Personnel...
Tony Finch's blog
On "the OSI deprogrammer"
Back in December, George Michaelson posted an item on the APNIC blog titled
“That OSI model refuses...
9 months ago
Back in December, George Michaelson posted an item on the APNIC blog titled
“That OSI model refuses to die”,
in reaction to Robert Graham’s “OSI Deprogrammer”
published in September. I had discussed the OSI Deprogrammer on Lobsters,
and George’s blog post prompted me to write an...
alexwlchan
Monki Gras 2024: Step… Step… Step…
Yesterday I gave a talk at Monki Gras 2024.
This year, the theme is “Prompting Craft: examining and...
9 months ago
Yesterday I gave a talk at Monki Gras 2024.
This year, the theme is “Prompting Craft: examining and discussing the art of the prompt in code and cultural creation”.
I did a talk about my experience of learning these new AI tools, and I draw comparisons to learning to dance.
This...
bt RSS Feed
ThriftyName: $5 Brand Names
ThriftyName: $5 Brand Names
2021-02-25
It’s been a while since I’ve written anything on this blog,...
over a year ago
ThriftyName: $5 Brand Names
2021-02-25
It’s been a while since I’ve written anything on this blog, but for good reason - I’ve been working on a handful of side projects. I plan to drip-feed release these projects over time, but for today I’m announcing ThriftyName.
What is...
Jim Nielsen’s Blog
LLMs and Naming Things
In Simon’s talk around practical use of LLMs, he quotes the famous saying about there being two hard...
a year ago
In Simon’s talk around practical use of LLMs, he quotes the famous saying about there being two hard problems in computer science: 1) cache invalidation and 2) naming things.
Then he unapologetically says the “naming things” problem is solved with LLMs. Here’s Simon:
[When asking...
A Smart Bear
How startups beat incumbents
A startup can beat a large, successful incumbent, if it does things the incumbent can not or will...
10 months ago
A startup can beat a large, successful incumbent, if it does things the incumbent can not or will not do. Here are those things.
HTMHell
#1 button disguised as a link
Bad code
<button role="link" title="Name of website" tabindex="0">
<img alt="Name of website"...
over a year ago
Bad code
<button role="link" title="Name of website" tabindex="0">
<img alt="Name of website" src="logo.jpg" title="Name of website">
</button>
Issues and how to fix them
Wrong usage of the button element. There’s an element for linking to external sites (<a>). Do not change...
bunnie's blog
Name that Ware, May 2024
The Ware for May 2024 is shown below. This is a guest ware, but I’ll reveal the contributor when I...
6 months ago
The Ware for May 2024 is shown below. This is a guest ware, but I’ll reveal the contributor when I reveal the ware next month, as the name and link would also lead to the solution.
PostHog's RSS Feed
How to start a growth team (as an engineer)
Thomas Owers knew nothing about growth engineering when he started the first growth team at ...
a year ago
Thomas Owers knew nothing about growth engineering when he started the first growth team at Let's Do This – a Y Combinator startup with $80M in…
Joel Gascoigne
The Heartbeat Podcast with Claire Lew
I recently the pleasure of being interviewed on the Heartbeat Podcast by Claire Lew. Listen above,...
over a year ago
I recently the pleasure of being interviewed on the Heartbeat Podcast by Claire Lew. Listen above, and check out the full transcript.
Josh Comeau's blog
Accessible Animations in React
I really love animation, but not everybody does. In fact, it can make some people literally sick! In...
over a year ago
I really love animation, but not everybody does. In fact, it can make some people literally sick! In this tutorial, we'll see how to ensure that we respect user preferences, and create animations that can be disabled.
Maggie Appleton
What the Fork is the React Virtual DOM
over a year ago
Tinloof - Blog
Tinloof design principles
Tinloof focuses on key principles to consistently create pleasant and practical designs.
We're not...
a year ago
Tinloof focuses on key principles to consistently create pleasant and practical designs.
We're not tied to any specific style - Swiss, Linear-like, neobrutalism, a certain typography or color palette.
Instead, we stick to basics that make our process smooth, please our users,...
Words and Buttons...
Honeycomb texture generator
It generates a seamless black and white honeycomb texture. There are a few options in the UI but if...
over a year ago
It generates a seamless black and white honeycomb texture. There are a few options in the UI but if you need more, there is some changeable code too. If you need more freedom, just get this thing on Github.
Blog System/5
Running GNU on DOS with DJGPP
Peeking under the covers to see how DJGPP manages to run GCC on DOS
10 months ago
Peeking under the covers to see how DJGPP manages to run GCC on DOS
Writing - Andreas...
Care about how the work is done
High performers care deeply not just about doing the work but how it’s
done.
11 months ago
High performers care deeply not just about doing the work but how it’s
done.
Julia Evans
Some Git poll results
A new thing I’ve been trying while writing this Git zine is doing a bunch of polls on Mastodon to...
8 months ago
A new thing I’ve been trying while writing this Git zine is doing a bunch of polls on Mastodon to learn about:
which git commands/workflows people use (like “do you use merge or rebase more?” or “do you put your current git branch in your shell prompt?”)
what kinds of problems...
Josh Comeau's blog
Let's Bring Spacer GIFs Back!
The 90s web gave us many delightful things: web rings, guestbooks, “under construction” animations,...
over a year ago
The 90s web gave us many delightful things: web rings, guestbooks, “under construction” animations, and spacer GIFs. In this article, we'll see how I use a Spacer component to solve common layout problems, and why it's often a great tool for the job in the modern web.
Daniel Immke's Blog...
Manifest V3’s foibles
You have probably heard rumblings about Chrome’s Manifest V3. If you haven’t, here’s what you need...
a year ago
You have probably heard rumblings about Chrome’s Manifest V3. If you haven’t, here’s what you need to know: Google has been developing a new…
Explained from First...
Number theory explained from first principles
over a year ago
somenice
AI Art is getting better
Adobe Firefly Express (beta) whatever “Text to Image” takes the old Colab Notebooks to a new refined...
a year ago
Adobe Firefly Express (beta) whatever “Text to Image” takes the old Colab Notebooks to a new refined level.However it’s still easy to cherry-pick “good” images for every 10 mediocre or just plain wrong images. Don’t trust the robots. PEACE. T.AKE IT IT ELASY! * All images...
EXPLAIN EXTENDED
Happy New Year: Conway’s Game of Life in SQL
Christmas divination: implementing Conway's Life in SQL
The post Happy New Year: Conway’s Game of...
over a year ago
Christmas divination: implementing Conway's Life in SQL
The post Happy New Year: Conway’s Game of Life in SQL appeared first on EXPLAIN EXTENDED.
Maggie Appleton
Testing Apps with Cypress
over a year ago
Jake Zimmerman
Abstract singleton class methods are an abomination
11 months ago
Cognitive...
Meet Samantha
https://huggingface.co/ehartford/samantha-7b
https://huggingface.co/ehartford/samantha-13b
https://h...
a year ago
https://huggingface.co/ehartford/samantha-7b
https://huggingface.co/ehartford/samantha-13b
https://huggingface.co/ehartford/samantha-33b
https://huggingface.co/ehartford/samantha-falcon-7b
https://huggingface.co/datasets/ehartford/samantha-data/blob/main/samantha-1.0.json
I have...
Making software...
The Wonders of Text Ellipsis
The Wonders of Text Ellipsis
2016-11-15
A common issue when working with constrained UI elements is...
over a year ago
The Wonders of Text Ellipsis
2016-11-15
A common issue when working with constrained UI elements is text overflowing outside of it's parent or breaking into addition lines (thus breaking the layout).
This is most commonly seen with the direct and placeholder values for input...
ntietz.com blog
return "reflections on a batch";
There's a tradition at Recurse Center of writing a Return Statement after your batch.
I'm not sure...
over a year ago
There's a tradition at Recurse Center of writing a Return Statement after your batch.
I'm not sure of the origin of the terminology, but it seems like it's a pun on the return statement in programming languages.
It's a great tradition, and it gives me a good motivator to reflect...
swyx's site RSS Feed
Pick Up What They Put Down
> Translations welcome!...
over a year ago
> Translations welcome! ([Português](https://meleu.github.io/artigos-traduzidos/aprenda-em-publico-hack.html))
bt RSS Feed
Shiny, Animated CSS Buttons
Shiny, Animated CSS Buttons
2021-04-27
Everyone can appreciate fancy, animated buttons - but often...
over a year ago
Shiny, Animated CSS Buttons
2021-04-27
Everyone can appreciate fancy, animated buttons - but often times they come with a performance cost: JavaScript. Luckily for us, we can create our very own shiny, animated buttons with pure CSS.
The Demo
Live CodePen Example
The...
Hixie's Natural Log
The Future is Flutter
Despite my departure from Google, I am not leaving Flutter — the great thing about open source and...
a year ago
Despite my departure from Google, I am not leaving Flutter — the great thing about open source and open standards is that the product and the employer are orthogonal. I've had three employers in my career, and in all three cases when I left my employer I continued my job. With...
Steve Klabnik
Living with a terrible taste in music
over a year ago
swyx's site RSS Feed
GraphQL Variables and Persisted Queries
My mistakes and insights on GraphQL Variables and Persisted Queries.
over a year ago
My mistakes and insights on GraphQL Variables and Persisted Queries.
Vladimir Klepov as a...
Why I always wrap Context.Provider and useContext
React context is a cool feature, and I use it a lot for injecting configuration and making container...
over a year ago
React context is a cool feature, and I use it a lot for injecting configuration and making container / child component APIs (think <RadioGroup /> + <RadioButton />). Unfortunately, out of the box Context comes with a limiting and not very convenient API. In most cases, I choose...
Ralph Ammer
What is a picture?
This article gives a phenomenological definition of what a picture is.
The post What is a picture?...
over a year ago
This article gives a phenomenological definition of what a picture is.
The post What is a picture? appeared first on Ralph Ammer.
Computer Things
State and time are the same thing
Time is state
Imagine I put an ordinary ticking quartz clock in an empty room. I walk in, and ten...
3 months ago
Time is state
Imagine I put an ordinary ticking quartz clock in an empty room. I walk in, and ten minutes later I walk out with two photograph prints.1 In the 1st one, the second hand is pointing at the top of the clock, in the 2nd it's pointing at the bottom. Are these two...
Marco.org
The future of the App Store
After the dust settles from the developer class-action settlement, the South Korean law, the JFTC...
over a year ago
After the dust settles from the developer class-action settlement, the South Korean law, the JFTC announcement, and the Apple v. Epic decision, I think the most likely long-term outcome isn’t very different from the status quo — and that’s a good thing.
Allowing external...
Stephen Wolfram...
How to Think Computationally about AI, The Universe and Everything
Transcript of a talk at TED AI on October 17, 2023, in San Francisco Human language. Mathematics....
a year ago
Transcript of a talk at TED AI on October 17, 2023, in San Francisco Human language. Mathematics. Logic. These are all ways to formalize the world. And in our century there’s a new and yet more powerful one: computation. And for nearly 50 years I’ve had the great privilege of...
Blog - Bitfield...
Generic types in Go
Golang generics open up a lot of exciting new possibilities for us as
programmers. In this...
a month ago
Golang generics open up a lot of exciting new possibilities for us as
programmers. In this tutorial, we’ll look at ways we can use type
parameters to define customised generic types.
Tyler Cipriani: blog
Just stop adding people.
“Communication is a sign of dysfunction.”
– Jeff Bezos, via Brad Stone, The
Everything Store
Slack...
a year ago
“Communication is a sign of dysfunction.”
– Jeff Bezos, via Brad Stone, The
Everything Store
Slack is a great way to destroy a workday.
You can lose whole days hammering out details with coworkers across a
few Slack threads.
But communication is the cost you pay for capacity—the...
alexwlchan
emptydir: look for (nearly) empty directories and delete them
I’ve posted a new command-line tool on GitHub: emptydir, which looks for directories which are empty...
6 months ago
I’ve posted a new command-line tool on GitHub: emptydir, which looks for directories which are empty or nearly empty, and deletes them.
This isn’t a completely trivial problem, because emptiness is deceptive.
Consider the following folder.
Finder tells us it has 0 items, so it...
A small freedom area...
Fixing the iterative damping interpolation in video games
As I'm exploring the fantastic world of indie game development lately, I end up
watching a large...
7 months ago
As I'm exploring the fantastic world of indie game development lately, I end up
watching a large number of video tutorials on the subject. Even though the
quality of the content is pretty variable, I'm very grateful to the creators
for it. That being said, I couldn't help...
A Smart Bear
What makes a strategy great
Most so-called "strategies" are vague, wishful thinking, written once and never seen again. Don't do...
a year ago
Most so-called "strategies" are vague, wishful thinking, written once and never seen again. Don't do that. These are the characteristics of great strategy.
Dan Slimmon
Incident, Inçident, Incidënt
When you deploy broken code, it may cause an incident. Then you'll have to declare an incident. And...
9 months ago
When you deploy broken code, it may cause an incident. Then you'll have to declare an incident. And don't forget to create an incident so customers can stay informed!
Ink & Switch
Embark: Dynamic documents for making plans
Gradually enriching a text outline with travel planning tools
a year ago
Gradually enriching a text outline with travel planning tools
bunnie's blog
Winner, Name that Ware March 2024
Last month’s ware was internals from a VCH-1006 passive hydrogen maser. KE5FX has published a great...
7 months ago
Last month’s ware was internals from a VCH-1006 passive hydrogen maser. KE5FX has published a great write-up about the unit, its history, and how it was repaired. I’ll give the prize to Hessel. The guess given was about as close as anything I could have done myself — a pretty...
swyx's site RSS Feed
Supervised Learning: Ensemble Learning and AdaBoost
Better together - how bootstrapping samples of data can work better than the entire dataset, and how...
over a year ago
Better together - how bootstrapping samples of data can work better than the entire dataset, and how to boost it even further, and faster
swyx's site RSS Feed
Everything You Hate About Clubhouse Is Why It Will Win
Understanding new social media is a *sociological* exercise, not a logical one.
over a year ago
Understanding new social media is a *sociological* exercise, not a logical one.
Steve Klabnik
Ember Data: ‘DS’ is not defined
over a year ago
Josh Comeau's blog
Making Sense of React Server Components
This year, the React team unveiled something they've been quietly researching for years: an official...
a year ago
This year, the React team unveiled something they've been quietly researching for years: an official way to run React components exclusively on the server. This is a significant paradigm shift, and it's caused a whole lot of confusion in the React community. In this tutorial,...
Joel Gascoigne
Treat it as finished
* Tweet [https://twitter.com/share]
*
* Buffer [http://bufferapp.com/add]
*
One of the most...
over a year ago
* Tweet [https://twitter.com/share]
*
* Buffer [http://bufferapp.com/add]
*
One of the most important differences for me personally in how I’ve run my
current startup compared to the last one I founded has been how I treat the
product at each stage of the process. With...
HTMHell
#14 not my type
Bad code
<a type="button" class="button" href="/signup" tabindex="-1">Sign up</a>
Issues and how to...
over a year ago
Bad code
<a type="button" class="button" href="/signup" tabindex="-1">Sign up</a>
Issues and how to fix them
The type attribute has no effect on the semantics of an <a> element.
An anchor may have the type attribute, but the value should be a valid MIME type. Browsers may...
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...
Seldo.com
There's no such thing as the fundamentals of web development
a year ago
Letters of Note
Better Letters of Note
Dear all, It gives me untold amounts of pleasure to announce that the Letters of Note website has...
over a year ago
Dear all, It gives me untold amounts of pleasure to announce that the Letters of Note website has been given its first facelift since I naively launched it in 2009 using a bog-standard Blogger template. I would like to thank, profusely but from a very safe distance, the patient...
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...
Confessions of a...
Celebrating 2^13 Subscribers & My Birthday
I started this Substack on 23rd April, 2024 from 0 subscribers with a dream of writing deeply...
3 months ago
I started this Substack on 23rd April, 2024 from 0 subscribers with a dream of writing deeply technical articles and making a living.
swyx's site RSS Feed
"No Code" vs RPA
RPA seems to be NoCode Enterprise Edition™ and the pricing disparity is wild. But there are real...
over a year ago
RPA seems to be NoCode Enterprise Edition™ and the pricing disparity is wild. But there are real differences and I am trying to note them down here.
David Heinemeier...
The origin of Ruby on Rails
I can't thank Honeypot and Carolina Cabral enough for the producing The Rails Documentary that was...
a year ago
I can't thank Honeypot and Carolina Cabral enough for the producing The Rails Documentary that was just released today. Looking back on those early, formative years of Ruby on Rails with Tobi, Jamis, Jeremy, and Jason was actually kind of profound. I usually don't spend much time...
swyx's site RSS Feed
Unsupervised Learning: Feature Selection
Breaking the Curse of Dimensionality!!
over a year ago
Breaking the Curse of Dimensionality!!
Daniel Immke's Blog...
Building a new personal website
Yesterday I launched a new version of this website. When finishing big projects, I always experience...
over a year ago
Yesterday I launched a new version of this website. When finishing big projects, I always experience this odd phenomenon where the final…
Identity Designed
Bright Barley
Designed by ALLGOOD, Leeds.
over a year ago
Designed by ALLGOOD, Leeds.
PostHog's RSS Feed
What's the true role of a product team at an engineering-led organization?
We’ve talked before about product-minded engineers at PostHog. We don’t have PMs dictating a...
over a year ago
We’ve talked before about product-minded engineers at PostHog. We don’t have PMs dictating a roadmap or solutions - it all comes from engineering. A…
Basta’s Notes
All the bullshit I did as a kid (part 1?)
My first computer, and the first computer I called a server
11 months ago
My first computer, and the first computer I called a server
PostHog's RSS Feed
In-depth: PostHog vs Mixpanel
Want to know how PostHog and Mixpanel are different? If you remember nothing else, remember these...
over a year ago
Want to know how PostHog and Mixpanel are different? If you remember nothing else, remember these two points: Mixpanel is a product analytics tool…
Patrick Kayongo
Super Apps vs WhatsApp
Over the last little while, there has been this rise in Super Apps, these apps that attempt to be...
over a year ago
Over the last little while, there has been this rise in Super Apps, these apps that attempt to be multi-functional “mobile malls”. In South Africa, Vodacom has released VodaPay where one can “enter” multiple stores to shop their products. Nedbank has Avo where one can also shop...
alexwlchan
Flickr Foundation at iPres 2024 →
I wrote about a recent conference trip for the Flickr.org blog:
In September, Tori and I went to...
2 months ago
I wrote about a recent conference trip for the Flickr.org blog:
In September, Tori and I went to Belgium for iPres 2024. We were keen to chat about digital preservation and discuss some of our ideas for Data Lifeboat – and enjoy a few Belgian waffles, of course!
We ran a workshop...
David Heinemeier...
Campfire is ONCE #1
With the successful launch of HEY Calendar a week in the rearview mirror, we’re ready for our second...
11 months ago
With the successful launch of HEY Calendar a week in the rearview mirror, we’re ready for our second big launch of the new year: ONCE #1. And... drumroll... it’s a rebirth of Campfire! The original web-based chat system we built back in 2006. Brought back to the future as...
macwright.com
Competition
For the last few jobs, I’ve kept a private are.na
board of competition. Every time I saw something...
a year ago
For the last few jobs, I’ve kept a private are.na
board of competition. Every time I saw something that looked like it was
competing with Observable, or Placemark, or val.town I’d add it to the list.
Eventually I’d have a big gallery of screenshots of all the other companies
and...
A Smart Bear
AI startups require new strategies: This time it's actually different
The typical dynamics between startups and incumbents do not apply in AI as they did in previous...
9 months ago
The typical dynamics between startups and incumbents do not apply in AI as they did in previous technology revolutions like mobile and the Internet. Ignore this at your peril.
The History of the...
Where does SEO come from?
In 2007, one person tried to lay claim to the term SEO. But SEO had been invented by a community. It...
6 months ago
In 2007, one person tried to lay claim to the term SEO. But SEO had been invented by a community. It couldn't be owned.
The post Where does SEO come from? appeared first on The History of the Web.
Miguel Carranza
Working with Miguel: A Practical Guide
Since reading ‘High Growth Handbook’ by Elad Gil, the value of writing a ‘Working with’ document...
10 months ago
Since reading ‘High Growth Handbook’ by Elad Gil, the value of writing a ‘Working with’ document became crystal clear to me. I am sharing mine externally to inspire other founders and leaders to reflect and write down their own working styles. These documents are incredibly...
alexwlchan
Getting the base directory of an sbt project
This is a command you can run in a shell script to print the base directory of an sbt project:
$...
over a year ago
This is a command you can run in a shell script to print the base directory of an sbt project:
$ sbt --batch -error "project $PROJECT" "print baseDirectory" | tr -d "\n"
For example:
$ sbt --batch -error "project ingests_api" "print baseDirectory" | tr -d...
Alex Meub
Use the Natural CSS Box Model
The CSS Box Model is used to describe how items are rendered (in boxes) from elements in the...
over a year ago
The CSS Box Model is used to describe how items are rendered (in boxes) from elements in the document tree. It determines how the content area, padding, border and margin of an element will be displayed. There are two types.
The W3C Box Model
x
...
Engineer’s Codex
Meta reveals their serverless platform processing trillions of function calls a day
XFaaS is Meta's private platform for "Hyperscale and Low Cost Serverless Functions." It is more...
a year ago
XFaaS is Meta's private platform for "Hyperscale and Low Cost Serverless Functions." It is more efficient than AWS Lambda, Azure Functions, and Google Cloud Functions.
bt RSS Feed
Dynamic Viewports with CSS
Dynamic Viewports with CSS
2023-02-08
I think it’s safe to assume most web designers and developers...
a year ago
Dynamic Viewports with CSS
2023-02-08
I think it’s safe to assume most web designers and developers are familiar with the standard vh and vw parameters in CSS. These parameters are used for setting an element’s height and/or width, relative to the viewport (v) height (h) or width...
dthompson
Haunt 0.2.6 released
Haunt version 0.2.6 has been released. This release restores
compatibility with Guile < 3.0 that...
over a year ago
Haunt version 0.2.6 has been released. This release restores
compatibility with Guile < 3.0 that was accidentally broken in 0.2.5.
Additionally, Haunt now uses the inotify API to watch for file changes
on Linux when running haunt serve --watch, replacing a slower and
more naive...
Jim Nielsen’s Blog
Using Web Components on My Icon Galleries Websites
I recently redesigned my icon gallery sites.
The goal: create a layout that allows you to customize...
a year ago
I recently redesigned my icon gallery sites.
The goal: create a layout that allows you to customize the view around the collection of icons you’re looking at by changing the size and spacing of the grid — sort of like the thumbnail view on macOS finder.
I’m happy with how it...
Ink & Switch
Pushpin: Towards Production-Quality Peer-to-Peer Collaboration
Taking peer-to-peer beyond research prototypes, and working towards commercial-grade P2P...
over a year ago
Taking peer-to-peer beyond research prototypes, and working towards commercial-grade P2P collaboration software.
General Robots
Coming soon
This is General Robots.
a year ago
Liz Denys
The 'doing good' framework: a manifesto against saying 'good people' and 'bad people'
I remember the first time I reflected on "doing good": I was watching the final scene of a sitcom I...
over a year ago
I remember the first time I reflected on "doing good": I was watching the final scene of a sitcom I grew up with, Boy Meets World. The main characters, who've now come of age, speak with the teacher that has been with them through every phase of their educations and lives:
Mr....
PostHog's RSS Feed
Raising money is less stressful than bootstrapping
Since PostHog raised Venture Capital (VC), we've had far less stress, and far more fun. There are...
over a year ago
Since PostHog raised Venture Capital (VC), we've had far less stress, and far more fun. There are lots of myths around what it's like run a business…
Vadim Kravcenko
Embracing Hacker Culture
This article is part of the Technical Manager Guide that I’m writing for technical leads to scale...
over a year ago
This article is part of the Technical Manager Guide that I’m writing for technical leads to scale their development and […]
The post Embracing Hacker Culture appeared first on Vadim Kravcenko.
A Beautiful Site
Avoiding timestamp errors when calculating dates in php
When calculating dates in PHP, it is easy to add millisecond values such as 60 * 60 * 24 to...
over a year ago
When calculating dates in PHP, it is easy to add millisecond values such as 60 * 60 * 24 to increment the time by one day. This can become problematic for two main reasons.
Issues with leap years #
A year has approximately 365.25 days, hence a leap year occurs once every four...
Joel Gascoigne
Why I'm helping startup founders
* Tweet [https://twitter.com/share]
*
* Buffer [http://bufferapp.com/add]
*
Last month I...
over a year ago
* Tweet [https://twitter.com/share]
*
* Buffer [http://bufferapp.com/add]
*
Last month I wrote about my discovery that helping others makes me happier
[https://joel.is/post/26003263041/want-to-be-happy-and-successful-bring-happiness-to]
than spending the time seeing a...
Jim Nielsen’s Blog
Notes from Pen & Teller’s Masterclass
I quite enjoyed Pen & Teller’s Masterclass (paywall, sorry!). I learned some practical card tricks...
3 months ago
I quite enjoyed Pen & Teller’s Masterclass (paywall, sorry!). I learned some practical card tricks that came in handy while we sitting in the airport waiting for a connecting fight with restless kids.
I also really enjoyed Pen & Teller’s reflections on the art of their craft....
Nelson's Weblog
New linkblog website
I launched a new website for my linkblog; go check it out! I'm proud of how it looks.
My linkblog...
over a year ago
I launched a new website for my linkblog; go check it out! I'm proud of how it looks.
My linkblog is a collection of links I find interesting. I write it for an audience, a few links a day of general interest. I've been doing this for 19 years now and I think it's one of the...
The Changelog
Recommendations for Tools for Backing Up and Archiving to Removable Media
I have several TB worth of family photos, videos, and other data. This needs to be backed up — and...
a year ago
I have several TB worth of family photos, videos, and other data. This needs to be backed up — and archived. Backups and archives are often thought of as similar. And indeed, they may be done with the same tools at the same time. But the goals differ somewhat: Backups are...
A Smart Bear
Building in public forces true competitive advantage
“Building in public” is increasingly popular. It’s fun to have strangers cheering you on, and it...
over a year ago
“Building in public” is increasingly popular. It’s fun to have strangers cheering you on, and it creates a self-imposed accountability. But doesn’t it ruin competitive advantage when your competitors can steal your source code and know the salaries of your employees and whether...
Vladimir Klepov as a...
Advanced Promises Coordination: Serialization and Concurrency Limiting
I'm sure you can chain promises with doBefore().then(() => doAfter()) and even
run multiple promises...
over a year ago
I'm sure you can chain promises with doBefore().then(() => doAfter()) and even
run multiple promises in parallel using Promise.any. However, chaining an
unknown count of homogenous promises is trickier. Let me teach you to serialze
promises like a pro!
Suppose we want a list of...
Darek Kay
Running Storybook from a separate folder
After migrating a project to Vite, I've moved my Storybook setup into a separate module — a folder...
over a year ago
After migrating a project to Vite, I've moved my Storybook setup into a separate module — a folder next to the actual app:
📁 project
├─ 📁 app
| ├─ 📁 src
| └─ 📄 package.json
└─ 📁 storybook
├─ 📁 .storybook
| ├─ 📄 main.js
| └─ 📄 preview.js
└─ 📄...
Code Of Honor
HandmadeCon 2015 interview transcript
In 2015 I participated in HandmadeCon, a convention created and run by programming guru Casey...
3 months ago
In 2015 I participated in HandmadeCon, a convention created and run by programming guru Casey Muratori about game development. The event included five speakers: Tommy Refenes, Mike Acton, Jonathan Blow, Ron Gilbert, and myself. The event was hosted at the Seattle Public Library,...
Kagi Blog
Summarize anything with the Universal Summarizer
Universal Summarizer ( https://kagi.com/summarizer ) is an AI-powered tool for instantly summarizing...
a year ago
Universal Summarizer ( https://kagi.com/summarizer ) is an AI-powered tool for instantly summarizing just about any content of any type and any length, by simply providing a URL address (and soon ( #roadmap ) by uploading a file).
EXPLAIN EXTENDED
Happy New Year: quantum computer emulator in SQL
Last year, my good friend and colleague Matt Ward challenged me to implement a quantum computer...
over a year ago
Last year, my good friend and colleague Matt Ward challenged me to implement a quantum computer emulator in SQL. Challenge accepted! This year we will be building an SQL query which will emulate a quantum computer. This query will process quantum assembly, build the circuit, run...
Maggie Appleton
A Digital Anthropology Reading List
over a year ago
Remains of the Day
Status Update, and How Everyone IPO'd in the 21st Century
Sorry for the long hiatus. I've been doing some formal advisory work and a bit of angel investing...
over a year ago
Sorry for the long hiatus. I've been doing some formal advisory work and a bit of angel investing these past months, and so more of my writing has been private.
More than that, though, the Internet, with all the status games and incentives I wrote about in my last post, began to...
PostHog's RSS Feed
The 9 best GDPR-compliant analytics tools
The GDPR (General Data Protection Regulation) places significant restrictions on how you can use...
a year ago
The GDPR (General Data Protection Regulation) places significant restrictions on how you can use tools like Google Analytics to track and collect user…
The Pragmatic...
Twitter vs Instagram Threads: two different approaches to throttling
Twitter throttled access to its platform while Meta launched Threads, a rival to Twitter with no...
a year ago
Twitter throttled access to its platform while Meta launched Threads, a rival to Twitter with no signup or other throttling in place. Two approaches: but there will likely be only one winner.
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...
PostHog's RSS Feed
How we turned ClickHouse into our event mansion
Recently, PostHog was invited to speak at OSA Con 2021 , an open source analytics conference...
over a year ago
Recently, PostHog was invited to speak at OSA Con 2021 , an open source analytics conference organised by Altinity. It was a fantastic opportunity to…
Epic Web Dev
Why you should probably be using SQLite
a year ago
Vadim Kravcenko
Process Debt
I’m sure you’ve worked at companies where you felt that they were moving slowly and it was not even...
a year ago
I’m sure you’ve worked at companies where you felt that they were moving slowly and it was not even worth […]
The post Process Debt appeared first on Vadim Kravcenko.
Vadim Kravcenko
Code Reviews
Let me tell you a story. I worked with a client in the early days of my career. It was […]
The post...
11 months ago
Let me tell you a story. I worked with a client in the early days of my career. It was […]
The post Code Reviews appeared first on Vadim Kravcenko.
swyx's site RSS Feed
Know Your Tools
> Author's note: This is part 2 of a series of essays I originally drafted about [Opinions for your...
over a year ago
> Author's note: This is part 2 of a series of essays I originally drafted about [Opinions for your Tech Career](https://gist.github.com/sw-yx/9720bd4a30606ca3ffb8d407113c0fe5). Part 1 is [Learn in Public](https://www.swyx.io/learn-in-public/).
swyx's site RSS Feed
Guo Lai Ren (过来人)
One of the most powerful forms of persuasion is the argument from crossover people
over a year ago
One of the most powerful forms of persuasion is the argument from crossover people
Seán Barry
What is TypeScript and why should I use it?
A beginner's guide to TypeScript. What is TypeScript? What problems does it solve? Why should I use...
over a year ago
A beginner's guide to TypeScript. What is TypeScript? What problems does it solve? Why should I use it?
wingolog
needed-bits optimizations in guile
Hey all, I had a fun bug this week and want to share it with you.
First, though, some background. ...
2 months ago
Hey all, I had a fun bug this week and want to share it with you.
First, though, some background. Guile’s numeric operations are defined over the complex numbers, not
over e.g. a finite field of integers. This is generally great when
writing an algorithm, because you don’t have...
A Beautiful Site
DaFont: an excellent free font resource
I came across an excellent website for free fonts online. No annoying pop-ups, minimal banner ads,...
over a year ago
I came across an excellent website for free fonts online. No annoying pop-ups, minimal banner ads, and the best feature of all — custom previews for all their fonts.
Check 'em out at dafont.com.
Tinloof - Blog
Explain Like I'm Five: Headless CMS
This post is part of the series Explain Like I'm Five (#eli5), which aims to make tech concepts and...
over a year ago
This post is part of the series Explain Like I'm Five (#eli5), which aims to make tech concepts and terms easy to understand.
In this post, we explain in a few minutes what Headless CMS is and show you how it's used. So, what is a headless CMS, what are the use cases and...
Words and Buttons...
Arctangent scale. It's like the logarithmic scale but infinite
With arctangent used as a scale, we can show any function on a screen. And not just a fragment of it...
over a year ago
With arctangent used as a scale, we can show any function on a screen. And not just a fragment of it but the whole function.
Acko.net
On Headaches and Aspirin
"A computer is an educational device. It is in fact a direct reflection of your own imagination,...
over a year ago
"A computer is an educational device. It is in fact a direct reflection of your own imagination, your own intelligence. Once you're given the freedom in which to create things and see the immediate response on the screen, then it becomes a very enjoyable experience. You go on to...
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,...
swyx's site RSS Feed
JAMstack for Indie Hackers
_This article was [published on Indie...
over a year ago
_This article was [published on Indie Hackers](https://www.indiehackers.com/article/jamstack-for-indie-hackers-b07f7a943d)!_
alexwlchan
Testing JavaScript without a (third-party) framework
Last week Julia Evans posted Writing Javascript without a build system, and it resonated with my own...
a year ago
Last week Julia Evans posted Writing Javascript without a build system, and it resonated with my own experience.
A lot of my websites (including this one) are content sites with just a bit of interactivity sprinkled on top, where I prefer writing vanilla JS over using complex...
Patrick Kayongo
A New Dog
“What are you doing now?” Sabelo asked Zoleka as she was taking a video of every part of their...
a year ago
“What are you doing now?” Sabelo asked Zoleka as she was taking a video of every part of their living room with her phone. He was growing tired of her ever-new discoveries and project ideas, and he didn’t know if he had the energy to stomach this new one. But she was too busy...
A Smart Bear
Solving the Low-Budget Online Marketing Dilemma
Low on cash but need marketing results? Here are four specific things you can do to grow on a...
a week ago
Low on cash but need marketing results? Here are four specific things you can do to grow on a budget.
Evan Jones -...
Network Latencies in the Data Center
Jeff Dean used to do a talk that included "Numbers Everyone Should Know" (2007 at Stanford, 2009 at...
over a year ago
Jeff Dean used to do a talk that included "Numbers Everyone Should Know" (2007 at Stanford, 2009 at LADIS), which included "round trip within same data center" as 500 us. I was recently wondering if that is still true, and more importantly what does the distribution of latencies...
Ink & Switch
Inkbase: Programmable Ink
What would be possible if hand-drawn sketches were programmable like spreadsheets?
over a year ago
What would be possible if hand-drawn sketches were programmable like spreadsheets?
Joel Gascoigne
When creating new habits, let yourself be sloppy
* Tweet [https://twitter.com/share]
*
* Buffer [http://bufferapp.com/add]
*
> "Don’t let...
over a year ago
* Tweet [https://twitter.com/share]
*
* Buffer [http://bufferapp.com/add]
*
> "Don’t let perfect be the enemy of good" - Gretchen Ruben
[http://www.happiness-project.com/happiness_project/2012/12/secret-of-adulthood-dont-let-the-perfect-be-the-enemy-of-the-good/]
One...
Liz Denys
Inbox by Gmail's accidentally abusive algorithm
The modern world really loves to use little algorithms here and there to help us speed things up....
over a year ago
The modern world really loves to use little algorithms here and there to help us speed things up. Inbox by Gmail is no exception.
Inbox has a concept of "speed dial" - an algorithmically determined set of "frequent" contacts that appears when hovering over the compose button:
In...
Maggie Appleton
Visually Workshopping the AWS Cloud
over a year ago
elementary Blog
Happy Holidays! We Come Bringing Gifts!
It’s only been a little over 2 weeks since we released elementary OS 8, but we’re already back with...
a week ago
It’s only been a little over 2 weeks since we released elementary OS 8, but we’re already back with updates just in time for the holidays!
Terminal
The headliner this month is Terminal which comes with a bunch of fixes and new features thanks to Jeremy. It now uses the more...
Paolo Amoroso's...
Adding title bar menu items to WebCard cards
<![CDATA[A URL is associated with a WebCard card of type Web at creation time but it may later be...
2 months ago
<![CDATA[A URL is associated with a WebCard card of type Web at creation time but it may later be necessary to change or take action on the URL. For example, to correct a typo or visit the URL again if its web browser tab was closed since an earlier visit.
For such situations I...
Joel Gascoigne
Want to be happy and successful? Bring happiness to others
* Tweet [https://twitter.com/share]
*
* Buffer [http://bufferapp.com/add]
*
For the last 3...
over a year ago
* Tweet [https://twitter.com/share]
*
* Buffer [http://bufferapp.com/add]
*
For the last 3 months I’ve regularly been meeting startup founders here in Hong
Kong to try and help them with the biggest challenges they have. It’s been truly
enjoyable and fascinating. I feel...
Josh Comeau's blog
An Interactive Guide to Keyframe Animations
CSS keyframe animations are incredibly flexible and powerful, but they’re also a bit weird. In this...
over a year ago
CSS keyframe animations are incredibly flexible and powerful, but they’re also a bit weird. In this deep-dive tutorial, we'll learn how CSS keyframes work from the ground up, and see how to use them to build high-quality animations.
HTMHell
You Don't Need ARIA For That
In web development, writing semantic HTML is important for accessibility, and also provides some...
over a year ago
In web development, writing semantic HTML is important for accessibility, and also provides some nice side effects such as supporting browser "reader" modes, SEO, graceful degradation, and exporting.
Implementing semantic HTML will also greatly reduce the need for ARIA...
swyx's site RSS Feed
Why I Won't Choose To Be A Manager
I recently decided that I will not _choose_ to be a manager. This is how I arrived at that...
over a year ago
I recently decided that I will not _choose_ to be a manager. This is how I arrived at that conclusion.
Jim Nielsen’s Blog
Persisting State to localStorage in Recoil Across Browser Tabs
I was working on a project using Recoil for state management in React.
I needed to persist some...
a month ago
I was working on a project using Recoil for state management in React.
I needed to persist some state to localStorage, and there’s some info on how to do it in Recoil’s docs.
That works; however it doesn’t respond to state changes from other instances of your app in multiple...
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
Common Beginner Mistakes with React
I used to teach React at a local coding bootcamp, and I noticed that students kept getting tripped...
a year ago
I used to teach React at a local coding bootcamp, and I noticed that students kept getting tripped up by the same handful of things. In this article, we're going to go through 9 of the most dastardly gotchas. I'll show you how to solve these common problems, so you can avoid a...
Neil Panchal
Neofetch – Server Administration System
I ssh into a lot of machines. Dozens of times a day. I need a quick way to see the health of the...
over a year ago
I ssh into a lot of machines. Dozens of times a day. I need a quick way to see the health of the system as soon as I log in and with zero friction. I am obliged to use the one and only tool: neofetch. Neofetch is a pillar of
Acko.net
The Bouquet Residence
Keeping up appearances in tech
I saw a remarkable pair of tweets the other day.
In the wake of...
5 months ago
Keeping up appearances in tech
I saw a remarkable pair of tweets the other day.
In the wake of the outage, the CEO of CrowdStrike sent out a public announcement. It's purely factual. The scope of the problem is identified, the known facts are stated, and the logistics of...
Vladimir Klepov as a...
Cleaner ways to build dynamic JS arrays
Building dynamic arrays in JS is often messy. It goes like this: you have a default array, and you...
over a year ago
Building dynamic arrays in JS is often messy. It goes like this: you have a default array, and you need some items to appear based on a condition. So you add an if (condition) array.push(item). Then you need to shuffle things around and bring in an unshift or two, and maybe even...
Max Countryman
Zero-Downtime Deployments with Docker Compose
With a little bash scripting, a modern reverse proxy like Traefik, and Docker Compose, we can put...
a year ago
With a little bash scripting, a modern reverse proxy like Traefik, and Docker Compose, we can put together a fairly robust and simple approach to zero-downtime deployment. Moreover, this approach is flexible and scalable, even for dynamic container backends.
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 12, 1…
macwright.com
You can finally use :has() in most places by
The hot new thing in CSS is :has() and Firefox finally supports it, starting today - so the...
a year ago
The hot new thing in CSS is :has() and Firefox finally supports it, starting today - so the compatibility table is pretty decent (89% at this writing). I already used has() in a previous post - that Strava CSS hack, but I’m finding it useful in so many places.
For example, in Val...
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...
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...
Charles Chen
Programmatically Invoke Cloud Run Jobs with Runtime Overrides
Love Google Cloud Run but need to be able to programmatically invoke long running jobs?
a year ago
Love Google Cloud Run but need to be able to programmatically invoke long running jobs?
swyx's site RSS Feed
How to change custom domain on Substack
Since September, I've been running my AI newsletter on https://lspace.swyx.io
a year ago
Since September, I've been running my AI newsletter on https://lspace.swyx.io
Epic Web Dev
Use Fetcher Keys for Registering Remix Fetchers (tip)
Discover how to use fetcher keys in Remix 2.2.0 for optimistic theme switching with cookies. Improve...
a year ago
Discover how to use fetcher keys in Remix 2.2.0 for optimistic theme switching with cookies. Improve user experience and eliminate network delays.
Paolo Amoroso's...
Reading Recursion via Pascal
<![CDATA[I read the book Recursion via Pascal by Jeffrey S. Rohl, Cambridge University Press, 1984....
9 months ago
<![CDATA[I read the book Recursion via Pascal by Jeffrey S. Rohl, Cambridge University Press, 1984. I discovered this rare, little known gem by chance and, although it's available online, I also bought a cheap printed copy.
The book Recursion via Pascal.
What makes this short...
Nelson's Weblog
Restic
Restic is good backup software.
It’s a command line tool for backing up filesystems to various
local...
10 months ago
Restic is good backup software.
It’s a command line tool for backing up filesystems to various
local and remote options. It is well
documented, easy to set up, secure, and quite fast. It’s a very
professional product. I am now backing up all my Linux systems with it.
Note it’s a...
Stephen Wolfram...
Nestedly Recursive Functions
Yet Another Ruliological Surprise Integers. Addition. Subtraction. Maybe multiplication. Surely...
2 months ago
Yet Another Ruliological Surprise Integers. Addition. Subtraction. Maybe multiplication. Surely that’s not enough to be able to generate any serious complexity. In the early 1980s I had made the very surprising discovery that very simple programs based on cellular automata could...
swyx's site RSS Feed
Line Lengths
Reflecting on what I have learned about CSS Units and Line Lengths
over a year ago
Reflecting on what I have learned about CSS Units and Line Lengths
swyx's site RSS Feed
Holding Space for Wicked (Part One)
2 weeks ago
Tinker, Tamper,...
Docker Deployment Best Practices
Given: There’s a CI system that automatically builds docker images from your VCS (e.g. git), we use...
4 months ago
Given: There’s a CI system that automatically builds docker images from your VCS (e.g. git), we use self-hosted gitlab.Goal: Both initial and subsequent automated deployments to different environments (staging and production). Rejected ApproachesMost existing blog articles and...
swyx's site RSS Feed
Talk Notes: Third Age of JavaScript - Three Years In
Slides and show notes for my updated Talk at Reactathon
over a year ago
Slides and show notes for my updated Talk at Reactathon
bt RSS Feed
Adventures in Creating a Minimal Alpine Linux Installer
Adventures in Creating a Minimal Alpine Linux Installer
2022-12-08
Introduction
I’ve made the switch...
over a year ago
Adventures in Creating a Minimal Alpine Linux Installer
2022-12-08
Introduction
I’ve made the switch to Alpine Linux as my main laptop/desktop hybrid
workstation and I love it - warts and all. This post will follow my process building my Alpine Linux “installer” I used for this...
somenice
Procedural “Trees” using Blender Geometry Nodes
I’ve been having a lot of fun playing with Blender Geometry and Shader Nodes.Specifically here using...
over a year ago
I’ve been having a lot of fun playing with Blender Geometry and Shader Nodes.Specifically here using Instances on Points. I started with a 60 x 60 grid of curves, made into spirals and animated with a Noise texture. This ended up creating 8.3 Million faces and took 12 hours to...
bt RSS Feed
What Happened to Self-Hosted Blogs?
What Happened to Self-Hosted Blogs?
2018-10-18
I remember a time on the internet1 when everyone and...
over a year ago
What Happened to Self-Hosted Blogs?
2018-10-18
I remember a time on the internet1 when everyone and their grandmother was running a personal blog. And I mean personal - not hosted on some side platform or a tacked-on addition to the rest of their website.
Nowadays companies and...
swyx's site RSS Feed
Sharding Yourself
An advanced tip for high-volume writers.
over a year ago
An advanced tip for high-volume writers.
Liz Denys
Understanding GNU Screen's captions
I love screen. I know all the cool kids are using tmux now, but screen keeps it simple and does...
over a year ago
I love screen. I know all the cool kids are using tmux now, but screen keeps it simple and does everything I really need.
One of the things I (possibly mistakenly) want is lots of windows. The problem with having lots of windows is they quickly become hard to keep track of,...
swyx's site RSS Feed
Networking Essentials: DNS
Domain names, you buy them, you sell them, but how do they work?
over a year ago
Domain names, you buy them, you sell them, but how do they work?
Liz Denys
Adding Open Graph to Pelican
I just added Open Graph support to this Pelican-generated site so pretty previews would show up when...
over a year ago
I just added Open Graph support to this Pelican-generated site so pretty previews would show up when people shared my posts, and I figured I'd share the fairly tidy way I went about it in case other people were interested. I only added support for articles, my journal entries,...
Coding Horror
The Great Filter Comes For Us All
With a 13 billion year head start on evolution, why haven't any other forms of life in the universe...
2 weeks ago
With a 13 billion year head start on evolution, why haven't any other forms of life in the universe contacted us by now?
teaching the aliens how to exit Vim
(Arrival is a fantastic movie. Watch it, but don't stop there - read the Story of
HTMHell
The hidden attribute in HTML
by Ahmad El-Alfy
The hidden attribute allows us to hide HTML elements from the page. When it was...
a year ago
by Ahmad El-Alfy
The hidden attribute allows us to hide HTML elements from the page. When it was introduced, it worked in a very simple way: it set the CSS display property to none.
Many people voiced concerns because here we are, mixing styles with markup again. To be fair, this...
Blog System/5
Demystifying secure NFS
My lab notes on the arduous process of setting up NFSv4 with Kerberos across a Synology NAS and...
a month ago
My lab notes on the arduous process of setting up NFSv4 with Kerberos across a Synology NAS and various Linux and FreeBSD clients.
Making software...
Obvious Javascript 'Injection' Fallback
Obvious Javascript 'Injection' Fallback
2020-12-04
Sometimes websites and web apps might require...
over a year ago
Obvious Javascript 'Injection' Fallback
2020-12-04
Sometimes websites and web apps might require content to be "injected" via Javascript. I should mention that I am strongly against this practice - but often this kind of thing is out of one's hands. So, the least I can do is...
ntietz.com blog
I found some of my first code! Annotating and reflecting on robotics code from 2009.
In high school, one of my teachers shattered my plans for my life, in the most beautiful way.
Most...
11 months ago
In high school, one of my teachers shattered my plans for my life, in the most beautiful way.
Most of my life, I'd intended to become a math professional of some sort: a math teacher, when that was all I saw math for; an actuary, when I started to learn more; and then a...
David Heinemeier...
Turns out nobody cared about panel gaps
One of the most fascinating aspects of Tesla's rise to dominance has been how they discarded many of...
a year ago
One of the most fascinating aspects of Tesla's rise to dominance has been how they discarded many of the traditional values of car making. While the rest of the industry was stuck competing on the size of their panel gaps, and other aspects of precision and quality assembly,...
A Beautiful Site
Empowering Design System Users
The question of whether or not component APIs should be locked down at the code level comes up quite...
over a year ago
The question of whether or not component APIs should be locked down at the code level comes up quite a bit. For example, if a button spec only calls for primary, secondary, and tertiary variants, should we still expose parts and custom properties so users can make further...
swyx's site RSS Feed
The Upload (short story)
My first attempt at bringing back the short story in ~30 years.
8 months ago
My first attempt at bringing back the short story in ~30 years.
ntietz.com blog
RSA is deceptively simple (and fun)
While reading Real-World Cryptography, I came across the "million message attack".
This is an attack...
11 months ago
While reading Real-World Cryptography, I came across the "million message attack".
This is an attack that Daniel Bleichenbacher demonstrated in 1998, which effectively broke RSA with a particular encoding function called PKCS #1.
It was only mentioned briefly, so I dug in and...
Miguel Carranza
Full Circle
I’m back in Spain for my brother’s wedding. I rarely visit during the summer. The heat in my...
3 months ago
I’m back in Spain for my brother’s wedding. I rarely visit during the summer. The heat in my hometown is brutal, around 40 degrees Celsius (over 100 Fahrenheit for my imperial friends). Most people escape to the coast, just like my family did when I was a kid. I haven’t been here...
The Pragmatic...
Is the strategy of joining late-stage startups for the financial upside, a dead end?
The past decade, one of the best ways to maximize compensation outcomes was to join a pre-IPO...
over a year ago
The past decade, one of the best ways to maximize compensation outcomes was to join a pre-IPO company issuing generous equity, then wait for the IPO. This strategy seems to be less profitable in 2022.
Alex Meub
A Pretty Good Entertainment Setup
My entertainment setup is relatively simple but I’m happy with it. All my content is stored on a...
over a year ago
My entertainment setup is relatively simple but I’m happy with it. All my content is stored on a Synology DiskStation DS213 NAS with 2x2TB RAID 0 configured drives. This is hands down the best NAS I’ve ever used. It’s super easy to set up and the interface is awesome (all...
Letters of Note
I have the best mother in the world
Few people have fought harder for the plight of African-Americans than Martin Luther King Jr., a...
over a year ago
Few people have fought harder for the plight of African-Americans than Martin Luther King Jr., a minister and activist who spent most of his all-too-brief life leading the civil rights movement only to be stopped by a bullet in Memphis in 1968. He was born in Atlanta, Georgia, on...
Computer Things
Be Suspicious of Success
From Leslie Lamport's Specifying Systems:
You should be suspicious if [the model checker] does not...
2 months ago
From Leslie Lamport's Specifying Systems:
You should be suspicious if [the model checker] does not find a violation of a liveness property... you should also be suspicious if [it] finds no errors when checking safety properties.
This is specifically in the context of...
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.
macwright.com
Recently
We went apple picking this month in New Jersey, and one of the farms had
these two golden retrievers...
over a year ago
We went apple picking this month in New Jersey, and one of the farms had
these two golden retrievers in their own, private, enormous pen. It was
a petting zoo, but with two golden retrievers. They defended their space against
other dogs who wanted to say hi, but stayed near the...
Kagi Blog
Kagi raises $670K
Kagi ( https://kagi.com ) has successfully raised $670K in a SAFE note investment round, marking our...
a year ago
Kagi ( https://kagi.com ) has successfully raised $670K in a SAFE note investment round, marking our first external fundraise to date.
A Smart Bear
JIT selection from independent streams: An alternative to the “big backlog” of work
We’re often told that a “single-threaded, ordered list” is the correct way to prioritize the work of...
over a year ago
We’re often told that a “single-threaded, ordered list” is the correct way to prioritize the work of the future, however this confuses “prioritization” with “work-planning,” and forces the comparison of un-comparable things. Here’s how to solve those problems.
PostHog's RSS Feed
The ops toolkit for early-stage startups
Ok, so you’ve read Zero to One and The Hard Thing About Hard Things , but what are all the boring...
a year ago
Ok, so you’ve read Zero to One and The Hard Thing About Hard Things , but what are all the boring admin things that are actually going to drain 4…
Ralph Ammer
Immanuel Kant—What can we know?
If you are interested in truth, be it in the form of scientific knowledge or artistic beauty, there...
a year ago
If you are interested in truth, be it in the form of scientific knowledge or artistic beauty, there is no way around Immanuel Kant’s ‘Critique of Pure Reason’. In this book Kant asked the simple question: “What can we know?“ And his answer is foundational to how we experience and...
Jim Nielsen’s Blog
Domain Sins of My Youth
I recently received a reminder to renew a domain I use for a rather frivolous side project.
At the...
a year ago
I recently received a reminder to renew a domain I use for a rather frivolous side project.
At the checkout screen, I realized it would cost me $105 to renew this domain for 5 years.
Why 5 years?
Right now my disposition is: if I plan on keeping a domain for as long as possible I...
Tyler Cipriani: blog
The Pull Request
A brief and biased history.
Oh yeah, there’s pull requests now
– GitHub blog, Sat,
23 Feb 2008
When...
3 months ago
A brief and biased history.
Oh yeah, there’s pull requests now
– GitHub blog, Sat,
23 Feb 2008
When GitHub launched, it had no code review.
Three
years after launch, in 2011, GitHub user rtomayko
became the first person to make a real code comment, which read, in
full:...
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...
Ferd.ca
A Commentary on Defining Observability
2024/03/19
A Commentary on Defining Observability
Recently, Hazel Weakly has published a great...
9 months ago
2024/03/19
A Commentary on Defining Observability
Recently, Hazel Weakly has published a great article titled Redefining Observability. In it, she covers competing classical definitions observability, weaknesses they have, and offers a practical reframing of the concept in the...
samwho.dev
Fun With Rust's Traits
Rust's trait system is wonderful. Everyone I know that has used it agrees
with this statement. It's...
over a year ago
Rust's trait system is wonderful. Everyone I know that has used it agrees
with this statement. It's a great way to encode shared behaviour between
data types, and create flexible APIs.
It's also great for writing nonsense like this:
use std::f64::consts::PI;
use...
Kagi Blog
Kagi search features
*New* : More features in our Dec 22 update ( https://blog.kagi.com/kagi-search-dec22-update ) and...
over a year ago
*New* : More features in our Dec 22 update ( https://blog.kagi.com/kagi-search-dec22-update ) and May 23 update ( https://blog.kagi.com/search-enhancements ).
Krzysztof Kowalczyk...
Lessons learned from 15 years of SumatraPDF, an open source Windows app
I released first version of SumatraPDF in 2006. That’s 15 years ago which seems like a good time for...
over a year ago
I released first version of SumatraPDF in 2006. That’s 15 years ago which seems like a good time for a retrospective.
The app
SumatraPDF is a multi-format (PDF, ePub, Mobi, comic book, DjVu, XPS, CHM) viewer for Windows and currently looks like this:
The...
Making software...
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
Going through my old school papers
I left school in 2011, and I graduated from university in 2014.
When I was done, I had six plastic...
a year ago
I left school in 2011, and I graduated from university in 2014.
When I was done, I had six plastic crates full of paper – exercise books, worksheets, school newsletters – everything I’d accumulated over nearly two decades of education.
It was a lot.
🤯
I’m trying to reduce this...
HTMHell
#6 link with void operator as href value
Bad code
<a href="javascript:void(1)" onClick='window.location="index.html"'>Link</a>
Issues and how...
over a year ago
Bad code
<a href="javascript:void(1)" onClick='window.location="index.html"'>Link</a>
Issues and how to fix them
Links won't work, if JavaScript fails to load or execute.
You don’t need JavaScript to link to other pages, you can use the href attribute for that. Browser support is...
TokyoDev
Facebook is Japan's LinkedIn
A couple of weeks back, an article [Facebook Wins Relatively Few...
over a year ago
A couple of weeks back, an article [Facebook Wins Relatively Few Friends
in
Japan](http://www.nytimes.com/2011/01/10/technology/10facebook.html?pagewanted=all)
made its rounds. As usual, Facebook is compared to the big three
Japanese SNS: mixi, Gree, and Mobage-town. However,...
Engineer’s Codex
Clever code is probably the worst code you could write
And clear, readable code is probably the hardest code to write
a year ago
And clear, readable code is probably the hardest code to write
Ink & Switch
03 · Fine-grained provenance
Connecting parts of source and build files as a universal primitive
3 months ago
Connecting parts of source and build files as a universal primitive
alexwlchan
Preserving Dates during JSON serialisation with vanilla JS
For my sins, I’ve spent a lot of the last year dealing with datetime-related bugs.
One of our...
a year ago
For my sins, I’ve spent a lot of the last year dealing with datetime-related bugs.
One of our longest-standing issues has been around sending Date values via JSON – JavaScript will happily encode a Date value in JSON, but it gets encoded as a string, and there’s no easy way to...
alexwlchan
A day out at the Bure Valley Railway
Last October, I had a day trip to the Bure Valley Railway, a narrow-gauge heritage railway in north...
over a year ago
Last October, I had a day trip to the Bure Valley Railway, a narrow-gauge heritage railway in north Norfolk.
I came across it quite by chance – I was driving through Aylsham to get to a B&B, and I spotted a sign pointing to the railway.
I checked the website for a timetable,...
Joel Gascoigne
How coffee shops helped my startup
* Tweet [https://twitter.com/share]
*
* Buffer [http://bufferapp.com/add]
*
Right now I’m...
over a year ago
* Tweet [https://twitter.com/share]
*
* Buffer [http://bufferapp.com/add]
*
Right now I’m sat in a great coffee shop in Tel Aviv writing this blog post.
It’s got a casual feel to it which is relaxing, yet there are people here with
laptops hustling away. I come here
Charles Chen
The Boomer .NET Dev Skill Upgrade Guide — Part 2
The second part of my guide for how .NET developers need to re-orient in the modern dev landscape.
over a year ago
The second part of my guide for how .NET developers need to re-orient in the modern dev landscape.
swyx's site RSS Feed
Notes on Serverless GraphQL with AWS AppSync
My Notes on Slobodan Stojanovic's Serverless GraphQL with AppSync talk
over a year ago
My Notes on Slobodan Stojanovic's Serverless GraphQL with AppSync talk
Krzysztof Kowalczyk...
SumatraPDF 3.0 released
We, the SumatraPDF developers have released a version 3.0 of Sumatra, a multi-format reader (PDF,...
over a year ago
We, the SumatraPDF developers have released a version 3.0 of Sumatra, a multi-format reader (PDF, epub and mobi ebooks, comic books, etc.) for Windows.
You can download it from official SumatraPDF website
The biggest change in this version is addition of tabs, contributed by...
Charles Chen
Use TypeScript Record Types for Better Code
TypeScript Record types have super powers that can help any team write better code.
over a year ago
TypeScript Record types have super powers that can help any team write better code.
alexwlchan
A script to get Live Text from images
One of my favourite new features on Apple’s OSes in the last few years is Live Text, which is an...
a year ago
One of my favourite new features on Apple’s OSes in the last few years is Live Text, which is an optical character recognition tool that lets you select text in images.
This sort of tech has been around for decades, but having it built into the OS makes it much easier to use.
The...
Computer Things
Why I prefer rST to markdown
I just published a new version of Logic for Programmers! v0.2 has epub support, content on...
4 months ago
I just published a new version of Logic for Programmers! v0.2 has epub support, content on constraint solving and formal specification, and more! Get it here.
This is my second book written with Sphinx, after the new Learn TLA+. Sphinx uses a peculiar markup called reStructured...
A Beautiful Site
Downloading a list of URLs automatically
I recently needed to download a bunch of files from Amazon S3, but I didn't have direct access to...
over a year ago
I recently needed to download a bunch of files from Amazon S3, but I didn't have direct access to the bucket — I only had a list of URLs.
There were too many to fetch one by one, so I wanted to fetch them automatically. Here are a couple ways I found to do that.
Using curl #
Curl...
Joel Gascoigne
The joys and benefits of working as a distributed team
* Tweet [https://twitter.com/share]
*
* Buffer [http://bufferapp.com/add]
*
Buffer is a...
over a year ago
* Tweet [https://twitter.com/share]
*
* Buffer [http://bufferapp.com/add]
*
Buffer is a fully distributed team. It’s a decision
[https://joel.is/post/54284926855/questions-i-ask-myself-about-working-as-distributed]
I had to make at the end of 2012, and it’s interesting...
Charles Chen
Mastodon is Rewinding the Clock on Social Media — in a Good Way
How Mastodon and the Fediverse are shifting the landscape of social media -- for the better.
a year ago
How Mastodon and the Fediverse are shifting the landscape of social media -- for the better.
Blog - Bitfield...
Cryptography in Go: AES explained
AES is the modern standard encryption algorithm, but how does it work?
Where does it come from?...
11 months ago
AES is the modern standard encryption algorithm, but how does it work?
Where does it come from? Let’s kick the tyres with a high-level overview of
AES internals.
Code Of Honor
The making of Warcraft part 3
The first-ever multiplayer game of Warcraft was a crushing victory, an abject defeat, and a tie, all...
over a year ago
The first-ever multiplayer game of Warcraft was a crushing victory, an abject defeat, and a tie, all at once. Wait, how is that possible? Well, therein lies a tale. This tale grew organically during the writing to include game AI, the economics of the game business, fog of war...
dthompson
Issues with object-oriented programming in Guile
Scheme is often thought of as a functional programming language, but
really it is a multi-paradigm...
over a year ago
Scheme is often thought of as a functional programming language, but
really it is a multi-paradigm language, including object-oriented
programming. My Scheme of choice for the past decade has been
Guile. It comes with support for OOP via
GOOPS: The Guile Object Oriented...
bt RSS Feed
A Reality Where CSS and JavaScript Don't Exist
A Reality Where CSS and JavaScript Don’t Exist
2021-11-03
This is my personal opinion. Please leave...
over a year ago
A Reality Where CSS and JavaScript Don’t Exist
2021-11-03
This is my personal opinion. Please leave your pitchforks at the door…
I love CSS. I can spend hours deep diving into a website’s CSS system and never find myself getting bored. It’s pretty amazing to see the problems...
Alex Meub
How To Quiet Down Your 3D Printer
When I first got my 3D printer, I built an enclosure to protect it from dust, maintain a consistent...
12 months ago
When I first got my 3D printer, I built an enclosure to protect it from dust, maintain a consistent temperature, and minimize noise. I was surprised to find that the enclosure didn’t reduce noise that significantly. I then placed a patio paver under my printer, which made it...
macwright.com
About Placemark.io
Someone asked over email about why I stopped building Placemark as a SaaS and made it an open source...
9 months ago
Someone asked over email about why I stopped building Placemark as a SaaS and made it an open source project. I have no qualms with sharing the answers publicly, so here they are:
I stopped Placemark because it didn’t generate enough revenue and I lost faith that there was a...
dthompson
Installing Guix on a 10th gen Thinkpad X1
The last time I bought a laptop, I got a used Thinkpad X220 from
eBay. I loved that laptop,...
over a year ago
The last time I bought a laptop, I got a used Thinkpad X220 from
eBay. I loved that laptop, but
time marches on and old hardware eventually becomes too slow for
modern development needs. After a lot of indecision, I bought a 10th
generation Thinkpad X1 with an Intel Core...
Confessions of a...
All Set! Looking Under the Hood of Python's Set Data Structure
Learn everything about hash tables, collision handling, and performance optimization
6 months ago
Learn everything about hash tables, collision handling, and performance optimization
Dan Slimmon
Squeeze the hell out of the system you have
When complexity leaps are on the table, there's usually also an opportunity to squeeze some extra...
a year ago
When complexity leaps are on the table, there's usually also an opportunity to squeeze some extra juice out of the system you have. By tweaking the workload, tuning performance, or supplementing the system in some way, you may be able to add months or even years of runway. When...
Epic Web Dev
Professional Web Forms (workshop)
The Professional Web Forms Workshop will equip you for building complex, fully accessible forms that...
a year ago
The Professional Web Forms Workshop will equip you for building complex, fully accessible forms that handle validation and file uploads while preventing spam.
A Smart Bear
Failure to face the truth
This concept recurs in different forms throughout myriad books, frameworks, and topics, across...
over a year ago
This concept recurs in different forms throughout myriad books, frameworks, and topics, across decades of time. When something is so consistent, it must be wisdom.
Josh Comeau's blog
A Modern CSS Reset
I have a set of baseline CSS styles that come with me from project to project. In the past, I'd use...
over a year ago
I have a set of baseline CSS styles that come with me from project to project. In the past, I'd use a typical CSS reset, but times have changed, and I believe I have a better set of global styles!
Jibran’s Perspective
Thoughts on Zettelkasten and the slip box
I had a bunch of thoughts yesterday about the Zettelkasten method and how I could use it effectively...
over a year ago
I had a bunch of thoughts yesterday about the Zettelkasten method and how I could use it effectively to manage my knowledge base. I started the day by dumping my thoughts into Logseq. Here they are.
These are open questions for now. I plan to investigate this further and try out...
alexwlchan
My custom <picture> plugin for Jekyll
About seven months ago, I did a complete rewrite of how I handle images on this site.
It’s working...
a year ago
About seven months ago, I did a complete rewrite of how I handle images on this site.
It’s working well and nothing seems to have broken, so I thought it might be good to explain what I’m doing.
For readers: I want images to load quickly and look good.
That means looking sharp on...
PostHog's RSS Feed
The 9 best mobile app A/B testing tools
A/B tests are a great way to confirm that your product changes have the intended effects. When it...
a year ago
A/B tests are a great way to confirm that your product changes have the intended effects. When it comes to mobile apps, there are many different A/B…
Steve Klabnik
The next iteration of my blogs
over a year ago
ntietz.com blog
Why I kept my startup job for seven years (and counting)
Software engineers typically don't stay anywhere for very long.
If you're not moving, you're losing...
5 months ago
Software engineers typically don't stay anywhere for very long.
If you're not moving, you're losing out on opportunities1.
And yet, I've made the choice to join and stay at one company for seven years.
That's more than half my career to date.
Why did I do that?
And would I do it...
HTMHell
#20 HTMHell special: close buttons
This first HTMHell special inspects one of the most complicated and most controversial patterns in...
over a year ago
This first HTMHell special inspects one of the most complicated and most controversial patterns in front-end development:
🔥 the close button. 🔥
In modals, ads, and other overlays you often find a button with a close symbol that allows users, or at least some of them, to close...
alexwlchan
Taking scheduled screenshots of my website
A few weeks ago I was reading the DPC Bit List, an inventory of digital materials and the risks...
8 months ago
A few weeks ago I was reading the DPC Bit List, an inventory of digital materials and the risks associated with their long-term preservation.
What formats need urgent attention before they’re lost forever, what mediums are already being well-preserved, and so on.
For example,...
Words and Buttons...
Partial order and non-Boolean logic
Non-Boolean logics are rare but not extinct. Interval logic is one example. Sometimes, you can...
over a year ago
Non-Boolean logics are rare but not extinct. Interval logic is one example. Sometimes, you can implement a logic you want within total order or partial order but sometimes even that isn't enough and you need an even more general relation. With operator overloading, you have the...
Coding Horror
Electric Geek Transportation Systems
I've never thought of myself as a "car person". The last new car I bought (and in fact, now that I...
over a year ago
I've never thought of myself as a "car person". The last new car I bought (and in fact, now that I think about it, the first new car I ever bought) was the quirky 1998 Ford Contour SVT. Since then we bought a VW station wagon
Irrational...
How to create software quality.
I’ve been reading Steven Sinofsky’s Hardcore Software, and particularly enjoyed this quote from a...
6 months ago
I’ve been reading Steven Sinofsky’s Hardcore Software, and particularly enjoyed this quote from a memo discussed in the Zero Defects chapter:
You can improve the quality of your code, and if you do, the rewards
for yourself and for Microsoft will be immense.
The hardest part is...
swyx's site RSS Feed
add Whisper to your iOS Action Button
The new iPhones ditched the physical mute button with a software enabled action button, that allows...
11 months ago
The new iPhones ditched the physical mute button with a software enabled action button, that allows some customization. the highest degree of customization is Shortcuts. Apple's default transcription is terrible. I got a new iPhone recently and so this is my chance.
Liz Denys
New Loose Leaf Security episode: Two-factor authentication and account recovery
The second episode of Loose Leaf Security came out today, about two-factor authentication and...
over a year ago
The second episode of Loose Leaf Security came out today, about two-factor authentication and account recovery:
Two-factor authentication and account recovery
Last time we talked about strong passwords, but what if there was a better way to secure your account? We look at options...
Chris Nicholas
Which blend mode?
This guide explains the basics behind each blend mode, and offers a number of practical examples for...
over a year ago
This guide explains the basics behind each blend mode, and offers a number of practical examples for use in the wild.
swyx's site RSS Feed
Cloud Distros
The next step in the evolution of the Cloud is specialized distros.
over a year ago
The next step in the evolution of the Cloud is specialized distros.
David Heinemeier...
Automattic is doing open source dirty
Automattic demanding 8% of WP Engine's revenues because they're not "giving back enough" to...
2 months ago
Automattic demanding 8% of WP Engine's revenues because they're not "giving back enough" to WordPress is a wanton violation of general open source ideals and the specifics of the GPL license. Automattic is completely out of line, and the potential damage to the open source world...
bt RSS Feed
Improving Receipt UX
Improving Receipt UX
2019-05-15
There was a pretty interesting article posted a couple days ago...
over a year ago
Improving Receipt UX
2019-05-15
There was a pretty interesting article posted a couple days ago about rethinking the standard receipt design that I found quite compelling. Although, as good as the concept is, I think it can be improved (simplified) even further.
What was the...
Vladimir Klepov as a...
Become the master of your eslint with no-restricted-syntax
The other day I was doing my normal thing trying to force import '*.css' to be the last import in a...
over a year ago
The other day I was doing my normal thing trying to force import '*.css' to be the last import in a file, which ensures a predicatbale CSS order. I spent hours looking for a eslint plugin to do that, but with little luck. Without getting into too much details:
The built-in...
Irrational...
Balancing your CEO, peers, and Engineering.
There are so many stories of hiring a new executive who comes in and wreaks havoc. I’ve seen...
a year ago
There are so many stories of hiring a new executive who comes in and wreaks havoc. I’ve seen engineering leaders start with a giant, doomed migration, marketing leaders who accelerate expenses until they necessitate a round of layoffs, and a number of executives fired in their...
blag
Scraping Javascript page using Python
Simple code example to illustrate scraping a javascript driven website, using Python and Dryscape.
over a year ago
Simple code example to illustrate scraping a javascript driven website, using Python and Dryscape.