Tags: spec

121

sparkline

Sunday, April 11th, 2021

The Lords of Midnight

I played a lot Lords of Midnight (and Doomdark’s Revenge) on my Amstrad 464 when I was a kid. Turns out there’s a dedicated labour of love to port the games to modern platforms. I just downloaded the OS X port, so there goes my weekend.

Wednesday, March 31st, 2021

Excitement is a fleeting moment, not a steady state

Most work is pretty mundane. Even work on meaningful things. The most profound stuff is built one mostly boring brick at a time. Even the most creative ideas, the best art, the breakthroughs have to be assembled, and assembly isn’t typically what fires people up.

You don’t get to the exhilarating end without going through the mundane middle. And the beginning and end are the shortest parts — the middle is most of it.

Sunday, March 21st, 2021

Future Scenarios Generator - Third Wave

A slot machine for speculation. Enter a topic and get a near-future scenario on that topic generated automatically.

Tuesday, February 2nd, 2021

archives.design

All of these graphic design books, magazines, and type specimens are available for perusal on the Internet Archive.

Tuesday, January 12th, 2021

Global Privacy Control — Take Control Of Your Privacy

This sounds a lot like Do Not Track …but looking at the spec, the interesting part is the way that this is designed to work in combination with legal frameworks. That’s smart. I don’t think a purely technical solution is workable (as we saw with Do Not Track).

Wednesday, December 16th, 2020

Here Dragons Abound: The Forever Project

I think that working on your own website can be a good Forever Project.

It’s an open-ended topic that you can explore for a long time without running out of challenges.

Also, this is spot-on:

Compare two different situations where you tell a story at a party. In the first situation, you tell the story in a corner to one or two people, who are totally interested and smiling. In the second situation, you tell the story in the center of the party with a large group of people around you, but they’re almost all bored and uninterested, talking amongst themselves and largely ignoring you. The first situation sounds better, right? Well, that’s the non-obvious benefit of blogging. There are a load of people out there blogging, and almost all of them are better writers and better looking than you. Nobody is going to read your blog about frabulizing widgets unless they really care about frabulizing widgets. So it’s not going to be a big audience, but it should be an interested audience. And I think you’ll find that you get 90% of the benefits of socialization from a handful of readers as you would get from a sea of readers.

Tuesday, December 15th, 2020

Cascading Style Sheets

There are three ways—that I know of—to associate styles with markup.

External CSS

This is probably the most common. Using a link element with a rel value of “stylesheet”, you point to a URL using the href attribute. That URL is a style sheet that is applied to the current document (“the relationship of the linked resource it is that is a ‘stylesheet’ for the current document”).

<link rel="stylesheet" href="/path/to/styles.css">

In theory you could associate a style sheet with a document using an HTTP header, but I don’t think many browsers support this in practice.

You can also pull in external style sheets using the @import declaration in CSS itself, as long as the @import rule is declared at the start, before any other styles.

@import url('/path/to/more-styles.css');

When you use link rel="stylesheet" to apply styles, it’s a blocking request: the browser will fetch the style sheet before rendering the HTML. It needs to know how the HTML elements will be painted to the screen so there’s no point rendering the HTML until the CSS is parsed.

Embedded CSS

You can also place CSS rules inside a style element directly in the document. This is usually in the head of the document.

<style>
element {
    property: value;
}
</style>

When you embed CSS in the head of a document like this, there is no network request like there would be with external style sheets so there’s no render-blocking behaviour.

You can put any CSS inside the style element, which means that you could use embedded CSS to load external CSS using an @import statement (as long as that @import statement appears right at the start).

<style>
@import url('/path/to/more-styles.css');
element {
    property: value;
}
</style>

But then you’re back to having a network request.

Inline CSS

Using the style attribute you can apply CSS rules directly to an element. This is a universal attribute. It can be used on any HTML element. That doesn’t necessarily mean that the styles will work, but your markup is never invalidated by the presence of the style attribute.

<element style="property: value">
</element>

Whereas external CSS and embedded CSS don’t have any effect on specificity, inline styles are positively radioactive with specificity. Any styles applied this way are almost certain to over-ride any external or embedded styles.

You can also apply styles using JavaScript and the Document Object Model.

element.style.property = 'value';

Using the DOM style object this way is equivalent to inline styles. The radioactive specificity applies here too.

