Full Width [alt+shift+f] Shortcuts [alt+shift+k]
Sign Up [alt+shift+s] Log In [alt+shift+l]

Jim Nielsen’s Blog

Jim Nielsen’s Blog
A Well Known URL For Your Personal Avatar Well-known URLs are pretty neat. I’ve even dared propose one before here on my blog. And now I’m...
a year ago
114
a year ago
Well-known URLs are pretty neat. I’ve even dared propose one before here on my blog. And now I’m here to propose another: .well-known/avatar The idea is: anybody that owns a domain can put their avatar in a well-known location. I’ve already implemented this for my own site[1]....
Jim Nielsen’s Blog
RSS in HTML I have a question: has anyone ever tried to standardize an RSS feed in HTML? I can’t find any...
a year ago
102
a year ago
I have a question: has anyone ever tried to standardize an RSS feed in HTML? I can’t find any discussion around it — but I’d love to read more about the idea because it intrigues me. The OG RSS was an XML feed. Later we got JSON feeds. So why not an HTML feed standard? (I know,...
Jim Nielsen’s Blog
The Gist That Keeps On Giving I’m working with git and make a big boo-boo. Now I’m facing a situation where I’ve deleted a local...
8 months ago
92
8 months ago
I’m working with git and make a big boo-boo. Now I’m facing a situation where I’ve deleted a local branch with all my work and there’s no backup on GitHub. “This is git. There has got to be a version of this things still on my computer somewhere, right? RIGHT?!” So I start...
Jim Nielsen’s Blog
Get You Some Practical Accessibility Sara has been working on a new course titled Practical Accessibility and it is available for...
a year ago
80
a year ago
Sara has been working on a new course titled Practical Accessibility and it is available for pre-order right now. I’ve never met Sara in person, but have been an online follower for some time. She is one of those people who has the discipline and eye to make everything they...
Jim Nielsen’s Blog
Date and Time with a Static Site Generator Do you have a static site generator? If so, how do you handle the date and time for when your posts...
a year ago
80
a year ago
Do you have a static site generator? If so, how do you handle the date and time for when your posts are published? For me, I record the publish date once: in the filename (e.g. 2023-05-16-my-slug.md). That YYYY-MM-DD string in the filename is the canonical location for my posts’...
Jim Nielsen’s Blog
Implementing Netlify’s Image CDNz tl;dr I implemented Netlify’s new image transformation service on my icon gallery sites and saw a...
9 months ago
79
9 months ago
tl;dr I implemented Netlify’s new image transformation service on my icon gallery sites and saw a pretty drastic decrease in overall bandwidth. Here are the numbers: Page Requests Old New Difference Home 60 1.3MB 293kB ▼ 78% (1.01MB) Colors 84 1.4MB 371kB ▼ 74%...
Jim Nielsen’s Blog
RSC, Localfirst, and Coordination Between Multiple Computers Dan Abramov gave a talk at ReactConf called “React for two computers” (starts at ~5:14:00) which...
8 months ago
79
8 months ago
Dan Abramov gave a talk at ReactConf called “React for two computers” (starts at ~5:14:00) which gives the conceptual background around how the team came up with the idea for React Server Components (RSC)[1]. I found the talk intriguing. It’s like watching someone take something...
Jim Nielsen’s Blog
Consistency For Who? Thoughts on Overriding Basic Computing Controls A note before we start: I don’t know how much of this I believe. I’m sketching out some feelings in...
a week ago
78
a week ago
A note before we start: I don’t know how much of this I believe. I’m sketching out some feelings in this post and thinking through whether it actually makes any sense. I’d be curious where other folks land on this. I’m not sure I totally understand this impulse we have on the...
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
72
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
The Power of Fast Feedback Cycles I was hyperlinked to this comment where Rich Harris stopped by Hacker News to clarify his position...
a year ago
72
a year ago
I was hyperlinked to this comment where Rich Harris stopped by Hacker News to clarify his position on the (controversial?) steps Svelte is taking to move off Typescript in favor of types-via-JSDoc comments. First off, I love how Rich prefaces his comments by basically saying,...
Jim Nielsen’s Blog
Futuristic Progressive Enhancement Imagine someone came to you in a time machine and said, “In the future we will write software that...
8 months ago
71
8 months ago
Imagine someone came to you in a time machine and said, “In the future we will write software that becomes more capable as time passes without any effort on our part.” Wouldn’t that be amazing? Surely you’d want to know what sorcery makes this possible, right? Well the future is...
Jim Nielsen’s Blog
Browser Defaults We Throw Away Stefan Judis on Twitter: I'm diving into @remix_run and I strongly agree with the sentiment that a...
a year ago
71
a year ago
Stefan Judis on Twitter: I'm diving into @remix_run and I strongly agree with the sentiment that a JS approach that includes writing event.preventDefault all the time is kinda off. The browser defaults are great, and yet we're rollin' our own for years now. 🤔 I’ve been thinking...
Jim Nielsen’s Blog
Consistent Navigation Across My Inconsistent Websites Anything I ship to my personal domain jim-nielsen.com is made using IDD: impulse driven...
9 months ago
71
9 months ago
Anything I ship to my personal domain jim-nielsen.com is made using IDD: impulse driven development. I can convince myself that just about anything is a good idea at the time. But in retrospect my rationales are quite often specious. At one point in the past, I decided that I...
Jim Nielsen’s Blog
Digital Trees Trees have many functions: they provide shade, they purify air, they store carbon, they grow...
7 months ago
70
7 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...
Jim Nielsen’s Blog
Making o(m)g:image, Part II: As Little JS As Possible This is part two of my series of posts describing how I made my quiz game o(m)g:image. Project...
a month ago
70
a month ago
This is part two of my series of posts describing how I made my quiz game o(m)g:image. Project Announcement Pt. I: Design Iterations Pt. II: As Little JS As Possible One of my goals when making this project was to use as little JavaScript as possible. In retrospect, I have to...
Jim Nielsen’s Blog
Blog Posts vs. Social Posts From Emil Kowalski’s newsletter (my Feedbin cache for your convenience): I started writing more blog...
5 months ago
69
5 months ago
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 your...
Jim Nielsen’s Blog
Errors Aren’t All Bad Adam Silver wrote “Don’t use the maxlength attribute to stop users from exceeding the limit” which...
9 months ago
69
9 months ago
Adam Silver wrote “Don’t use the maxlength attribute to stop users from exceeding the limit” which seems like one of those obvious things that needn’t be said, but I’m glad he says it. Have you heard of the “error prevention” heuristic? It means “do everything you can so users...
Jim Nielsen’s Blog
Introducing o(m)g:image I was popping off on Mastodon with an idea for a physical board game then decided to just make a...
a month ago
67
a month ago
I was popping off on Mastodon with an idea for a physical board game then decided to just make a digital version. It’s called “o(m)g:image” and you can play it now: omgimg.jim-nielsen.com Here’s the idea: You have a bunch images Each image is a real-life og:image pulled from an...
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
66
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...
Jim Nielsen’s Blog
Interdisciplinary Website Maker Paul Ford has a great article at Wired about his own experience as an English major working in tech....
9 months ago
66
9 months ago
Paul Ford has a great article at Wired about his own experience as an English major working in tech. While I myself am not an English major (more on that below) his desire to be interdisciplinary parallels my own. I began to realize I was that most horrifying of things:...
Jim Nielsen’s Blog
Novels as Prototypes of the Future Via Robin Rendle’s blog, I found this quote from Jack Cheng (emphasis mine): A novel…is a prototype...
8 months ago
64
8 months ago
Via Robin Rendle’s blog, I found this quote from Jack Cheng (emphasis mine): A novel…is a prototype of the future. And if the ideas that the tech industry is pursuing feel stagnant…maybe it points to a shortage of compelling fictions for what the world could be. I love that...
Jim Nielsen’s Blog
Watch Transitions in Slow Motion in Chrome’s DevTools For those of you about to do view transitions, I salute you! And I pass on this super useful...
a year ago
64
a year ago
For those of you about to do view transitions, I salute you! And I pass on this super useful (perhaps obvious) piece of information I received from Bramus: watch your animations play out in slow motion using Chrome’s devtools. I’ve been working on view transitions on my icon...
Jim Nielsen’s Blog
Notes From “You Are Not A Gadget” Jaron Lanier’s book You Are Not a Gadget was written in 2010, but its preface is a prescient banger...
7 months ago
63
7 months ago
Jaron Lanier’s book You Are Not a Gadget was written in 2010, but its preface is a prescient banger for 2024, the year of our AI overlord: It's early in the 21st century, and that means that these words will mostly be read by nonpersons...[they] will be minced...within industrial...
Jim Nielsen’s Blog
Apollo and App Icons As a self-proclaimed app icon-noisseur, I’ve followed Apollo from the sidelines for a while. I...
a year ago
62
a year ago
As a self-proclaimed app icon-noisseur, I’ve followed Apollo from the sidelines for a while. I absolutely love all the great app icon variations Christian has commissioned for the app. (Photo from @BasicAppleGuy.) It’s sad to see Apollo go. As I noted, Christian was a...
Jim Nielsen’s Blog
Advice on Blogging In Manuel’s series People and Blogs, he asked me: Given your experience, if you were to start a blog...
a year ago
62
a year ago
In Manuel’s series People and Blogs, he asked me: Given your experience, if you were to start a blog today, would you do anything differently? I gave my answer, but I wanted to expand on it. These kinds of questions are interesting to me. As readers, I think the answer we’re...
Jim Nielsen’s Blog
Making o(m)g:image, Part IV: URLs This is part four of my series of posts describing how I made my quiz game o(m)g:image. Project...
a month ago
62
a month ago
This is part four of my series of posts describing how I made my quiz game o(m)g:image. Project Announcement Pt. I: Design Iterations Pt. II: As Little JS As Possible Pt. III: The HTML Pt. IV: URLs The design of the game is simple: Each page has one question with four possible...
Jim Nielsen’s Blog
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...
6 months ago
61
6 months ago
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 install a...
Jim Nielsen’s Blog
Single Line Comments in CSS Brad Frost noted on Twitter how he recently made a website with plain HTML, CSS, JS, etc., and found...
a year ago
61
a year ago
Brad Frost noted on Twitter how he recently made a website with plain HTML, CSS, JS, etc., and found himself missing some of the ergonomics from Sass. Having mostly abandoned Sass on personal projects, I was curious what he felt was missing. He mentioned nesting media queries,...
Jim Nielsen’s Blog
Contrast Is Clarifying Which is best? Generalist or specialist? Native or web? Web site or web app? JavaScript or...
2 months ago
60
2 months ago
Which is best? Generalist or specialist? Native or web? Web site or web app? JavaScript or Typescript? Framework or library? Server side or client side? Photoshop or Sketch or Figma? Designing in a tool or design in the browser? Skueomorphic or flat? Mac or PC or Linux? This list...
Jim Nielsen’s Blog
Building an Infinite Spreadsheet As of late, I’ve been working on Quadratic: an infinite canvas spreadsheet that runs code. Think...
a year ago
60
a year ago
As of late, I’ve been working on Quadratic: an infinite canvas spreadsheet that runs code. Think Figma (infinite canvas) meets Excel (spreadsheet) meets VSCode (IDE). In addition to formulas (e.g. SUM(A1:A5)) every cell in Quadratic can be the result of code (right now it’s...
Jim Nielsen’s Blog
Circles and Momentum I had not come across this graphic from swyx until recently: I like this reminder. I know for me,...
a year ago
60
a year ago
I had not come across this graphic from swyx until recently: I like this reminder. I know for me, it’s often too easy to slip into a kind of cynicism that only sees endless stationary circles rather than ones with directional momentum. It reminds me of the visualizations of...
Jim Nielsen’s Blog
Making o(m)g:image, Part III: The HTML This is part three of my series of posts describing how I made my quiz game o(m)g:image. Project...
a month ago
59
a month ago
This is part three of my series of posts describing how I made my quiz game o(m)g:image. Project Announcement Pt. I: Design Iterations Pt. II: As Little JS As Possible Pt. III: The HTML o(m)g:image is presented like a quiz: You get one question at a time When you choose an...
Jim Nielsen’s Blog
Amazing Athletes of the 21st Century Read more about RSS Club. Content warning: wherein I talk about sports. If that’s not your...
6 months ago
57
6 months ago
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 hate on). But I do enjoy following sports. I’ve...
Jim Nielsen’s Blog
Making o(m)g:image Part I: Design Iterations I blogged about my recent project omgimg.jim-nielsen.com and I figured I’d write more details about...
a month ago
57
a month ago
I blogged about my recent project omgimg.jim-nielsen.com and I figured I’d write more details about my process behind making it. When the idea first struck, I jumped into Figma and started working out the idea. I had a pretty good idea of what I wanted: a quiz-like website that...
Jim Nielsen’s Blog
Just Build Websites Here’s something you might not know about me: I like to play golf. As such, I follow a couple of...
6 months ago
57
6 months ago
Here’s something you might not know about me: I like to play golf. As such, I follow a couple of golf-related brands on social media as a guilty pleasure. The other day an image surfaced on Taylormade’s account which showcases Tommy Fleetwood playing some of their newest...
Jim Nielsen’s Blog
Hedge Words Affirm Creative, Imaginative Thinking Mandy’s note piqued my interest so much, I started reading Being Wrong by Kathryn Schulz. So far, I...
7 months ago
57
7 months ago
Mandy’s note piqued my interest so much, I started reading Being Wrong by Kathryn Schulz. So far, I love it! (I hope to write more about it once I’ve finished, but I’m afraid I won’t because the whole book is underlined in red pencil and I wouldn’t know where to start.) As...
Jim Nielsen’s Blog
The Impressionist Blogging Movement I love this articulation: AI enables action without thought. It comes from an iA article about AI...
5 months ago
56
5 months ago
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
Book Notes: “Out of the Software Crisis” by Baldur Bjarnason I read Baldur’s book “Out of the Software Crisis” a while back and have been meaning to publish some...
a year ago
56
a year ago
I read Baldur’s book “Out of the Software Crisis” a while back and have been meaning to publish some of my highlighted excerpts and notes. It’s always hard reading a book like this because I highlight so much and have so many thoughts that I could spend hours and hours rehashing...
Jim Nielsen’s Blog
Out of the Software Crisis: Gardening The following is an extension of my notes from Baldur’s book “Out of the Software Crisis” including...
a year ago
56
a year ago
The following is an extension of my notes from Baldur’s book “Out of the Software Crisis” including quotes from the author. Great software grows in our minds, we don’t manufacture it on-demand. [Software projects] are grown thought-stuff [but we] treat them like lego blocks. As...
Jim Nielsen’s Blog
The Ruthless Edit Rick Rubin gives this advice about working in the studio with artists when making an album: [Let’s...
4 months ago
56
4 months ago
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...
Jim Nielsen’s Blog
An Ode to An Event Apart I’m not a big globe-trotting conference attendee. I’ve only been to a handful in my career. The...
a year ago
55
a year ago
I’m not a big globe-trotting conference attendee. I’ve only been to a handful in my career. The event I remember most fondly is An Event Apart: Austin in 2013. In my memory (which, granted, might be fuzzy) that conference was more about ideas than any specific technology. What I...
Jim Nielsen’s Blog
Organic Intelligence Jeremy wrote about how the greatest asset of a company like Google is the trust people put in...
7 months ago
54
7 months ago
Jeremy wrote about how the greatest asset of a company like Google is the trust people put in them: If I use a [knowledge tool] I need to be able to trust [it] is good...I don’t expect perfection, but I also don’t expect to have to constantly be thinking “was this generated by a...
Jim Nielsen’s Blog
Named Blogs I think it’s endearing when people name their blog. I’m not talking about branding, like people do...
2 months ago
53
2 months ago
I think it’s endearing when people name their blog. I’m not talking about branding, like people do with professional blogs or newsletters. I’m talking about personal blogs that people name out of care and idiosyncrasy. It’s endearing, because you brand things you own, you name...
Jim Nielsen’s Blog
All About That Button, ’Bout That Button In modern SPAs it’s common to immediately escape baked-in browser behaviors. For example, using...
6 months ago
53
6 months ago
In modern SPAs it’s common to immediately escape baked-in browser behaviors. For example, using <button> often looks like this: <div> <input type="text" name="q" /> <button type="submit" onClick={(e) => { // Stop the baked-in behavior ...
Jim Nielsen’s Blog
Christmas Day It’s Christmas circa 2004. My teenage brothers, sisters, and I have all finished opening presents...
a month ago
53
a month ago
It’s Christmas circa 2004. My teenage brothers, sisters, and I have all finished opening presents and we’re more than content to have absolutely nothing to do — it’s Christmas day after all! But not Dad. He’s in the bathroom laying tile. Again, this is Christmas day and Dad is on...
Jim Nielsen’s Blog
Nabbing macOS Icon Artwork I keep a personal collection of beautiful macOS app icons, which might make you ask: “How does he...
2 months ago
52
2 months ago
I keep a personal collection of beautiful macOS app icons, which might make you ask: “How does he get those icons?” Apps in the App Store For apps in the Mac App Store, I have my ways. I don’t necessarily want to write about them because I’m semi-afraid Apple would frown on my...
Jim Nielsen’s Blog
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...
6 months ago
52
6 months ago
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 talks about...
Jim Nielsen’s Blog
Gratitude For a Web That Tries Not to Break Chris wrote a response to my wondering-out-loud remarks about whether logical properties make CSS...
a year ago
51
a year ago
Chris wrote a response to my wondering-out-loud remarks about whether logical properties make CSS easier to learn. His response is great. And his tabular comparison of properties is short and concise and punchy in the way only Chris Coyier can reason about CSS. His post actually...
Jim Nielsen’s Blog
Sanding UI One of the ways I like to do development is to build something, click around a ton, make tweaks,...
5 months ago
51
5 months ago
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 back...
Jim Nielsen’s Blog
Tech’s Epithet: “Enabled By Default” I joked on Mastodon: If anyone endeavors to write a book about what went wrong with tech, I have a...
3 months ago
51
3 months ago
I joked on Mastodon: If anyone endeavors to write a book about what went wrong with tech, I have a great suggestion for the title: “Enabled by Default” It seems there really are two hard problems in tech: Naming things Setting good defaults Keeping to scope Anyhow, a little while...
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...
5 months ago
51
5 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...
Jim Nielsen’s Blog
I Don’t Like The Term “IC” Either I really liked Robin’s piece, “Stop calling yourself an IC”. I still remember the way I felt the...
6 months ago
51
6 months ago
I really liked Robin’s piece, “Stop calling yourself an IC”. I still remember the way I felt the first time I heard that term. It was used in a way where its connotations conveyed a kind of laziness via lack of ambition. And I thought, “But wait, I am an individual contributor —...
Jim Nielsen’s Blog
Gratitude For a Web That Tries Not to Break Chris wrote a response to my wondering-out-loud remarks about whether logical properties make CSS...
9 months ago
50
9 months ago
Chris wrote a response to my wondering-out-loud remarks about whether logical properties make CSS easier to learn. His response is great. And his tabular comparison of properties is short and concise and punchy in the way only Chris Coyier can reason about CSS. His post actually...
Jim Nielsen’s Blog
Cite Your Sources, AI In a recent note of mine, I quoted Jaron Lanier on AI chatbots: There are two ways this could go....
a year ago
50
a year ago
In a recent note of mine, I quoted Jaron Lanier on AI chatbots: There are two ways this could go. One is that we pretend the bot is a real thing, a real entity like a person, then in order to keep that fantasy going we’re careful to forget whatever source texts were used to have...
Jim Nielsen’s Blog
Link Preload as Image I’ve been playing with these fancy new view transitions and my experience thus far is that they work...
a year ago
50
a year ago
I’ve been playing with these fancy new view transitions and my experience thus far is that they work ok on localhost, but as soon as I push code to a preview branch on a remote server, the image loads between transitions are janky because of image loading. Granted, this stuff...
Jim Nielsen’s Blog
Thinking Big and Small It’s so easy to start with the question, “What should I do?” And end up with a discussion about...
8 months ago
50
8 months ago
It’s so easy to start with the question, “What should I do?” And end up with a discussion about other people and what they’re doing. Here’s Paul Ford: I’ll give you a good example. Do you go out and raise venture capital? Well, it would be nice to have more money. But then...
Jim Nielsen’s Blog
Prototyping Magic Tricks and Software In Penn & Teller’s Masterclass (no. 12 “Principles of Performing”) they explain how one of their...
3 months ago
50
3 months ago
In Penn & Teller’s Masterclass (no. 12 “Principles of Performing”) they explain how one of their favorite ways to design a magic trick is to come up with an idea and then act it out as if they already know how to do it. Here’s Penn: We still start with an idea for a trick, how we...
Jim Nielsen’s Blog
Podcast Notes: Vlad Prelovac on “The Talk Show” Vlad Prelovac is the CEO of Kagi: a search engine you have to pay for. He’s on episode 416 of John...
a month ago
50
a month ago
Vlad Prelovac is the CEO of Kagi: a search engine you have to pay for. He’s on episode 416 of John Gruber’s The Talk Show to discuss why he thinks we should be paying for search. Hearing his point of view is compelling. I quite enjoyed the entire podcast. So much, in fact, that I...
Jim Nielsen’s Blog
The Humble Link I was joking on Mastodon about how the zeitgeist has changed over the years, but its pattern is...
5 months ago
50
5 months ago
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 needs...
Jim Nielsen’s Blog
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...
5 months ago
50
5 months ago
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 have and...
Jim Nielsen’s Blog
Navigations on the Web When trying to define the difference between a link (<a>) and a button (<button>), a general rule of...
2 months ago
50
2 months ago
When trying to define the difference between a link (<a>) and a button (<button>), a general rule of thumb is: links are for navigation, buttons are not. That can take you pretty far. However, like most things, there’s nuance and that mental model can fall apart under certain...
Jim Nielsen’s Blog
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...
5 months ago
50
5 months ago
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
Overcomplicating Things Is So Easy Maciej Cegłowski writing about “The Lunacy of Artemis”: You don’t have to be a rocket scientist to...
8 months ago
49
8 months ago
Maciej Cegłowski writing about “The Lunacy of Artemis”: You don’t have to be a rocket scientist to wonder what’s going on here. If we can put a man on the moon, then why can't we just go do it again? The moon hasn’t changed since the 1960’s, while every technology we used to get...
Jim Nielsen’s Blog
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...
6 months ago
49
6 months ago
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. Sometimes I...
Jim Nielsen’s Blog
You Can Now Subscribe To My Blog via Email I don’t think you should. I think you should use RSS. But if you want posts delivered directly to...
4 weeks ago
49
4 weeks ago
I don’t think you should. I think you should use RSS. But if you want posts delivered directly to your email, you can do that now. However, disclaimer: I don’t know if I’ll keep this feature. It costs me money. And I don’t monetize my blog. So sending you an email costs me...
Jim Nielsen’s Blog
Ryan Dahl Talks Deno on The Changelog Ryan Dahl was on The Changelog to talk about Deno 2 specifically and his work on JavaScript more...
3 months ago
49
3 months ago
Ryan Dahl was on The Changelog to talk about Deno 2 specifically and his work on JavaScript more broadly. What follows are a few things that stood out to me. His Regrets From Node Are Now in Deno I think it’s interesting that Ryan’s famous talk 10 Things I Regret About Node.js...
Jim Nielsen’s Blog
Reading and Writing as Human Expression & Connection Why do we write? We write, in part, because our own reading was given as a gift to us and we want to...
2 months ago
49
2 months ago
Why do we write? We write, in part, because our own reading was given as a gift to us and we want to extend that same magic we received to others. Here’s Mandy Brown (and my notes) in a recent article: The more compelling and interesting reason that most writers seek out readers...
Jim Nielsen’s Blog
Bulletproof Method to Solving Problems Step 1: Write down the problem in a message you plan to send to a co-worker. Most of the time you’ll...
9 months ago
49
9 months ago
Step 1: Write down the problem in a message you plan to send to a co-worker. Most of the time you’ll solve the problem before you’re done with Step 1. However, if you complete Step 1 and still have the problem, continue to Step 2. Step 2: Hit the “Send” button. Shortly after...
Jim Nielsen’s Blog
Custom Elements, At Minimum, Only Need End With a Hyphen Scott Jehl reached out to help me resolve a conundrum in my post about what constitutes a valid...
7 months ago
48
7 months ago
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 this wasn’t...
Jim Nielsen’s Blog
For Sale: Used Domain (**Clean Title**) Bryan Braun has an interesting post about his experience with what he calls a “haunted domain”: He...
3 months ago
48
3 months ago
Bryan Braun has an interesting post about his experience with what he calls a “haunted domain”: He buys a domain that seems fine on the surface. When he begins using it, he notices some things aren’t right (organic search traffic, for example, is dead). After some investigation,...
Jim Nielsen’s Blog
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...
7 months ago
48
7 months ago
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 on...
Jim Nielsen’s Blog
Estimated Reading Time Widgets Beware ye who enter, here be personal opinions. I’ve never understood reading time estimation...
4 months ago
47
4 months ago
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 times: At...
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...
4 months ago
47
4 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...
Jim Nielsen’s Blog
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...
4 months ago
47
4 months ago
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 lives?...
Jim Nielsen’s Blog
Blogging & Listening When you read a great blog post, the feeling you often get is: “I already knew this, I just hadn’t...
4 months ago
47
4 months ago
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 experiences,...
Jim Nielsen’s Blog
Seeing Others in Data, But Not Ourselves Stanford psychologist Emily Pronin and her colleagues came up with an interesting study in human...
4 months ago
46
4 months ago
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 write...
Jim Nielsen’s Blog
“Just” One Line From Jeremy Keith’s piece “Responsibility”: Dropping in one line of JavaScript seems like a...
8 months ago
46
8 months ago
From Jeremy Keith’s piece “Responsibility”: Dropping in one line of JavaScript seems like a victimless crime. It’s just one small script, right? But JavaScript can import more JavaScript. “It’s just one line of code” is a pitch you hear all the time. It might also be the biggest...
Jim Nielsen’s Blog
Notes from Pen & Teller’s Masterclass I quite enjoyed Pen & Teller’s Masterclass (paywall, sorry!). I learned some practical card tricks...
5 months ago
46
5 months ago
I quite enjoyed Pen & Teller’s Masterclass (paywall, sorry!). I learned some practical card tricks that came in handy while we sitting in the airport waiting for a connecting fight with restless kids. I also really enjoyed Pen & Teller’s reflections on the art of their craft....
Jim Nielsen’s Blog
Nothing is Something There’s a post on htmx.org about why htmx wasn’t the right fit for a particular project (which is...
2 months ago
46
2 months ago
There’s a post on htmx.org about why htmx wasn’t the right fit for a particular project (which is dope, we need more websites that admit their thing might not be the right thing all the time). The bit on AI being unfamiliar with their tool choice piqued my interest: It’s worth...
Jim Nielsen’s Blog
Faster Connectivity !== Faster Websites This post from Dan Luu discussing how web bloat impacts users with slow devices caused me to reflect...
9 months ago
45
9 months ago
This post from Dan Luu discussing how web bloat impacts users with slow devices caused me to reflect on the supposition that faster connectivity means faster websites. I grew up in an era when slow internet was the primary limiting factor to a great experience on the web. I was...
Jim Nielsen’s Blog
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...
5 months ago
45
5 months ago
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 drop...
Jim Nielsen’s Blog
Job Screening Blog Post Take a look at these two animated gifs. First: Second: Can you tell the difference between...
2 months ago
45
2 months ago
Take a look at these two animated gifs. First: Second: Can you tell the difference between them? Do you care? If not, we might not be a good fit. #designEngineering Email :: Mastodon :: Twitter #designEngineer
Jim Nielsen’s Blog
Making Films and Making Websites I recently listened to an episode of the Scriptnoes podcast interviewing Christopher Nolan, director...
10 months ago
45
10 months ago
I recently listened to an episode of the Scriptnoes podcast interviewing Christopher Nolan, director of films such as The Dark Knight, Inception, and Oppenheimer. Generally, it’s fascinating look at the creative process. More specifically, I couldn’t help but see the parallels...
Jim Nielsen’s Blog
Thoughts from “Meet Safari for Spatial Computing” I just watched Apple’s “Meet Safari for Spatial Computing” where they talk about how Safari works on...
a year ago
45
a year ago
I just watched Apple’s “Meet Safari for Spatial Computing” where they talk about how Safari works on the new visionOS and what you can do to make your web pages look great on Apple’s new device. tl;dr just keeping doing what responsive web design and accessibility experts have...
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...
7 months ago
44
7 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”...
Jim Nielsen’s Blog
Captchas Turned Notification Exploits When my site analytics reported a large number of inbound traffic from Hacker News clones, I got...
2 months ago
44
2 months ago
When my site analytics reported a large number of inbound traffic from Hacker News clones, I got curious and started clicking links.[1] I like to visit links. I am connoisseur of it. I love the feeling of landing on something you didn’t expect — which is precisely what...
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...
7 months ago
43
7 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...
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...
10 months ago
43
10 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...
Jim Nielsen’s Blog
Push Notifications Are Organizational Marshmallows It’s a notifications’ world, we’re just living in it. Companies can’t help but try and get your...
3 weeks ago
43
3 weeks ago
It’s a notifications’ world, we’re just living in it. Companies can’t help but try and get your attention via email, text, or push notifications and drive you to their app. Push notifications in particular are a powerful tool — and where there’s power, there’s abuse. I’m sure...
Jim Nielsen’s Blog
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...
5 months ago
42
5 months ago
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,...
Jim Nielsen’s Blog
The Big Sur-ification of macOS Icons Here’s an example of some icons that transitioned well in the Big Sur-ification of macOS icons: And...
9 months ago
42
9 months ago
Here’s an example of some icons that transitioned well in the Big Sur-ification of macOS icons: And just for good measure, here’s a few more — I love this stuff. While some apps made this transition fun (and further infused their brand with character), others did not. They did...
Jim Nielsen’s Blog
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...
5 months ago
42
5 months ago
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.” And in...
Jim Nielsen’s Blog
Making a Website is for Everyone Dave asked what makes people excited about building for the web and Thomas answered with this...
a year ago
42
a year ago
Dave asked what makes people excited about building for the web and Thomas answered with this wonderful articulation: the web is the only programming platform (that I know of) that considers its builders regular people, not IT Professionals and continues to write standards with...
Jim Nielsen’s Blog
We’re All Content Creators for Machines Nicholas Carr, one of my favorite technology writers, has been blogging over on Rough Type since...
3 months ago
41
3 months ago
Nicholas Carr, one of my favorite technology writers, has been blogging over on Rough Type since [checks archives] 2005. As of late his writing has gone quiet, but he’s got a new book due out early next year and I think he’s starting up blogging again to help drum up interest....
Jim Nielsen’s Blog
Components and LEGOs “We’re going to build a component library — which are like a bunch of LEGOs — so...
a year ago
41
a year ago
“We’re going to build a component library — which are like a bunch of LEGOs — so designers/developers can just pick a prefabricated component off the shelf and build with consistency and coherence.” It’s a nice thought, if you don’t think about it too much. But I recently read...
Jim Nielsen’s Blog
The Nuance of “Domain” I love visualizations like this: That was my mental model of URLs until I indexed my blog’s links...
a year ago
41
a year ago
I love visualizations like this: That was my mental model of URLs until I indexed my blog’s links and realized there’s more to “domain” than initially meets the eye. What is a “Domain”? Let’s say you have a URL like this: https://example.com Put it in the URL constructor and...
Jim Nielsen’s Blog
Social Inflation Imagine you’re on a social network and you start getting tons of followers. You love it! Your...
3 weeks ago
41
3 weeks ago
Imagine you’re on a social network and you start getting tons of followers. You love it! Your follower count is going up! Instead of a nobody with a couple hundred followers, you’ve bypassed the 1k+ mark and it keeps going! You’re ecstatic! This is the “next step” you were...
Jim Nielsen’s Blog
Hacker News Clones Every once in a while, I’ll have a post gain traction over on ye ole’ orange site (Hacker News). I...
3 months ago
40
3 months ago
Every once in a while, I’ll have a post gain traction over on ye ole’ orange site (Hacker News). I find out about it because my analytics digest will get a yuge uptick in page views. What’s interesting is all the referral sources that show up in my analytics. The Hacker News is...
Jim Nielsen’s Blog
The Case for Design Engineers, Pt. III Previously: The Case for Design Engineers, Pt. I The Case for Design Engineers, Pt. II I wrote about...
10 months ago
40
10 months ago
Previously: The Case for Design Engineers, Pt. I The Case for Design Engineers, Pt. II I wrote about the parallels between making films and making websites, which was based on an interview with Christopher Nolan. During part of the interview, Nolan discusses how he enjoys being a...
Jim Nielsen’s Blog
Quality Means The Flexibility to Change Here’s Ben Nadal quoting Dave Farley: I've come to the belief that the only definition of quality in...
3 months ago
40
3 months ago
Here’s Ben Nadal quoting Dave Farley: I've come to the belief that the only definition of quality in code that makes any sense is our ability to change the code. If it's easy to change, it's high quality; if it's hard to change, it's not. Then Ben comments: I'm sure that some...
Jim Nielsen’s Blog
Following Links I loved this post from Chris Enns (via Robb Knight) where he outlines the rabbit hole of links he...
10 months ago
40
10 months ago
I loved this post from Chris Enns (via Robb Knight) where he outlines the rabbit hole of links he ventured down in writing that post. It felt fun and familiar, as that’s how my own browsing goes, e.g. “I saw X and I clicked it. Then I saw Y, so I clicked that. But then I went...
Jim Nielsen’s Blog
The Cost of Avoiding Annoyance tl;dr Living with annoying technological constraints might be less costly than maintaining the...
a year ago
40
a year ago
tl;dr Living with annoying technological constraints might be less costly than maintaining the sophisticated workarounds we create to avoid them. I really enjoyed this well-reasoned article explaining why htmx, the open-source hypermedia JS framework, does not have a build...
Jim Nielsen’s Blog
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...
6 months ago
39
6 months ago
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 that...
Jim Nielsen’s Blog
Grateful: Colors in console.log() So there I am, having an issue where my UI state isn’t updating correctly. What do I do? What every...
3 months ago
39
3 months ago
So there I am, having an issue where my UI state isn’t updating correctly. What do I do? What every developer does: turn to console.log() and troubleshoot by logging values. I have a named color (e.g. blue) and a corresponding HSL color string for that named color (e.g. 100 50%...
Jim Nielsen’s Blog
You Are What You Read, Even If You Don’t Always Remember It Here’s Dave Rupert (from my notes): the goal of a book isn’t to get to the last page, it’s to expand...
9 months ago
39
9 months ago
Here’s Dave Rupert (from my notes): the goal of a book isn’t to get to the last page, it’s to expand your thinking. I have to constantly remind myself of this. Especially in an environment that prioritizes optimizing and maximizing personal productivity, where it seems if you...
Jim Nielsen’s Blog
Types in JavaScript With Zod and JSDoc There are cases where I like types in JavaScript. And I don’t mind Typescript, especially for bigger...
a year ago
39
a year ago
There are cases where I like types in JavaScript. And I don’t mind Typescript, especially for bigger projects — as long as somebody more knowledgable than me sets it up and maintains it. When I want type hints in VSCode for smaller, personal projects, I use JSDoc which lets you...
Jim Nielsen’s Blog
AI Is Like a Lossy JPEG That’s something I’ve heard before — ChatGPT Is a Blurry JPEG of the Web — and it kind of made sense...
11 months ago
38
11 months ago
That’s something I’ve heard before — ChatGPT Is a Blurry JPEG of the Web — and it kind of made sense when I read it. But Paul Ford, writing in the Aboard Newsletter, helped it make even more sense in my brain. [AI tools] compress lots and lots of information—text, image, more—in...
Jim Nielsen’s Blog
HTML Web Components I think the word “component” in “web components” confused a lot of people — at least it did me. “Web...
a year ago
38
a year ago
I think the word “component” in “web components” confused a lot of people — at least it did me. “Web components” sounded like the web platform’s equivalent to “React components”. JSX had <MyComponent> and now the web had <my-component>. But when you try building web components...
Jim Nielsen’s Blog
Notes and Reflections from Rich Harris’ Talk Rich has a new talk and, as usual, it’s full of practicality. I’ve got my text editor open and ready...
a year ago
37
a year ago
Rich has a new talk and, as usual, it’s full of practicality. I’ve got my text editor open and ready to take notes as we go. Whatever Framework You’re Using, It’s Fine Note: that’s coming from the author of a framework! Rich points out that most of the degraded, slow, hostile...
Jim Nielsen’s Blog
The Subversive Hyperlink The web has a superpower: permission-less link sharing. I send you a link and as long as you have an...
11 months ago
37
11 months ago
The web has a superpower: permission-less link sharing. I send you a link and as long as you have an agent, i.e. a browser (or a mere HTTP client), you can access the content at that link. This ability to create and disseminate links is almost radical against the backdrop of...
Jim Nielsen’s Blog
Don’t Miss the Product for the Artifacts Ever hear that idiom, “Don’t miss the forest for the trees”? The idea being, you miss the bigger...
3 weeks ago
37
3 weeks ago
Ever hear that idiom, “Don’t miss the forest for the trees”? The idea being, you miss the bigger picture because you’re focused on the minutia? Feels like the tech equivalent is: Don’t miss the product for the artifacts. Here’s Ryan Rendle in a recent piece on design...
Jim Nielsen’s Blog
Prompting the Wrong Question So there I am, working on a bug exclusive to Safari (we’ve all been there). I can’t figure it out so...
3 months ago
37
3 months ago
So there I am, working on a bug exclusive to Safari (we’ve all been there). I can’t figure it out so I ask AI, “Hey, this piece of code is not working in Safari, what’s wrong?” The issue might be related to how Safari handles keyboard events, especially for certain keys… It gives...
Jim Nielsen’s Blog
The Beauty of Building Jan Miksovsky has an absolutely tremendous article about how he cobbled together some disparate...
2 months ago
37
2 months ago
Jan Miksovsky has an absolutely tremendous article about how he cobbled together some disparate pieces of hardware and software in order to help improve the quality of life of his mother who has amnesia. Everything about this article illustrates what got me into making...
Jim Nielsen’s Blog
JavaScript Is Enabled by Default in Web Browsers It’s easy to talk bad about JavaScript (or at least its abuse) like it’s some kind of malware. But...
a year ago
36
a year ago
It’s easy to talk bad about JavaScript (or at least its abuse) like it’s some kind of malware. But it’s worth remembering that JavaScript is enabled by default in web browsers. JavaScript is not so terrible, so harmful, so taboo, so something you shouldn’t use that it’s turned...
Jim Nielsen’s Blog
Knowledge Laundering I was reading Baldur’s recent piece about the transition taking place in open source — which I took...
a year ago
36
a year ago
I was reading Baldur’s recent piece about the transition taking place in open source — which I took notes on — and this excerpt talking about large language models (LLMs) stood out to me: Why give somebody credit for the lines of code you’ve adapted for your own project when you...
Jim Nielsen’s Blog
“The iOS App Icon Book” in Japanese Seeing something you made put in print is exciting. Seeing something you made translated and put in...
a year ago
36
a year ago
Seeing something you made put in print is exciting. Seeing something you made translated and put in print, well that’s pretty damn exciting too. Such was the feeling when I opened my copy of the Japanese translation of The iOS App Icon Book. While the core idea of the book...
Jim Nielsen’s Blog
Using Locally-Installed CLI Tools In Node Projects You have a dependency that provides a CLI tool, how do you use it? Even though you did npm i from...
2 weeks ago
35
2 weeks ago
You have a dependency that provides a CLI tool, how do you use it? Even though you did npm i from your project root, if you run <tool> <command> it won’t work because that tool is not in your global path. You could install <tool> globally, but then if you have <tool> in multiple...
Jim Nielsen’s Blog
Motorcycles, Cars, Websites, and Seams In high school, I had a friend named Joe who owned a Honda Trail 110, a small motorcycle with enough...
9 months ago
35
9 months ago
In high school, I had a friend named Joe who owned a Honda Trail 110, a small motorcycle with enough history for its own Wikipedia page. It didn’t go very fast (40MPH tops if you’re going downhill) but Joe rode that thing to school every day — or at least he tried, it often...
Jim Nielsen’s Blog
Build Great Software By Repeatedly Encountering It Robin in “Vibe driven development” (which I took notes): the only way to build a great product is to...
a year ago
35
a year ago
Robin in “Vibe driven development” (which I took notes): the only way to build a great product is to use it every day, to stare at it, to hold it in your hands to feel its lumps. The data and customers will lie to you but the product never will. Oof. That lands with me. As a...
Jim Nielsen’s Blog
Persisting State to localStorage in Recoil Across Browser Tabs I was working on a project using Recoil for state management in React. I needed to persist some...
2 months ago
35
2 months ago
I was working on a project using Recoil for state management in React. I needed to persist some state to localStorage, and there’s some info on how to do it in Recoil’s docs. That works; however it doesn’t respond to state changes from other instances of your app in multiple...
Jim Nielsen’s Blog
“Out of the Software Crisis”: Making Software The following is an extension of my notes from Baldur’s book “Out of the Software Crisis” including...
a year ago
35
a year ago
The following is an extension of my notes from Baldur’s book “Out of the Software Crisis” including quotes from the author. More manpower !== more innovation. design innovation isn’t generally a question of team size but more about having the resources and freedom to experiment...
Jim Nielsen’s Blog
The Allure of Local-First Sync Engines On the localfirst.fm podcast episode with Kyle Matthews they drew a parallel: jQuery was to React...
10 months ago
34
10 months ago
On the localfirst.fm podcast episode with Kyle Matthews they drew a parallel: jQuery was to React what REST APIs are to local-first sync engines. jQuery was manual DOM manipulation. You were in charge of writing the instructions to create, read, update, and delete DOM...
Jim Nielsen’s Blog
The Largest Money-Printing UI Element Ever Made I watched a talk from Evan Czaplicki, creator of the Elm programming language, called “The Economics...
a year ago
34
a year ago
I watched a talk from Evan Czaplicki, creator of the Elm programming language, called “The Economics of Programming Languages”. It’s a fascinating look at how a small OSS project like Elm has to compete in a world where many of the expectations around developer experience for a...
Jim Nielsen’s Blog
JavaScript Imports Under The Hood In my notes from Rich Harris’ talk, I noted: in order to successfully work with JavaScript or...
a year ago
34
a year ago
In my notes from Rich Harris’ talk, I noted: in order to successfully work with JavaScript or TypeScript these days, there’s a growing need to understand some of the very sophisticated transformations that are happening under the hood between the code that you’re writing and the...
Jim Nielsen’s Blog
Using Quadratic to Discover Newsletter Links I built myself a daily email digest that informs me who is linking back to my blog. It’s a fun way...
12 months ago
34
12 months ago
I built myself a daily email digest that informs me who is linking back to my blog. It’s a fun way to discover new people, blogs, and newsletter that I didn’t know existed. I recently saw links to my blog from the tldr newsletter but didn’t know which posts specifically they were...
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...
3 months ago
32
3 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....
Jim Nielsen’s Blog
Relationship Advice for AI You know what’s really helpful in solving my own problems? Writing them down, sending them to...
a week ago
32
a week ago
You know what’s really helpful in solving my own problems? Writing them down, sending them to someone, and not hearing back. You ever do that? For me, it’s a bulletproof method to solving problems. It’s akin to those moments when you go to someone with a problem, you talk it...
Jim Nielsen’s Blog
Offline Is Just Online With Extreme Latency I just finished watching “Local-first Software” by Peter Van Hardenberg and loved it! He talks about...
a year ago
32
a year ago
I just finished watching “Local-first Software” by Peter Van Hardenberg and loved it! He talks about changing the paradigm we’re currently in where a program runs in the cloud and we look at it when we’re online, to one where the program runs on the device in our hands and we...
Jim Nielsen’s Blog
Minute Rice, Minute Text, Minute Websites I was reading Baldur’s article (which I took notes on) and he suggests an interesting overlap...
a year ago
32
a year ago
I was reading Baldur’s article (which I took notes on) and he suggests an interesting overlap between AI enthusiasts and “idea people”: That algogen fans are predominantly idea people—the lot who think that 99% of the value delivered by any given form of media comes from the...
Jim Nielsen’s Blog
Language-Level Toll Roads I’m trying to put my finger on something, but I can’t quite figure out what it is — hence this post....
a year ago
31
a year ago
I’m trying to put my finger on something, but I can’t quite figure out what it is — hence this post. Maybe by the end of writing, I’ll have figured it out. Deno recently launched their KV storage. Being a fan of deno, I looked at it with interest. Here’s a sample: const kv =...
Jim Nielsen’s Blog
AI & The Science of Creativity In an effort to better understand how all this AI stuff works, I’ve been chipping away at Stephen...
a year ago
31
a year ago
In an effort to better understand how all this AI stuff works, I’ve been chipping away at Stephen Wolfram’s meticulous piece, “What Is ChatGPT Doing … and Why Does It Work?”. As you likely know, ChatGPT works by guessing at the next word. Here’s Stephen: when ChatGPT does...
Jim Nielsen’s Blog
Examples of Great URL Design Here’s Kyle Aster on why thoughtful URL design is important (in 2010): URLs are universal. They work...
a year ago
31
a year ago
Here’s Kyle Aster on why thoughtful URL design is important (in 2010): URLs are universal. They work in Firefox, Chrome, Safari, Internet Explorer, cURL, wget, your iPhone, Android and even written down on sticky notes. They are the one universal syntax of the web. Don’t take...
Jim Nielsen’s Blog
Reloading a Document (and Preserving Query String Parameters) Using Only HTML tl;dr: an empty string for your link, e.g. <a href="">Reload</a> The other day I was trying to write...
a year ago
31
a year ago
tl;dr: an empty string for your link, e.g. <a href="">Reload</a> The other day I was trying to write some HTML to give the user the ability to reload the document in its exact state by clicking on a link (same functionality as if they hit CMD + R on their keyboard, or clicked...
Jim Nielsen’s Blog
Zero to Unmaintainable in 1.2 Commands Dave posted “The time to unmaintainable is very low” about how pervasive this idea of “get up and...
11 months ago
31
11 months ago
Dave posted “The time to unmaintainable is very low” about how pervasive this idea of “get up and going quick” is: I can burp some npm commands into my terminal, burp some more to setup a deployment pipeline and blam! Website. The time to product demo is so low. But there’s...
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
31
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...
Jim Nielsen’s Blog
Notes to Self on Mastodon Disclaimer: I still don’t fully understand the mechanics of Mastodon. But this is my attempt to...
a year ago
31
a year ago
Disclaimer: I still don’t fully understand the mechanics of Mastodon. But this is my attempt to articulate what I do understand in a way that helps me better understand the differences — and similarities — between Twitter and Mastodon, especially when it comes to owning more of...
Jim Nielsen’s Blog
Gotchas in Naming CSS View Transitions I’m playing with making cross-document view transitions work on this blog. Nothing fancy. Mostly...
2 weeks ago
30
2 weeks ago
I’m playing with making cross-document view transitions work on this blog. Nothing fancy. Mostly copying how Dave Rupert does it on his site where you get a cross-fade animation on the whole page generally, and a little position animation on the page title specifically. To...
Jim Nielsen’s Blog
Site Search in Arc Browser — For Your Own Site Arc just released site search built right into the browser. Want to search for something...
a year ago
30
a year ago
Arc just released site search built right into the browser. Want to search for something specifically on Twitter? Pull up the search bar and start typing Twitter: Select the site search option and hit Tab. This puts you into what I’ll call “site search mode”: Once you enter...
Jim Nielsen’s Blog
The Case For Design Engineers, Pt. II Previously: The Case For Design Engineers, Pt. I. You’re given a design with a note: the dividing...
11 months ago
30
11 months ago
Previously: The Case For Design Engineers, Pt. I. You’re given a design with a note: the dividing line between these two containers should be interactive so the user can drag to resize the respective containers on either side. Perhaps that note is all you get. Or perhaps the...
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
30
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...
Jim Nielsen’s Blog
Putting the “Person” in “Personal Website” The other day I saw a meme that went something like this: Isn’t it crappy how basic human activities...
4 months ago
29
4 months ago
The other day I saw a meme that went something like this: Isn’t it crappy how basic human activities like singing, dancing, and making art have been turned into skills instead of being recognized as behaviors? The point of doing these things has become to get good at them. But...
Jim Nielsen’s Blog
A Subtle Nicety of Fault Tolerance in HTML & CSS HTML and CSS are designed to be fault tolerant. Rather than failing completely when encountering...
a year ago
29
a year ago
HTML and CSS are designed to be fault tolerant. Rather than failing completely when encountering syntax they don’t understand — looking at you JS/SyntaxError — browsers will continue parsing HTML and CSS as best they can when you introduce incorrect syntax. For someone who is...
Jim Nielsen’s Blog
Things I Like Over Things I Don’t It was another typical day on the internet: somebody did something, it felt like a big deal to me,...
a year ago
29
a year ago
It was another typical day on the internet: somebody did something, it felt like a big deal to me, and I wanted to blog about why I didn’t like it. To vent, I sent Dave a private message — well a couple of them — detailing my frustrations. Looking back, I don’t remember what I...
Jim Nielsen’s Blog
The Alphabet as Technology Robin has an interesting post about the technology of words: Thinking of a language as a technology...
a year ago
28
a year ago
Robin has an interesting post about the technology of words: Thinking of a language as a technology or a product is strange at first but the more you look at them the more they resemble microwaves or dishwashers; incredibly complicated under the hood but also sort of boring on...
Jim Nielsen’s Blog
Tools As Ways of Being I took notes from Sean Voisen’s call for more hybrid tools. He speaks for a moment on generative AI...
2 weeks ago
28
2 weeks ago
I took notes from Sean Voisen’s call for more hybrid tools. He speaks for a moment on generative AI and its inclusion into existing tools, but reading between the lines the insight I found was how our tools can trigger empathy for people and disciplines: One of the greatest goals...
Jim Nielsen’s Blog
“That’s Another Podcast” I’ve long been a fan of the Rich Ziade / Paul Ford podcast duo. They did Track Changes then The...
a year ago
28
a year ago
I’ve long been a fan of the Rich Ziade / Paul Ford podcast duo. They did Track Changes then The Postlight Podcast then The Aboard Podcast then Ziade+Ford, and now (again?) The Aboard Podcast. Through all my listening, one thing I’ve noticed is that they often make comedic...
Jim Nielsen’s Blog
AI Takes Over Because of Human Hype, Not Machine Intelligence Geoff, in his recent blog post “Damn the AI Torpedos”: The idea that businesses are already waging...
a year ago
28
a year ago
Geoff, in his recent blog post “Damn the AI Torpedos”: The idea that businesses are already waging an “AI arms race”…that one those very companies, Microsoft, can invest $11 billion into OpenAI while laying off the folks responsible for keeping AI, um, responsible…that real...
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...
a year ago
28
a year 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...
Jim Nielsen’s Blog
Logical Properties and Ease I’ll admit, I’m late to the logical properties party. The purist in me loves the idea because it...
a year ago
27
a year ago
I’ll admit, I’m late to the logical properties party. The purist in me loves the idea because it makes CSS more internally consistent with its design to be a language-agnostic framework for uni-directional layout. Chris gets at this in his recent post, “Why aren’t logical...
Jim Nielsen’s Blog
Is Making Websites Hard, Or Do We Make It Hard? Or Is It Some of Both? Johan Halse has a post called “Care” where he talks about having to provide web tech support to his...
11 months ago
27
11 months ago
Johan Halse has a post called “Care” where he talks about having to provide web tech support to his parents: My father called me in exasperation last night after trying and failing to book a plane ticket. I find myself having to go over to their house and do things like switch...
Jim Nielsen’s Blog
Online Handles: A Round-Up After asking about the origin of online handles, I heard back from a number of folks and loved the...
a year ago
27
a year ago
After asking about the origin of online handles, I heard back from a number of folks and loved the stories. It’s fascinating to see an online name like “Apple Annie”, read the origin story, and see this wonderful, multi-faceted human being with a rich history behind the...
Jim Nielsen’s Blog
More Files Please Scott Jenson has a great article called “The future needs files”. The power of files comes from them...
11 months ago
26
11 months ago
Scott Jenson has a great article called “The future needs files”. The power of files comes from them being powerful nouns. They are temporary holding blocks that are used as a form of exchange between applications. A range of apps can edit a single file in a single...
Jim Nielsen’s Blog
My Guest Appearance on ShopTalk Show #605 Here’s the link: https://shoptalkshow.com/605/ I sat down (again) with Chris and Dave to talk all...
11 months ago
26
11 months ago
Here’s the link: https://shoptalkshow.com/605/ I sat down (again) with Chris and Dave to talk all things web. The conversation was fun and casual, mostly around topics I’ve written about recently — which is good, since those are topics I should (presumably) be able to speak on at...
Jim Nielsen’s Blog
Notes from “Why Can’t We Make Simple Software?” By Peter van Hardenberg I’m a fan of what Ink & Switch is doing in regards to local-first web development. I’ve got a few...
11 months ago
25
11 months ago
I’m a fan of what Ink & Switch is doing in regards to local-first web development. I’ve got a few harebrained ideas myself I want to build. And I’ve written notes from a talk by Peter before. Which is all a preface for this set of notes from another talk by Peter. Here’s the talk...
Jim Nielsen’s Blog
UI=f(org): UI is a Function of Your Organization The Domino’s “Pizza Tracker” is an intriguing piece of UI. As an end user, it provides the precision...
11 months ago
24
11 months ago
The Domino’s “Pizza Tracker” is an intriguing piece of UI. As an end user, it provides the precision of detail you want in tracking your order: Your order has been received Your pizza is being prepped Your pizza is in the oven Your pizza is being checked for quality by...
Jim Nielsen’s Blog
Blogging and Composting Here’s a thought: blogging is like compositing. The banana is what you’re after. But as a byproduct...
a year ago
22
a year ago
Here’s a thought: blogging is like compositing. The banana is what you’re after. But as a byproduct of the banana you get the peel. And if you compost, you can make good use of the peel. Similarly, whatever you’re building is what you’re after. But as a byproduct of whatever...
Jim Nielsen’s Blog
There’s Something You Need to Know About Web Design and Development You’re doing great at it. (❤️ from Bluey: Baby Race) Email, Twitter, Mastodon
a year ago
Jim Nielsen’s Blog
Stop Being Fancy This is a note to self: Except where absolutely necessary, stop being fancy. When confronted with,...
a year ago
21
a year ago
This is a note to self: Except where absolutely necessary, stop being fancy. When confronted with, “Can this be done?” If the answer is an immediate "Yes", go ahead, do that. But if the answer is, “Well, you could, but you’d have to…" Just stop right there. Don’t go do...
Jim Nielsen’s Blog
Two Quick Tips When Building With React Router I’ve been working with the latest Remix-ification of React Router and there are two things I wish I...
11 months ago
19
11 months ago
I’ve been working with the latest Remix-ification of React Router and there are two things I wish I had known when I started. So I’m writing them down in case anyone else is about to start a React Router app. 1. Flat Action Data When Using JSON If you’re submitting JSON,...
Jim Nielsen’s Blog
Family Tree Wisdom Chris: My grandpa used to say that if you climb a rope every day, you’ll never not be able to do...
a year ago
19
a year ago
Chris: My grandpa used to say that if you climb a rope every day, you’ll never not be able to do it. Ha, I love it! It got me thinking: I’d love to hear more folks’ “wisdom from the family tree”. Stuff like Chris shared, “My grandpa used to say…” I immediately had a few family...
Jim Nielsen’s Blog
A Golden Era of Blogging Matt has an interesting post titled: “Today’s YouTubers are repeating the mistakes of yesterday’s...
12 months ago
18
12 months ago
Matt has an interesting post titled: “Today’s YouTubers are repeating the mistakes of yesterday’s bloggers”. While I’m not super into the YouTube scene, his observations sound right from where I sit. He points out how some of the YouTube creators he loves and follows are...
Jim Nielsen’s Blog
A Few Details About My Notes Website A little while back I created notes.jim-nielsen.com and wrote about why I made it. I want to write a...
a year ago
18
a year ago
A little while back I created notes.jim-nielsen.com and wrote about why I made it. I want to write a little more about some of my favorite parts of the site. First: It’s Really a Page, Not a Site I’m not sure I should call it a “website”, as I think of a website as a collection...
Jim Nielsen’s Blog
There’s Meaning in the Ordering of the Web’s Tech Stack I was watching Zach’s presentation at JSHeroes 2023, “The Good, The Bad, and The Web Components”,...
a year ago
18
a year ago
I was watching Zach’s presentation at JSHeroes 2023, “The Good, The Bad, and The Web Components”, and a subtle point stuck out to me at the ending of his talk. When you run into performance problems, it's [because you tried] to reorder these things or combine them in weird...
Jim Nielsen’s Blog
An Inbox Full O’ Receipts Dave parodying those pesky “Dear business owner” emails one tends to get: I clearly have no ethics,...
a year ago
17
a year ago
Dave parodying those pesky “Dear business owner” emails one tends to get: I clearly have no ethics, but you should enter a business relationship with me, a guy who found your email on the internet. That’s the subtext of those emails. You are now signed up for a no-opt-out email...
Jim Nielsen’s Blog
“We’re All Just Temporarily Abled” That’s a quote from Cindy Li — “We're all just temporarily abled”. I first heard it in Sarah’s...
a year ago
16
a year ago
That’s a quote from Cindy Li — “We're all just temporarily abled”. I first heard it in Sarah’s course and it’s been on repeat in my mind ever since June 6th. June 6th I was on vacation at the beach with my family and tried something that, looking back now, maybe I’m too old for....
Jim Nielsen’s Blog
Getting an Unread Badge Count For the Docked Gmail Web App in macOS If you didn’t know already, you can now turn webpages into “apps” on your Mac. I’ve done this for a...
a year ago
16
a year ago
If you didn’t know already, you can now turn webpages into “apps” on your Mac. I’ve done this for a few apps already and it works great. I get system-level notifications, unread badge counts, and more! Except for Gmail. With Gmail I get notifications but I don’t get application...
Jim Nielsen’s Blog
“The macOS App Icon Book” IRL Guess what I received in the mail today? You likely guessed it from the title, but I’ll say it...
a year ago
15
a year ago
Guess what I received in the mail today? You likely guessed it from the title, but I’ll say it anyway: The macOS App Icon Book. (If you didn’t catch it, I’ve written previously about my contribution to its prequel.) This one got funded on Kickstarter a few months back and,...
Jim Nielsen’s Blog
Domain Sins of My Youth I recently received a reminder to renew a domain I use for a rather frivolous side project. At the...
a year ago
15
a year ago
I recently received a reminder to renew a domain I use for a rather frivolous side project. At the checkout screen, I realized it would cost me $105 to renew this domain for 5 years. Why 5 years? Right now my disposition is: if I plan on keeping a domain for as long as possible I...
Jim Nielsen’s Blog
Treating the Symptoms If you haven’t seen it yet, the folks behind The Browser Company recently introduced a new app...
a year ago
15
a year ago
If you haven’t seen it yet, the folks behind The Browser Company recently introduced a new app called “Arc Search”. Its key feature? It’ll browse the web for you. What happened? “Surfing the web” used to be — and still can be — the funnest part about being on the web! How did...
Jim Nielsen’s Blog
Counting to Ten We’re sitting around the dinner table discussing what happened at school today and it leads us to...
a year ago
15
a year ago
We’re sitting around the dinner table discussing what happened at school today and it leads us to the subject of counting to ten. Realizing everyone in the family can count to ten in a language unique to them at this moment in their life, we go around the table to do it...
Jim Nielsen’s Blog
Idioms as Code This is silly. I wrote code depicting common idioms. You read the code and try to guess the...
a year ago
15
a year ago
This is silly. I wrote code depicting common idioms. You read the code and try to guess the idiom. Answers are below the code (and, for clients viewing in supported readers, appear upside down like a children’s book). pen > sword >>> true The pen is mightier than the...
Jim Nielsen’s Blog
The Origin of Online Handles There are a few people online whose ubiquitous usernames I’ve always wondered about. For example:...
a year ago
15
a year ago
There are a few people online whose ubiquitous usernames I’ve always wondered about. For example: Jeremy Keith is “Adactio”. I have no idea what that word means. A quick internet search reveals no hints. Even ChatGPT has no idea. Dave Rupert is davatron5000. I wonder where...
Jim Nielsen’s Blog
How I Take and Publish Notes I publish notes at notes.jim-nielsen.com. I’ve written about why I made that site as well as some of...
a year ago
14
a year ago
I publish notes at notes.jim-nielsen.com. I’ve written about why I made that site as well as some of my favorite aspects of its design. But I’ve yet to write about how I take and publish notes to it. The other day Bill Beckelman emailed me and told me he made a similar site of...
Jim Nielsen’s Blog
“Out of the Software Crisis”: Dependencies The following is an extension of my notes from Baldur’s book “Out of the Software Crisis” including...
a year ago
14
a year ago
The following is an extension of my notes from Baldur’s book “Out of the Software Crisis” including quotes from the author. Software is a lot like life — probably because it models our lives — in that it’s constantly changing. The biggest threat to the economic value of code is...
Jim Nielsen’s Blog
Notes from “An approach to computing and sustainability inspired from permaculture” by Devine... I am interested in computers as a way to do more than consume. That’s how Devine starts their talk...
a year ago
14
a year ago
I am interested in computers as a way to do more than consume. That’s how Devine starts their talk from Strangeloop. I’ve linked to them before, as they have an interesting perspective on computing in the 21st century (given, in part, their environment of living on a boat). I...
Jim Nielsen’s Blog
Dinner Conversation Read more about RSS Club. I love following the blogs of people in tech who have interesting,...
a year ago
14
a year ago
Read more about RSS Club. I love following the blogs of people in tech who have interesting, insightful things to say about the industry and their craft. I also really enjoy when those same people post little insights into their personal lives. I love seeing the human side...
Jim Nielsen’s Blog
Robots.txt A few weeks ago, I saw a flurry of conversation about how you can now disallow OpenAI from indexing...
a year ago
14
a year ago
A few weeks ago, I saw a flurry of conversation about how you can now disallow OpenAI from indexing your personal website using robots.txt: User-agent: GPTBot Disallow: / That felt a bit “ex post facto“ as they say. Or, as Jeremy put it, “Now that the horse has bolted—and...
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
14
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...
Jim Nielsen’s Blog
RSS in HTML: A Follow-Up I asked if anyone has tried to do RSS with HTML and a good number of people responded (via Mastodon...
a year ago
14
a year ago
I asked if anyone has tried to do RSS with HTML and a good number of people responded (via Mastodon and email — TY kind people). Many folks pointed me to h-feed microformats which, in hindsight, I’m surprised I didn’t think of as I already implement the h-entry format on my...
Jim Nielsen’s Blog
Embeds and Quotations in Writing Chris wrote “0 KB Social Media Embeds” and it got me thinking about my own approach to embeds and...
a year ago
14
a year ago
Chris wrote “0 KB Social Media Embeds” and it got me thinking about my own approach to embeds and quotations in my writing. A lot of my blogging is quoting other people. I remember debating the use of social embeds on my blog because I quoted a lot of things on Twitter. But I...
Jim Nielsen’s Blog
My Guest Appearance on JS Party #288 My frequent ramblings on this blog garnered enough of the attention of Jerod Santo that he...
a year ago
13
a year ago
My frequent ramblings on this blog garnered enough of the attention of Jerod Santo that he graciously invited me to come on the JS Party podcast to talk about, well, my blog posts. Which ones? To name a few: Language-Level Toll Roads The Art of Knowing When to Quit Subscribe...
Jim Nielsen’s Blog
People and Blogs and Me If you haven’t seen it, Manu has a new series called “People and Blogs” centered around a lovely...
a year ago
13
a year ago
If you haven’t seen it, Manu has a new series called “People and Blogs” centered around a lovely goal: to both highlight wonderful human beings and their blogs, and also to promote a healthier way to inhabit the web and show that traditional social media is not the be all and end...
Jim Nielsen’s Blog
Software is What We Learned Along the Way Trent absolutely nails it: [the why is] where I provide the most value as a designer. I am not...
a year ago
13
a year ago
Trent absolutely nails it: [the why is] where I provide the most value as a designer. I am not merely the picker of fonts, the dropper of shadows, the executor of deliverables. My greatest value as a designer lies in orchestrating the process and gathering insights — applying...
Jim Nielsen’s Blog
LLMs and Naming Things In Simon’s talk around practical use of LLMs, he quotes the famous saying about there being two hard...
a year ago
13
a year ago
In Simon’s talk around practical use of LLMs, he quotes the famous saying about there being two hard problems in computer science: 1) cache invalidation and 2) naming things. Then he unapologetically says the “naming things” problem is solved with LLMs. Here’s Simon: [When asking...
Jim Nielsen’s Blog
HTML Minification for Static Sites This is a note to my future self, as I’ve setup HTML minification on a few different projects and...
6 days ago
13
6 days ago
This is a note to my future self, as I’ve setup HTML minification on a few different projects and each time I ask myself, “How did I do that again?” So here’s your guide, future Jim (and anyone else on the internet who finds this). I use html-minifier to minifiy HTML files...
Jim Nielsen’s Blog
User Feedback I was listening to ShopTalkShow #544 where Dave mentions his craving for frank, almost brutal, user...
a year ago
12
a year ago
I was listening to ShopTalkShow #544 where Dave mentions his craving for frank, almost brutal, user feedback on the app they’re building (Luro) and it reminded me of something I wanted to write down. At a previous gig, we hired a head of user research who helped formalize and...
Jim Nielsen’s Blog
HTML Web Components: An Example In my article on HTML web components, I said: But the unique power of web components (in the...
a year ago
12
a year ago
In my article on HTML web components, I said: But the unique power of web components (in the browser) is that they can render before JavaScript. React components cannot do this — full stop. There’s a lot in there I wanted to explain more in-depth, but I just never go to it. Then...
Jim Nielsen’s Blog
Stealth Airplanes & Best Practices I recently finished reading (actually listening to as it was an audiobook) Skunk Works: A Personal...
a year ago
12
a year ago
I recently finished reading (actually listening to as it was an audiobook) Skunk Works: A Personal Memoir of My Years of Lockheed by Ben Rich. tldr; I quite enjoyed the (audio)book. It’s a fascinating look at how a collective group of people can find innovative solutions at the...
Jim Nielsen’s Blog
Immeasurable Impact Jerod has a good post on The Changelog contrasting the different ways of measuring impact. One way...
a year ago
12
a year ago
Jerod has a good post on The Changelog contrasting the different ways of measuring impact. One way to measure impact is breadth (i.e. virality): Virality is all about breadth of impact: your content reaching as many people as possible as fast as possible. This feels great and is...
Jim Nielsen’s Blog
LLMs, Intuition, and Working With Computers I recently watched Simon’s talk around practical use of LLMs (and took notes). This slide stood...
a year ago
11
a year ago
I recently watched Simon’s talk around practical use of LLMs (and took notes). This slide stood out: For the best [prompt] results, combine: Domain knowledge of the thing you're working on Understanding how the models work Intuition gained from playing around with them a lot I am...
Jim Nielsen’s Blog
Cold-blooded Software Patrick Duboy has an interesting post making the rounds titled, “Cold-blooded Software”. He...
a year ago
11
a year ago
Patrick Duboy has an interesting post making the rounds titled, “Cold-blooded Software”. He analogizes the idea of warm-blooded software: projects that are warm-blooded: everything is great when there’s constant motion on the project, generating heat. But put warm-blooded...
Jim Nielsen’s Blog
Cat and Mouse Read more about RSS Club. When we first moved in to our current house, we had a mouse...
a year ago
11
a year ago
Read more about RSS Club. When we first moved in to our current house, we had a mouse problem. Well, I should say “mice” problem because it was definitely plural and not just one solitary mouse chillin in the house. As a new homeowner, I was distraught. I tried all kinds...
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
11
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...
Jim Nielsen’s Blog
Notes from “Weathering Software Winter” by Devine Lu Linvega I watched this talk[1] where the presenter details their experience trying to use modern digital...
a year ago
9
a year ago
I watched this talk[1] where the presenter details their experience trying to use modern digital devices while living on a boat with little to zero connectivity. It soon became obvious that all the technology [we planned to use] was not designed to leave the western world. It was...
Jim Nielsen’s Blog
Notes on Google Search Now Requiring JavaScript John Gruber has a post about how Google’s search results now require JavaScript[1]. Why? Here’s...
4 days ago
9
4 days ago
John Gruber has a post about how Google’s search results now require JavaScript[1]. Why? Here’s Google: the change is intended to “better protect” Google Search against malicious activity, such as bots and spam Lol, the irony. Let’s turn to JavaScript for protection, as if the...
Jim Nielsen’s Blog
Missed Connections Let me tell you about one of the best feelings. You have a problem. You bang your head on it for a...
5 days ago
6
5 days ago
Let me tell you about one of the best feelings. You have a problem. You bang your head on it for a while. Through the banging, you formulate a string of keywords describing the problem. You put those words into a search engine. You land on a forum or a blog post and read someone...