Python’s pprint.saferepr() can be a useful way of comparing string representations of dictionaries and other data types.| ChipLog — Christian Hammond
Using conditional CSS Variables to make it easier to style your site for light mode, dark mode, and more.| ChipLog — Christian Hammond
Using conditional CSS Variables to make it easier to style your site for light mode, dark mode, and more.| ChipLog — Christian Hammond
1 post published by chipx86 during July 2025| ChipLog — Christian Hammond
More than you probably ever wanted to know about Python function signatures and typing shenanigans. And it’s just the start.| ChipLog — Christian Hammond
We solved spell checking in CodeMirror! How we did it and how you can use it.| ChipLog — Christian Hammond
We're bombarded with so much content, so much noise, distilled down to black-and-white, competing for our attention. We react, overestimating how much we know and underestimating all the complexity. We need to read more, but it's not that simple.| ChipLog — Christian Hammond
This has been one hell of a bumpy month, and I have a lot I could scream talk about, but for the moment, let’s talk data. The US Government has spoiled us in recent years with the amount of public data and information available. NIH studies, wastewater virus shedding data, COVID-19 impacts, climate trends and […]| ChipLog — Christian Hammond
RBTools, our command line tool suite for Review Board, is getting all-new infrastructure for applying patches. This will be available in rbt patch, rbt land, and any custom code that needs to deal with patches. A customer reported that multi-commit review requests won’t apply on Mercurial. The problem, it turns out, is that Mercurial won’t […]| ChipLog — Christian Hammond
I got onto ICQ very early in its life, around 1996 or 1997, with a 6-digit UIN (298387 — sadly stolen years later). I loved it, it’s how I stayed connected with family and friends, how I met new people, how I connected on the Internet at a time when the Internet was trying to […]| ChipLog — Christian Hammond
We’re often developing multiple Node packages at the same time, symlinking their trees around in order to test them in other projects prior to release. And sometimes we hit some pretty confusing behavior. Crazy caching issues, confounding crashes, and all manner of chaos. All resulting from one cause: Duplicate modules appearing in our Rollup.js-bundled JavaScript. […]| ChipLog — Christian Hammond
I was recently working on converting some code away from Backbone.js and toward Spina, our TypeScript Backbone "successor" used in Review Board, and needed to override a type from a parent class. (I'll talk about why we still choose to use Backbone-based code another time.) We basically had this situation: class BaseClass { summary: string…| ChipLog — Christian Hammond
Development, data, design, debugging| chipx86.blog
2 posts published by chipx86 during June 2025| chipx86.blog
Python dataclasses are a really nice feature for constructing classes that primarily hold or work with data. They can be a good alternative to using dictionaries, since they allow you to add methods, dynamic properties, and subclasses. They can also be a good alternative to building your own class by hand, since they don't need…| ChipLog — Christian Hammond