Josh Collinsworth
Breaking changes in SvelteKit, August 2022
SvelteKit introduced breaking changes to its routing and data loading in August 2022. Learn how to...
over a year ago
SvelteKit introduced breaking changes to its routing and data loading in August 2022. Learn how to convert from the old way of doing things to the new.
Josh Comeau's blog
How I Built My Blog
I recently launched a brand new version of this blog, and in this post, I share how it’s built!...
2 months ago
I recently launched a brand new version of this blog, and in this post, I share how it’s built! We’ll examine the tech stack and see how all of the pieces fit together, as well as dig into some of the details to see how they work.
swyx's site RSS Feed
Add Netlify Identity Authentication to any React App in 5 minutes with React Context, Hooks and...
Adding authentication is a pain point for many React beginners. We’ve made it ridiculously easy to...
over a year ago
Adding authentication is a pain point for many React beginners. We’ve made it ridiculously easy to add Netlify Identity onto any React app, including create-react-app, Gatsby, Next.js, or any other setup you may have, by wrapping it all into one simple React Hook! However, this...
A Beautiful Site
Down with the share widget!
In a world dominated by social media, it's natural to want visitors to share your content with...
over a year ago
In a world dominated by social media, it's natural to want visitors to share your content with friends and followers. This really isn't a bad thing, but how you go about encouraging them can actually be discouraging.
The rise of the "share" widget #
Six years ago, Twitter wasn't...
Tony Finch's blog
semaphoreslo in Golang and GNU make
Semaphores are one of the oldest concurrency primitives in
computing, invented over 60 years ago....
5 months ago
Semaphores are one of the oldest concurrency primitives in
computing, invented over 60 years ago. They are weird: usually the
only numbers of concurrent processes we care about are zero, one, or
many – but semaphores deal with those fussy finite numbers in
between.
Yesterday I...
swyx's site RSS Feed
The Surprisingly High Table Stakes of Modern Blogs
Bottom Line Up Front: You are probably underestimating how much goes into blogging technology these...
over a year ago
Bottom Line Up Front: You are probably underestimating how much goes into blogging technology these days.
A Beautiful Site
How to delete a tag on GitHub
In the world of Git, tags are very useful for keeping track of your project's version history. A lot...
over a year ago
In the world of Git, tags are very useful for keeping track of your project's version history. A lot of folks will argue that you shouldn't delete tags, but there are real-world examples in which tags need to be deleted. That said, it's both a good and a bad thing that GitHub...
alexwlchan
Putting history on the map →
Back in July, we built an interactive map for the Flickr Commons Explorer.
I wrote an article for...
2 months ago
Back in July, we built an interactive map for the Flickr Commons Explorer.
I wrote an article for the Flickr blog about some of the photos I found using the map – including Antarctic explorers, northern factories, and Hawaiian industry.
[If the formatting of this post looks odd...
Ferd.ca
My Blog Engine is the Erlang Build Tool
From time to time, people ask me what I use to power my blog, maybe because they like the minimalist...
3 months ago
From time to time, people ask me what I use to power my blog, maybe because they like the minimalist form it has. I tell them it’s a bad idea and that I use the Erlang compiler infrastructure for it, and they agree to look elsewhere.
After launching my notes section, I had to...
The Codist
My Art And Color-After Tiling
I make generative art with Swift and use tiling in many pieces. Truchet tiles are generally arranged...
a month ago
I make generative art with Swift and use tiling in many pieces. Truchet tiles are generally arranged randomly and contain everything appearing in the final image. What I do differently is to separate the layout of tiles from colorizing the image. I call this technique...
David Heinemeier...
Why I retired from the tech crusades
When Ruby on Rails was launched over twenty years ago, I was a twenty-some young programmer...
6 months ago
When Ruby on Rails was launched over twenty years ago, I was a twenty-some young programmer convinced that anyone who gave my stack a try would accept its universal superiority for solving The Web Problem. So I pursued the path of the crusade, attempting to convert the...
A Beautiful Site
PHP functions to get and remove the file extension from a string
I use these regular expressions all the time, but it's much more convenient to have them both in...
over a year ago
I use these regular expressions all the time, but it's much more convenient to have them both in convenient PHP functions.
// Returns only the file extension (without the dot)
function file_ext($filename) {
return preg_match('/\./', $filename) ? preg_replace('/^.*\./', '',...
alexwlchan
How moving to the cloud took our digital collections to new heights →
I’ve written another article about digital preservation at Wellcome Collection, this time about the...
a year ago
I’ve written another article about digital preservation at Wellcome Collection, this time about the benefits of moving our data storage and processing to the cloud.
Building out this infrastructure is a large part of what I’ve been working on for the last six (!) years.
It’s been...
Founder's blog
System.Drawing vs SkiaSharp benchmark
This is a ridiculously short post for .NET devs looking to compare System.Drawing with SkiaSharp...
a year ago
This is a ridiculously short post for .NET devs looking to compare System.Drawing with SkiaSharp (the fastest open-source alternative).
I'm currently building a new pet project - a free tool, that will allow bloggers and webmasters generate open-graph "cover images" via...
Evan Jones -...
gRPC is easy to misconfigure
Google's gRPC is an RPC system that supports many languages, and is relatively widely used. I think...
over a year ago
Google's gRPC is an RPC system that supports many languages, and is relatively widely used. I think its popularity is due to being used for parts of Docker and Kubernetes. I think gRPC is mostly fine, but it is surprisingly easy to screw up by misconfiguring it. Part of that is...
Josh Comeau's blog
Promises From The Ground Up
The “Promises” API is a surprisingly tricky part of modern JavaScript. Without the right context, it...
6 months ago
The “Promises” API is a surprisingly tricky part of modern JavaScript. Without the right context, it doesn’t make much sense at all! In this tutorial, you’ll build an intuition for how Promises work by getting a deeper understanding of JavaScript and its limitations.
Kagi Blog
What's next for Kagi?
Two years ago, on June 1st, 2022, Kagi introduced ( https://blog.kagi.com/kagi-orion-public-beta ) a...
6 months ago
Two years ago, on June 1st, 2022, Kagi introduced ( https://blog.kagi.com/kagi-orion-public-beta ) a search engine that challenged the ad-supported version of the web.
Alex Meub
My Favorite Web Apps and Tools
I’ve found myself more often using web apps instead of dedicated desktop applications at work. It...
over a year ago
I’ve found myself more often using web apps instead of dedicated desktop applications at work. It seems that in general, desktop apps have been getting slower and more resource intensive lately. The trend of teams using Electron or the Chromium Embedded Framework in order to ship...
swyx's site RSS Feed
Revolutionizing Audio with Descript and Temporal
A case study I published for my work at Temporal
over a year ago
A case study I published for my work at Temporal
Daniel Immke's Blog...
On being “currently based anywhere”
Currently based anywhere. That’s what I landed on when I changed the copy on my homepage indicating...
over a year ago
Currently based anywhere. That’s what I landed on when I changed the copy on my homepage indicating that I was based out of Atlanta. I…
David Heinemeier...
The premise trap
The hardest part for me about collaborating with junior programmers, whether it's in open source or...
6 days ago
The hardest part for me about collaborating with junior programmers, whether it's in open source or at work, is avoiding the premise trap. That's where the fundamental assumptions baked into the first draft of the code aren't questioned until you've already spent far too long...
somenice
Atlas of AI by Kate Crawford
I’ll admit I’m a HUGE believer of advances in Artificial Intelligence. Deep learning or just general...
over a year ago
I’ll admit I’m a HUGE believer of advances in Artificial Intelligence. Deep learning or just general machine learning. From Bayesian beginnings to GANs and CNNs, I’m all about data, ML and all of the promises it’s future holds. The problems it can solve today seemed impossible...
Writing - Andreas...
The siren call of wrong-way dependencies
Dependencies that point in the wrong direction are one of the easiest and
most costly design...
3 months ago
Dependencies that point in the wrong direction are one of the easiest and
most costly design mistakes one can make.
Darek Kay
Git explained: Commit ranges
Git's log and diff commands are useful for inspecting your repository changes. Both commands accept...
over a year ago
Git's log and diff commands are useful for inspecting your repository changes. Both commands accept ranges of commits in different formats, which can be confusing. In this post, I will shed some light on the differences between a b, a..b and a...b commit ranges. Check out the...
Steve Klabnik
Reddit drama: an interesting look at community values
over a year ago
Julia Evans
Making crochet cacti
I noticed some tech bloggers I follow have been making April Cools Day posts about topics they don’t...
8 months ago
I noticed some tech bloggers I follow have been making April Cools Day posts about topics they don’t normally write
about (like decaf or microscopes). The goal isn’t to
trick anyone, just to write about something different for a day.
I thought those posts were fun so here is a...
Alex Meub
Upgrading the Weber Q Grill
I’ve owned a Weber Q 1000 for many years and always loved this little grill. I have mine hooked up...
over a year ago
I’ve owned a Weber Q 1000 for many years and always loved this little grill. I have mine hooked up to a 15 lb propane tank at home where it gets regular use. It is small, but it heats up quickly and cooks food better than any other grill I’ve tried.
However, I recently noticed...
Stephen Wolfram...
Remembering the Improbable Life of Ed Fredkin (1934–2023) and His World of Ideas and Stories
Programmer of the Universe “OK, so let me tell you…” And so it would begin. A long and colorful...
a year ago
Programmer of the Universe “OK, so let me tell you…” And so it would begin. A long and colorful story. An elaborate description of a wild idea. In the forty years I knew Ed Fredkin I heard countless wild ideas and colorful stories from him. He always radiated a certain...
David Heinemeier...
Open source is neither a community nor a democracy
Using open source software does not entitle you to a vote on the direction of the project. The gift...
7 months ago
Using open source software does not entitle you to a vote on the direction of the project. The gift you've received is the software itself and the freedom of use granted by the license. That's it, and this ought to be straight forward, but I repeatedly see that it is not (no...
ntietz.com blog -...
Estimating projects sells them short (and that's okay)
Recently, I read a blog post about doing software project estimates.
It's a reasonable post with a...
6 days ago
Recently, I read a blog post about doing software project estimates.
It's a reasonable post with a reasonable method.
But it does what all estimates do: it sells projects short.
I don't mean in the sense of underestimating a young promising project's potential, relegating it to...
charity.wtf
Why Should You (Or Anyone) Become An Engineering Manager?
The first piece I ever wrote about engineering management, The Engineer/Manager Pendulum, was...
a year ago
The first piece I ever wrote about engineering management, The Engineer/Manager Pendulum, was written as a love letter to a friend of mine who was unhappy at work. He was an engineering director at a large and fast-growing startup, where he had substantially built out the entire...
Joel Gascoigne
Pricing your product: It doesn't have to be so complicated
* Tweet [https://twitter.com/share]
*
* Buffer [http://bufferapp.com/add]
*
In the last week...
over a year ago
* Tweet [https://twitter.com/share]
*
* Buffer [http://bufferapp.com/add]
*
In the last week I’ve talked with a few early stage startup founders about
pricing. It seems pricing is often a large block for many. It’s understandable,
since there are so many decisions to...
Code Of Honor
Avoiding game crashes related to linked lists
In this post I’m going to talk about linked lists, a seemingly trivial subject that many programmers...
over a year ago
In this post I’m going to talk about linked lists, a seemingly trivial subject that many programmers — even good ones — seem to get terribly wrong! Then I’m going to share techniques (with source code) to make your game engine code simpler, faster, more memory efficient and more...
swyx's site RSS Feed
Flutter for React Native Devs in 30 Seconds
You may have heard of [Flutter](https://flutter.io), Google's answer to React Native. What should...
over a year ago
You may have heard of [Flutter](https://flutter.io), Google's answer to React Native. What should you know?
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
Array 1.0.11
Like what you see and self-hosting? Update your instance. First our updates and new features. Also...
over a year ago
Like what you see and self-hosting? Update your instance. First our updates and new features. Also as you will see below we have added Celery…
bunnie's blog
Name that Ware November, 2022
The Ware for November 2022 is shown below. A grounded guard ring is placed around some of the most...
over a year ago
The Ware for November 2022 is shown below. A grounded guard ring is placed around some of the most sensitive analog traces; I would love it if someone could teach me why the soldermask is removed for these guard rings. I imagine there must be some motivation to retain this motif...
TokyoDev
個人のブログから利益を生むビジネスへ:TokyoDevのストーリー
This article is also available [in...
a year ago
This article is also available [in...
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...
HTMHell
Boosting testing efficiency: how semantic HTML transforms End-to-End testing
by Stefania Mellai
Semantic and accessible HTML serves as a powerful tool, enhancing not only human...
a year ago
by Stefania Mellai
Semantic and accessible HTML serves as a powerful tool, enhancing not only human interaction but also the efficiency of software systems. For instance, when users fill out forms with clear labels and accessible input fields, this reduces errors and ensures...
Elad Blog
AI: Startup Vs Incumbent Value
In each technology wave the value, revenue, market cap, profits and great people captured by...
over a year ago
In each technology wave the value, revenue, market cap, profits and great people captured by startups versus incumbents differs. In some waves it all goes to startups, while in others it goes to incumbents or is split between them. Unexpectedly, the prior wave of
bt RSS Feed
Skip to Content Button
Skip to Content Button
2019-03-25
One of the golden rules for testing your website’s accessibility...
over a year ago
Skip to Content Button
2019-03-25
One of the golden rules for testing your website’s accessibility is the “keyboard-only” audit. This is where you test navigating through your entire site without the use of a mouse, but instead rely solely on tabbing through your...
Jim Nielsen’s Blog
Expose Platform APIs Over Wrapping Them
From Kent C. Dodds’ article about why he won’t be using Next.js:
One of the primary differences...
8 months ago
From Kent C. Dodds’ article about why he won’t be using Next.js:
One of the primary differences between enzyme and Testing Library is that while enzyme gave you a wrapper with a bunch of (overly) helpful (dangerous) utilities for interacting with rendered elements, Testing...
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...
Darek Kay
My personal one-pager
I've been using "Darek Kay" as my pseudonym since school. My surname was long and difficult to...
a year ago
I've been using "Darek Kay" as my pseudonym since school. My surname was long and difficult to pronounce, so I've been mostly using it in a formal context. Last year, I changed my legal name, which also influenced my online presence. Due to the change, looking up my new name via...
Irrational...
Notes on How Big Things Get Done
How Big Things Get Done by Bent Flyvbjerg and Dan Gardner is a fascinating look at why some...
a year ago
How Big Things Get Done by Bent Flyvbjerg and Dan Gardner is a fascinating look at why some megaprojects fail so resoundingly and why others succeed under budget and under schedule. It’s an exploration of planning methods, the role of expertise, the value of benchmarking similar...
PostHog's RSS Feed
What motivates me as a CEO
PostHog got pretty far (17k customers across all our products, went through Y Combinator, seed,...
over a year ago
PostHog got pretty far (17k customers across all our products, went through Y Combinator, seed, series A and B raised, $MM revenue) before I really…
David Heinemeier...
Imperfections create connections
The engine is in wrong place in a Porsche 911. It's hanging out the back, swinging the car like a...
8 months ago
The engine is in wrong place in a Porsche 911. It's hanging out the back, swinging the car like a pendulum. And that's key to why it's the most iconic sports car ever made. This fundamental imperfection is part of how it creates the connection.
This is true of mechanical watches...
Words and Buttons...
[Renovated] Polynomial approximation and interpolation
This explains approximation and interpolation, how to use polynomials for that, and how to make both...
over a year ago
This explains approximation and interpolation, how to use polynomials for that, and how to make both concepts work together.
samwho.dev
Load Balancing
.simulation {
width: 100%;
display: flex;
justify-content: center;
align-items:...
a year ago
.simulation {
width: 100%;
display: flex;
justify-content: center;
align-items: center;
margin-bottom: 2.5em;
}
.load-balancer {
color: black;
font-weight: bold;
}
.request {
color: #04BF8A;
font-weight: bold;
}
.server {
color:...
bt RSS Feed
RSS Hacks With XSLT
RSS Hacks With XSLT
2022-05-23
In my spare time I’ve been further tinkering (hopefully for the...
over a year ago
RSS Hacks With XSLT
2022-05-23
In my spare time I’ve been further tinkering (hopefully for the better) with my humble Shinobi Website1 script. The most recent update in patch-1 came with a solid amount of QoL improvements. If you’re interested, I wrote about it on the official...
Jim Nielsen’s Blog
Cool URIs Don’t Change — But Humans Do
Here are two ideas at odds with each other:
You should have human-friendly URIs
Cool URIs don’t...
5 months ago
Here are two ideas at odds with each other:
You should have human-friendly URIs
Cool URIs don’t change
If a slug is going to be human-friendly, i.e. human-readable, then it's going to contain information that is subject to change because humans make errors.
If “to err is human”...
bt RSS Feed
PS4 Download UI with Pure CSS
PS4 Download UI with Pure CSS
2021-06-20
Overall, I’m fairly impressed with the user interface...
over a year ago
PS4 Download UI with Pure CSS
2021-06-20
Overall, I’m fairly impressed with the user interface design of Sony’s PS4 system OS. It’s minimal and keeps the content front and center. Even with it’s sometimes spotty performance hiccups, I’ve come to enjoy interacting with it.
One of...
TokyoDev
COVID-19 and IT Jobs in Japan
The COVID-19 pandemic has created a lot of uncertainty among prospective job seekers, especially...
over a year ago
The COVID-19 pandemic has created a lot of uncertainty among prospective job seekers, especially those looking to relocate to Japan from overseas. To help people understand the current situation with regards to IT jobs in Japan, I contacted [every company using...
Vladimir Klepov as a...
Why you Might Want to Extend React Components
Do not extend components. If there is anything React community agrees upon, this is it. Use HOCs....
over a year ago
Do not extend components. If there is anything React community agrees upon, this is it. Use HOCs. Use state managers (and their connector HOCs). Use render props. Do not inherit. Remember, composition over inheritance! Obey your guru. Once upon a time, a developer extended his...
ntietz.com blog
RC Week 7: Four habits to improve as a programmer
Seven weeks down, five weeks to go!
It's flying by quickly.
On the one hand, I want it to last...
over a year ago
Seven weeks down, five weeks to go!
It's flying by quickly.
On the one hand, I want it to last forever.
On the other hand, I know it can't, and I'm looking forward to talking to coworkers again at my day job when I go back.
RC has given me a renewed appreciation for what I get at...
A Smart Bear
Distributed Logical Time
Properly ordering events in time is notoriously difficult in distributed systems. This algorithm is...
over a year ago
Properly ordering events in time is notoriously difficult in distributed systems. This algorithm is a simple, decentralized, scalable, constant-memory mechanism for independent replicas to record events in time, such that “happened-before” is preserved in almost all cases.
The Pragmatic...
The Pulse: Will US companies hire fewer engineers due to Section 174?
It’s rare that a tax change causes panic across the tech industry, but it’s happening in the US. If...
11 months ago
It’s rare that a tax change causes panic across the tech industry, but it’s happening in the US. If Section 174 tax changes stay, the US will be one of the least desirable countries to launch startups
ntietz.com blog
Throw away your first draft of your code
The next time you start on a major project, I want you to write code for a couple of days and then...
a year ago
The next time you start on a major project, I want you to write code for a couple of days and then delete it all.
Just throw it away.
I'm serious.
And you should probably have some of your best engineers doing this throwaway work.
It's going to save you time in the long run.
The...
A Smart Bear
Finding Fulfillment
What creates a fulfilling existence? Exploring the question from different directions leads to a...
a year ago
What creates a fulfilling existence? Exploring the question from different directions leads to a framework I’ve used for years for myself and the people around me. I hope it helps you too.
PostHog's RSS Feed
Array 1.35.0: Introducing SAML, world map view and new plugins
PostHog 1.35.0 introduces activity logs and a brand new way of visualizing where your users are...
over a year ago
PostHog 1.35.0 introduces activity logs and a brand new way of visualizing where your users are coming from with the World Map. Additionally we now support organization-level SAML login on both Cloud and Self-Hosted instances. Plus check out your Project Homepage for a few...
Steve Klabnik
Matz is nice so we are nice
over a year ago
bt RSS Feed
Stop Using Custom Web Fonts
Stop Using Custom Web Fonts
2023-03-14
I recently read an excellent post by Manu Moreale titled A...
a year ago
Stop Using Custom Web Fonts
2023-03-14
I recently read an excellent post by Manu Moreale titled A rant on web font licenses. I highly recommend you give it a read (it’s relatively short) since Manu makes a solid argument against existing font licenses. After reading, I found...
MMapped blog
IC internals: the ICP ledger
over a year ago
HTMHell
The Ghosts of Markup Past
by Thomas A. Powell
As a well-seasoned web developer, a clear euphemism for my age, I reminisce...
a year ago
by Thomas A. Powell
As a well-seasoned web developer, a clear euphemism for my age, I reminisce about the early days of markup through the haze of strong emotional glasses. I see the past from an extreme nostalgic fondness for the simplicity of the time when a basic text editor...
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...
Florian Bellmann |...
Build a career path by multiplying your value
Oftentimes senior developers lack ideas on where to go next. Let's try to explore some ideas.
a year ago
Oftentimes senior developers lack ideas on where to go next. Let's try to explore some ideas.
bt RSS Feed
WP Enqueue for Beginners
WP Enqueue for Beginners
2020-05-05
Throughout my career designing, developing and auditing...
over a year ago
WP Enqueue for Beginners
2020-05-05
Throughout my career designing, developing and auditing WordPress themes, I’ve come across many that include their custom styles / scripts as static HTML elements inside their respective header and footer templates. This is perfectly fine, but...
blag
Recurse Center Day 18
Disk Storage II
over a year ago
swyx's site RSS Feed
Ejectable Defaults
Borrowing heavily from Gatsby Themes to improve the Sapper developer experience, and a discussion of...
over a year ago
Borrowing heavily from Gatsby Themes to improve the Sapper developer experience, and a discussion of how Ejectable Defaults fits with the Zero Config movement
blag
Recurse Center Day 16: Open Source
merged few open pull requests on my projects
over a year ago
merged few open pull requests on my projects
Making software...
Migrating from GitHub to sourcehut
Migrating from GitHub to sourcehut
2022-11-14
It has taken a little bit longer than I anticipated,...
over a year ago
Migrating from GitHub to sourcehut
2022-11-14
It has taken a little bit longer than I anticipated, but I have finally started to port over all my personal open-source projects to sourcehut.org. I'll get into the why and how momentarily, but first let's take a look at all the...
Steve Klabnik
Nobody understands REST or HTTP
over a year ago
macwright.com
Don't use marked
With all love to the maintainers, who are good people and are to some extent bound by their...
10 months ago
With all love to the maintainers, who are good people and are to some extent bound by their obligation to maintain compatibility, I just have to put it out there: if you have a new JavaScript/TypeScript project and you need to parse or render Markdown, why are you using...
Jim Nielsen’s Blog
More Everything With AI
From the announcement blog post for Microsoft 365 Copilot:
You can give it natural language prompts...
a year ago
From the announcement blog post for Microsoft 365 Copilot:
You can give it natural language prompts like “Tell my team how we updated the product strategy,” and it will generate a status update based on the morning’s meetings, emails and chat threads.
With Copilot, you’re always...
A Smart Bear
Not disruptive, and proud of it
I remember "disruptive" when it was called a "paradigm shift." You should be worrying more about...
5 months ago
I remember "disruptive" when it was called a "paradigm shift." You should be worrying more about making something people want to buy, and less about disrupting everything.
swyx's site RSS Feed
Scaling Coding Communities
People who can scale coding communities are 🔥 🔥 🔥
over a year ago
People who can scale coding communities are 🔥 🔥 🔥
alexwlchan
How I name my computers
I got a new Mac mini this weekend, to replace my aging Intel iMac.
I’ve already done most of the...
a month ago
I got a new Mac mini this weekend, to replace my aging Intel iMac.
I’ve already done most of the setup, and this blog post is one of the first things I’ll make with it.
I’m quite pleased with how quickly I can get up and running with a new machine.
There’s one hard part of...
David Heinemeier...
Commit to competence in this coming year
It’s that time of year where people often start thinking about new year’s resolutions. I want to...
a year ago
It’s that time of year where people often start thinking about new year’s resolutions. I want to loose 10 lbs, I want to read more books, I want to x, y, and z. Often, it’s just a fantasy. They’re not actually going to loose 10 lbs or they might order some more books but never...
elementary Blog
Happy Pride! Have Some Updates!
This month we have some surprise updates for OS 7, including new releases of GNOME apps and a big...
6 months ago
This month we have some surprise updates for OS 7, including new releases of GNOME apps and a big update for Mail. Plus Wayland is here, there’s a new way to manage Drivers, and we’re shipping Flathub by default! And don’t forget Platform 8 is now ready for developers. Read ahead...
swyx's site RSS Feed
A Developer's Guide to Startup Fundraising
A Brief Guide to Startup Fundraising Terminology for Beginners
over a year ago
A Brief Guide to Startup Fundraising Terminology for Beginners
MMapped blog
Debug like Feynman, test like Faraday
over a year ago
Maggie Appleton
Speaking the GraphQL Query Language
over a year ago
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...
A small freedom area...
Figuring out round, floor and ceil with integer division
Lately I've been transforming a float based algorithm to integers in order to
make it bit-exact....
over a year ago
Lately I've been transforming a float based algorithm to integers in order to
make it bit-exact. Preserving the precision as best as possible was way more
challenging than I initially though, which forced me to go deep down the rabbit
hole. During the process I realized I had...
Dan Slimmon
Fix tomorrow’s problems by fixing today’s problems
A bug in our deployment system causes O(N²) latency with respect to the number of deploys that have...
a year ago
A bug in our deployment system causes O(N²) latency with respect to the number of deploys that have been performed. At first, it’s too minuscule to notice. But the average deploy latency grows over time. Eventually, deploys start randomly timing out. The deploy pipeline grinds to...
A Beautiful Site
Convert arrays to CSV with PHP
The following snippet will convert a simple PHP array into CSV (comma-separated values)...
over a year ago
The following snippet will convert a simple PHP array into CSV (comma-separated values) format.
function csv($array) {
$csv = "";
for ($i = 0; $i < count($array); $i++) {
$csv .= '"' . str_replace('"', '""', $array[$i]) . '"';
if ($i < count($array) - 1) $csv .= ",";
...
Steve Klabnik
Random Ruby Tricks: Struct.new
over a year ago
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...
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...
A Beautiful Site
Not Everything Can Be Feature Detected
In the early days of Web browsers, it was extremely common to see user agent checks in JavaScript....
over a year ago
In the early days of Web browsers, it was extremely common to see user agent checks in JavaScript. Sometimes, you'd write the same code in two or three different ways to support various browsers. Code such as that shown below allowed webpages to work in browsers like Netscape...
David Heinemeier...
Pick promise over proof
After hiring people for twenty years, I've come to accept that it's impossible to know up front what...
a year ago
After hiring people for twenty years, I've come to accept that it's impossible to know up front what someone is truly capable of. Sure, we try our best to make good, educated guesses during the hiring process, and this is why asking finalists to do sample work projects is so...
Jim Nielsen’s Blog
Deno De-emphasizes HTTP Imports
I’ve been a long-time fan of Deno and their ethos of following the web platform. But I’m not sure...
4 months ago
I’ve been a long-time fan of Deno and their ethos of following the web platform. But I’m not sure how I feel about their latest admission which makes their dependency story more like npm and less like the web.
Designing Deno’s module system around HTTP imports was ambitious. It...
TokyoDev
A Guide to Salary Negotiations in Japan’s Tech Industry
When it comes to salary negotiations in Japan’s tech industry, I’ve been on both sides of the table....
a year ago
When it comes to salary negotiations in Japan’s tech industry, I’ve been on both sides of the table. I’ve worked as a recruiter sourcing candidates from around the world for a Japanese autonomous driving tech company, and have helped hundreds of English-speaking expats in secure...
Confessions of a...
A Selective Survey of Efficient Speculative Decoding Techniques for LLM Inference
What is speculative decoding, how it works and what are some of the recent advances in this area?
2 months ago
What is speculative decoding, how it works and what are some of the recent advances in this area?
swyx's site RSS Feed
How to allow popups in dynamically created webviews in Electron.js
My smol menubar project utilizes Electron's special webview tag to dynamically generate a list of...
a year ago
My smol menubar project utilizes Electron's special webview tag to dynamically generate a list of sub browser windows for chat. For the last couple months I've had an issue with the SSO popups in this, namely that they just don't work at all, presumably because Electron blocks...
Cognitive...
Built with Dolphin
I started to understand that a lot of people are using and enjoying Dolphin - so I decided to put a...
a year ago
I started to understand that a lot of people are using and enjoying Dolphin - so I decided to put a list here of products or projects that use Dolphin. If you would like to be listed here please reach out to me and I'll add...
Julia Evans
Introducing "Implement DNS in a Weekend"
Hello! I’m excited to announce a project I’ve been working on for a long time:
a free guide to...
a year ago
Hello! I’m excited to announce a project I’ve been working on for a long time:
a free guide to implementing your own DNS resolver in a weekend.
The whole thing is about 200 lines of Python, including implementing all of the
binary DNS parsing from scratch. Here’s the...
Making software...
RE: Creating a Simple HTML/CSS Notice Box
RE: Creating a Simple HTML/CSS Notice Box
2022-09-22
I recently read Kev Quirk's post, How to Create...
over a year ago
RE: Creating a Simple HTML/CSS Notice Box
2022-09-22
I recently read Kev Quirk's post, How to Create a Simple HTML/CSS Notice Box and loved the simplicity of it. I'm a sucker for using pseudo elements in creative ways but still managing to make them useful. Of course, this got me...
Vladimir Klepov as a...
Major Garbage Producers in JS
The reckless coding culture of JS favors producing garbage. In real life, if you're environmentally...
over a year ago
The reckless coding culture of JS favors producing garbage. In real life, if you're environmentally conscious (hey there, my European readers), you probably do all sorts of crazy thinks to cut down on garbage — reject plastic bags in a supermarket, recycle bottles, keep the paper...
bt RSS Feed
Chrome OS Could Become the Future Leader of Computing
Chrome OS Could Become the Future Leader of Computing
2022-01-06
FOSS Enthusiasts: This article...
over a year ago
Chrome OS Could Become the Future Leader of Computing
2022-01-06
FOSS Enthusiasts: This article discusses the use of proprietary software and places it in a positive light. You have been warned. No angry emails please…
Google has created one of the best operating systems designed...
swyx's site RSS Feed
4 Q&A's on Blogging for Developers
Answering Q&A's
over a year ago
Confessions of a...
Why Do Python Lists Multiply Oddly? Exploring the CPython Source Code
A look at the internals of list implementation in CPython to understand this weird quirk about them
8 months ago
A look at the internals of list implementation in CPython to understand this weird quirk about them
swyx's site RSS Feed
Make your own Dev.to CMS livestream - Part 2
This is day 2 of my livecode Dev.to CMS. See [Day 1...
over a year ago
This is day 2 of my livecode Dev.to CMS. See [Day 1 here](https://dev.to/swyx/make-your-own-dev-to-cms-livestream-part-1-2ad1)
Tony Finch's blog
Constructing a four-point egg
For reasons beyond the scope of this entry, I was investigating
elliptical and ovoid shapes. The...
10 months ago
For reasons beyond the scope of this entry, I was investigating
elliptical and ovoid shapes. The Wikipedia article for Moss’s
egg has a link to a tutorial on Euclidean Eggs by Freyja
Hreinsdóttir which (amongst other things) describes how to
construct the “four point egg”. I...
Ralph Ammer
Ludwig Wittgenstein – How we speak
This is a quick introduction to the philosophy of Ludwig Wittgenstein.
The post Ludwig Wittgenstein...
over a year ago
This is a quick introduction to the philosophy of Ludwig Wittgenstein.
The post Ludwig Wittgenstein – How we speak appeared first on Ralph Ammer.
samwho.dev
A Commitment to Art and Dogs
.dog-line {
display: flex;
flex-wrap: nowrap;
flex-direction: row;
width: 100%;
height:...
6 months ago
.dog-line {
display: flex;
flex-wrap: nowrap;
flex-direction: row;
width: 100%;
height: 10rem;
margin-top: 2rem;
margin-bottom: 2rem;
}
.dog-line img {
flex-grow: 1;
height: auto;
margin: 0;
padding: 0;
object-fit: contain;
}
.dog-grid {
display:...
swyx's site RSS Feed
Serverless Functions are Stateful
A reminder that serverless functions actually have a lot of state, and how the "function" analogy...
over a year ago
A reminder that serverless functions actually have a lot of state, and how the "function" analogy breaks down when you look through the abstraction
A Smart Bear
A life-changing challenge guided by Pascal's Wager
Applying Pascal's Wager: Humility wins, arrogance loses.
a month ago
Applying Pascal's Wager: Humility wins, arrogance loses.
Steve Klabnik
Update GitHub Pages with Travis CI
over a year ago
Epic Web Dev
Use Isolation to Solve Complex Problems (tip)
When faced with a complex problem, try isolating it by creating a minimal example in a temporary...
a year ago
When faced with a complex problem, try isolating it by creating a minimal example in a temporary project directory.
PostHog's RSS Feed
Array 1.20.0
We're back! 2020 was a hectic year for us and our team put in a whole lot of effort to get PostHog...
over a year ago
We're back! 2020 was a hectic year for us and our team put in a whole lot of effort to get PostHog to where it is now. As such, we shut down PostHog…
swyx's site RSS Feed
Farewell, Netlify
On leaving Netlify
over a year ago
the singularity is...
America’s Future
It seems this is a place where people are not capable of thinking rationally. Remember:
If America...
a month ago
It seems this is a place where people are not capable of thinking rationally. Remember:
If America is not in decline, I want to believe America is not in decline.
If America is in decline, I want to believe America is in decline.
So let’s ask, what does the future look like for...
Jim Nielsen’s Blog
The Lowest Common Denominator: www
Native apps are all about control. Don’t like thing X? You can dive in and, with enough elbow grease...
2 months ago
Native apps are all about control. Don’t like thing X? You can dive in and, with enough elbow grease and persistence, finally get what you want. Write your own C library. Do some assembly code. Even make your own hardware if you have to.
But on the web you give up that control....
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...
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...
macwright.com
Get the text of an uploaded file in Remix by ()
This took way too long to figure out.
The File polyfill in Remix has the fresh new .stream() and...
a year ago
This took way too long to figure out.
The File polyfill in Remix has the fresh new .stream() and .arrayBuffer() methods, which aren’t mentioned on MDN. So, assuming you’re in an action and the argument is args, you can get the body like:
const body = await...
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
Heroku + Travis CI: Tokyo Rubyist Meetup Report
While I was initially a bit aprehensive at the classroom like setting for the last [Tokyo Rubyist...
over a year ago
While I was initially a bit aprehensive at the classroom like setting for the last [Tokyo Rubyist Meetup](https://trbmeetup.doorkeeper.jp), thanks to all the great people who attended, we were able to turn it into a lively event. Anchoring the night were presentations about...
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...
Tinloof - Blog
How to dynamically create a sitemap with Sanity and Remix
In this article, we will explain how to dynamically create a sitemap using both Sanity and...
over a year ago
In this article, we will explain how to dynamically create a sitemap using both Sanity and Remix.
We’ll learn by following an existing example of a sitemap built for Heavybit’s website, a San Francisco-based VC whose website is built with both technologies.
Remix is a React...
A Beautiful Site
Swapping variables with JavaScript
Swapping the value of two variables normally takes three lines and a temporary variable. What if I...
over a year ago
Swapping the value of two variables normally takes three lines and a temporary variable. What if I told you there was an easier way to do this with JavaScript?
Traditional method #
The goal is to swap the values of a and b. The textbook method for doing this looks something like...
Julia Evans
Some notes on using nix
Recently I started using a Mac for the first time. The biggest downside I’ve
noticed so far is that...
a year ago
Recently I started using a Mac for the first time. The biggest downside I’ve
noticed so far is that the package management is much worse than on Linux.
At some point I got frustrated with homebrew because I felt like it was
spending too much time upgrading when I installed new...
Vadim Kravcenko
Falsehoods Junior Developers believe about becoming Senior
These are mostly my thoughts about what I was expecting as a junior and how I perceived senior...
10 months ago
These are mostly my thoughts about what I was expecting as a junior and how I perceived senior developers. To […]
The post Falsehoods Junior Developers believe about becoming Senior appeared first on Vadim Kravcenko.
Words and Buttons...
[e-book] So You Think You Know C? And TenMore Short Essays on Programming Languages
Can’t say that running away from complexity was a smart thing to do. It was definitely not the most...
over a year ago
Can’t say that running away from complexity was a smart thing to do. It was definitely not the most productive way to create software. The journey, however, has taught me a few things so it was not a complete waste of time either.
This book is a reflection of these lessons. It...
Vladimir Klepov as a...
Why I prefer JS for front-end build automation
Every front-end project involves some automation to build it, test it, lint it, run dev servers,...
over a year ago
Every front-end project involves some automation to build it, test it, lint it, run dev servers, measure bundle size, and what not. npm scripts are fine for one-liners, but as the workflows grow more complex — run these things in parallel, then do something else, but only if...
Vladimir Klepov as a...
Thanks React, I'm fine with an imperative setInterval
Like many of you, I've read Dan Abramov's excellent article, making setInterval declarative with...
over a year ago
Like many of you, I've read Dan Abramov's excellent article, making setInterval declarative with React hooks. It's a great introduction to hook thinking and gotchas, highly recommended to any react dev. But by now the insistence on being declarative in every hook ever has gone...
Darek Kay
GitHub developer statistics
Recently, Curtis Einsmann posted some stats from their work as a software engineer. This inspired me...
over a year ago
Recently, Curtis Einsmann posted some stats from their work as a software engineer. This inspired me to check my own impact as an employee:
1002 pull requests shipped
3062 pull requests reviewed
5 years (since migrating to GitHub Enterprise)
LOC (lines of code) is a terrible...
Jim Nielsen’s Blog
The Night Time Sky
Read more about RSS Club.
When I was a kid, my Dad used to take us outside to look for what...
6 months ago
Read more about RSS Club.
When I was a kid, my Dad used to take us outside to look for what he called “UFOs”. It’d take a moment, but after enough searching we’d eventually spot one.
One night, all of us kids were outside with our uncle. We saw a star-like light moving in...
Joel Gascoigne
What are you doing to feel uncomfortable?
* Tweet [https://twitter.com/share]
*
* Buffer [http://bufferapp.com/add]
*
I believe that...
over a year ago
* Tweet [https://twitter.com/share]
*
* Buffer [http://bufferapp.com/add]
*
I believe that when you’re building a startup, it is as much about developing
yourself as it is about developing your startup. This week I’ve stepped up my
gym routine and managed to go to the gym...
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...
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...
Founder's blog
Clearing Nginx Proxy Cache for Wildcard URLs: A DIY Guide
Sometimes you find yourself in a situation where you need to clear the Nginx proxy cache for a...
a year ago
Sometimes you find yourself in a situation where you need to clear the Nginx proxy cache for a specific set of URLs, particularly those following a wildcard pattern like www.website.com/folder/*. Surprisingly, Nginx, in its standard offering, doesn't provide a straightforward way...
Kevin Chen
Real estate is one of the hardest open problems in scaled self driving
I’ve had a minor obsession with Waymo’s autonomous vehicle depots recently.
Over the past few...
3 months ago
I’ve had a minor obsession with Waymo’s autonomous vehicle depots recently.
Over the past few months, I’ve flown a drone as part of a stakeout to understand how they work. And I’ve taken a deep dive into an apparent Waymo outage to find the company charging its electric vehicles...
PostHog's RSS Feed
VC is a tool, not a religion
We raised over $27,000,000 then realized we should be growing out of our own revenue instead. Day 1...
a year ago
We raised over $27,000,000 then realized we should be growing out of our own revenue instead. Day 1 – We started bootstrapping, then changed our minds…
A Beautiful Site
Social sharing buttons are ineffective
Back in 2012, I wrote an article called Down with the "Share" Widget. In it, I talked about why...
over a year ago
Back in 2012, I wrote an article called Down with the "Share" Widget. In it, I talked about why plastering social sharing buttons all over your website is completely ineffective. This morning, Smashing Magazine all but confirmed my theory.
In today's Smashing Newsletter, they...
Acko.net
On Sperging Out
The Boy Who Cried Leopard
Recently there's been a new dust up about Richard Stallman and the Free...
over a year ago
The Boy Who Cried Leopard
Recently there's been a new dust up about Richard Stallman and the Free Software Foundation. For those of you just tuning in: an open letter demands that the entire board of the Free-as-in-speech Software Foundation resign, because of past statements and...
Ink & Switch
Backchannel: A relationship-based digital identity system
In this article, we propose an alternative approach to digital identity that replaces user profiles...
over a year ago
In this article, we propose an alternative approach to digital identity that replaces user profiles with trusted digital relationships.
Krzysztof Kowalczyk...
57 MicroConf videos for self-funded software businesses
MicroConf is a conference for small/indie/self-funded software businesses. Many of their talks are...
over a year ago
MicroConf is a conference for small/indie/self-funded software businesses. Many of their talks are available on Vimeo but not well indexed. They have a better index (and another here) on their website, but also not great.
This is a list of videos and a bit of info about each...
Tinker, Tamper,...
Showing SQL Queries with Pytest and Django
I have a Django based project, and am doing unit tests with py.test. To debug a test failure it’s...
over a year ago
I have a Django based project, and am doing unit tests with py.test. To debug a test failure it’s sometimes useful to see the actual SQL queries that Django emitted, which is surprisingly hard. I assumed that that would be such an obvious and common need, that a simple switch...
Joel Gascoigne
How we're trying to stay innovative as a 3.5 year old startup
* Tweet [https://twitter.com/share]
*
* Buffer [http://bufferapp.com/add]
*
I think I’ve...
over a year ago
* Tweet [https://twitter.com/share]
*
* Buffer [http://bufferapp.com/add]
*
I think I’ve just about got to that point with Buffer where sometimes when I
stop to reflect on things I think “wow, we’ve actually been doing this for a
while now”. It’s about 3.5 years
swyx's site RSS Feed
Instant GraphQL with OneGraph
Here's a recorded screenshare chat I had with Sean Grove (https://twitter.com/sgrove), Cofounder of...
over a year ago
Here's a recorded screenshare chat I had with Sean Grove (https://twitter.com/sgrove), Cofounder of OneGraph! We swapped out the Next.js API Routes that I manually set up in my livestreaming, to the premade GraphQL integration that OneGraph has with Dev.to. As a bonus, this takes...
Blog - Bitfield...
Programming with confidence: TDD in Go
There’s an easy, pleasant, and reliable way to build software in Go, guided
by tests. Let’s find...
9 months ago
There’s an easy, pleasant, and reliable way to build software in Go, guided
by tests. Let’s find out what it’s like to program with confidence, in the
first part of this TDD tutorial series.
Kagi Blog
Kagi's approach to AI in search
Kagi Search is pleased to announce the introduction of three AI features into our product offering.
a year ago
Kagi Search is pleased to announce the introduction of three AI features into our product offering.
Making software...
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...
Patrick Kayongo
Rhythms of Order
Access to the world on one’s phone has provided possibilities and efficiencies that previous...
a year ago
Access to the world on one’s phone has provided possibilities and efficiencies that previous generations could never have dreamed of. Whether it’s bypassing traffic jams on the outskirts of hills of Kampala, or it’s determining your public transport route from your hotel to your...
Alex MacCaw
Universality and APIs
From Roman numerals to Indian digits, from hieroglyphics to Latin languages, universality has been...
over a year ago
From Roman numerals to Indian digits, from hieroglyphics to Latin languages, universality has been the key to unlocking human progress.
Jim Nielsen’s Blog
Setting Your Social Handle as Your Domain Name on Bluesky
I recently got an invite to Bluesy (thx JJ). I wanted to try it purely for the satisfaction of...
a year ago
I recently got an invite to Bluesy (thx JJ). I wanted to try it purely for the satisfaction of setting my domain name as my handle, as I’m fan of the idea of apex domain’s becoming the currency of online handles. As I once tweeted: domains are the OG handles.
Granted, I own...
Jim Nielsen’s Blog
Digital Trees
Trees have many functions:
they provide shade,
they purify air,
they store carbon,
they grow...
5 months ago
Trees have many functions:
they provide shade,
they purify air,
they store carbon,
they grow fruit,
and they’re aesthetically pleasing.
What’s intriguing to me about trees is their return on investment (ROI).
It takes years, even decades, to grow a tree to the point where you...
Words and Buttons...
Static typing isn’t free. Where do you think the C++ angry mob comes from?
Type inference works like logic deduction so any program in a statically typed language is two...
a year ago
Type inference works like logic deduction so any program in a statically typed language is two programs. The first one is the thing you sell, and the second – is a model that undergoes some sort of verification every time you run a compiler. This second program, although, often...
ntietz.com blog
Automating my backups with restic and anacron
I've been running my backups by hand1 every week on my laptop for as long as they've been set...
10 months ago
I've been running my backups by hand1 every week on my laptop for as long as they've been set up.
Automating them was something important but was on the back burner, because, well, it never felt very important.
Then I lost a few days of work when my SSD died, and it felt more...
A Beautiful Site
Moving to Node.js
The first version of Postleaf was written in PHP and lives on as Leafpub. It's a beautiful piece of...
over a year ago
The first version of Postleaf was written in PHP and lives on as Leafpub. It's a beautiful piece of software that I'm very proud of, but I decided to move the project to Node.js for a few important reasons. This is by no means a knock on PHP, which will always have a special...
Irrational...
A brief rant on converging compliance regimes.
Although I’ve never worked exclusively on compliance, much of my work over the past decade has...
over a year ago
Although I’ve never worked exclusively on compliance, much of my work over the past decade has touched on reconciling between product and compliance goals, and over that time I’ve developed something of a pet theory on the evolution of compliance over the next five to ten years:...
ntietz.com blog
Open source licenses as a reflection of values
I'm the kind of nerd that has a favorite software license.
For a while that favorite license was the...
over a year ago
I'm the kind of nerd that has a favorite software license.
For a while that favorite license was the Mozilla Public License (MPL).
Right now, it's the GNU Affero General Public License (AGPL).
Licenses are really important on all code, and they're critical to the open source...
Ognjen Regoje •...
As silly as it sounds, system design interviews are about systems and design
Over the past year or so I’ve done about two dozen systems design interviews (as an interviewer) and...
11 months ago
Over the past year or so I’ve done about two dozen systems design interviews (as an interviewer) and have two somewhat subtle observations that would help some candidates.
1. The word system has two meanings
The definition most engineers reach for immediately is the one relating...
Explained from First...
The Internet explained from first principles
over a year ago
The Pragmatic...
An explosion in software engineers using AI coding tools?
GitHub surveyed 500 developers in the US for a sense of how they use AI coding tools. I examine the...
a year ago
GitHub surveyed 500 developers in the US for a sense of how they use AI coding tools. I examine the results and add context on how the survey was conducted.
swyx's site RSS Feed
Service as a Service
Before you start offering Software as a Service, perhaps just offer a Service.
over a year ago
Before you start offering Software as a Service, perhaps just offer a Service.
Words and Buttons...
SymPy makes math fun again
It's a Python library that does the boring part of math for you. Moreover, it does it fast,...
over a year ago
It's a Python library that does the boring part of math for you. Moreover, it does it fast, accurate, and without angst. In other words, it is everything I'm not.
Jim Nielsen’s Blog
As Good as HTML
Jan Miksovsky has a talk titled “Delivering Universal UI Patterns as Web Components” that speaks on...
a year ago
Jan Miksovsky has a talk titled “Delivering Universal UI Patterns as Web Components” that speaks on the incredible opportunity that is web components:
That HTML tag that you create [for a web component] that’s just HTML. You can use that anywhere you use HTML. That means the...
Josh Comeau's blog
A Friendly Introduction to Container Queries
It’s been a couple of years since container queries started landing in browsers… so why isn’t anyone...
a month ago
It’s been a couple of years since container queries started landing in browsers… so why isn’t anyone using them? It turns out that container queries are kinda tricky; they’re not as straightforward as media queries. In this tutorial, we’ll break it all down and make sense of...
General Robots
Coming soon
This is General Robots.
a year ago
ntietz.com blog
Consider Part-Time Work
It has long been predicted that with more automation and more technology, we could all work less and...
over a year ago
It has long been predicted that with more automation and more technology, we could all work less and have more leisure time, but we continue to fall short of that promise. In many ways, we're working harder and longer, with more stress, than previous generations did. I think that...
swyx's site RSS Feed
Bringing AWS to App Developers
Where Amplify fits in AWS' trajectory, and why I am joining
over a year ago
Where Amplify fits in AWS' trajectory, and why I am joining
Vladimir Klepov as a...
How to destroy your app performance using React contexts
useContext hook has made React Context API so pleasant to work with that many people are even...
over a year ago
useContext hook has made React Context API so pleasant to work with that many people are even suggesting that we drop external state management solutions and rely on the built-in alternative instead. This is dangerous thinking that can easily push your app's performance down the...
PostHog's RSS Feed
Array 1.15.0
Hey there! It's been a while... With our last release being over a month ago, this new release has...
over a year ago
Hey there! It's been a while... With our last release being over a month ago, this new release has the largest changelog to date, with 175 PRs merged…
Coding Horror
What does Stack Overflow want to be when it grows up?
I sometimes get asked by regular people in the actual real world what it is that I do for a living,...
over a year ago
I sometimes get asked by regular people in the actual real world what it is that I do for a living, and here's my 15 second answer:
We built a sort of Wikipedia website for computer programmers to post questions and answers. It's called Stack Overflow
Jim Nielsen’s Blog
It’s Humans All the Way Down
On the Aboard podcast, Paul Ford half-jokingly notes that everybody thinks everyone else’s job is...
11 months ago
On the Aboard podcast, Paul Ford half-jokingly notes that everybody thinks everyone else’s job is easy. That’s why “AI” is going to replace so many people.
Here’s Paul articulating this line of thiking:
What is a lawyer? A lawyer is somebody who moves contracts around.
Well, a...
Kagi Blog
Kagi Translate - We speak your language
Your browser does not support the video tag.
a month ago
Your browser does not support the video tag.
A Beautiful Site
Subtle Patterns: hundreds of free backgrounds that tile
I've been using Subtle Patterns for quite some time now. All the patterns are great, and their...
over a year ago
I've been using Subtle Patterns for quite some time now. All the patterns are great, and their Photoshop plugin is incredibly useful.
I can't remember when it first launched, but I do remember when there was only one or two pages to browse on the site. Now it has over 380 images...
The Codist
My Address Doesn't Fit, And Other Complaints
So today, I decided to renew my driver's license online, like any modern person would.
I started the...
6 months ago
So today, I decided to renew my driver's license online, like any modern person would.
I started the process by going to my state's driver's license website. The first page is to verify my home and mail addresses. Since nothing changed, I hit "
PostHog's RSS Feed
Making your first startup ops hire – what founders should look for
Most founders I talk to approach their first ops hire in a totally sensible but wrong way. Their...
a year ago
Most founders I talk to approach their first ops hire in a totally sensible but wrong way. Their typical approach is to look at the long list of admin…
Nelson's Weblog
AI enhanced search
LLMs are good search helpers. Here’s three search tools I use every day.
All of these use an AI to...
3 months ago
LLMs are good search helpers. Here’s three search tools I use every day.
All of these use an AI to synthesize answers but also provide an essential
feature: specific web search results for you to verify and further research.
I use these for conversational inquiries in addition...
Maggie Appleton
Making Programming Visual, Spatial, and Learnable
over a year ago
Paolo Amoroso's...
Adding an Exec command and File Browser support to Insphex
<![CDATA[I implemented the last features originally planned for Insphex, my hex dump tool in Common...
6 months ago
<![CDATA[I implemented the last features originally planned for Insphex, my hex dump tool in Common Lisp for Medley Interlisp.
The first new feature is an Exec command for invoking the program. The command HD works the same way as the function INSPHEX:HEXDUMP and accepts the...
charity.wtf
Questionable Advice: “People Used To Take Me Seriously. Then I Became A Software Vendor”
I recently got a plaintive text message from my magnificent friend Abby Bangser, asking about a...
a year ago
I recently got a plaintive text message from my magnificent friend Abby Bangser, asking about a conversation we had several years ago: “Hey, I’ve got a question for you. A long time ago I remember you talking about what an adjustment it was becoming a vendor, how all of a sudden...
Epic Web Dev
Contribute an Epic Stack Example (tip)
How to create an Epic Stack example to help others and get new features built into the Epic Stack.
a year ago
How to create an Epic Stack example to help others and get new features built into the Epic Stack.
Joel Gascoigne's...
Our vision for location-independent salaries at Buffer
Our vision for location-independent salaries at Buffer
Note: this was originally posted on the...
over a year ago
Our vision for location-independent salaries at Buffer
Note: this was originally posted on the Buffer blog.
I’m happy to share that we’ve established a long-term goal that salaries at Buffer will not be based on location. We made our first step towards this last year, when we...
Coding Horror
Building a PC, Part IX: Downsizing
Hard to believe that I've had the same PC case since 2011, and my last serious upgrade was in 2015....
over a year ago
Hard to believe that I've had the same PC case since 2011, and my last serious upgrade was in 2015. I guess that's yet another sign that the PC is over, because PC upgrades have gotten really boring. It took 5 years for me to muster
blag
Recurse Center Day 15: B Tree Algorithms
I translated B Tree Algorithms from CLRS to Python
over a year ago
I translated B Tree Algorithms from CLRS to Python
Evan Jones -...
How much does the read/write buffer size matter for socket throughput?
The read() and write() system calls take a variable-length byte array as an argument. As a...
a year ago
The read() and write() system calls take a variable-length byte array as an argument. As a simplified model, the time for the system call should be some constant "per-call" time, plus time directly proportional to the number of bytes in the array. That is, the time for each call...
alexwlchan
What mammal is that?
I was visiting my parents over Christmas, and they have a large dog called Ziva.
I like to take...
11 months ago
I was visiting my parents over Christmas, and they have a large dog called Ziva.
I like to take silly photos of the family pets, and this is one from last week that shows off a super-sized snoot:
No Photoshop here, just my iPhone’s Ultra Wide camera held...
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...
Vladimir Klepov as a...
Are many useStates better than useState(object)?
Lately I've converted a lot of class components to functional. One question left me curious every...
over a year ago
Lately I've converted a lot of class components to functional. One question left me curious every time — why do I feel like splitting the old class state into so many useState(atom) — one for each state key? Is there any real benefit in it? Should I just leave a single...
ᕕ( ᐛ )ᕗ Herman's...
Will AI kill blogging?
It may feel to some that blogging is under threat by the likes of ChatGPT and other large language...
a year ago
It may feel to some that blogging is under threat by the likes of ChatGPT and other large language models. It’s so easy to generate decent-enough writing that many professional writers are quickly having to change the way they operate. On top of that, I’ve had to update Bear’s...
A Beautiful Site
Determining your app's base directory in Node.js
Determining your app's base dir (or document root if you're from a PHP background) isn't as straight...
over a year ago
Determining your app's base dir (or document root if you're from a PHP background) isn't as straight forward as you'd think in Node. Here's a little trick to get a globally available reference to your app's root directory.
Add this somewhere towards the start of your main app...
Marco.org
Overcast 4.1 now available
Overcast 4.1 is now in the App Store with some small but nice new features.
Smart Resume is actually...
over a year ago
Overcast 4.1 is now in the App Store with some small but nice new features.
Smart Resume is actually two features:
It jumps back by up to a few seconds after having been paused to help remind you of the conversation.
It slightly adjusts resumes and seeks to fall in the silences...
A Smart Bear
The Code is your Enemy
A short pep talk I delivered to kick off a Three-Day Startup challenge event. And overwhelming...
3 months ago
A short pep talk I delivered to kick off a Three-Day Startup challenge event. And overwhelming confirmation that the lesson is correct.
elementary Blog
Spring cleaning is in full effect
March was all about bug fixes. This month don’t expect too many new features, but instead get...
a year ago
March was all about bug fixes. This month don’t expect too many new features, but instead get excited about improved stability and closed issue reports! The team has been hard at work sorting through your feedback and smoothing out all of the wrinkles.
Sideload
Since sideloading...
PostHog's RSS Feed
Group Analytics is now available in PostHog
Today, we’re excited to announce that PostHog has launched Group Analytics for both PostHog Scale /...
over a year ago
Today, we’re excited to announce that PostHog has launched Group Analytics for both PostHog Scale / Enterprise users and those on PostHog Cloud…
Tony Finch's blog
Concurrent qp-trie performance numbers
Previously, I wrote about implementing safe memory reclamation for my
qp-trie code in BIND. I have...
a year ago
Previously, I wrote about implementing safe memory reclamation for my
qp-trie code in BIND. I have now got it working with a
refactored qp-trie that has been changed to support asynchronous
memory reclamation - working to the point where I can run some
benchmarks to compare the...
Blog - Bitfield...
Cryptography in Go: AES implementation
The AES cipher is complicated in principle, but the code isn’t all that
scary in practice. Let’s...
7 months ago
The AES cipher is complicated in principle, but the code isn’t all that
scary in practice. Let’s take a look at the implementation in the Go
standard library. Even I can understand it!
bt RSS Feed
Linux Mint MacBook Air Setup
Linux Mint MacBook Air Setup
2020-08-16
I don’t like the idea of throwing away old or outdated tech...
over a year ago
Linux Mint MacBook Air Setup
2020-08-16
I don’t like the idea of throwing away old or outdated tech (within reason), so I try to find a new purpose for some of my “retired” devices. This article will cover how to switch over a mid-2011 model MacBook Air to utilize Linux...
Josh Comeau's blog
The Quest for the Perfect Dark Mode
Dark Mode has become common enough that it's a user expectation. And yet, creating the perfect dark...
over a year ago
Dark Mode has become common enough that it's a user expectation. And yet, creating the perfect dark mode with a statically-built site/app is deceptively tricky. In this in-depth tutorial, we'll see how to build the perfect, flicker-free, customizable theming solution for...
HTMHell
You don't need HTML!
While browsing Mastodon late one night, I came across this excellent blog post called HTML is all...
over a year ago
While browsing Mastodon late one night, I came across this excellent blog post called HTML is all you need to make a website. It describes a few websites which are pure HTML. No CSS and no JS.
And I thought… do you even need HTML to make a website?
A few hours later, I launched...
Ognjen Regoje •...
Lessons in DDD from building an e-commerce platform
In a recent conversation with some colleagues, we were talking about how startups make the trade-off...
11 months ago
In a recent conversation with some colleagues, we were talking about how startups make the trade-off between design, domain-driven specifically, in favor of speed. They intentionally take on debt, technical and otherwise, to move faster.
I wasn’t in favour of employing DDD in a...
A Beautiful Site
Design Systems Aren't Cheap
Buttons are one of my favorite components. On the surface they seem simple, but in practice, they...
over a year ago
Buttons are one of my favorite components. On the surface they seem simple, but in practice, they tend to be much more involved. In a post by Nathan Curtis entitled And you thought buttons were easy?, he demonstrates how costs can quickly skyrocket to $1,000,000 when one arm of...
Renegade Otter
Getting our focus back
“We was robbed…”
Attention is arguably the most precious resource of the 21st century. Technology...
a year ago
“We was robbed…”
Attention is arguably the most precious resource of the 21st century. Technology companies have expended incredible efforts to
improve the ways in which they capture our attention and convert it into revenue. That fight for the
nine unmonetized glances.
An...
Letters of Note
I miss you so very much, Ryan
In December of 1984, 13-year-old Ryan White was given 6 months to live after contracting AIDS during...
over a year ago
In December of 1984, 13-year-old Ryan White was given 6 months to live after contracting AIDS during a contaminated treatment for hemophilia, a blood condition with which he had lived since birth. By June of 1985, keen to resume as normal a lifestyle as possible, Ryan attempted...
Tony Finch's blog
The unix69 keyboard layout: nerdy and nice
A proper Unix keyboard layout must have escape next to 1 and control
next to A.
Compared to the...
a year ago
A proper Unix keyboard layout must have escape next to 1 and control
next to A.
Compared to the usual ANSI layout, backquote is displaced from its
common position next to 1. But a proper Unix keyboard should cover
the entire ASCII repertoire, 94 printing characters on 47 keys,...
Making software...
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...
Computer Things
GitHub Search for research and learning
Hi everyone!
I have a new blog post out: An RNG that runs in your brain. It's a mix of cool tricks...
11 months ago
Hi everyone!
I have a new blog post out: An RNG that runs in your brain. It's a mix of cool tricks and math analysis done with an exotic gremlin language. Patreon is here. Also TLA+ workshop on Feb 12 etc etc use the code NEWSLETTERDISCOUNT for $100 off etc
Anyway I've been all...
Jim Nielsen’s Blog
“Easier and More Convenient” They Said…
The other day in our morning rush before school my wife asked for help figuring out how to put lunch...
2 months ago
The other day in our morning rush before school my wife asked for help figuring out how to put lunch money on our kids’ school accounts.
For some time she’s been doing it “the hard way”: talk to the people in the front office of the school every few months and swipe a credit...
A Smart Bear
The Elephant in the room: The myth of exponential hypergrowth
Fast-growing startups are frequently described as “exponential,” especially when the product is...
over a year ago
Fast-growing startups are frequently described as “exponential,” especially when the product is “viral.” This turns out to be incorrect, even for Facebook and Slack. If your model is incorrect, you don’t understand growth, which means you can’t control it, nor predict it. Here is...
ntietz.com blog
RC Week 3: Returning to Math
The third week of my batch at Recurse Center is finished.
It is still flying by too quickly.
Nine...
over a year ago
The third week of my batch at Recurse Center is finished.
It is still flying by too quickly.
Nine weeks left!
This week was a whirlwind and really busy.
I think I pushed myself too hard.
I had just recovered from my cold and was a little drained, and then got my COVID booster and...
PostHog's RSS Feed
Product engineer vs software engineer: How are they different?
Software companies are changing. Where once product managers and software engineers dominated, now a...
a year ago
Software companies are changing. Where once product managers and software engineers dominated, now a new role is emerging: the product engineer…
Paolo Amoroso's...
I mothballed Free Python Books
<![CDATA[I shut down Free Python Books, the list of Python books that are free to read online or...
9 months ago
<![CDATA[I shut down Free Python Books, the list of Python books that are free to read online or download I had been maintaining since 2019.
I archived the project's GitHub repo, which is now read-only and no longer accepts contributions. If you're interested you're welcome to...
Liz Denys
Intent! It's eldritch magic! or: house rules for warlocks who mean well
As we all know, intent is an ancient eldritch power! Dungeons & Dragons 5e warlocks enter into pacts...
over a year ago
As we all know, intent is an ancient eldritch power! Dungeons & Dragons 5e warlocks enter into pacts with otherworldly patrons who grant them such ancient magics in the form of pact boons.
From page 107 of the Player's Handbook (5e, 2014):
At 3rd level, your otherworldly patron...
Joel Gascoigne
Making money with a product: A myth?
* Tweet [https://twitter.com/share]
*
* Buffer [http://bufferapp.com/add]
*
I’ve realised...
over a year ago
* Tweet [https://twitter.com/share]
*
* Buffer [http://bufferapp.com/add]
*
I’ve realised there was a time I didn’t believe people would pay for a product.
In my mind, it was a myth. As an entrepreneur, it’s so vital to overcome that.
First, a coffee shop conversation
I
Epic Web Dev
Turn Progressive Enhancement up to 11 (tip)
Learn how to create a progressive enhancement image uploader that works for users with or without...
a year ago
Learn how to create a progressive enhancement image uploader that works for users with or without JavaScript.
A Beautiful Site
Opening a new window after an async operation
I was working on an OAuth implementation the other day and needed to open a third-party auth page in...
over a year ago
I was working on an OAuth implementation the other day and needed to open a third-party auth page in a new window.
However, I needed to fetch the target URL from the server first, then open the window. Kinda like this:
const button =...
Ognjen Regoje •...
Tracking the cursor in Selenium driven Chrome
From the links in the sources, the following code snippet can be used to track the cursor:
<style>
...
11 months ago
From the links in the sources, the following code snippet can be used to track the cursor:
<style>
.dot {
background: red;
position: absolute;
width: 2px;
height: 2px;
z-index: 10000;
}
</style>
(function () {
"use strict";
document.onmousemove =...
Josh Comeau's blog
How To Learn Stuff Quickly
As software developers, we're always learning new things; it's practically the whole gig! If we can...
over a year ago
As software developers, we're always learning new things; it's practically the whole gig! If we can learn to quickly pick up new languages/frameworks/tools, we'll become so much more effective at our job. It's sort of a superpower.
Ferd.ca
My favorite Erlang Container
2022/07/09
My favorite Erlang Container
Joe Armstrong wrote a blog post titled My favorite Erlang...
over a year ago
2022/07/09
My favorite Erlang Container
Joe Armstrong wrote a blog post titled My favorite Erlang Program, which showed a very simple universal server written in Erlang:
universal_server()->receive{become,F}->F()end.
You could then write a small program that could fit this...
bt RSS Feed
Launching Sublime Text with dmenu on Alpine Linux
Launching Sublime Text with dmenu on Alpine Linux
2023-04-13
Everyone seems to be running some...
a year ago
Launching Sublime Text with dmenu on Alpine Linux
2023-04-13
Everyone seems to be running some version of VSCode as their main editor these days. But not me. I find VSCode to be too bloated for my needs - not to mention being built on top of electron instead of native code. I...
A Beautiful Site
GIF, JPEG or PNG? Using images on the web
This article aims to describe the difference between the three most popular types of images used on...
over a year ago
This article aims to describe the difference between the three most popular types of images used on the Web, and how to use them effectively in your websites.
JPEG #
JPEG files are compressed images that maintain a balance of size versus quality. For example: More compression =...
alexwlchan
The new Flickr Commons Explorer →
One of the things I’ve been working on at the Flickr Foundation is a new “Commons Explorer”, a way...
8 months ago
One of the things I’ve been working on at the Flickr Foundation is a new “Commons Explorer”, a way to browse the photos in the Flickr Commons.
Flickr Commons is a collection of historical photography from cultural institutions from all around the world, all with no known...
Tony Finch's blog
nsnotifyd-2.3 released
D’oh, I lost track of a bug report that should have been fixed in
nsnotifyd-2.2. Thus, hot on the...
2 weeks ago
D’oh, I lost track of a bug report that should have been fixed in
nsnotifyd-2.2. Thus, hot on the heels of [the previous release][prev],
here’s nsnotifyd-2.3. Sorry for causing extra work to
my uncountably many users!
The nsnotifyd daemon monitors a set of DNS zones and runs a...
bt RSS Feed
Fixing LocalWP on Fedora 32
Fixing LocalWP on Fedora 32
2020-05-06
I recently upgraded from Fedora 31 to 32 and everything went...
over a year ago
Fixing LocalWP on Fedora 32
2020-05-06
I recently upgraded from Fedora 31 to 32 and everything went very smoothly - except for one application: LocalWP. After the upgrade, all local WordPress builds would fail and complain about two missing packages:
libnettle6
libhogweed4
After...
swyx's site RSS Feed
Eponymous Laws
Interesting Two Word ideas with names of people on them
over a year ago
Interesting Two Word ideas with names of people on them
Josh Comeau's blog
Understanding useMemo and useCallback
What's the deal with these two hooks?! Lots of devs find them confusing, for a whole host of...
over a year ago
What's the deal with these two hooks?! Lots of devs find them confusing, for a whole host of reasons. In this tutorial, we'll dig deep and understand what they do, why they're useful, and how to get the most out of them.
swyx's site RSS Feed
Dwell and the Tools for Thought Hackathon
I worked on a little hackathon project at AGI House with Sasha. We won!
a year ago
I worked on a little hackathon project at AGI House with Sasha. We won!
Joel Gascoigne
How to start your startup in 4 steps
* Tweet [https://twitter.com/share]
*
* Buffer [http://bufferapp.com/add]
*
Having started...
over a year ago
* Tweet [https://twitter.com/share]
*
* Buffer [http://bufferapp.com/add]
*
Having started my latest venture [http://bufferapp.com] just over 5 months ago,
and having just reached ramen profitability
[http://www.paulgraham.com/ramenprofitable.html], I want to share some...
David Heinemeier...
Bad Therapy
This book nails it. What it's like to be a parent with school-age children in America right now. So...
8 months ago
This book nails it. What it's like to be a parent with school-age children in America right now. So many kids with a diagnosis of one sort or another, so much monitoring of children's every move, so much anxiety over the most trivial things, like the sugar content of a cupcake....
Steve Klabnik
Resque 1.25.0.pre has been released
over a year ago
swyx's site RSS Feed
Digital Garden Terms of Service
This is my attempt to explicitly define a not-legally-binding "terms of service" for people who...
over a year ago
This is my attempt to explicitly define a not-legally-binding "terms of service" for people who peruse Digital Gardens, and the people who Learn in Public with them.
Words and Buttons...
Image darning
It's about a feature that cleans up dirt stains from aged newspapers. I called it darning because of...
over a year ago
It's about a feature that cleans up dirt stains from aged newspapers. I called it darning because of how it works.
A Beautiful Site
Animated CSS hamburger icons
If you need some tasty CSS hamburger icons that animate in fantastic ways, here you go.
Hamburgers...
over a year ago
If you need some tasty CSS hamburger icons that animate in fantastic ways, here you go.
Hamburgers is an MIT-licensed CSS library that gives you over a dozen beautifully animated navicons for use in your own projects. Also includes the Sass source so you can customize and compile...
Jim Nielsen’s Blog
There’s TypeScript and Then There’s TypeScript
Are you a TypeScript user?
Your initial reaction may be a resounding “Yes!”
Or perhaps be a booming...
a year ago
Are you a TypeScript user?
Your initial reaction may be a resounding “Yes!”
Or perhaps be a booming “No!”
The answer seems simple, but (as with most things) it might be more nuanced than you think.
Here’s Anders Hejlsberg, TypeScript Co-Creator & Lead Architech, from the...
Epic Web Dev
Epic Workshop Diff Tab Demo (tip)
3 months ago
Ink & Switch
Summit 010 Berlin
Ink & Switch invited a few folks out for a day of conversations in Berlin. Here are some notes and...
over a year ago
Ink & Switch invited a few folks out for a day of conversations in Berlin. Here are some notes and pictures from that event.
Blog - Bitfield...
Generics in Go
Generics what now? This friendly, down-to-earth tutorial series explains
how Go’s generic...
9 months ago
Generics what now? This friendly, down-to-earth tutorial series explains
how Go’s generic functions and types work, why we need them, and where we
can use them.
Civic Hax
That Time the City of Seattle Accidentally Gave Me 32m Emails for 40 Dollars
Background
In my last post, I wrote about my adventure of requesting metadata for both phone calls...
over a year ago
Background
In my last post, I wrote about my adventure of requesting metadata for both phone calls and emails from the City of Chicago Office of the Mayor. The work there - and its associated frustration - sent me down a path of sending requests throughout the US to both learn...
Seán Barry
Useful reusable functions I use in (almost) every Meteor application
Some core functions I find myself reusing in almost every Meteor.js application I build.
over a year ago
Some core functions I find myself reusing in almost every Meteor.js application I build.
Ink & Switch
Fine-grained provenance, Automerge updates
Some explorations of new editor interactions for writing science papers, and a trio of projects...
2 months ago
Some explorations of new editor interactions for writing science papers, and a trio of projects advancing the future of Automerge.
Steve Klabnik
I'm going writeonly on Twitter for a while
over a year ago
swyx's site RSS Feed
Typesafe, Fullstack React & GraphQL with AWS Amplify
This is the blog version of a talk I am giving at React Summit 2020
over a year ago
This is the blog version of a talk I am giving at React Summit 2020
PostHog's RSS Feed
How to choose job titles in your early stage startup
One huge mistake some startups make is using titles to establish and reinforce hierarchy. This is...
over a year ago
One huge mistake some startups make is using titles to establish and reinforce hierarchy. This is dangerous for two reasons: Iteration and speed…
Evan Jones -...
Setenv is not Thread Safe and C Doesn't Want to Fix It
You can't safely use the C setenv() or unsetenv() functions in a program that uses threads. Those...
a year ago
You can't safely use the C setenv() or unsetenv() functions in a program that uses threads. Those functions modify global state, and can cause other threads calling getenv() to crash. This also causes crashes in other languages that use those C standard library functions, such as...
Liz Denys
Where books travel
i
I sit down in my premium economy seat, the abbreviated way of saying "economy as it was fifteen...
over a year ago
i
I sit down in my premium economy seat, the abbreviated way of saying "economy as it was fifteen years ago, but at a higher premium," and deeply internalize my physical constraints for the next six hours. A small box outlined by my seat, the side of the plane with its tiny...
PostHog's RSS Feed
HogMail #22: Why do companies over-hire?"
Welcome to HogMail, our newsletter featuring the best of the PostHog blog, tutorials, product...
a year ago
Welcome to HogMail, our newsletter featuring the best of the PostHog blog, tutorials, product guides, and curated articles on building great products…
Vadim Kravcenko
How to build remote teams properly
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 How to build remote teams properly appeared first on Vadim Kravcenko.
alexwlchan
Changing the macOS accent colour without System Preferences
In System Preferences, you can change the accent colour of your Mac:
This affects...
over a year ago
In System Preferences, you can change the accent colour of your Mac:
This affects colours throughout your Mac’s user interface, including buttons, menus, and tickboxes.
When you pick a new colour, it updates everywhere, immediately.
I want to write some automations...
Kevin Chen
Large language models are a sustaining innovation for Siri
Many people assume that large language models (LLMs) will disrupt existing consumer voice...
6 months ago
Many people assume that large language models (LLMs) will disrupt existing consumer voice assistants. Compared to Siri, while today’s ChatGPT is largely unable to complete real-world tasks like hailing an Uber, it’s far better than Siri at understanding and generating language,...
A Smart Bear
Excuse me, is there a problem?
Many startups fail despite identifying a real problem and building a product that solves that...
a year ago
Many startups fail despite identifying a real problem and building a product that solves that problem. This explains why, so you can avoid their fate.
James Vaughan's blog
Writing an HTTP server in Prolog
over a year ago
Vadim Kravcenko
The Dark Side of Remote Work: Interview Scam Epidemic
Once the pandemic hit and employers started to embrace remote work more openly, a new phenomenon...
a year ago
Once the pandemic hit and employers started to embrace remote work more openly, a new phenomenon gained momentum — Interviews-as-a-service. […]
The post The Dark Side of Remote Work: Interview Scam Epidemic appeared first on Vadim Kravcenko.
Tinloof - Blog
ReasonML for production React Apps? 🤔 (Part 2)
I like to go to the Roadmap of ReasonML from time to time to get excited about what's getting...
over a year ago
I like to go to the Roadmap of ReasonML from time to time to get excited about what's getting cooked. Whenever I visit the page, I can't help but notice these 2 points:
So the official documentation itself admits that the async story and JSON handling are not that great.
This...
Code Of Honor
The StarCraft path-finding hack
Game-unit path-finding is something that most players never notice until it doesn’t work quite...
over a year ago
Game-unit path-finding is something that most players never notice until it doesn’t work quite right, and then that minor issue becomes a rage-inducing, end-of-the-world problem. During the development of StarCraft there were times when path-finding just didn’t work at all. As...
Elad Blog
Altimeter's Brad Gerstner on Macro, Tech and Startups
Video and transcript from a fireside chat with Brad Gerstner of Altimeter
a year ago
Video and transcript from a fireside chat with Brad Gerstner of Altimeter
A Smart Bear
Legacy
Humans have always tried to live forever. Maybe you can, but not in the way you imagine.
3 months ago
Humans have always tried to live forever. Maybe you can, but not in the way you imagine.
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.
Hixie's Natural Log
Reflecting on 18 years at Google
I joined Google in October 2005, and handed in my resignation 18 years later. Last week was my last...
a year ago
I joined Google in October 2005, and handed in my resignation 18 years later. Last week was my last week at Google.
I feel very lucky to have experienced the early post-IPO Google; unlike most companies, and contrary to the popular narrative, Googlers, from the junior...
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.
David Heinemeier...
Where at least I know I'm free
I used to find the American self-image of being this uniquely freedom-loving, freedom-having people...
4 months ago
I used to find the American self-image of being this uniquely freedom-loving, freedom-having people delusional. Sure, I'd think, you're not North Korea or Venezuela, but is that really a standard worth celebration? Shouldn't America compare itself to higher alternatives, like...
Liz Denys
New Loose Leaf Security series: Securing your laptop and desktop computers
Four more episodes of Loose Leaf Security are out, a series about securing your laptop and desktop...
over a year ago
Four more episodes of Loose Leaf Security are out, a series about securing your laptop and desktop computers:
Physical attacks to your computers and disk encryption
Liz and Geoffrey are back with a look at physical computer security - just how much trouble could someone cause if...
James Vaughan's blog
Finding Free Food with Python
over a year ago
A Smart Bear
Avoid blundering: 80% of a winning strategy
Why do startups typically fail? It turns out that "avoiding those things" is already a plan for...
8 months ago
Why do startups typically fail? It turns out that "avoiding those things" is already a plan for success.
blag
PSA: SQLite does not do checksums
SQLite does not do checksums by default. Disk corruptions go silently unnoticed.
a month ago
SQLite does not do checksums by default. Disk corruptions go silently unnoticed.
Daniel Marino
Building a Random Music Sequencer with Preact
As I've composed music for video games, something that has piqued my interest is the concept of...
over a year ago
As I've composed music for video games, something that has piqued my interest is the concept of randomly generating music. Not that this is a new concept, but I was curious to see what I could come up with. Go ahead and check out the RMG-2021.
Design
I love how sequencers look...
swyx's site RSS Feed
(incomplete) Getting your O1 Visa as Fast as Possible (2024)
I have just received my O1A Visa and like for the H1B1, I figured I should write down my experience,...
a year ago
I have just received my O1A Visa and like for the H1B1, I figured I should write down my experience, thoughts, and tips for those who may wish to make the same journey. Note that I am not a professional at this, I'm just a guy who recently went through it so dont rely on me for...
Epic Web Dev
What Is A Test Boundary? (article)
Learn automated testing essentials: prepare code, execute actions, verify outcomes. Discover the...
6 months ago
Learn automated testing essentials: prepare code, execute actions, verify outcomes. Discover the importance of mocking and setting proper test boundaries.
Jim Nielsen’s Blog
Width and Height in CSS
In his video “Secret Mechanisms of CSS”, Josh explains (among other things) how width and height...
a year ago
In his video “Secret Mechanisms of CSS”, Josh explains (among other things) how width and height work in CSS. I loved his explanation so much, I am going to re-write it here for my own benefit. Hopefully the next time I have to explain it — to someone else, or to myself in my...
Making software...
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...
PostHog's RSS Feed
In-depth: The AARRR pirate funnel explained
Want to build an AARRR funnel in PostHog? Use our AARRR dashboard template to set one up quickly...
a year ago
Want to build an AARRR funnel in PostHog? Use our AARRR dashboard template to set one up quickly and easily. What is the AARRR framework? The AARRR…
Joel Gascoigne
Firing myself, again
I've written in the past about how I see the role of a...
over a year ago
I've written in the past about how I see the role of a CEO
[https://joel.is/post/42713179646/expert-of-nothing] to be one where you are
repeatedly firing yourself. Joe Kraus
[http://techcrunch.com/2012/08/28/first-fire-thyself/] brought my attention to
thinking about the role in...
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,...
Remains of the Day
The Uncanny Valley of Interactivity
I believe mass entertainment suffers from a bit of format rigidity due to the natural inertia from...
over a year ago
I believe mass entertainment suffers from a bit of format rigidity due to the natural inertia from structural ossification in the music, film, and publishing businesses, to name the most prominent.
One of the ways this manifests is in the one-way broadcast nature of much of our...
bunnie's blog
Non-Destructive Silicon Imaging (and Winner of Name that Ware December 2022)
The ware for December 2022 is an AMD Radeon RX540 chip, part number 216-0905018. Congrats to SAM for...
a year ago
The ware for December 2022 is an AMD Radeon RX540 chip, part number 216-0905018. Congrats to SAM for guessing the ware; email me for your prize. The image is from Fritzchen Fritz’s Flickr feed; I recommend checking out his photos (or you can follow him on twitter). Even if you...
Making software...
Using Hamburger Menus? Try Sausage Links
Using Hamburger Menus? Try Sausage Links
2019-06-14
When designing medium to large sized menu...
over a year ago
Using Hamburger Menus? Try Sausage Links
2019-06-14
When designing medium to large sized menu navigations on the mobile web the default go-to, for some time now, has been hamburger menus. This isn't necessarily a bad thing, but there is a simpler alternative for certain use...
Seldo.com
Biographies of every US president as audiobooks
over a year ago
Josh Comeau's blog
Becoming a Software Developer Without a CS Degree
A look at how hundreds of developers got their start in the industry despite not having a Computer...
over a year ago
A look at how hundreds of developers got their start in the industry despite not having a Computer Science or Software Engineering degree. We'll sort responses into 6 categories, and detail strategies that you can use to ensure you capture the attention of potential employers!
swyx's site RSS Feed
[Newbie Tip] What to do when you 403 during pypi twine upload
I'm pretty new to the pypi packaging ecosystem so recently ran into some trouble pushing a python...
a year ago
I'm pretty new to the pypi packaging ecosystem so recently ran into some trouble pushing a python package:
Making software...
Building openring with Jekyll Build
Building openring with Jekyll Build
2022-12-02
I think it's great when bloggers post their own...
over a year ago
Building openring with Jekyll Build
2022-12-02
I think it's great when bloggers post their own personal "reading list" of blogs they themselves follow. Whether this is a customized Blogroll page or footnotes in their individual articles, I find it really helpful to find more...
alexwlchan
Splitting a class into balanced groups
Earlier this week, my mum sent me an interesting problem.
She’s got a class of 12 students, who are...
a year ago
Earlier this week, my mum sent me an interesting problem.
She’s got a class of 12 students, who are going to meet over 7 sessions.
In each session, they’re going to split into 3 or 4 groups, and she wants to find an even distribution of groups – each person gets to work with...
Programming in the...
Writing Video Games in a Functional Style
When I started this blog in 2007, a running theme was "Can interactive experiences like video games...
over a year ago
When I started this blog in 2007, a running theme was "Can interactive experiences like video games be written in a functional style?" These are programs heavily based around mutable state. They evolve, often drastically, during development, so there isn't a perfect up-front...
Tony Finch's blog
Where does "where does my computer get the time from?" come from?
I am pleased that so many people enjoyed
my talk about time at RIPE86.
I thought I would write a few...
a year ago
I am pleased that so many people enjoyed
my talk about time at RIPE86.
I thought I would write a few notes on some of the things I left out.
genesis
Essen & Markowitz
Galileo
zones
BIH
irony
genesis
There were a couple of things that I thought would make a fun talk:
Just how many...
The Changelog
Martha the Pilot
Martha, now 5, can’t remember a time when she didn’t fly periodically. She’s come along in our...
a year ago
Martha, now 5, can’t remember a time when she didn’t fly periodically. She’s come along in our airplane in short flights to a nearby restaurant and long ones to Michigan and South Dakota. All this time, she’s been riding in the back seat next to Laura. Martha has been talking...
Blog System/5
Code reviews: A success story
A tale on how a strict code review process helped ship a bug-free feature
a year ago
A tale on how a strict code review process helped ship a bug-free feature
Dan Quach Blog
State of Data Engineering Q3 2024
Prompt Engineering – Meta Analysis Whitepaper One of my favorite AI podcasts, Latent Space, recently...
a month ago
Prompt Engineering – Meta Analysis Whitepaper One of my favorite AI podcasts, Latent Space, recently featured Sander Schulhoff, one of the authors of a comprehensive research paper on prompt engineering. This meta-study reviews over 1,600 published papers, with co-authors from...
The Pragmatic...
CircleCI’s unnoticed holiday security breach
CircleCI customers returned from the holiday break to be told to urgently rotate their secrets,...
a year ago
CircleCI customers returned from the holiday break to be told to urgently rotate their secrets, which were probably leaked. What does this leak mean for companies using a CI provider and how can you prepare for a CI vendor being compromised?
The Pragmatic...
Is the “AI developer”a threat to jobs – or a marketing stunt?
One startup released “the first AI software engineer,” while another aims to build a “superhuman...
9 months ago
One startup released “the first AI software engineer,” while another aims to build a “superhuman software engineer.” As intimidating as these sound: what if it’s more marketing than reality?
PostHog's RSS Feed
How I learned to love feedback loops (and make better products)
I recently wrote a blog post for my personal site about the lessons I'd learned from leading my...
over a year ago
I recently wrote a blog post for my personal site about the lessons I'd learned from leading my first two projects as a Software Engineer at PostHog…
Making software...
Easy Custom Radio Inputs
Easy Custom Radio Inputs
2019-01-21
Default radio inputs are notoriously horrible looking and are...
over a year ago
Easy Custom Radio Inputs
2019-01-21
Default radio inputs are notoriously horrible looking and are something designers tend to over-think when trying to customize them. Let's walk through how to create custom radio buttons with pure CSS, while still preserving performance and...
A Beautiful Site
The Future of Frameworks
Love them or hate them, web components ("custom elements") are making a huge dent in the world of...
over a year ago
Love them or hate them, web components ("custom elements") are making a huge dent in the world of front-end development. As of today, close to 18% of page views in Chrome are registering web components. That's an insane amount of usage!
The benefits of a framework-agnostic...
ᕕ( ᐛ )ᕗ Herman's...
On writing regularly
It has been a while (perhaps too long) since I’ve written publicly. My notepad is, however, filled...
a year ago
It has been a while (perhaps too long) since I’ve written publicly. My notepad is, however, filled with half jotted down ideas, semi-written essays, and the scratchings and sketches of a madman re-learning algebra and Spanish.
I once knew a man who lived by the somewhat...
Remains of the Day
Revisionist commentary
I don't know that I'm aware of enough entries in this category to even consider it one, but I'm a...
over a year ago
I don't know that I'm aware of enough entries in this category to even consider it one, but I'm a sucker for the union of political and film satire as embodied in alternate film commentaries.
I was reminded of it when seeing The People's History of Tattooine which was first one...
Liz Denys
Sea strands V60-style coffee cone, 2024
Rising sea levels / eroding beaches / between saltwater and the sea strands / melting ice caps
6 months ago
Rising sea levels / eroding beaches / between saltwater and the sea strands / melting ice caps
swyx's site RSS Feed
Writing an Authentication Store in Svelte
This is my attempt today wrapping an Authentication workflow into a Svelte Store
over a year ago
This is my attempt today wrapping an Authentication workflow into a Svelte Store
A Beautiful Site
Smaller volume increments in macOS
Ever wish you turn the volume up or down just a tiny bit more on your Mac? Well, you can.
You...
over a year ago
Ever wish you turn the volume up or down just a tiny bit more on your Mac? Well, you can.
You already know you can increase and decrease your Mac's volume with the keyboard, but sometimes the intervals are a bit too much. I usually end up adjusting my external speakers just to...
Making software...
Base64 All The Things! (Sometimes)
Base64 All The Things! (Sometimes)
2020-03-18
An extremely overlooked process for displaying fonts,...
over a year ago
Base64 All The Things! (Sometimes)
2020-03-18
An extremely overlooked process for displaying fonts, images, documents, spreadsheets, etc. on the web is the use of base64 encoding. Although it may not be the most efficient (or easy) way to display and include these elements it can...
Alex Meub
Controlling Wemo Smart Plugs with Arduino
«««< HEAD
Smart outlets are great. I’ve owned Belkin Wemo Mini smart plugs for years and used them...
over a year ago
«««< HEAD
Smart outlets are great. I’ve owned Belkin Wemo Mini smart plugs for years and used them for controlling lighting and fans. I thought it would be cool to control my Wemo plugs using a physical button (in addition to my phone). In many situations, a button is faster than...
bt RSS Feed
Installing WordPress on NearlyFreeSpeech
Installing WordPress on NearlyFreeSpeech
2024-05-27
I recently went through the process of porting...
6 months ago
Installing WordPress on NearlyFreeSpeech
2024-05-27
I recently went through the process of porting over my wife’s small business website (built off of WordPress + Woocommerce) from EasyWP to NearlyFreeSpeech. Although the process was fairly easy-going, I thought I would post my...
Founder's blog
I really wanted to like Tailwind CSS
TL;DR
Nobody:
Absolutely no one:
Me: Here's what I think about Tailwind CSS!
First, a...
a year ago
TL;DR
Nobody:
Absolutely no one:
Me: Here's what I think about Tailwind CSS!
First, a tip of the hat
Let's get one thing out of the way: Tailwind CSS is great.
For starters, Tailwind is a very polished and well-thought-out product. As a fellow bootstrapper - 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:...