Weekend Reading — A spill of puppies

Published on

@ joeheenan "Sometimes when I don't know what to do I'll get this out my pocket & pretend it knows the answer."

Design Objective

Empathy Prompts 💡 Ideas to help consider Inclusive Design principles when making things for others to use, e.g:

Use a projector

See how your company’s website looks on a cheap projector.

This prompt helps you understand what it’s like to have a visual condition like contrast loss.

Email Design Trends of 2017 (so far) Emails are getting visually better. Now, about the timing and contents …

Security Questions 😭

Tools of the Trade

cattsmall Just plain common sense and Slacktiquette:

Suggestion to everyone using real-time digital communication software: if you want to ask a question, combine it with your greeting message.

GitPoint New iOS app for Github. Not a lot of features, but clean and simple UI. Give it a try.

@gdead ✔︎

Just got an email that one of my lightbulbs isn't responding to queries. My house has better monitoring than some enterprises I've worked at


What’s next for CSS? Comprehensive list of CSS features and their positions in the process of becoming implemented web standards.

Lingua Scripta

SaraSoueidan 📺

Idea: reality show titled "Keeping up with the JavaScripts"

Featuring lots of developers having identity crisis, flipping tables, etc

Lines of Code

@direlog Oh my, so true:

‘programming’ is a delightful pastime in which you debug for hours only to discover the real problem is: you can’t read, and you can’t count

@danielchooper 🤔

To design better: observe people using the design.

To program better: observe a CPU executing the code.


Modular monoliths Simon Brown explains how to not microservice. But mostly, about architecture, testing, and naming things. Lots of learning in this 45 minute talk.

Testing or Monitoring? MTBF or MTTR? Make your choice! This article explains why monitoring and testing are both important, by looking at MTBF and MTTR, and how each affects reliability. It does have one flaw, though, confusing tests for "bug finding". Tests are also a helpful tool for writing code, and will help you lower both MTBF and MTTR.

@CompSciFact This quote has aged well:

'The idea that people knew a thing or two in the '70s is strange to a lot of young programmers.' -- Donald Knuth

@ rothgar "The new OSI model is much easier to understand"


@sarahmei More productive than a fidget spinner:

Long ago I knew a manager who had taught her entire dev team to knit, so they could pay attention at meetings. It worked😁

@ sarahmei Thread:

There's being "neurodiverse" and then there's being "an asshole." One is a condition; the other is a behavior.

Locked Doors

About the security content of iOS 10.3.3 Update as soon as you can:

Impact: An attacker within range may be able to execute arbitrary code on the Wi-Fi chip

@x0rz "Emoji in URLs are probably a bad idea... probably"

A hacker stole $31M of Ether — how it happened, and what it means for Ethereum Another day, another coin heist. But this one is different because:

Having sounded the alarm bells, a group of benevolent white-hat hackers from the Ethereum community rapidly organized. They analyzed the attack and realized that there was no way to reverse the thefts, yet many more wallets were vulnerable. Time was of the essence, so they saw only one available option: hack the remaining wallets before the attacker did.

Underhanded Solidity Coding Contest Solidity is the programming language for Ethereum contracts. Ethereum is the next big financial technology since Bitcoin (great overview of Ethereum, Blockchain and friends). As I'm writing this, one Ethereum coin is worth $224 dollars. Anyway, back to Solidity:

There is no garbage collector. Dead allocations are never reclaimed, despite the scarcity of available memory space. There is also no manual memory management.

The compiler is riddled with mis-compilation bugs, many of them security critical. The documentation helpfully includes a list of these bugs .... in JSON.

In some situations, the optimizer replaces certain numbers in the code with routines that compute different numbers

For some types, the higher order bytes were not cleaned properly, which made it sometimes possible to overwrite a variable in storage when writing to another one.

@YrB1rd "All block cipher modes are beautiful"


@jacobrossi "Seems about right 😂"

@john_lam "Check out this stack trace on a FAUCET. I have now seen it all."

@lauraehall "I updated those internet-themed crayons for this the year of our lord 2017"

None of the Above

@WorldLatinStar Brilliant.

@enf Everything that's old is new again 🥑

SF Chronicle recipe for Avocado Toast, April 8, 1927

Why Are Clothes So Expensive? Perspective into how many people are involved in, and how much work goes into making a pair of pants.

Bay Area Rapid Transit Map - Mario Kart Style (h/t @SFBART)

@mizabitha 🛌


ME: It's the middle of the night, what is it

BRAIN: Remember all the mistakes you ever made?

ME: Yeah

BRAIN: Just checking

The New Porker Mashup of New Yorker and Overwatch.

@sciam "A tough but flexible robot unfurls like a plant using a pressurized plastic tube to inch through rugged environments."

@Anim8rJB "oh no, somebody spilled all of their puppies."