Full Width [alt+shift+f] FOCUS MODE Shortcuts [alt+shift+k]
Sign Up [alt+shift+s] Log In [alt+shift+l]
Top Categories > programming
#all #programming #history #technology #startups #life #science #literature #creative #architecture #design #travel #finance #comics #AI #indiehacker #cartography Muted Categories [alt+←][alt+→]
Jim Nielsen’s Blog
How to Make Websites That Will Require Lots of Your Time and Energy Some lessons I’ve learned from experience. 1. Install Stuff Indiscriminately From npm Become totally...
a month ago
21
a month ago
Some lessons I’ve learned from experience. 1. Install Stuff Indiscriminately From npm Become totally dependent on others, that’s why they call them “dependencies” after all! Lean in to it. Once your dependencies break — and they will, time breaks all things — then you can spend...
The Codist
What Is A Good Programmer? Am I a good programmer? The short answer is: I don’t know what that means. I have been programming...
a month ago
21
a month ago
Am I a good programmer? The short answer is: I don’t know what that means. I have been programming for 52 years now, having started in a public high school class in 1973, which is pretty rare because few high schools offered such an opportunity back then. I
David Heinemeier...
Building competency is better than therapy The world is waking to the fact that talk therapy is neither the only nor the best way to cure a...
a month ago
23
a month ago
The world is waking to the fact that talk therapy is neither the only nor the best way to cure a garden-variety petite depression. Something many people will encounter at some point in their lives. Studies have shown that exercise, for example, is a more effective treatment than...
David Heinemeier...
You expect principles but should wish for none People seem to be continuously disappointed by the fact that public companies are run by...
a month ago
20
a month ago
People seem to be continuously disappointed by the fact that public companies are run by professional managers who don't operate from deep principles. But they shouldn't be. It's in everyone's interest that corporations set their sails to the wind and whims of the prevailing...
Computer Things
Programming Language Escape Hatches The excellent-but-defunct blog Programming in the 21st Century defines "puzzle languages" as...
a month ago
26
a month ago
The excellent-but-defunct blog Programming in the 21st Century defines "puzzle languages" as languages were part of the appeal is in figuring out how to express a program idiomatically, like a puzzle. As examples, he lists Haskell, Erlang, and J. All puzzle languages, the author...
charity.wtf
How We Migrated the Parse API From Ruby to Golang (Resurrected) I wrote a lot of blog posts over my time at Parse, but they all evaporated after Facebook killed the...
a month ago
30
a month ago
I wrote a lot of blog posts over my time at Parse, but they all evaporated after Facebook killed the product. Most of them I didn’t care about (there were, ahem, a lot of status updates and “service reliability announcements”, but I was mad about losing this one in particular, a...
David Heinemeier...
It's a Beelink, baby It's only been two months since I discovered the power and joy of this new generation of mini PCs....
a month ago
37
a month ago
It's only been two months since I discovered the power and joy of this new generation of mini PCs. My journey started out with a Minisforum UM870, which is a lovely machine, but since then, I've come to really appreciate the work of Beelink.  In a crowded market for mini PCs,...
TokyoDev
How to Network as a Developer (Without Feeling Sleazy) “One of the comments that sparked this article,” our founder Paul McMahon told me, “was someone...
a month ago
31
a month ago
“One of the comments that sparked this article,” our founder Paul McMahon told me, “was someone saying, ‘I don’t really want to do networking because it seems kind of sleazy. I’m not that kind of person.’” I guess that’s the key misconception people have when they hear...
Krzysztof Kowalczyk...
Ideas for faster web dev cycle I strongly believe that fast iteration cycle is important for productivity. In programming fast...
a month ago
18
a month ago
I strongly believe that fast iteration cycle is important for productivity. In programming fast iteration means: how quickly can I go from finishing writing the code to testing it. That’s why I don’t like languages that compile slowly: slow compilation puts a hard limit on your...
Blog System/5
Bazel and action (non-) determinism A key feature of Bazel is its ability to produce fast, reliable builds by caching the output of...
a month ago
ntietz.com blog -...
Covers as a way of learning music and code When you're just getting started with music, you have so many skills to learn. You have to be able...
a month ago
31
a month ago
When you're just getting started with music, you have so many skills to learn. You have to be able to play your instrument and express yourself through it. You need to know the style you're playing, and its idioms and conventions. You may want to record your music, and need all...
Krzysztof Kowalczyk...
Stage manager in Mac OS Stage Manager in Mac OS is not a secret, but I’ve only learned about it recently. It’s off by...
a month ago
19
a month ago
Stage Manager in Mac OS is not a secret, but I’ve only learned about it recently. It’s off by default so you have to enable it in system settings: It’s hard to describe in words, so you’ll have to try it. And experiment a bit because I didn’t get in the first hour. It’s a...
Krzysztof Kowalczyk...
Zed debug setup for go server / Svelte web app Today I figured out how to setup Zed to debug, at the same time, my go server and Svelte web app. My...
a month ago
25
a month ago
Today I figured out how to setup Zed to debug, at the same time, my go server and Svelte web app. My dev setup for working on my web app is: go server is run with -run-dev arg go server provides backend apis and proxies requests it doesn’t handle to a vite dev server that does...
Irrational...
Commenting on Notion docs via OpenAI and Zapier. One of my side quests at work is to get a simple feedback loop going where we can create knowledge...
a month ago
26
a month ago
One of my side quests at work is to get a simple feedback loop going where we can create knowledge bases that comment on Notion documents. I was curious if I could hook this together following these requirements: No custom code hosting Prompt is editable within Notion rather than...
Irrational...
An agent to use Notion docs as prompts to comment on Notion docs. Last weekend, I wrote a bit about using Zapier to load Notion pages as prompts to comment on other...
a month ago
18
a month ago
Last weekend, I wrote a bit about using Zapier to load Notion pages as prompts to comment on other Notion pages. That worked well enough, but not that well. This weekend I spent some time getting the next level of this working, creating an agent that runs as an AWS Lambda. This,...
Krzysztof Kowalczyk...
lazy import of JavaScript modules When working on big JavaScript web apps, you can split the bundle in multiple chunks and import...
a month ago
20
a month ago
When working on big JavaScript web apps, you can split the bundle in multiple chunks and import selected chunks lazily, only when needed. That makes the main bundle smaller, faster to load and parse. How to lazy import a module? let hljs = await...
Krzysztof Kowalczyk...
Using await in Svelte 5 components Svelte 5 just added a way to use async function in components. This is from Rich Harris talk The...
a month ago
20
a month ago
Svelte 5 just added a way to use async function in components. This is from Rich Harris talk The simplest component <script> async function multiply(x, y) { let uri = `/multiply?x=${x}&y=${y}` let rsp = await fetch(uri) let resp = await rsp.text(); return...
Confessions of a...
x86 Assembly Exercise #1: Toy kill Program (Solution) A step-by-step walkthrough of the toy kill program using raw Linux syscalls.
a month ago
Irrational...
Moving from an orchestration-heavy to leadership-heavy management role. For managers who have spent a long time reporting to a specific leader or working in an organization...
a month ago
29
a month ago
For managers who have spent a long time reporting to a specific leader or working in an organization with well‑understood goals, it’s easy to develop skill gaps without realizing it. Usually this happens because those skills were not particularly important in the environment you...
Krzysztof Kowalczyk...
vite /rollup manualChunks When building a large web app it’s possible to split the .js bundle into chunks and lazy load...
a month ago
20
a month ago
When building a large web app it’s possible to split the .js bundle into chunks and lazy load certain parts only when needed. For example, in Edna I use markdown-it and highlight.js library only in a certain scenario. By putting it in it’s separate chunk, I save almost 1 MB of...
Irrational...
Advancing the industry, part two. I’m turning forty in a few weeks, and there’s a listicle archetype along the lines of “Things I’ve...
a month ago
21
a month ago
I’m turning forty in a few weeks, and there’s a listicle archetype along the lines of “Things I’ve learned in the first half of my career as I turn forty and have now worked roughly twenty years in the technology industry.” How do you write that and make it good? Don’t ask me. I...
the singularity is...
The World After Wireheading Hold my hand, grow my skin Erica Western Geiger Counter Do you have any addictions? You may not...
a month ago
35
a month ago
Hold my hand, grow my skin Erica Western Geiger Counter Do you have any addictions? You may not register them as such, perhaps because they don’t lead to anything you consider harmful consequences. But you have them. In some ways, all your behavior is compulsive. What would the...
Krzysztof Kowalczyk...
Increase software sales by 50% or more This is re-post of How to Permanently Increase Your Sales by 50% or More in Only One Day article by...
a month ago
20
a month ago
This is re-post of How to Permanently Increase Your Sales by 50% or More in Only One Day article by Steve Pavlina Of all the things you can do to increase your sales, one of the highest leverage activities is attempting to increase your products’ registration rate. Increasing...
Computer Things
Maybe writing speed actually is a bottleneck for programming I'm a big (neo)vim buff. My config is over 1500 lines and I regularly write new scripts. I recently...
a month ago
27
a month ago
I'm a big (neo)vim buff. My config is over 1500 lines and I regularly write new scripts. I recently ported my neovim config to a new laptop. Before then, I was using VSCode to write, and when I switched back I immediately saw a big gain in productivity. People often pooh-pooh vim...
Jim Nielsen’s Blog
Occupation and Preoccupation Here’s Jony Ive in his Stripe interview: What we make stands testament to who we are. What we make...
a month ago
20
a month ago
Here’s Jony Ive in his Stripe interview: What we make stands testament to who we are. What we make describes our values. It describes our preoccupations. It describes beautiful succinctly our preoccupation. I’d never really noticed the connection between these two words:...
David Heinemeier...
American hype There's no country on earth that does hype better than America. It's one of the most appealing...
a month ago
27
a month ago
There's no country on earth that does hype better than America. It's one of the most appealing aspects about being here. People are genuinely excited about the future and never stop searching for better ways to work, live, entertain, and profit. There's a unique critical mass in...
Krzysztof Kowalczyk...
File sync is very slow I’m working on a Go library appendstore for append-only store of lots of things in a single file. To...
a month ago
18
a month ago
I’m working on a Go library appendstore for append-only store of lots of things in a single file. To make things as robust as possible I was calling os.File.Sync() after each append. Sync() is waiting until the data is acknowledged as truly, really written to disk (as opposed to...
David Heinemeier...
Linux crosses magic market share threshold in US According to Statcounter, Linux has claimed 5% market share of desktop computing in the US. That's...
a month ago
32
a month ago
According to Statcounter, Linux has claimed 5% market share of desktop computing in the US. That's double of where it was just three years ago! Really impressive. Windows is still dominant at 63%, and Apple sit at 26%. But for the latter, it's quite a drop from their peak of 33%...
Confessions of a...
A Programmer’s Guide to x86-64 Assembly (Series Overview) Welcome to my ongoing series on x86-64 assembly programming, designed for programmers who want to...
a month ago
25
a month ago
Welcome to my ongoing series on x86-64 assembly programming, designed for programmers who want to peel back the abstraction and understand how code really runs at the machine level.
tonsky.me
Gaslight-driven development Any person who has used a computer in the past ten years knows that doing meaningless tasks is just...
a month ago
32
a month ago
Any person who has used a computer in the past ten years knows that doing meaningless tasks is just part of the experience. Millions of people create accounts, confirm emails, dismiss notifications, solve captchas, reject cookies, and accept terms and conditions—not because they...
Jim Nielsen’s Blog
Measurement and Numbers Here’s Jony Ive talking to Patrick Collison about measurement and numbers: People generally want to...
a month ago
25
a month ago
Here’s Jony Ive talking to Patrick Collison about measurement and numbers: People generally want to talk about product attributes that you can measure easily with a number…schedule, costs, speed, weight, anything where you can generally agree that six is a bigger number than...
David Heinemeier...
The 6 Hours of Lex When I drive the 24 Hours of Le Mans, I spend a total of about 6-9 hours in the car, divided into...
a month ago
35
a month ago
When I drive the 24 Hours of Le Mans, I spend a total of about 6-9 hours in the car, divided into stints of roughly two hours at a time. It's intense. But talking with Lex Fridman in Austin on his podcast? Over six hours straight! We only interrupted the session for five minutes...
Blog of Simple...
Google is tracking you even when you use DuckDuckGo
a month ago
Jim Nielsen’s Blog
Computers Are a Feeling Exploring diagram.website, I came across The Computer is a Feeling by Tim Hwang and Omar Rizwan: ...
a month ago
28
a month ago
Exploring diagram.website, I came across The Computer is a Feeling by Tim Hwang and Omar Rizwan: the modern internet exerts a tyranny over our imagination. The internet and its commercial power has sculpted the computer-device. It's become the terrain of flat, uniform, common...
Blog of Simple...
German court rules Meta’s tracking tech violates GDPR
a month ago
Krzysztof Kowalczyk...
New Edna feature: multiple notes I started working on Edna several months ago and I’ve implemented lots of functionality. Edna is a...
a month ago
30
a month ago
I started working on Edna several months ago and I’ve implemented lots of functionality. Edna is a note taking application with super powers. I figured I’ll make a series of posts about all the features I’ve added in last few months. The first is multiple notes. By default we...
charity.wtf
Thoughts on Motivation and My 40-Year Career I’ve never published an essay quite like this. I’ve written about my life before, reams of stuff...
a month ago
37
a month ago
I’ve never published an essay quite like this. I’ve written about my life before, reams of stuff actually, because that’s how I process what I think, but never for public consumption. I’ve been pushing myself to write more lately because my co-authors and I have a whole fucking...
General Robots
Single-Use Disposable Applications As search gets worse and “working code” gets cheaper, apps get easier to make from scratch than to...
a month ago
Blog of Simple...
Is ShareFile GDPR Compliant?
a month ago
Krzysztof Kowalczyk...
Desktop UI frameworks written by a single person Less known desktop UI frameworks Writing desktop software is hard. The UI technologies...
a month ago
29
a month ago
Less known desktop UI frameworks Writing desktop software is hard. The UI technologies of Windows or MacOS are awful compared to web technology. What can trivially be done with HTML/CSS/JavaScript in few minutes can take hours using Windows’s win32 APIs or Mac’s...
Krzysztof Kowalczyk...
Evolving Edna Ask AI UI This is a real life example of tweaking UI in Edna, my note taking application with super...
a month ago
25
a month ago
This is a real life example of tweaking UI in Edna, my note taking application with super powers. Ask AI is a simple AI chat: you write a question, send it to LLM model and get a response. Here’s my first version of the UI: What is good and bad about this version? Good: there’s...
Computer Things
Logic for Programmers Turns One I released Logic for Programmers exactly one year ago today. It feels weird to celebrate the...
a month ago
28
a month ago
I released Logic for Programmers exactly one year ago today. It feels weird to celebrate the anniversary of something that isn't 1.0 yet, but software projects have a proud tradition of celebrating a dozen anniversaries before 1.0. I wanted to share about what's changed in the...
Krzysztof Kowalczyk...
Implementing UI translation in SumatraPDF, a C++ Windows application Translating user interface of SumatraPDF SumatraPDF is the best PDF/eBook/Comic Book...
a month ago
23
a month ago
Translating user interface of SumatraPDF SumatraPDF is the best PDF/eBook/Comic Book viewer for Windows. It’s small, fast, full of features, free and open-source. It became popular enough that it made sense to translate the UI for non-English users. Currently we...
Krzysztof Kowalczyk...
Calling Grok, OpenAI, Anthropic, Google, OpenRouter API from the browser Here’s what I learned about calling LLM APIs from the browser when building AI chat functionality in...
a month ago
44
a month ago
Here’s what I learned about calling LLM APIs from the browser when building AI chat functionality in my note taking app Edna. The API I care about is getting LLM response to a question in a streaming way. OpenAI pioneered this and created...
Jim Nielsen’s Blog
Follow Up: An Analysis of YouTube Links From The White House’s “Wire” Website After publishing my Analysis of Links From The White House’s “Wire” Website, Tina Nguyen, political...
a month ago
30
a month ago
After publishing my Analysis of Links From The White House’s “Wire” Website, Tina Nguyen, political correspondent at The Verge, reached out with some questions. Her questions made me realize that the numbers in my analysis weren’t quite correct (I wasn’t de-depulicating links...
TokyoDev
Buying a house in Karuizawa, Japan After 18 months of living in Karuizawa, a resort town about an hour away from Tokyo via the...
a month ago
39
a month ago
After 18 months of living in Karuizawa, a resort town about an hour away from Tokyo via the Shinkansen, I have bought a house here. This article describes my experience of purchasing a house, and contains tips that are useful both if you’re considering buying in Karuizawa...
Krzysztof Kowalczyk...
Case study of over-engineered C++ code You’ve heard of over-engineered, unnecessarily complex code but what exactly is it? I believe it’s...
a month ago
19
a month ago
You’ve heard of over-engineered, unnecessarily complex code but what exactly is it? I believe it’s best to show by example. While it’s not my intention to criticize other people’s code, I think it’s better to show code and how to improve it rather than vaguely talk about...
Krzysztof Kowalczyk...
Increase open file limit on Ubuntu Linux What and why of open file limit If you run a webapp on a Linux server, your webapp needs...
a month ago
23
a month ago
What and why of open file limit If you run a webapp on a Linux server, your webapp needs to open files and make network connections. Most Linux servers have horrible default for this and limit the number of opened files at the same time to e.g. 1024. To check the...
Jim Nielsen’s Blog
Do You Even Personalize, Bro? There’s a video on YouTube from “Technology Connections” — who I’ve never heard of or watched until...
a month ago
30
a month ago
There’s a video on YouTube from “Technology Connections” — who I’ve never heard of or watched until now — called Algorithms are breaking how we think. I learned of this video from Gedeon Maheux of The Iconfactory fame. Speaking in the context of why they made Tapestry, he said...
Irrational...
What can agents actually do? There’s a lot of excitement about what AI (specifically the latest wave of LLM-anchored AI) can...
a month ago
35
a month ago
There’s a lot of excitement about what AI (specifically the latest wave of LLM-anchored AI) can do, and how AI-first companies are different from the prior generations of companies. There are a lot of important and real opportunities at hand, but I find that many of these...