USB-C is a Mess

The graphic below is care of Adafruit and it reveals that we still have a long way to go when it comes to USB-C being the “one cable to rule them all.”

USB-C specifications laird out in a table

These Books

At least two newsletters arrived in my inbox this week using this stock photo of books. I’ve seen the image used elsewhere, but seeing it twice on the same day made me wonder “Whose books are these?” @ me on Twitter if you know.

Percentage Change in State Populations for Last Decade

Percentage Change in State Populations by County

Percentage changes in state populations from 2010 to 2019 by county

What fascinates me about this map is the apparent emptying out of entire states like Kansas and Illinois. We know larger economic trends are in play — like the shift from rural to urban, but were there also distinct policies enacted at the end of the naughts the hastened population movements. In Kansas, some of this could be laid at the door of Sam Brownback, but what happened in Illinois?

And what about the emptying out of the multi-state Mississippi Delta? A combination of economics and long-embedded racism? (Is it African Americans leaving or is it everyone?)

Medical Bay from the Future

A Medical Bay from the Future

I screenshotted this from a Youtube video preview. As a kid, I spent hours imagining myself in such worlds — I loved the drawings released for Star Wars and Star Trek.

Thanks for coming to my TED talk

If you’re curious about what I have been up to, it’s working with Katherine M. Kinnaird: “TED talks as Data” is the first in three planned installments of our collaboration — data, words, discourse. In the mean time, as they say, “thanks for coming to my TED talk”:

HTML to PDF

In an ideal setup, my workflow would have me writing in some version of plain text — a flavor of markdown in all probability — that could be quickly and easily outputted to a variety of formats and media. In most instances, that output gets printed, or at least paginated, which means it probably has to, at least for a moment, be instantiated as a PDF. (If I remember correctly, this is essentially how the macOS display and printing system work.) What that would mean would be a collection of CSS files that transformed the generated HTML into the various kinds of documents I regularly produce: essays, reports, letters, lectures, etc.

This function is what the Marked app does and does well — it’s also functionality built into the Ulysses app if I remember. Neither of those apps, I believe, offer pagination, which is often critical to what I output. And so, I have continued to search for my own solution in hopes of building it into a workflow — for the record, when I am working on long-form plain text, my editor of choice is FoldingText because it does a brilliant job of hiding the markdown unless you are working on that sentence and, as the name implies, it makes it possible to hide all but the section of the document on which you are working. It’s brilliant. (To be clear, I am a fan of all the apps mentioned here and of their developers.)

Getting from plain text via markdown or MultiMarkdown to HTML and then pairing that HTML with a page-media aware CSS file and then outputting to PDF is not as easy as it should be. The one app of which I have been aware up until recently was PrinceXML, which its creators have made free for non-commercial use, but with the imposition of a small watermark. That’s very generous, but it’s not quite what I want and I don’t have the kind of money to afford a desktop license.

And so it was a delightful surprise to discover that there are free software options to explore:

  • wkhtmltopdf is an “open source (LGPLv3) command line tools to render HTML into PDF and various image formats using the Qt WebKit rendering engine. These run entirely headless and do not require a display or display service.”
  • **WeasyPrint is a “visual rendering engine for HTML and CSS that can export to PDF. … It is based on various libraries but not on a full rendering engine like Blink, Gecko or WebKit. The CSS layout engine is written in Python, designed for pagination, and meant to be easy to hack on.”

Next up … trying WeasyPrint and an update/report here.