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

macwright.com

macwright.com
Recently If you’re reading this on macwright.com, you might have noticed that the website got a very slight...
8 months ago
75
8 months ago
If you’re reading this on macwright.com, you might have noticed that the website got a very slight upgrade this month. I’ve been publishing a lot of content in the /micro/ section, and I update my /reading/ list once or twice a month when I finish books, but these proper...
macwright.com
Takeaway from using CO₂ monitors: run the exhaust fan For the last few years, I’ve had Aranet 4 and AirGradient sensors in my apartment. They’re fairly...
9 months ago
72
9 months ago
For the last few years, I’ve had Aranet 4 and AirGradient sensors in my apartment. They’re fairly expensive gadgets that I have no regrets purchasing – I love a little more awareness of things like temperature, humidity, and air quality, it’s ‘grounding’ in a cyberpunk way. But...
macwright.com
The one about AI Like everyone, I’ve been thinking about AI. It’s already useful, in a way that the previous big...
a year ago
71
a year ago
Like everyone, I’ve been thinking about AI. It’s already useful, in a way that the previous big thing, crypto, wasn’t. I don’t think it’ll become generalized AI - I think the AI winter cycle is the base case and human-like intelligence is qualitatively different than LLM, no...
macwright.com
The S&P 500 is largely a historical artifact I see the S&P 500 referenced pretty frequently as an vanilla index for people investing. This isn’t...
10 months ago
66
10 months ago
I see the S&P 500 referenced pretty frequently as an vanilla index for people investing. This isn’t totally wrong, which is why this post is short. But, if you have the goal of just “investing in the market,” there’s a better option for doing that: a total market index. For...
macwright.com
Recently Listening My friend Dave Infante has been busy – he launched his own beer-centric podcast, Taplines,...
a year ago
64
a year ago
Listening My friend Dave Infante has been busy – he launched his own beer-centric podcast, Taplines, and guest-starred on the enormous Chapo Trap House podcast. Reading It’s been a slow few weeks for books, but since I skipped Recently in May, I can still talk about Achieving...
macwright.com
Recently The weather is starting to get better. Listening Gift from the Trees by Mammal Hands I am still...
a year ago
63
a year ago
The weather is starting to get better. Listening Gift from the Trees by Mammal Hands I am still really loving the constellation of bands around Mammal Hands. They just released a new album, “Gift from the Trees”, and it’s really excellent. RETURN by tAKX Their guitarist,...
macwright.com
Recently 2024 Happy end-of-2024! It’s been a pretty good year overall. I’m thankful. There’s no way that I’ll be...
a month ago
60
a month ago
Happy end-of-2024! It’s been a pretty good year overall. I’m thankful. There’s no way that I’ll be able to remember and carve out the time around New Years to write this, so here’s some end-of-year roundup, ahead of schedule! Running This was my biggest year for running on...
macwright.com
Reverse engineering a day’s worth of websites Some light reverse-engineering of websites has been a source of entertainment and knowledge for me....
6 months ago
53
6 months ago
Some light reverse-engineering of websites has been a source of entertainment and knowledge for me. I’ll poke around in the Chrome DevTools and figure out the basics of how popular websites work. Sure, it’s common to compress JavaScript and other resources, and the HTML source of...
macwright.com
About Placemark.io Someone asked over email about why I stopped building Placemark as a SaaS and made it an open source...
10 months ago
53
10 months ago
Someone asked over email about why I stopped building Placemark as a SaaS and made it an open source project. I have no qualms with sharing the answers publicly, so here they are: I stopped Placemark because it didn’t generate enough revenue and I lost faith that there was a...
macwright.com
Obsidian Freeform Prefer video? You can also watch an intro video that I recorded for this on YouTube. Obsidian...
8 months ago
51
8 months ago
Prefer video? You can also watch an intro video that I recorded for this on YouTube. Obsidian Freeform is an extremely small Obsidian plugin that enables totally custom JavaScript-powered frames alongside your notes. I created it because I use Obsidian as my note-taking...
macwright.com
Recently Reading Since last time, I read a few books: Sea of Tranquility, a book club book, Doppelganger, the...
5 months ago
48
5 months ago
Reading Since last time, I read a few books: Sea of Tranquility, a book club book, Doppelganger, the new Naomi Klein, and Manywhere, a collection of short stories. Sea of Tranquility was very digestible sci-fi. I haven’t read that much sci-fi overall, so it’s probably inaccurate...
macwright.com
Recently Reading Since last time, I read a few books: Sea of Tranquility, a book club book, Doppelganger, the...
5 months ago
48
5 months ago
Reading Since last time, I read a few books: Sea of Tranquility, a book club book, Doppelganger, the new Naomi Klein, and Manywhere, a collection of short stories. Sea of Tranquility was very digestible sci-fi. I haven’t read that much sci-fi overall, so it’s probably inaccurate...
macwright.com
Recently I skipped Recently last month. This one’s even more of a grab-bag than usual! The <video> element...
6 months ago
48
6 months ago
I skipped Recently last month. This one’s even more of a grab-bag than usual! The <video> element and browser abstractions I was reading Iván Sánchez Ortega’s thoughts on maps4html (at the time of writing, his website is down, so that’s an archive.org link). The post is about a...
macwright.com
Hawbuck wallets There are a lot of companies pitching new kinds of wallets, with lots of ads - Ridge is one of the...
9 months ago
46
9 months ago
There are a lot of companies pitching new kinds of wallets, with lots of ads - Ridge is one of the most famous. An option that never seems to come up in internet listicles but I’ve sworn by for years is the Hawbuck wallet. My personal preferences for this kind of thing...
macwright.com
Recently Hello from sunny Brooklyn, where it’s suddenly summer. What’s new? Over at the Val Town Blog, I...
9 months ago
46
9 months ago
Hello from sunny Brooklyn, where it’s suddenly summer. What’s new? Over at the Val Town Blog, I wrote about how searching source code is a pretty hard problem. It was pretty well-received: I confirmed that yes, it’s a pretty hard problem. We’re really trying not to write a search...
macwright.com
Recently: Cycling and Autumn I haven’t been posting much to the ‘main blog’ recently, but I have been keeping the micro blog...
3 months ago
45
3 months ago
I haven’t been posting much to the ‘main blog’ recently, but I have been keeping the micro blog updates humming. If you want more content in your RSS reader, you can subscribe to those posts, which are shorter, more scattered, and even less copyedited. It feels bad to have...
macwright.com
Recently Reading It is very easy to get ChatGPT to emit a series of words such as “I am happy to see you.”...
4 months ago
44
4 months ago
Reading It is very easy to get ChatGPT to emit a series of words such as “I am happy to see you.” There are many things we don’t understand about how large language models work, but one thing we can be sure of is that ChatGPT is not happy to see you. Ted Chiang’s article about AI...
macwright.com
Bandcamp wrapped I still use Bandcamp almost exclusively to buy music, and keep a big library of MP3s. The downside...
a month ago
44
a month ago
I still use Bandcamp almost exclusively to buy music, and keep a big library of MP3s. The downside is that this marks me as a weirdo, but otherwise it’s great and has been working well for me. Since I last wrote about it, Bandcamp was acquired by Epic games (?) and then acquired...
macwright.com
CSS Roundup I’ve been writing some CSS. My satisfaction with CSS ebbs and flows: sometimes I’m happy with its...
11 months ago
40
11 months ago
I’ve been writing some CSS. My satisfaction with CSS ebbs and flows: sometimes I’m happy with its new features like :has, but on the other hand, CSS is one of the areas where you really often get bitten by browser incompatibilities. I remember the old days of JavaScript in which...
macwright.com
Code-folding JSX elements in CodeMirror This came up for Val Town - we implemented code folding in our default editor which uses CodeMirror,...
11 months ago
39
11 months ago
This came up for Val Town - we implemented code folding in our default editor which uses CodeMirror, but wanted it to work with JSX elements, not just functions and control flow statements. It’s not enough to justify a module of its own because CodeMirror’s API is unbelievably...
macwright.com
Placemark is going open source and shutting down also on placemark.io/blog The company and product side of Placemark didn’t work out. Some fantastic,...
a year ago
39
a year ago
also on placemark.io/blog The company and product side of Placemark didn’t work out. Some fantastic, friendly people used it, but I couldn’t find a way to make it work as a sustainable bootstrapped startup. Building it was incredibly fun. Failing to find success and...
macwright.com
Rendering Tidbyt graphics in Rust One of my other long-term projects has been building new graphics for my Tidbyt in Rust. It has been...
a year ago
38
a year ago
One of my other long-term projects has been building new graphics for my Tidbyt in Rust. It has been a slow, silly process in which I celebrate when a single pixel lights up on the device. I’m not even writing firmware or code that runs “on the device” - that’s a stretch goal for...
macwright.com
How could you make a scalable online geospatial editor? by I’ve been thinking about this. Placemark is going open source in 10 days and I’m probably not...
a year ago
37
a year ago
I’ve been thinking about this. Placemark is going open source in 10 days and I’m probably not founding another geo startup anytime soon. I’d love to found another bootstrapped startup eventually, but geospatial is hard. Anyway, geospatial data is big, which does not combine well...
macwright.com
Notes on using Linear We’ve been using Linear for a month or two at Val Town, and I think it has ‘stuck’ and we’ll keep...
9 months ago
35
9 months ago
We’ve been using Linear for a month or two at Val Town, and I think it has ‘stuck’ and we’ll keep using it. Here are some notes about it: The keyboard shortcuts are as good as people say they are: you can do things like hover your mouse over a row in a list, hit a keyboard...
macwright.com
Hacker News Here’s some new JavaScript on this website. It’s the only JavaScript on most pages, which are...
over a year ago
35
over a year ago
Here’s some new JavaScript on this website. It’s the only JavaScript on most pages, which are otherwise pretty minimal. try { if (document.referrer) { const ref = new URL(document.referrer); if (ref.host === 'news.ycombinator.com') { window.location.href =...
macwright.com
How are we supposed to do tooltips now? by I’ve been working on oldfashioned.tech, which is sort of a testbed to learn about htmx and the other...
a year ago
34
a year ago
I’ve been working on oldfashioned.tech, which is sort of a testbed to learn about htmx and the other paths: vanilla CSS instead of Tailwind, server-rendering for as much as possible. How are tooltips and modals supposed to work outside of the framework world? What the Web...
macwright.com
Recently This was a big month of change for me – I announced that I was joining Val.town and wrote a big...
over a year ago
34
over a year ago
This was a big month of change for me – I announced that I was joining Val.town and wrote a big update about Placemark. Plenty more to write, but at least here I’ll take a little breather and just do the usual: what’s new! Reading I only finished one book this month - Meet Us By...
macwright.com
I wish there was a better default for database IDs by Every database ID scheme that I’ve used has had pretty serious downsides, and I wish there was a...
a year ago
34
a year ago
Every database ID scheme that I’ve used has had pretty serious downsides, and I wish there was a better option. The perfect ID would: Be friendly to distributed systems - multiple servers should be able to generate non-overlapping IDs at the same time. Even clients should be able...
macwright.com
React is old My last big project at Mapbox was working on Mapbox Studio. We launched it in 2015. For the web...
10 months ago
34
10 months ago
My last big project at Mapbox was working on Mapbox Studio. We launched it in 2015. For the web stack, we considered a few other options - we had used d3 to build iD, which worked out great but we were practically the only people in the internet using d3 to build HTML UIs - I...
macwright.com
Recently We went apple picking this month in New Jersey, and one of the farms had these two golden retrievers...
over a year ago
33
over a year ago
We went apple picking this month in New Jersey, and one of the farms had these two golden retrievers in their own, private, enormous pen. It was a petting zoo, but with two golden retrievers. They defended their space against other dogs who wanted to say hi, but stayed near the...
macwright.com
Hooking up search results from Astro Starlight in other sites At Val Town, we recently introduced a command-k menu, that “omni” menu that sites have. It’s pretty...
10 months ago
33
10 months ago
At Val Town, we recently introduced a command-k menu, that “omni” menu that sites have. It’s pretty neat. One thing that I thought would be cool to include in it would be search results from our documentation site, which is authored using Astro Starlight. Our main application is...
macwright.com
Recently Writing in from Washington, DC, my once-hometown and the birthplace of Mapbox. This one will be...
a year ago
32
a year ago
Writing in from Washington, DC, my once-hometown and the birthplace of Mapbox. This one will be quick because I’m between one thing and another! Listening Dry Daniel by Buke and Gase Buke and Gase released some music they recorded a while ago, and there are some hits in it. I...
macwright.com
Competition For the last few jobs, I’ve kept a private are.na board of competition. Every time I saw something...
a year ago
32
a year ago
For the last few jobs, I’ve kept a private are.na board of competition. Every time I saw something that looked like it was competing with Observable, or Placemark, or val.town I’d add it to the list. Eventually I’d have a big gallery of screenshots of all the other companies and...
macwright.com
Remix notes Val Town switched to Remix as a web framework a little over a year ago. Here are some...
10 months ago
31
10 months ago
Val Town switched to Remix as a web framework a little over a year ago. Here are some reflections: The Remix versioning scheme is a joy. They gradually roll out features under feature flags, so you have lots of time to upgrade. Compared to what seems like chaos over in...
macwright.com
Playing with bikeshare data, part one Since July, I’ve been archiving data from the Citi Bike GBFS feed. Every five minutes, I have a...
a year ago
31
a year ago
Since July, I’ve been archiving data from the Citi Bike GBFS feed. Every five minutes, I have a datapoint for each of the roughly 2,090 stations with numbers for how many bikes are available or broken, and how many bikes are electric. It’s a long-term project that combines my...
macwright.com
Figma Plugins At the beginning of 2023, I released a Figma plugin called Placemark, which lets you create vector...
10 months ago
30
10 months ago
At the beginning of 2023, I released a Figma plugin called Placemark, which lets you create vector maps in Figma, the graphic design tool. Since then I’ve been maintaining that plugin for fun, and introduced another one, Placemark Globe. They’ve been somewhat successful! The...
macwright.com
Web pages and video games An evergreen topic is something like “why are websites so big and slow and hard and video games are...
10 months ago
30
10 months ago
An evergreen topic is something like “why are websites so big and slow and hard and video games are so amazing and fast?” I’ve thought about it more than I’d like. Anyway, here are some reasons: Web pages are just-in-time delivered, with no installation required. Modern video...
macwright.com
Recently Happy 2023! I wrote my “2022 in review” in my paper journal and will write about some retrospectives...
over a year ago
29
over a year ago
Happy 2023! I wrote my “2022 in review” in my paper journal and will write about some retrospectives on how the business and such have gone, but for now, let’s keep this traditional, a good old-fashioned Recently. Reading This month’s theme, looking back on it, was feminism, and...
macwright.com
2025 Predictions I was just enjoying Simon Willison’s predictions and, heck, why not. 1: The web becomes adversarial...
3 weeks ago
29
3 weeks ago
I was just enjoying Simon Willison’s predictions and, heck, why not. 1: The web becomes adversarial to AI The history of search engines is sort of an arms race between websites and search engines. Back in the early 2000s, juicing your ranking on search engines was pretty easy -...
macwright.com
You can finally use :has() in most places by The hot new thing in CSS is :has() and Firefox finally supports it, starting today - so the...
a year ago
29
a year ago
The hot new thing in CSS is :has() and Firefox finally supports it, starting today - so the compatibility table is pretty decent (89% at this writing). I already used has() in a previous post - that Strava CSS hack, but I’m finding it useful in so many places. For example, in Val...
macwright.com
Val.town Last week I joined val.town as Steve Krouse’s cofounder. Val.town is a system for programming in the...
over a year ago
28
over a year ago
Last week I joined val.town as Steve Krouse’s cofounder. Val.town is a system for programming in the small, for writing short programs in TypeScript that can link together into something larger. It’s for writing that scheduled web scraper or basic API that you wanted to make but...
macwright.com
Recently Early this month I arrived at work to see a Concorde parked in the Brooklyn Navy Yard. It’s been fun...
a year ago
27
a year ago
Early this month I arrived at work to see a Concorde parked in the Brooklyn Navy Yard. It’s been fun to identify the ships docked there, but an airplane was new, especially such a rare one. I guess a lot of airplane knowledge from my childhood has stayed with me, and being...
macwright.com
Recently October was another pleasantly busy month in Brooklyn. Really took advantage of the breadth of New...
a year ago
27
a year ago
October was another pleasantly busy month in Brooklyn. Really took advantage of the breadth of New York culture: I saw an opera at the Metropolitan Opera House, and then went to see prog-metal band Polyphia play guitar solos as fast as possible. At the latter, there were multiple...
macwright.com
Luxury of simplicity by An evergreen blog topic is “writing my own blogging engine because the ones out there are too...
a year ago
27
a year ago
An evergreen blog topic is “writing my own blogging engine because the ones out there are too complicated.” With the risk of stating the obvious: Writing a blog engine, with one customer, yourself, is the most luxuriously simple web application possible. Complexity lies...
macwright.com
On Web Components God, it’s another post about Web Components and stuff, who am I to write this, who are you to read...
a year ago
27
a year ago
God, it’s another post about Web Components and stuff, who am I to write this, who are you to read it Carlana Johnson’s “Alternate Futures for Web Components” had me nodding all the way. There’s just this assumption that now that React is potentially on its way out (after a...
macwright.com
Using Just I’ve been using just for a lot of my projects. It helps a bunch with the context-switching: I can...
11 months ago
27
11 months ago
I’ve been using just for a lot of my projects. It helps a bunch with the context-switching: I can open most project directories and run just dev, and it’ll boot up the server that I need. For example, the blog’s justfile has: dev: bundle exec jekyll serve --watch --live...
macwright.com
Headlamps are better flashlights A brief and silly life-hack: headlamps are better flashlights. Most of the time when you are using a...
a year ago
26
a year ago
A brief and silly life-hack: headlamps are better flashlights. Most of the time when you are using a flashlight, you need to use your hands too. Headlamps solve that problem. They’re bright enough for most purposes and are usually smaller than flashlights too. There are very few...
macwright.com
Running motivation hacks Things that have worked to get me back on a running regimen and might work for you: Try to run all...
11 months ago
26
11 months ago
Things that have worked to get me back on a running regimen and might work for you: Try to run all the streets in my neighborhood. I use CityStrides, there are many similar apps. Run the same exact route, every time, at any speed: focus on consistency-only. Repetition...
macwright.com
Replay.web is cool I’ve been trying to preserve as much of Placemark now that it’s open-source. This has been a mixed...
a year ago
25
a year ago
I’ve been trying to preserve as much of Placemark now that it’s open-source. This has been a mixed experience: some products were really easy to move away from, like Northwest and Earth Class Mail. Webflow was harder to quit. But replay.web came to the rescue, thanks to Henry...
macwright.com
On Placemark Yesterday, I announced that I was joining Val.town, but that Placemark lived. And I haven’t really...
over a year ago
25
over a year ago
Yesterday, I announced that I was joining Val.town, but that Placemark lived. And I haven’t really given an update on Placemark, the product and business, in a while. Writing about an operating business is a different thing that writing feature announcements or essays about...
macwright.com
Recently What to say about this month - well, I’m a few days late to the Recently, because I’ve been pretty...
a year ago
25
a year ago
What to say about this month - well, I’m a few days late to the Recently, because I’ve been pretty busy! Things are good. Building products is fun but also a lot of work. Pretty excited about what I’m working on. Ready for winter to end. Reading I enjoyed reading Ross Barkan’s...
macwright.com
My favorite books of 2022 This year I read 22 books, which is about the average for the last few years. The ratio of fiction...
over a year ago
23
over a year ago
This year I read 22 books, which is about the average for the last few years. The ratio of fiction to non-fiction was skewed toward non-fiction. I think overall I read fewer amazing books than last year, when I finished 20, but also fewer duds - though there certainly were some...
macwright.com
Recently Summer screeched to a halt a few days ago and I’m still reeling from it. The dehumidifiers turned...
over a year ago
23
over a year ago
Summer screeched to a halt a few days ago and I’m still reeling from it. The dehumidifiers turned off, the humidifiers on. The A/C off, the heat on. I’m still, more than a year after leaving the west coast, grateful for the presence of seasons to keep me aware of time...
macwright.com
Incentives My friend Forest has been making some good thoughts about open source and incentives....
11 months ago
23
11 months ago
My friend Forest has been making some good thoughts about open source and incentives. Coincidentally, this month saw a new wave of open source spam because of the tea.xyz project, which encouraged people to try and claim ‘ownership’ of existing open source projects, to get crypto...
macwright.com
Playing with ActivityPub ActivityPub, WebFinger, and Mastodon are getting some attention because of chaos at Twitter. It’s...
over a year ago
22
over a year ago
ActivityPub, WebFinger, and Mastodon are getting some attention because of chaos at Twitter. It’s anyone’s guess how this all shakes out. As an active user of Twitter, it’ll be sad if it goes away. But in the meantime, let’s have some fun with ActivityPub. ActivityPub Under the...
macwright.com
Focus For fun, I wrote a raytracer in Zig yesterday. It’s a port of a project I did in 2013, in...
over a year ago
22
over a year ago
For fun, I wrote a raytracer in Zig yesterday. It’s a port of a project I did in 2013, in JavaScript. It’s the first time in a while I’ve made a project just for kicks. If you look at the number of GitHub repositories I’ve committed to since 2013, the number is decreasing. Same...
macwright.com
The module pattern really isn't needed anymore by I wrote about this pattern years ago, and wrote an update, and then Classes became broadly available...
a year ago
21
a year ago
I wrote about this pattern years ago, and wrote an update, and then Classes became broadly available in JavaScript. I was kind of skeptical of class syntax when it came out, but now there really isn’t any reason to use any other kind of “class” style than the ES6 syntax. The...
macwright.com
Recently Reading I don’t think you should focus on the failure of others, or even the success of others. What...
10 months ago
21
10 months ago
Reading I don’t think you should focus on the failure of others, or even the success of others. What you do need to do—and what is surprisingly hard—is to define success for your own part of the world, and work towards that. Non-monetary success, because again, money lags. I’ve...
macwright.com
Roll I developed an old roll of film and the photos are pretty decent! My Olympus XA-2 is my default...
a year ago
21
a year ago
I developed an old roll of film and the photos are pretty decent! My Olympus XA-2 is my default walking-around camera. I love it, but its age is showing and I’m envious of the crisp photos that people get out of later-era SLR film cameras. Thinking about getting a lightweight...
macwright.com
Web technology optimism hour It’s too easy lately to get into a very pessimistic mood about technology. Between the developer...
over a year ago
20
over a year ago
It’s too easy lately to get into a very pessimistic mood about technology. Between the developer energy wasted on crypto, which has produced negative real-world value, the wider downturn in tech stocks, and the often-antagonistic interactions between developers on Twitter and...
macwright.com
Recently November was another packed month of travel, work, and making the most of New York before the snow...
over a year ago
19
over a year ago
November was another packed month of travel, work, and making the most of New York before the snow takes over. Reading I finally finished Barbarian Days. I think it took over a month to get through it - kept losing momentum by taking a few days off from reading during a trip. It...
macwright.com
Recently Busy month! In January, I wrote about the first four Val Town runtimes, and built a lot of features...
11 months ago
17
11 months ago
Busy month! In January, I wrote about the first four Val Town runtimes, and built a lot of features in Val Town. I also hacked around enough to make Placemark Play available again, the “free-as-in-beer” Placemark UI. It still has some warts, but it’s there. Want to improve...
macwright.com
Work hard and take everything really seriously Every few months on Twitter, there’s some dustup about work-life balance and whether it’s a good or...
a year ago
17
a year ago
Every few months on Twitter, there’s some dustup about work-life balance and whether it’s a good or bad idea to work hard when you’re young. Like most of these recurring debates, it has generated two opposite archetypes: The anti-capitalist tells the young worker not to trust HR...
macwright.com
Recently Well, I missed a Recently post on January 1st, so scratch any other resolutions, I’ll just live my...
a year ago
17
a year ago
Well, I missed a Recently post on January 1st, so scratch any other resolutions, I’ll just live my life. Reading In loving memory of the square checkbox is the kind of UX rant I’m there for. Interfaces that have different behaviors should look different, and familiar styles are...
macwright.com
codemirror-continue by Wrote and released codemirror-continue today. When you’re writing a block comment in TypeScript and...
a year ago
16
a year ago
Wrote and released codemirror-continue today. When you’re writing a block comment in TypeScript and you hit “Enter”, this intelligently adds a * on the next line. Most likely, your good editor (Neovim, VS Code) already has this behavior and you miss it in CodeMirror. So I wrote...
macwright.com
Recently We saw this Monarch butterfly caterpillar at the pretty unusual Naval Cemetery Landscape. The...
a year ago
16
a year ago
We saw this Monarch butterfly caterpillar at the pretty unusual Naval Cemetery Landscape. The landscape is just native pollinators and native plants growing wild, with a wood platform above the field so you can walk around and see the bugs and plants. It’s also built on a...
macwright.com
Masked email is a killer feature for Fastmail I last sang the praises of Fastmail in 2018, writing about how it’s pretty easy to avoid Google now...
a year ago
16
a year ago
I last sang the praises of Fastmail in 2018, writing about how it’s pretty easy to avoid Google now that Google’s products are relatively middling. I’ve been using Fastmail exclusively since then and have only good things to say about it. The user interface is rock-solid and...
macwright.com
How I write and publish the microblog by () This microblog, by the way… I felt like real blog posts on macwright.com were becoming too...
a year ago
15
a year ago
This microblog, by the way… I felt like real blog posts on macwright.com were becoming too “official” feeling to post little notes-to-self and tech tricks and whatnot. The setup is intentionally pretty boring. I have been using Obsidian for notetaking, and I store micro blog...
macwright.com
Don't use marked With all love to the maintainers, who are good people and are to some extent bound by their...
a year ago
15
a year ago
With all love to the maintainers, who are good people and are to some extent bound by their obligation to maintain compatibility, I just have to put it out there: if you have a new JavaScript/TypeScript project and you need to parse or render Markdown, why are you using...
macwright.com
Increasingly miffed about the state of React releases by I am, relative to many, a sort of React apologist. Even though I’ve written at length about how it’s...
a year ago
15
a year ago
I am, relative to many, a sort of React apologist. Even though I’ve written at length about how it’s not good for every problem, I think React is a good solution to many problems. I think the React team has good intentions. Even though React is not a solution to everything, it a...
macwright.com
Chrome Devtools protip: Emulate a focused page This is a Devtools feature that you will only need once in a while, but it is a life-saver. Some...
a year ago
15
a year ago
This is a Devtools feature that you will only need once in a while, but it is a life-saver. Some frontend libraries, like CodeMirror, have UIs like autocompletion, tools, or popovers, that are triggered by typing text or hovering your mouse cursor, and disappear when that...
macwright.com
Recently This will be three Recently monthly blog posts in a row, without a regular post in the middle. I’ll...
a year ago
14
a year ago
This will be three Recently monthly blog posts in a row, without a regular post in the middle. I’ll write a standalone post again, soon enough. It’s been another busy year and I’m as aware as ever of the challenge of keeping all of my habits and outputs going. Some, like...
macwright.com
awesome-codemirror by () I started another “awesome” GitHub repo (a list of resources), for CodeMirror, called...
a year ago
13
a year ago
I started another “awesome” GitHub repo (a list of resources), for CodeMirror, called awesome-codemirror. CodeMirror has a community page but I wanted a freewheeling easy-to-contribute-to alternative. Who knows if it’ll grow to the size of awesome-geojson - 2.1k stars as of this...
macwright.com
Placemark is now open source Placemark is now open source! In short: MIT license TypeScript codebase Contributions...
a year ago
13
a year ago
Placemark is now open source! In short: MIT license TypeScript codebase Contributions welcome Placemark is the map editor software-as-a-service that I built for several years. It’s a website where you can import, create, edit, export, publish, and visualize geospatial data. I’m...
macwright.com
A shortcut for bash using tt by () I heavily use the ~/tmp directory of my computer and have the habit of moving to it, creating a new...
a year ago
13
a year ago
I heavily use the ~/tmp directory of my computer and have the habit of moving to it, creating a new temporary directory, moving into that, and creating a short-lived project. Finally I automated that and have been actually using the automation: I wrote this tiny zsh function...
macwright.com
Thoughts on storing stuff in databases by () User preferences should be columns in the users table. Don’t get clever with a json column or...
a year ago
13
a year ago
User preferences should be columns in the users table. Don’t get clever with a json column or hstore. When you introduce new preferences, the power of types and default values is worth the headache of managing columns. Emails should probably be citext, case-insensitive text. But...
macwright.com
Open charter companies and relicensing A few weeks ago, HashiCorp switched its default license for future product releases to the BSL...
a year ago
13
a year ago
A few weeks ago, HashiCorp switched its default license for future product releases to the BSL license. The BSL license was created by the people at MariaDB in 2017 to give companies a way to release software as open source but prohibit their competitors from re-hosting that...
macwright.com
Hiding Peloton and Zwift workouts on Strava by () I love Strava, and a lot of my friends do too. And some of them do most of their workouts with...
a year ago
13
a year ago
I love Strava, and a lot of my friends do too. And some of them do most of their workouts with Peloton, Swift, and other “integrations.” It’s great for them, but the activities just look like ads for Peloton and don’t have any of the things that I like about Strava’s...
macwright.com
SaaS exits by I’ve been moving things for Placemark’s shutdown as a company and noting some of the exit...
a year ago
13
a year ago
I’ve been moving things for Placemark’s shutdown as a company and noting some of the exit experiences: Loom is surprisingly hard to exit from. There’s no bulk export option, no way to export metadata. Webflow doesn’t support exporting sites with CMS collections (blogs, docs,...
macwright.com
How to set headers on objects in R2 using rclone How do you set a Cache-Control header on an object in R2 when you’re using rclone to upload? I...
a year ago
13
a year ago
How do you set a Cache-Control header on an object in R2 when you’re using rclone to upload? I burned a lot of time figuring this out. There are a lot of options that look like they’ll do it, but here it is: --header-upload='Cache-Control:...
macwright.com
Homeownership Most people I know fit into one of two camps: they either want to buy a house and they can’t, or...
a year ago
12
a year ago
Most people I know fit into one of two camps: they either want to buy a house and they can’t, or they’ve bought a house. The desire to own ones own home is almost universal in the people I know in the US. It’s even stronger for folks who live outside of major cities. And people...
macwright.com
patch-package can bail you out of some bad situations by Let’s say you’re running some web application and suddenly you hit a bug in one of your...
a year ago
12
a year ago
Let’s say you’re running some web application and suddenly you hit a bug in one of your dependencies. It’s all deployed, lots of people are seeing the downtime, but you can’t just push an update because the bug is in something you’ve installed from npm. Remember patch-package....
macwright.com
What editors do things use? Apps that use CodeMirror Obsidian Repl.it Val Town …more on the CodeMirror site Apps that use...
a year ago
11
a year ago
Apps that use CodeMirror Obsidian Repl.it Val Town …more on the CodeMirror site Apps that use Monaco StackBlitz CodeSandbox Deno Deploy Cloudflare Workers
macwright.com
Get the text of an uploaded file in Remix by () This took way too long to figure out. The File polyfill in Remix has the fresh new .stream() and...
a year ago
11
a year ago
This took way too long to figure out. The File polyfill in Remix has the fresh new .stream() and .arrayBuffer() methods, which aren’t mentioned on MDN. So, assuming you’re in an action and the argument is args, you can get the body like: const body = await...
macwright.com
Year in Review The last time I wrote a “year in review” post was 2017, and before that in 2012. Reading my old...
a year ago
11
a year ago
The last time I wrote a “year in review” post was 2017, and before that in 2012. Reading my old writing is nostalgic and horrific. By the numbers, 2023 was pretty normal: I read around 20 books, ran around 400 miles. It’s funny how the statistics even out to the same numbers...
macwright.com
Make a ViewPlugin configurable in CodeMirror by () ViewPlugin.fromClass only allows the class constructor to take a single argument with the CodeMirror...
a year ago
10
a year ago
ViewPlugin.fromClass only allows the class constructor to take a single argument with the CodeMirror view. You use a Facet. Great example in JupyterLab. Like everything in CodeMirror, this lets you be super flexible with how configuration works - it is designed with multiple...
macwright.com
Recently I saw Tim Hecker at Pioneer Works, and was astounded by the opener, Mizu. Bought the album as soon...
a year ago
10
a year ago
I saw Tim Hecker at Pioneer Works, and was astounded by the opener, Mizu. Bought the album as soon as I got home. It is, crudely explained, like if Zoë Keating dialed up the synths and pedals and rhythm, and it was also a remarkable live show. Distant Intervals by MIZU Reading I...