This is a very serious question.
The One True Way to write code.
It's been almost two years since the first time I gave my talk on CSS algorithms. What is a CSS algorithm? Great question.
The last installment of the Designgineering Chronicles. The work itself is far from over, but I am very over writing these posts.
(Warning: thought-leadery post)
Problems with CSS are not a result of flaws in CSS. The problem is how we write CSS.
A quick share of what I consider a significant win for Larva, the design system I started at PMC that is now a very official thing at the company.
This conference talk is a great introduction to the S.O.L.I.D. software design principles. How do these principles manifest when it comes to UI programming with HTML/CSS?
A bit of documentation I wrote for a Sass mixin that outputs utility classes based on a map of values.
There is a borderline overwhelming amount of documentation to be written, but gotta start somewhere! Here's a kinda random first addition to Larva's Naming Guidelines wiki page.
Here's a quick write up about a CSS algorithm we just created at PMC! It seems like it will be useful in future projects, and we now have a programmatic term to use to refer to this kind of UI design pattern.
A very cool, test-oriented workflow has emerged with the introduction of Backstop JS into our design system tooling. I recorded some sloppy screencasts to show it off! Watch me struggle and make mistakes and also accomplish things.
I spent a while debugging a font-face issue. Can you spot the problem?
For example, a `color` property should not be in an algorithm that is intended for CSS grid properties. This is a potential Stylelint rule that would report that!
I think I figured out a really cool, fun, exciting, and not complicated way to write tests for CSS algorithms! This post introduces the concept of writing unit tests and test driven development.
I thought I encountered a browser bug, but I didn't. I learned some things, and now you can read this and learn them, too!
A slightly delayed Chronicle, but no less juicy! In preparation for the kick-off of Blueberry, we are figuring out how to actually share and publish modules as the design system (named Larva) becomes a product that stands on its own.
I took a deep dive into this question, and the answer is: kinda, mostly, yeah! CSS + HTML (duh) + user input is Turing complete. Is it possible to remove the user input part? Then I can re-title this post to be more, ahem, declarative.
My talk and I are going on tour this summer! In other words, I submitted to a bunch of conferences and got into some of them. So stoked!
Cantaloupe, a.k.a. Deadline.com, has launched!!! This installment of the Chronicles discusses the project's huge success, the beginnings of a design system roadmap, and an introduction to Blueberry, the next code-named redesign for PMC.
This post is an account of pair programming with a fellow front-end developer to figure out a tricky responsive layout issue. Time for a CSS algorithm!
What do you call a design system before it has published modules but after it has started providing useful tools? Naming is hard.
It's a month later than I would have liked, but at long last an update on project Cantaloupe which is full steam ahead on development. What's it like to build and use a design system at the same time? In Part 1, we talk workflow, CSS utilities, and houses of cards.
The WordPress admin bar mixed with a fixed menu can be an annoyance. Here's an imperfect CSS algorithm that uses a couple of custom properties to help with that!
The methods for white-boarding algorithm questions serve us quite well when writing CSS algorithms. This post is a written portion of the second half of version 1 of the Algorithms of CSS.