Style declarations specified in external style sheets or embedded CSS follow the rules of the cascade. Values can be over-ridden depending on the order they appear in. Combined with the separate-but-related rules for specificity, this can be very powerful. But if you don’t understand how the cascade and specificity work then the results can be unexpected, leading to frustration. In that situation, inline styles look very appealing—there’s no cascade and everything has equal specificity. But using inline styles means foregoing a lot of power—you’d be ditching the C in CSS.

A common technique for web performance is to favour embedded CSS over external CSS in order to avoid the extra network request (at least for the first visit—there are clever techniques for caching an external style sheet once the HTML has already loaded). This is commonly referred to as inlining your CSS. But really it should be called embedding your CSS.

This language mix-up is not a hill I’m going to die on (that hill would be referring to blog posts as blogs) but I thought it was worth pointing out.

Tuesday, November 17th, 2020

Daily diary for April 24, 2021 – A Whole Lotta Nothing

A blog post from the future. I’m on board with the subgenre of speculative blogging.

Thursday, October 1st, 2020

What is happening to our digital archives?

Employing the principle of least power for better digital preservation:

New frameworks and technologies spring up to try and cope with the speed of change. More and more ways to build and release things faster and cheaper becomes the norm. And, the more this happens, the more we deviate from standards: good ol’ HTML and CSS.

Sunday, July 19th, 2020

Coldwater.Science

The World Ocean is as close as you can get to outer space without leaving Earth. It’s an entirely different universe, nothing like the life we have on land.

Friday, July 10th, 2020

What is CSS Specificity? Sarah Chima - Front-End Developer

An excellent and clear explanation of specificity in CSS.

Friday, June 26th, 2020

Grid Cheatsheet

A useful resource for CSS grid. It’s basically the spec annoted with interactive examples.

Friday, May 29th, 2020

Type Specimens

This is a lovely new project from Mark that gets very meta, cataloging specimens of type specimens:

This project will dig into specimens from these three perspectives: as artefacts made by and for font designers to evolve type culture; as tools for font users to make decisions about choosing and using type; and as effective marketing tools.

Monday, April 6th, 2020

6, 95: Barrel aged

Human consciousness is the most astonishing thing, and most of it happened in deep time, beyond the reach of any writing and most legends. Human experience, in general, is prehistoric. And prehistoric experience was just as full as yours and mine: just as deeply felt, just as intelligent, just as real. What we know of it is mostly from durable artifacts and graves. I’m thinking of the woman found near the Snake River, buried at the end of the ice age with a perfectly crafted and unused stone knife tucked under her head. I’m thinking of the huge conical hats, beaten from single pieces of gold and inscribed with calendars, found north of the Alps. I’m thinking of Grave 8 at Vedbæk, where a woman held her premature baby on the spread wing of a swan. These are snapshot that experts can assemble into larger ideas, but what they tell all of us is that we’ve been people, not just humans, for a very long time.

Saturday, February 15th, 2020

Things I’ve been wrong about, things I’ve been right about | Nolan Lawson

  • Wrong: web workers will take over the world
  • Wrong: Safari is the new IE
  • Right: developer experience is trumping user experience
  • Right: I’m better off without a Twitter account
  • Right: the cost of small modules
  • Mixed: progressive enhancement isn’t dead, but it smells funny

Maybe I should do one of these.

Saturday, January 25th, 2020

A Tale of Two Clocks

Doomsday vs. the Long Now.

Wednesday, January 22nd, 2020

The CSS Cascade

This is a wonderful interactive explanation of the way CSS hierarchy works—beautiful!

Tuesday, January 7th, 2020

Life Under The Ice

Here’s the latest wonderful project from Ariel—explore microscopic specimens from Antarctica:

The collected Antarctic microbes were found living within glaciers, under the sea ice, next to frozen lakes, and in subglacial ponds.

Beautiful!

Monday, January 6th, 2020

Frank Chimero · Redesign: Wants and Needs

Websites sit on a design spectrum. On one end are applications, with their conditional logic, states, and flows—they’re software.

On the other end of the design spectrum are documents; sweet, modest documents with their pleasing knowableness and clear edges.

For better or worse, I am a document lover.

This is the context where I fell in love with design and the web. It is a love story, but it is also a ghost story.

Monday, July 1st, 2019

Exploring the Frontiers of Visual Identity… | Speculative Identities

Brand identity in sci-fi films, like Alien, Total Recall, Robocop, and Back To The Future.

This makes for a nice companion site to Sci-fi Interfaces.