Back in 2023, I [belatedly jumped on the bandwagon](https://meyerweb.com/eric/thoughts/2023/02/08/css-wish-list-2023/) of people posting their CSS wish lists for the coming year.Ā This year Iām doing all that again, less belatedly! (I didnāt do it last year because I couldnāt even.Ā Get it?)
I started this post by looking at what I wished for a couple of years ago, and a small handful of my wishes came true:
* [Subgrid](https://drafts.csswg.org/css-grid/#subgrids) support
* [Nested selectors](https://drafts.csswg.org/css-nesting-1/)
* Color shading and blending (thanks to [`color-mix()`](https://drafts.csswg.org/css-color-5/#color-mix))
* More and better `:has()` use
Note that by ācame trueā, I mean āreached at least Baseline Newly Availableā, not āreached Baseline Universalā; that latter status comes over time.Ā And more `:has()` isnāt really a feature you can track, but I do see more people sharing cool `:has()` tricks and techniques these days, so Iāll take that as a positive signal.
A couple more of my 2023 wishes are on the cusp of coming true:
* Element transitions, a.k.a.Ā [view transitions](https://drafts.csswg.org/css-view-transitions-1/)
* [Anchor positioning](https://drafts.csswg.org/css-anchor-position-1/)
Those are both in the process of rolling out, and look set to reach Baseline Newly Available before the year is done.Ā I hope.
That leaves the other half of the 2023 list, none of which has seen much movement.Ā So those will be the basis of this yearās list, with some new additions.
### Hanging punctuation
WebKit has been the sole implementor of this [very nice typographic touch](https://drafts.csswg.org/css-text/#hanging-punctuation-property) for almost a decade now.Ā The lack of any support by Blink and Gecko is now starting to verge on feeling faintly ridiculous.
### Margin and line box trimming
Trim off the leading block margin on the first child in an element, or the trailing block margin of the last child, so they donāt stick out of the element and mess with margin collapsing.Ā Same thing with block margins on the first and last line boxes in an element.Ā And then, be able to do similar things with the inline margins of elements and line boxes!Ā All these things could be ours.
### Stroked text
We can already fake text stroking with `text-shadow` and `paint-order`, at least in SVG.Ā Iād love to have a `text-stroke` property that can be applied to HTML, SVG, and MathML text.Ā And XML text and any text that CSS is able to style.Ā It should be at least as powerful as SVG stroking, if not more so.
### Expanded `attr()` support
This has seen some movement specification-wise, but last I checked, no implementation promises or immediate plans.Ā Hereās what I want to be able to do:
td {width: attr(data-size em, 1px));
<td data-size="5">ā¦</td>
The [latest Values and Units module describes this](https://drafts.csswg.org/css-values-5/#attr-notation), so fingers crossed it starts to gain some momentum.
### Exclusions
Yes, I still want [CSS Exclusions](https://drafts.csswg.org/css-exclusions/), a _lot_.Ā They would make some layout hacks a lot less hacky, and open the door for really cool new hacks, by letting you just mark an element as creating a flow exclusions for the content of other elements.Ā Position an image across two columns of text and set it to exclude, and the text of those columns will flow around or past it like it was a float.Ā This remains one of the big missing pieces of CSS layout, in my view.Ā Linked flow regions is another.
### Masonry layout
This one is a bit stalled because the basic approach still hasnāt been decided.Ā [Is it part of CSS Grid](https://webkit.org/blog/16026/css-masonry-syntax/) or [its own display type](https://developer.chrome.com/blog/masonry-syntax)?Ā Itās a tough call.Ā There are persuasive arguments for both.Ā I myself keep flip-flopping on which one I prefer.
Designers want this.Ā Implementors want this.Ā In some ways, thatās what makes it so difficult to pick the final syntax and approach: because everyone wants this, everyone wants to make the exactly perfect right choices for now, for the future, and for ease of teaching new developers.Ā Thatās very, _very_ hard.
### Grid track and gap styles
Yeah, I still want a Grid equivalent of `column-rule`, except more full-featured and powerful.Ā Ideally this would be combined with a way to select individual grid tracks, something like:
.gallery {display: grid;}
.gallery:col-track(4) {gap-rule: 2px solid red;}
ā¦in order to just put a gap rule on that particular column.Ā I say that would be ideal because then I could push for a way to set the `gap` value for individual tracks, something like:
.gallery {gap: 1em 2em;}
.gallery:row-track(2) {gap: 2em 0.5em;}
ā¦to change the leading and trailing gaps on just that row.
### Custom media queries
This was listed as āMedia query variablesā in 2023.Ā With these, you could define a breakpoint set like so:
@custom-media --sm (inline-size <= 25rem);
@custom-media --md (25rem < inline-size <= 50rem);
@custom-media --lg (50rem < inline-size);
body {margin-inline: auto;}
@media (--sm) {body {inline-size: auto;}}
@media (--md) {body {inline-size: min(90vw, 40em);}
@media (--lg) {body {inline-size: min(90vw, 55em);}
In other words, you can use custom media queries as much as you want throughout your CSS, but change their definitions in just one place.Ā Itās CSS variables, but for media queries!Ā Letās do it.
### Unprefix all the things
Since we decided to abandon vendor prefixing in favor of feature flags, I want to see anything thatās still prefixed get unprefixed, in all browsers.Ā Keep the support for the prefixed versions, sure, I donāt care, just let us write the property and value names without the prefixes, please and thank you.
### Grab bag
I still would like a way to indicate when a shorthand property is meant for logical rather than physical directions, a way to apply a style sheet to a single element, the ability to add or subtract values from a shorthand without having to rewrite the whole thing, and styles that cross resource boudnaries.Ā Theyāre all in [the 2023 post](https://meyerweb.com/eric/thoughts/2023/02/08/css-wish-list-2023/).
Okay, thatās my list.Ā Whatās yours?
* [CSS Wish List 2025](https://meyerweb.com/eric/thoughts/2025/01/08/css-wish-list-2025/) was published on Wednesday, January 8th, 2025.
* It was assigned to the [CSS](https://meyerweb.com/eric/thoughts/category/tech/css/) category.
* There have been [five replies](https://meyerweb.com/eric/thoughts/2025/01/08/css-wish-list-2025/#comments).
* * *
[](https://meyerweb.com/eric/thoughts/wp-content/uploads/dfrl-cover.png)
[Design for Real Life is now available, for free](https://dfrlbook.com), in its entirety, at `[dfrlbook.com](https://dfrlbook.com)`.Ā If you like what you read and want a personal copy, or just to support Sara and me, [print-on-demand and ePub versions are also available](https://dfrlbook.com/page/buy-the-book/) from a number of sources.Ā There are some countries where the book is not yet available, which we hope will be fixed soon.Ā Weāll update the āBuy the bookā page as appropriate.
[The booksite](https://dfrlbook.com) contains the entire content of the book, with no paywalls or premium tiers or whatever gimmicks late-stage capitalism/early-stage infoconomy is forcing online publishers to try this month.Ā So if you want to read it for nothing more than some of your time, or share it with people who you think might benefit from the free resource, go for it!Ā Spread the word far and wide!Ā Please and thank you.
To those who already own a copy of the book, the only real differences between that text and the one we have now is: we removed all the A Book Apart (ABA) branding and contact information, and made a couple of URL updates.Ā We also had to switch to fonts for which we had licensing.Ā Thus, if you have the ABA version, this is essentially the same thing.Ā You do **not** need to buy this new printing.Ā You certainly _can_ buy it, if you want, but the content wonāt be different in any meaningful way.
A project like this does not happen individually, and some thanks are in order.
First, so very many thanks to my co-author, [Sara Wachter-Boettcher](https://sarawb.com).Ā Not just for writing it with me almost a decade ago, but also for her tireless work on the tedious minutia of transferring ownership of publisher accounts, obtaining a new ISBN, organizing the work that needed to be done, et cetera, et cetera.Ā Basically, project managed the whole thing.Ā It would have taken forever to get done if Iād been in charge, so the credit for it being live goes entirely to her.
Second, many thanks to [Jeff Eaton](https://eaton.fyi/), who wrote a converter called [Dancing Queen](https://github.com/eaton/dq) that takes in an ABA ePub file and spits out Markdown files containing all the text and images of the figures.Ā Then he gave it to us all for free.
Third, we were able to get the book up for free thanks to the generosity of fellow ABA author and union man [Mat Marquis](https://hire.wil.to/), who wrote [some code](https://github.com/Wilto/a-book-departs) to take the output of Dancing Queen and import it into an [11ty](https://11ty.dev/) install.Ā He did free tech support and lent a helping hand to us whenever we ran into snags.Ā He was also an integral part of the process that led to all the ABA authors reclaiming full ownership of their books.Ā Heāll deny every word of it, but dude is a mensch.Ā You should hire him to do cool stuff for you.
Speaking of all the ABA authors, the community we formed to help each other through the reclamation process has been a real blessing.Ā So many tips and tricks and expressions of support and celebrations of progress have flowed through the team over the past few months.Ā None of us had to do any of this alone.Ā Collective action, community support, _works_.
The conversion to ePub was handled by the entirely capable Ron Bilodeau, who leveraged his experience doing that work for ABA to do it for us.Ā Thank you, Ron!
And certainly not least, thank you to everyone at A Book Apart for publishing the book in the first place, for being great partners in its creation, and for releasing the books back to us when it was time to close up shop.Ā Itās hard to imagine it would have existed at all without ABA, so thank you, one and all.
* [Design for Real Life: Online for Free AND On Sale for Money](https://meyerweb.com/eric/thoughts/2024/10/10/design-for-real-life-online-for-free-and-on-sale-for-money/) was published on Thursday, October 10th, 2024.
* It was assigned to the [Books](https://meyerweb.com/eric/thoughts/category/personal/books/), [Design](https://meyerweb.com/eric/thoughts/category/design/), and [Writing](https://meyerweb.com/eric/thoughts/category/personal/writing/) categories.
* There has been [one reply](https://meyerweb.com/eric/thoughts/2024/10/10/design-for-real-life-online-for-free-and-on-sale-for-money/#comments).
* * *
[](https://meyerweb.com/eric/thoughts/wp-content/uploads/bcd-watch-01.png)
One of the things I think we all struggle with is keeping up to date with changes in web development.Ā You might hear about a super cool new CSS feature or JavaScript API, but itās never supported by all the browsers when you hear about it, right?Ā So you think āIāll have to make sure check in on that again laterā and quickly forget about it.Ā Then some time down the road you hear about it again, talked about like itās been best practice for years.
To help address this, [Brian Kardell](https://bkardell.com) and I have built **a service called [BCD Watch](https://bcd-watch.igalia.com)**, with a nicely sleek design by [Stephanie Stimac](https://stephaniestimac.com/).Ā Itās **free for all to use** thanks to the generous support of [Igalia](https://igalia.com) in terms of our time and hosting the service.
What BCD Watch does is, it grabs releases of the [Browser Compatibility Data (BCD) repository](https://github.com/mdn/browser-compat-data) that underpins the support tables on [MDN](https://developer.mozilla.org) and services like [caniuse.com](https://caniuse.com).Ā It then analyzes whatās changed since the previous release.
Every Monday, BCD Watch produces two reports.Ā [The Weekly Changes Report](https://bcd-watch.igalia.com/weekly/) lists all the changes to BCD that happened in the previous weekāÆāāwhatās been added, removed, or renamed in the whole of BCD.Ā It also tells you which of the Big Three browsers newly support (or dropped support for) each listed feature, along with a progress bar showing how close the feature is to attaining Baseline status.
[The Weekly Baselines Report](https://bcd-watch.igalia.com/weekly-completed/) is essentially a filter of the first report: instead of all the changes, it lists only changes to [Baseline](https://web.dev/baseline) status, noting which features are newly Baseline.Ā [Some weeks](https://bcd-watch.igalia.com/weekly-completed/2024-09-09.html), it will have nothing to report. [Other weeks](https://bcd-watch.igalia.com/weekly-completed/2024-06-24.html), it will list everything thatās reached Baselineās āNewly Availableā tier.
Both reports are available as standalone RSS, Atom, and JSON feeds, which are linked at the bottom of each report.Ā So while you _can_ drop in on the site every week to bask in the visual design if you want (and thatās fine!), you can also get a post or two in your feed reader every Monday that will get you up to date on whatās been happening in the world of web development.
If you want to look back at older reports, the home page has a details/summary collapsed list of weekly reports going back to the beginning of 2022, which we generated by downloading all the BCD releases back that far, and running the report script against them.
If you encounter any problems with BCD Watch or have suggestions for improvements, please feel free to open an issue in [the repository](https://github.com/bkardell/bcd-watch), or submit suggested changes via pull request if you like.Ā We do expect the service to evolve over time, perhaps adding a report for things that have hit Baseline Widely Available status (30 months after hitting all three engines) or reports that look at more than just the Big Three engines.Ā Hard to say!Ā Always in motion, the future is.
Whatever we may add, though, weāll keep BCD Watch centered on the idea of keeping you better up to date on web dev changes, once a week, every week.Ā We really hope this is useful and interesting for you!Ā Weāve definitely appreciated having the weekly updates as we built and tested this, and we think a lot of you will, too.
* [Announcing BCD Watch](https://meyerweb.com/eric/thoughts/2024/09/23/announcing-bcd-watch/) was published on Monday, September 23rd, 2024.
* It was assigned to the [Browsers](https://meyerweb.com/eric/thoughts/category/tech/browsers/), [Tools](https://meyerweb.com/eric/thoughts/category/tech/tools/), and [Web](https://meyerweb.com/eric/thoughts/category/tech/web/) categories.
* There have been [six replies](https://meyerweb.com/eric/thoughts/2024/09/23/announcing-bcd-watch/#comments).
* * *
If youāre reading this, odds are youāve at least heard of A Book Apart (ABA), who published Design for Real Life, which I co-wrote with [Sara Wachter-Boettcher](https://sarawb.com) back in 2016.Ā What you may not have heard is that [ABA has closed up shop](https://abookapart.com/pages/about).Ā There wonāt be any more new ABA titles, nor will ABA continue to sell the books in their catalog.
Thatās the bad news.Ā The great news is that ABA has transferred the rights for all of its books to their respective authors! (Not every ex-publisher does this, and not every book contract demands it, so thanks to ABA.) Weāre all figuring out what to do with our books, and everyone will make their own choices.Ā One of the things Sara and I have decided to do is to eventually put the entire text online for free, as a booksite.Ā That isnāt ready yet, but it should be coming somewhere down the road.
[](https://www.sarawb.com/design-for-real-life)
In the meantime, weāve decided to cut the price of print and e-book copies available through Ingram.Ā DfRL was the eighteenth book ABA put out, so weāve decided to make the price of both the print and e-book $18, regardless of whether those dollars are American, Canadian, or Australian.Ā Also ā¬18 and Ā£18.Ā Basically, in all five currencies we can define, the price is 18 of those.
ā¦unless you buy it through Apple Books; then itās 17.99 of every currency, because the system forces us to make it cheaper than the list price and also have the amount end in `.99`.Ā Obversely, if youāre buying a copy (or copies) for a library, the price has to be _more_ than the list price and also end in `.99`, so the library cost is 18.99 currency units.Ā Yeah, I dunno either.
At any rate, compared to its old price, this is a significant price cut, and in some cases (yes, Australia, weāre looking at you) itās a _huge_ discount.Ā Or, at least, it _will_ be at a discount once online shops catch up.Ā The US-based shops seem to be up to date, and Apple Books as well, but some of the āforeignā (non-U.S.) sources are still at their old prices.Ā In those cases, maybe wishlist or bookmark or something and keep an eye out for the drop.Ā We hope it will become global by the end of the week.Ā And hey, as I write this, a couple of places have the ebook version for like 22% less than our listed price.
So!Ā If youāve always thought about buying a copy but never got around to it, nowās a good time to get a great deal.Ā Ditto if youāve never heard of the book but it sounds interesting, or you want it in ABA branding, or really for any other reason you have to [buy a copy now](https://www.sarawb.com/design-for-real-life).
I suppose the real question is, _should_ you buy a copy?Ā Weāll grant that some parts of it are a little dated, for sure.Ā But the concepts and approaches we introduced can be seen in a lot of work done even today.Ā It made significant inroads into government design practices in the UK and elsewhere, for example, and we still hear from people who say it really changed how they think about design and UX.Ā Weāre still very proud of it, and we think anyone who takes the job of serving their users seriously should give it a read.Ā But then, I guess we would, or else weād never have written it in the first place.
And thatās the story so far.Ā Iāll blog again when the freebook is online, and if anything else changes as we go through the process.Ā Got questions?Ā Leave a comment or drop me a line.
* [Design for Real Life News!](https://meyerweb.com/eric/thoughts/2024/07/22/design-for-real-life-news/) was published on Monday, July 22nd, 2024.
* It was assigned to the [Web](https://meyerweb.com/eric/thoughts/category/tech/web/) and [Writing](https://meyerweb.com/eric/thoughts/category/personal/writing/) categories.
* There have been [two replies](https://meyerweb.com/eric/thoughts/2024/07/22/design-for-real-life-news/#comments).
* * *
I woke up this morning about an hour ahead of my alarm, the sky already light, birds calling.Ā After a few minutes, a brief patter of rain swept across the roof and moved on.
I just lay there, not really thinking.Ā Feeling.Ā Remembering.
Almost sixteen years to the minute before I awoke, my second daughter was born.Ā Almost ten years to the same minute before, sheād turned six years old, already semi-unconscious, and died not quite twelve hours later.
So she wonāt be taking her first solo car drive today.Ā She wonāt be celebrating with dinner at her favorite restaurant in the whole world.Ā She wonāt kiss her niece good night or affectionately rag on her siblings.
Or maybe she wouldnāt have done any of those things anyway, after a decade of growth and changes and paths taken.Ā What would she really be like, at sixteen?
We will never know.Ā We canāt even guess.Ā All of that, everything she might have been, is lost.
This afternoon, weāll visit Rebeccaās grave, and then go to hear her name read in remembrance at one of her very happiest places, [Anshe Chesed Fairmount Temple](https://en.wikipedia.org/wiki/Anshe_Chesed_Fairmount_Temple), for the last time.Ā At the end of the month, the temple will close as part of a merger.Ā Another loss.
A decade ago, I said that I felt the weight of all the years she would never have, and that they might crush me.Ā Over time, I have come to realize all the things she never saw or did adds to that weight.Ā Even though it seems like it should be the same weight.Ā Somehow, it isnāt.
I was talking about all of this with a therapist a few days ago, about the time and the losses and their accumulated weight.Ā I said, āI donāt know how to be okay when I failed my child in the most fundamental way possible.ā
āYou didnāt fail her,ā they said gently.
āI know that,ā I replied. āBut I donāt feel it.ā
A decade, it turns out, does not change that.Ā Iām not sure now that any stretch of time ever could.
* [A Decade Later, A Decade Lost](https://meyerweb.com/eric/thoughts/2024/06/07/a-decade-later-a-decade-lost/) was published on Friday, June 7th, 2024.
* It was assigned to the [Rebecca](https://meyerweb.com/eric/thoughts/category/personal/rebecca/) category.
* There have been [twenty-nine replies](https://meyerweb.com/eric/thoughts/2024/06/07/a-decade-later-a-decade-lost/#comments).
* * *
What happened was, [Brian](https://bkardell.com/) and I were chatting about W3C GitHub issues and Brian mentioned how really long issues are annoying to search and read, because GitHub has this thing where if there are too many comments on an issue, it snips out the middle with a āLoad moreā¦ā button thatās very tastefully designed and pretty easy to miss if youāre quick-scrolling to try to catch up.Ā The squiggle-line would be a good marker, if it werenāt so tasteful as to blend into the background in a way that makes the Baby WCAG cry.
And whatās worse, from this perspective, is that if the issue has been discussed to a very particular kind of death, the āLoad moreā¦āĀ button can have more āLoad moreā¦ā buttons hiding within.Ā So even if you know there was an interesting comment, and you remember a word or two of it, page-searching in your browser will do no good if the comment in question is buried one or more XMLHTTPRequest calls deep.
āI really wish GitHub had an āexpand all commentsā button at the top or something,ā Brian said (or words to that effect).
Well, it was a Friday afternoon and I was feeling code-hacky, so I wrote a bookmarklet.Ā Here it is in easy-to-save hyperlink form:
[GitHub issue loader](javascript:function start\(\){let buttons=document.querySelectorAll\('button'\);let loaders=[];for\(let i=0;i<buttons.length;i+=1\){if\(buttons[i].textContent.trim\(\)=='Load more%E2%80%A6'\){loaders.push\(buttons[i]\);buttons[i].dispatchEvent\(new MouseEvent\('click',{view:window,bubbles:false}\)\)}}if\(loaders.length>0\){setTimeout\(start,5000\)}}setTimeout\(start,500\);void\(20240130\);)
It waits half a second after you activate it to find all the buttons on the page (in my test runs, usually _six hundred_ of them).Ā Then it looks through all the buttons to find the ones that have a `textContent` of āLoad moreā¦ā and dispatches a click event to each one.Ā With that done, it waits five seconds and does it all again, waits five seconds to do it again, and so on.Ā Once it finds there are zero buttons with the āLoad moreā¦ā `textContent`, it exits.Ā And, if five seconds is too quick due to slow loading times, you can always invoke the bookmarklet again should you come across a āLoad moreā¦ā button.
If you want this ability for yourself, just drag the link above into your bookmark toolbar or bookmarks menu, and whenever you load up a mega-thread GitHub issue, fire the bookmarklet to load all the comments.Ā I imagine there may be cleaner ways to do this, but I was able to codeslam this in about 15 minutes using [ViolentMonkey](https://violentmonkey.github.io/) on live GitHub pages, and it does the thing.
I did consider complexifying the ViolentMonkey script so that any GitHub page is scanned for the āLoad moreā¦ā button, and if one is present, then a āLoad all commentsā button is plopped into the top of the page, but I knew that would take at least another 15 minutes and my codeslam window was closing.Ā Also, it would require anyone using it to run ViolentMonkey (or equivalent) all the time, whereas the bookmarlet has zero impact unless the user invokes it.Ā If you want to extend this into something more than it is and share your solution with the world, by all means feel free.
The point of all this being, if you too wish GitHub had an easy way to load all the comments without you having to search for the āLoad moreā¦ā button yourself, now thereās a bookmarklet made just for you.Ā Enjoy!
* [Bookmarklet: Load All GitHub Comments](https://meyerweb.com/eric/thoughts/2024/02/05/bookmarklet-load-all-github-comments/) was published on Monday, February 5th, 2024.
* It was assigned to the [Hacks](https://meyerweb.com/eric/thoughts/category/hacks/), [JavaScript](https://meyerweb.com/eric/thoughts/category/tech/javascript/), [Tools](https://meyerweb.com/eric/thoughts/category/tech/tools/), and [Web](https://meyerweb.com/eric/thoughts/category/tech/web/) categories.
* There have been [two replies](https://meyerweb.com/eric/thoughts/2024/02/05/bookmarklet-load-all-github-comments/#comments).
* * *
Once upon a time, there was [a movie called Once Upon a Forest](https://en.wikipedia.org/wiki/Once_Upon_a_Forest).Ā Iāve never seen it.Ā In fact, the only reason I know it exists is because a few years after it was released, [Joshua Davis](https://joshuadavis.com/) created a site called Once Upon a Forest, which I was doing searches to find again.Ā The movie came up in my search results; the site, long dead, did not.Ā Instead, I found its original URL on [Joshuaās Wikipedia page](https://en.wikipedia.org/wiki/Joshua_Davis_\(designer\)), and the Wayback Machine coughed up snapshots of it, [such as this one](https://web.archive.org/web/20110902144221/http://www.once-upon-a-forest.com/).Ā You can also find static shots of it on Joshuaās personal web site, if you scroll far enough.
That site has long stayed with me, not so much for its artistic expression (which is pleasant enough) as for how the pieces were produced.Ā Joshua explained in a talk that he wrote code to create [generative art](https://en.wikipedia.org/wiki/Generative_art), where it took visual elements and arranged them randomly, then waited for him to either save the result or hit a key to try again.Ā He created the elements that were used, and put constraints on how they might be arranged, but allowed randomness to determine the outcome.
That appealed to me deeply.Ā I eventually came to realize that the appeal was rooted in my love of the web, where we create content elements and visual styles and scripted behavior, and then we send our work into a medium that definitely has constraints, but something very much like the random component of generative art: viewport size, device capabilities, browser, and personal preference settings can combine in essentially infinite ways.Ā The user is the seed in the RNG of our workās output.
Normally, we try very hard to minimize the variation our work can express.Ā Even when crossing from one experiential stratum to anotherĀ āÆāā that is to say, when changing media breakpointsĀ āÆāā we try to keep things visually consistent, orderly, and understandable.Ā That drive to be boring for the sake of user comprehension and convenience is often at war with our desire to be visually striking for the sake of expression and enticement.
There is a lot, and I mean a **lot**, of room for variability in web technologies.Ā We work very hard to tame it, to deny it, to shun it.Ā Too much, if you ask me.
About twelve and half years ago, I took a first stab at pushing back on that denial with [a series posted to Flickr called āSpinning the Webā](https://meyerweb.com/eric/thoughts/2011/06/03/spinning-the-web/), where I used CSS rotation transforms to take consistent, orderly, understandable web sites and shake them up hard.Ā I enjoyed the process, and a number of people enjoyed the results.
google.com, late November 2023
In the past few months, Iāve come back to the concept for no truly clear reason and have been exploring new approaches and visual styles.Ā The first collection launched a few days ago: [Spinning the Web 2023](https://meyerweb.com/once-upon-a-browser/2023-12/), a collection of 26 web sites remixed with a combination of CSS and JS.
Iām announcing them now in part because this month [has been dubbed āGenuaryā](https://genuary.art/), a month for experimenting with generative art, with daily prompts to get people generating.Ā I donāt know if Iāll be following any of the prompts, but weāll see.Ā And now I have a place to do it.
You see, back in 2011, I mentioned that my working title for the āSpinning the Webā series was āOnce Upon a Browserā.Ā That title has never left me, so Iāve decided to claim it and created [an umbrella site with that name](https://once-upon-a-browser.com/).Ā At launch, itās sporting a design that owes quite a bit to Once Upon a ForestĀ āÆāā albeit with its own SVG-based generative background, one I plan to mess around with whenever the mood strikes.Ā New works will go up there from time to time, and I plan to migrate the 2011 efforts there as well.Ā For now, there are pointers to the Flickr albums for the old works.
I said this back in 2011, and I mean it just as much in 2023: I hope you enjoy these works even half as much as I enjoyed creating them.
* [Once Upon a Browser](https://meyerweb.com/eric/thoughts/2024/01/02/once-upon-a-browser/) was published on Tuesday, January 2nd, 2024.
* It was assigned to the [CSS](https://meyerweb.com/eric/thoughts/category/tech/css/), [Design](https://meyerweb.com/eric/thoughts/category/design/), and [Projects](https://meyerweb.com/eric/thoughts/category/personal/projects/) categories.
* There have been [two replies](https://meyerweb.com/eric/thoughts/2024/01/02/once-upon-a-browser/#comments).
* * *
I havenāt generally been one to survey years as they end, but Iām going to make an exception for 2023, because there were three pretty big milestones Iād like to mark.
[](https://meyerweb.com/eric/books/css-tdg/)
The first is that toward the end of May, the fifth edition of [CSS: The Definitive Guide](https://meyerweb.com/eric/books/css-tdg/) was published.Ā This edition weighs in at a mere 1,126 pages, and covers just about everything in CSS that was widely supported by the end of the 2022, and a bit from the first couple of months in 2023.Ā Itās about 5% longer by page count than [the previous edition](https://meyerweb.com/eric/books/css-tdg/ed-fourth/), but it has maybe 20% more material.Ā [Estelle](http://standardista.com/) and I pulled that off by optimizing some of the older material, dropping some āintro to webā stuff that was still hanging about in the first chapter, and replacing all the appendices from the fourth edition with a single appendix that lists the URLs of useful CSS resources.Ā As with the previous edition, the files used to produce the figures for the book are all available online as [a website](https://meyerweb.github.io/csstdg5figs/) and [a repository](https://github.com/meyerweb/csstdg5figs).
The second is that Kat and I went away for a week in the summer to celebrate our 25th wedding anniversary.Ā As befits our inclinations, we went somewhere weād never been but always wanted to visit, the [Wisconsin Dells](https://www.wisdells.com/) and surrounding environs.Ā We got to tour [The Cave of the Mounds](https://www.caveofthemounds.com/) (_wow_), [The House on the Rock](https://www.thehouseontherock.com/) (_**double** wow_), [The World of Doctor Evermore](https://www.worldofdrevermor.com/gallery/) (_wowee_), and the Dells themselves.Ā We took a river tour, indulged in cheesy tourist traps, had some fantastic meals, and generally enjoyed our time together.Ā I did a freefall loop-de-loop waterslide _twice_, so take _that_, [Action Park](https://en.wikipedia.org/wiki/Action_Park).
The third is that toward the end of the year, Kat and I became grandparents to the beautiful, healthy baby of our daughter Carolyn.Ā A thing that people who know us personally know is that we love babies and kids, so itās been a real treat to have a baby in our lives again.Ā Itās also been, and will continue to be, a new and deeper phase of parenthood, as we help our child learn how to be a parent to her child.Ā We eagerly look forward to seeing them both grow through the coming years.
So hereās to a year that contained some big turning points, and to the turning points of the coming year.Ā May we all find fulfillment and joy wherever we can.
* [2023 in (Brief) Review](https://meyerweb.com/eric/thoughts/2023/12/31/2023-in-brief-review/) was published on Sunday, December 31st, 2023.
* It was assigned to the [Books](https://meyerweb.com/eric/thoughts/category/personal/books/), [Carolyn](https://meyerweb.com/eric/thoughts/category/personal/carolyn/), and [Parenting](https://meyerweb.com/eric/thoughts/category/personal/parenting/) categories.
* There has been [one reply](https://meyerweb.com/eric/thoughts/2023/12/31/2023-in-brief-review/#comments).
* * *
#### Browse [the Archive](/eric/thoughts/)
[Earlier Entries](https://meyerweb.com/eric/thoughts/page/2/)