Understanding CSS Object Model (CSSOM), browser security and practical alternatives for dynamic styling
Constructive conversation and venting are mostly distinguished by asking ourselves
A deep dive into how browsers parse and manipulate CSS, its impact on web performance, and why it matters
In July, I described a way to make pinning more ergonomic by integrating it more fully into the language. Last week, I develoepd that idea further with the notion of UnpinCell: a wrapper type that lets a user take an &pin mut UnpinCell and produce an &mut T, similar to how other cells let a user take a shared reference to the cell and produce a...
In July, I described a way to make pinning more ergonomic by integrating it more fully into the language. Last week, I develoepd that idea further with the notion of UnpinCell: a wrapper type that lets a user take an &pin mut UnpinCell and produce an &mut T, similar to how other cells let a user take a shared reference to the cell and produce a...
Understanding CSS Object Model (CSSOM), browser security and practical alternatives for dynamic styling
Apple will be announcing new Macs next week, and that could mean it’s finally time for them to update their Magic accessories (Mouse, Keyboard, and Trackpad) in some manner. Odds are, they’ll just get revved with USB-C instead of Lightning, but it’s always possible
The concept of an object, record, structure, or product type occurs in almost every programming language. Being able to declare a type of value that groups a number of other values together is a fundamentally useful thing. As similar as the various record-ish constructs are in their basic functionality, the way such values are actually looked at...
A few weeks ago, I tried the Nebula streaming service. I even wrote a blog about it. At the end of writing that post I noted that my thoughts on Nebula were complicated. Once my week long Guest Pass was...
Care Doesn’t Scale I met a social worker whose job was to look after four orphaned children. She’d alternate with her coworkers spending 24 hours at a time living with the kids, effectively acting as their parent. The children, unsurprisingly, had a lot of trauma and so her job was certainly not an easy one, but she found it deeply rewarding and...
this is validating and also what my therapist would call “negative reinforcement”—thank you @eric
The Verge is reporting on Joker: Folie à Deux, one of the most derided movies of 2024, coming to digital storefronts less than a month in theaters. The film released in theaters on October 4 this year, and it will be available to buy online October 28, so 24 days
Introducing the analysis tool in Claude.ai The Claude.ai consumer-facing interface just shipped a major new feature, which they're calling "the analysis tool". It's their answer to OpenAI's ChatGPT Code Interpreter mode: Claude can now chose to solve models by writing some code, executing that code and then continuing the conversation using the...
I'm running a fundraiser for the Election Protection Hotline, 1-866-OUR-VOTE. No matter your position on the 2024 US election, I'm guessing you want the votes counted fairly. So I'm trying to raise USD $25,000 for …
Absolutely LOVE to see the new `fediverse:creator` tags showing up on shared URLs, providing automated attribution controlled by the source!https://blog.joinmastodon.org/2024/07/highlighting-journalism-on-mastodon/Incredible feature.
they said it better: https://floss.social/@be/113363249093358608
Firefox's best-kept secret feature. When you bookmark a page, firefox opens an editor with the following options: Name Location Tags But there's actually a secret fourth field... !--more-- The Other "Edit Bookmark" menu there are two ways of editing a bookmark: going to the bookmarked page and clicking the star icon (this is the same menu that...
This is a test. For the next sixty seconds. This station will conduct a test of the emergency broadcast system. Had this been an actual emergency you would have been instructed to tune to a local station for news and other info.
American Airlines is piloting a new system aimed at curbing the phenomenon known as “gate lice,” an industry term used to describe passengers who crowd the boarding area ahead of their assigned group. Today I learned the term “gate lice” exists. What a disgusting term to be adopted by an industry. A 2005 forum post claims to be the inventor of...
`alt="No alt text provided for this image"`all accessibility audits passed ✅ good job everyone 🫠😬😭
(Featured image by Camille Couvez on Unsplash) When a measure becomes a target, it ceases to be a good measure But AndyG, doesn’t this just encourage a race to the bottom? Aren’t we sacrificing quality for speed?
After creating a bunch of smaller Nova Extensions quite quickly I wondered how far I could push things, just as a personal challenge. I had the idea of implementing a Macro text recording and playback system. There was something similar in TextMate editor, and whilst the Nova API doesn’t currently allow as sophisticated a system I thought it was...
During September I donated to Enigma Stationery's campaign and was entered into a raffle to win the Mark One Enigma Edition and...I actually won! I've never owned a fancy pen[1], especially not one this pretty. I don't even write with pen and paper all that much. None of my notebooks have good paper, or quality covers, or fold out flat but I'm...
Grandma’s secret cake recipe, passed down generation to generation, could be literally passed down: a flat slab of beige ooze kept in a battered pan, DNA-spliced and perfected by guided evolution by her own deft and ancient hands, a roiling wet mass of engineered microbes that slowly scabs over with delicious sponge cake, a delectable crust to be...
The story of how I discovered the world's best pharmacist by being hard to get along with.
What a sad situation. What started with the open web in the 90s is now owned by user-hating billionaires, who, looking for new worlds to conquer have adopted a fascist buffoon as their frontman. It was never supposed to be owned by anyone.
Using uv to develop Python command-line applications I've been increasingly using uv to try out new software (via uvx) and experiment with new ideas, but I hadn't quite figured out the right way to use it for developing my own projects. It turns out I was missing a few things - in particular the fact that there's no need to use uv pip at all when...
Julia Evans: TIL I've always loved how Julia Evans emphasizes the joy of learning and how you should celebrate every new thing you learn and never be ashamed to admit that you haven't figured something out yet. That attitude was part of my inspiration when I started writing TILs a few years ago. Julia just started publishing TILs too, and I'm...
I woke up around 3:00 this morning to some sort of alarm outside. It did not sound like a car alarm; it sounded like a sawtooth wave. The pattern was like a Morse code O. Not SOS, or I would have gotten up to see if anyone needed help. Just O. A sawtooth wave takes […] The post Sawtooth waves first appeared on John D. Cook.
A while back I had to deal with a bit-packed format that contained a list of integer values encoded in one of a pre-defined sets of bit widths, where both the allowed bit widths and the signed-ness were denoted in a header elsewhere. These values never got particularly long (the largest bit width I needed […]
I’ve seen writing [on Threads] that should be permanent. Because it’s written and only published [on Threads], it’ll have scrolled by in a few minutes. I want a medium that flows back and forth between of-the-moment and an ongoing story, written over a period of months, but readable in sequence in a few minutes.
Web and software developers are more empowered today than ever. But there’s a growing problem: the increasing reliance on frameworks, libraries, and pre-packaged solutions. Frameworks like Laravel, React, Angular, and Django have become household names, not just for their ability to streamline development but also for their role in reshaping how...
Reflections on CSS masonry's early origins and the slow evolution of the web.
G’day! Exploration towards building Ica (a GUI code editor) has continued in October. Having figured out a rendering strategy at the end of last month, the next step has been to design a framework/engine that sits atop the rendering layer and deals in terms of element trees, event listeners, and effect observers. At this level we don’t have to...
A developer's guide to tech interviews - from someone who sits on both sides of the table
Go to data.gov, find an interesting recent dataset, and download it. Install sklearn with bash tool write a .py file to split the data into train and test and make a classifier for it. (you may need to inspect the data and/or iterate if this goes poorly at first, but don't get discouraged!). Come up with some way to visualize the results of your...
we must *measure* web performance and not rely on how things *feel*—what are we even doing, y’allthis feels like the silliest most mundane thing to say
every time someone says that a web site “feels fast” you must append “on my device” to the statement and a dollar must be placed in the works-on-my-machine jar
Two weeks ago I tooted: Lord help me I'm back on Obsidian Tasks again I came up with a nice solution for what I wanted. Show the first todo item in each of my project files using Obsidian Tasks query language: path includes projectsgroup by function task.file.path.split('/')[1].replace('.md', '')limit groups 1not done I had to add some rules to...
Looks like it’s React Native’s StyleSheet: https://reactnative.dev/docs/stylesheet(thank you @konnorrogers @jakelazaroff 🙌🏻)
Genuine question: does anyone know what CSS tool might be generating markup like this? A curious mixture of generated classes and inline styles.
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...
Running prompts against images and PDFs with Google Gemini New TIL. I've been experimenting with the Google Gemini APIs for running prompts against images and PDFs (in preparation for finally adding multi-modal support to LLM) - here are my notes on how to send images or PDF files to their API using curl and the base64 -i macOS command. I figured...
I've got a few pages here that are primarily built for my own use. One of them, my bots page, is a list of all the dumbsuper useful bots I've built for Mastodon (and Bluesky). The idea on this page is to show the latest post from each bot. The bots page makes use of two different shortcodes written in Liquid to do this.The first uses the RSS feed...
The reviews for the 2024 iPad mini with A17 Pro are coming out, and Federico’s is, as usual, very positive and optimistic, but IMHO both him and Jason Snell stray a bit too far into the realm of fantasy and try to draw a dotted line to a future foldable iPhone, which I think is a bit of a stretch. A foldable (any foldable) would not replace the...
Previously, we explored how abstract explanations, paired with intent, become specific. And in our case, the intent is almost always to improve our software. But what does this actually mean? To begin, let's consider this metaphor: Things are looking up This is a statement of optimism: things are improving, and we expect this trend to...
In The Middle Passage, James Hollis writes: “Grief, for example, is the occasion for acknowledging the value of that which has been experienced.”
“Mid-way in life’s journey / I found myself in a dark wood, / having lost the way.”
Using Rust in non-Rust servers to improve performance Deep dive into different strategies for optimizing part of a web server application - in this case written in Node.js, but the same strategies should work for Python as well - by integrating with Rust in different ways. The example app renders QR codes, initially using the pure JavaScript...
fascinating that https://www.solidjs.com/ is *entirely* client-side rendered
developers say “the complexity of this task is out of scope” when they really mean “I don’t wanna”
A trip from the beginning to the present of the various online communities I've taken part in over 30 years.
You’d think design systems are a utopia of planning, modular code and governance but I’m sorry to tell you that one of the many things that will take up a lot of your time in a more mature system is Snowflakes: A ’snowflake’ in a Design System is a one-off component that could be needed for a specific project, but there is an understanding that...
Russell wrote a great comment on my last post (thanks!): What benefits do these things offer when a general purpose computer can do so many things nowadays? Is there a USB keyboard that you can connect to a laptop or phone to do these things? I presume that all recent phones have the compute power to do all the synthesis you need if you have the...
The best part of playing Wordle is when you enter the first word waiting to see which letters turn up green. The biggest disappointment is when there are no green letters. A close second is when there’s one, and it’s just a vowel. Then you enter a second word revealing no more green letters. At […]