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 is, I think, less utilitarian: we receive our writing as a gift, and...
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 websites. Everything about this article is what fuels my curiosity and...
When trying to define the difference between a link () and a 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 scenarios. Why? Because buttons can be for navigation too. Where? Buttons in forms...
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 browser tabs. If you want that, you have to add the code yourself by...
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 Reply via: Email :: Mastodon :: Twitter Tagged in: #designEngineer
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 always at the top, but then after it comes a bunch of clones or...
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 people will have the reaction that such an outlook is nothing more than...
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, he learns the domain was previously used to host pirated music. He...
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. However, he’s not blogging on Rough Type anymore. He has a new blog...
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. Can’t quite do the thing you want? You’re options are: 1) make a...
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 later I found this Hacker News comment (courtesy of Terence Eden)...
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 me some advice: Ensure the listener is setup correctly Check for...
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 want the whole thing to go without knowing how we’re gonna do...
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% 0%). I log those in the click handler function where I expect the...
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 served as the manifesto and launching point for Deno. And yet, he’s...
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 card. Every time she did it, they would remind her there was an “easier...
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 they should be recognized as things humans do innately, like how birds...
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? Here’s Sean: We could all benefit from more randomness in our lives...
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, your users, etc. — there are undertones of something being said...
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 some point a programmer read in a study that the average person read...
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 without?” [So you] go past the goal to get to the real heart of it, and then...
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 BOOT and CHESS. Afterwards, subjects were asked to explain what they...
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 my mind I say, “WHAAAAAATTTT??!?!?” To me, they’re living the...
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 and forth a ton. Click, back button. Click, right-click context...
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 "A" So I just need to figure out what “A” is and I’ll be rich! Annie...
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. Here are a few points I wanted to write down. Magic is a Playground For...
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.json notes/ note1.md note2.md note3.md src/ index.js ...
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 a large resolution image on a CDN as his “source” and then request...
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 posts, people will read it, share it, and talk about it. It's a...
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 level of wear in each path based on previous treks by others, you know...
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 replace our thinking with its own thought. AI, he says, doesn’t think for...
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 throw away what I built. But I felt really bad throwing it away, so I...
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 aimed to replace npm with a distributed system over HTTP, aligning...
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 irons. When I mindlessly scroll these accounts (i.e. advertisements) my mind...
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 want to manually trigger a site deploy — but I’m lazy and don’t want...
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 dependency. What makes npm not so great? It’s too easy to install...
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 hate on). But I do enjoy following sports. I’ve witnessed some pretty...
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 — and I like it. Is something wrong with me?” Learning this term and...
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 problem solving. He notes that when you set out to solve a problem...
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 exists outside of the visible? Nonetheless, here I am with this blog...