(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.
I do not have the time or energy to write a full blog post, so instead I will share some interesting documentation about writing one-off patterns in our in-progress design system under a hash-tag I just came up with called #ShareYourDocs.
Wowww...so much cool stuff has happened in the past month! This installment of Designgineering Chronicles is full of milestones and an outline of a some real deal system architecture for a project underway, code-named Cantaloupe.
Another installment of Designgineering Chronicles jam packed with information! IndieWire launched with the pattern library, and we are in full pursuit of the holy grail: sharing markup between the library and production theme.
It's not necessarily bad to concatenate Sass selectors, but if you need to keep developers from doing it for the purposes of coding standards, this might be helpful!