Sign up

Jim Nielsen’s Blog

Not verified No WebSub updates No webmention support Valid

Public lists
davewiner/hackerNewsStars
Fetched

Jim Nielsen’s Blog Valid
Text

Randomness, Serendipity, and an “I Wouldn’t Recommend This” Algorithm

Sean Voisen has a great post about 1) how we as humans think of randomness, 2) how computers simulate randomness, and the difference between the two. He puts forth an intriguing thought: in a world increasingly driven by computation, how does that affect randomness in our l...

Jim Nielsen’s Blog Valid
Text

Blogging & Listening

When you read a great blog post, the feeling you often get is: “I already knew this, I just hadn’t been able to express it!” In this sense, writing a great blog post is about listening. If you’re listening — to others, your coworkers, the people you follow, your own experien...

Jim Nielsen’s Blog Valid
Text

Estimated Reading Time Widgets

Beware ye who enter, here be personal opinions. I’ve never understood reading time estimation widgets. Why did these get so popular? Is it because they’re easy? I mean, you can grab one off npm no problem. Baldur suggests a theory in his piece about estimated reading time...

Jim Nielsen’s Blog Valid
Text

The Ruthless Edit

Rick Rubin gives this advice about working in the studio with artists when making an album: [Let’s say] We’ve recorded twenty-five songs. We think the album is going to have ten. Instead of picking our favorite ten, we limit it to: “What are the five or six we can’t live wi...

Jim Nielsen’s Blog Valid
Text

Seeing Others in Data, But Not Ourselves

Stanford psychologist Emily Pronin and her colleagues came up with an interesting study in human behavior. Subjects were given incomplete words and asked to complete them with the first word that came to mind. For example, you’re given the fragments B__T and CHE__ and you wr...

Jim Nielsen’s Blog Valid
Text

Personal Websites Are As Vulnerable As Us

I look at some people’s personal websites and think, “Stupendous! If I ever reach that zenith of personal web design, I will call it quits.” Then I read a post by them later and they say something like, “Gah! I just really don’t like where I’m at with my personal website.” A...

Jim Nielsen’s Blog Valid
Text

Sanding UI

One of the ways I like to do development is to build something, click around a ton, make tweaks, click around more, more tweaks, more clicks, etc., until I finally consider it done. The clicking around a ton is the important part. If it’s a page transition, that means going ...

Jim Nielsen’s Blog Valid
Text

The Humble Link

I was joking on Mastodon about how the zeitgeist has changed over the years, but its pattern is revealing itself: an acronym which merely drops letters. The Next Big Thing™ is clearly going to be “A”. 2010: Everyone needs an "API" 2020: Everyone needs "AI" 2030: Everyone ne...

Jim Nielsen’s Blog Valid
Text

Notes from Pen & Teller’s Masterclass

I quite enjoyed Pen & Teller’s Masterclass (paywall, sorry!). I learned some practical card tricks that came in handy while we sitting in the airport waiting for a connecting fight with restless kids. I also really enjoyed Pen & Teller’s reflections on the art of the...

Jim Nielsen’s Blog Valid
Text

New Workflow for Publishing Notes: Content in Dropbox, Code in GitHub

I recently changed my workflow around authoring and publishing my site notes.jim-nielsen.com. Here’s the rundown. Before Pretty standard JAMstack type stuff. All my notes are markdown files in a git repository that live alongside the code generating the website, e.g. package...

Jim Nielsen’s Blog Valid
Text

Netlify Public Folder, Part V: Now With an Image CDN

On ShopTalkShow no. 628, Chris and Dave got to talking about s3/r2 and hosted media solutions. Dave graciously gave a shoutout to my Netlify “public folder” workflow, which reminded me of something I’ve been meaning to write about. Chris mentions how he prefers being able to...

Jim Nielsen’s Blog Valid
Text

Blog Posts vs. Social Posts

From Emil Kowalski’s newsletter (my Feedbin cache for your convenience): I started writing more blog posts recently. I like it because it's different than X. You get a spike of views when you share something on X, but that dies off quickly. If you provide great value with y...

Jim Nielsen’s Blog Valid
Text

Iterative Building and Decision Making

Imagine you’re driving a dirt road and you come to a fork. Which way do you go, left or right? This decision is much easier to make if you’ve been traveling that road for the last hour and you’re sitting there in your truck facing the reality of the decision. You can see the...

Jim Nielsen’s Blog Valid
Text

The Impressionist Blogging Movement

I love this articulation: AI enables action without thought. It comes from an iA article about AI and the future of design (emphasis mine): Now, what actually is AI? The Italian philosopher and technology ethicist Luciano Floridi sums it up nicely. He posits that AI doesn’t...

Jim Nielsen’s Blog Valid
Text

My Failed Personal Site Redesign

Me a few weeks ago: tfw when you have an idea for a personal website redesign, and then you build it, and then you hate it, and then you have to decide whether to ship it anyway or keep what you have As you can probably guess from the title[1], I decided to keep what I hav...

Jim Nielsen’s Blog Valid
Text

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 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...

Jim Nielsen’s Blog Valid
Text

Just Build Websites

Here’s something you might not know about me: I like to play golf. As such, I follow a couple of golf-related brands on social media as a guilty pleasure. The other day an image surfaced on Taylormade’s account which showcases Tommy Fleetwood playing some of their newest iro...

Jim Nielsen’s Blog Valid
Text

Deploying on Netlify with Apple’s Shortcuts

Just a quick note on a personal workflow thing. I’ve written before about the many different ways I host my personal websites on Netlify. I’ve got a few websites that aren’t the traditional model of: commit to git, push, build triggers on Netlify, website goes live. Sometime...

Jim Nielsen’s Blog Valid
Text

Your Greatest Strength Is Also Your Greatest Weakness

Referring to product management, my old boss used to say, “There is no right or wrong, only trade-offs.” This applies to technology too (and, if you really think about it, life generally — but we won’t go that far). As an example, what makes npm great? It’s so easy to instal...

Jim Nielsen’s Blog Valid
Text

Amazing Athletes of the 21st Century

This post is a secret to everyone! Read more about RSS Club. Content warning: wherein I talk about sports. If that’s not your thing, feel free to skip this one. I’m not a rabid sports fan. I don’t have a team, though I do have teams I hate (or rather, like to h...

Jim Nielsen’s Blog Valid
Text

I Don’t Like The Term “IC” Either

I really liked Robin’s piece, “Stop calling yourself an IC”. I still remember the way I felt the first time I heard that term. It was used in a way where its connotations conveyed a kind of laziness via lack of ambition. And I thought, “But wait, I am an individual contribu...

Jim Nielsen’s Blog Valid
Text

Text Prompts Circumscribe The Surface Area of Possible Solutions

I was reading Chase McCoy’s notes about Figma’s move into the AI space and this one line stuck out to me (emphasis mine): Generating UI designs from scratch, based on a text prompt This reminded me of my note from a Wall Street Journal interview with Jony Ive where he talk...

Jim Nielsen’s Blog Valid
Text

Creating Some Noise on Behalf of Silence

How do you write about the value of silence? It’s kind of absurd when you think about it. Do you use words to extol the value of something whose essence is the very absence of words? It’s like making a painting of the invisible. Do you use visible means to depict something t...

Jim Nielsen’s Blog Valid
Text

All About That Button, ’Bout That Button

In modern SPAs it’s common to immediately escape baked-in browser behaviors. For example, using <button> often looks like this: <div> <input type="text" name="q" /> <button type="submit" onClick={(e) => { // Stop the baked-in behavi...

Jim Nielsen’s Blog Valid
Text

Digital Trees

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...

Jim Nielsen’s Blog Valid
Text

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 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 ...

Jim Nielsen’s Blog Valid
Text

A Local-first Codebase Opens the Door to More Collaborators

I thought this was interesting: Dax Raad on the local-first podcast observes how a local-first model drastically simplifies the experience of building an app, both as an individual and as a team. He talks about how his wife is not an engineer but she learned to be more hands...

Jim Nielsen’s Blog Valid
Text

Custom Elements Don’t Require a Hyphen as a Separator

Scott Jehl reached out to help me resolve a conundrum in my post about what constitutes a valid custom element tag. The spec says you can have custom elements with emojis in them. For example: <emotion-😍></emotion-😍> But for some reason the Codepen where I tested...