Weekend Reading — Are you really running the code?
SS astronaut finds NASA floppy disks in space Windows 95. Mint condition. Buyer picks up.
This Is UX Writing at Its Very Best Examples of great microcopy, many puns, and even a brutally honest search filter:
Alan Cooper This thread applies equally well to development practices and interaction design:
Analogies between how things are made in the software world and how things are made in the non-software world are fraught. Software is different, and an analogy that shares one common aspect subtly makes you think that there are other aspects in common, but this is rarely true. 1
Helen Tran Personas (like brainstorming, Agile), has been co-opted to the point where maybe we need a reset and new term:
A 'persona' is not an opportunity for you to create biases for your team.
What is in a Persona:
Needs, motivations, general technical literacy, income/age ranges, etc.
What is not in a Persona:
One made-up individual's picture, name, hobbies, age, and ethnicity
Kill Your Personas Related:
They are inherently an amalgamation, an average of attributes that we imagine our average customer has. And there’s no such thing as the average customer.
Shout-out to all the sites that still make the login button more prominent than the sign-up button.
Slow Software Explains why the supercomputer in your pocket can feel so slow at times:
What feels "slow" to users? We all have a sense for when software annoys us with delays. But to get a better handle on this problem, we'll complement these intuitions with academic research that answers the question rigorously.
Tools of the Trade
Wired Elements Web components with a hand-drawn, sketchy look. "The elements are drawn with enough randomness that no two renderings will be exactly the same — just like two separate hand-drawn shapes."
Brandon Bloom More options doesn't make for a better product:
Next time you consider adding a config file to your tool, consider this: Every flag doubles the configuration space. Just counting boolean compiler variables alone, there are nearly 150 thousand trillion possible TypeScript configurations.
Post-REST Tim Bray on what awaits us beyond REST:
But I bet that for the foreseeable future, a high proportion of all requests to services are going to have (approximately) HTTP semantics, and that for most control planes and quite a few data planes, REST still provides a good clean way to decompose complicated problems, and its extreme simplicity and resilience will mean that if you want to design networked apps, you’re still going to have to learn that way of thinking about things.
Wynn Netherland Related:
For me, the big benefits of GraphQL have been:
- Free API explorer with purchase
- Auto documenting
- Explicit contracts with the front end behind which to iterate
- Not needing to think like Roy Fielding to intuit use
Osahon A "Imagine getting married to another great human who adores you >>>>>>>>>>>>>>>"
I saw the >>>>>>> and immediately thought "shit a merge conflict" and that's how I know I'm in too deep
Krissy Brierre-Davis "How come you guys never told me this iPhone trick? I feel duped."
web.dev "Google's web platform team has spent over a decade learning about user needs. Now we want to make it as easy as possible for you to master the defining standards of web development today."
Some notes about HTTP/3 HTTP/2 doesn't excite me, but HTTP/3 looks like a worthy upgrade from HTTP/1.1:
This means that as you move around, you can continue with a constant stream uninterrupted from YouTube even as your IP address changes, or continue with a video phone call without it being dropped. Internet engineers have been struggling with "mobile IP" for decades, trying to come up with a workable solution. They've focused on the end-to-end principle of somehow keeping a constant IP address as you moved around, which isn't a practical solution. It's fun to see QUIC/HTTP/3 finally solve this, with a working solution in the real world.
Glen Arrowsmith "npm install..."
Surma "I, in fact, did NOT mean that."
Lines of Code
Will Crichton A rant:
Picking good names is a crucial tool for thought. A good name communicates or reminds you of the idea underneath an abstraction. Naming something after a person is the 2nd laziest form of naming. First is "Type 1" and "Type 2" error, the dumbest naming scheme ever invented.
Cindy Potvin I need that on a t-shirt:
First rule of debugging: Are you really running the code you think you're running? 😇
Matt Wensing 2018, programming is 10% writing code, 90% configuring 3rd party services:
Slack app fun project turning out to be less fun. Time spent writing useful code: 30 minutes. Time spent figuring out OAuth, permissions, and scope by user, bot, and workspace: 5+ hours and counting.
Dave Cheney Yes!
A little global state is not an invitation for a little more. It’s a prescribed substance, not a precedent.
jasongorman Learn concepts first, tools second:
1998: "You should build systems out of single-purpose loosely-coupled components
2008: "You should build systems out of single-purpose loosely-coupled components"
2018: "You should build systems out of single-purpose loosely-coupled components"
Technology changes so fast!
Sophie Alpert Sums it up:
Timeless software engineering skills:
- Not feeling scared to change code you didn't write
- Empathy for your users and for your collaborators
- Ability to communicate ideas clearly
I'd hire someone with these skills any day.
Product Managers: How to Stop Drowning in Feature Requests Since my team also practices fixed time/fixed cost/flexible scope, going to start calling it "Goal orientated Roadmaps":
As the name suggests, this type of roadmap describes goals you will set out to achieve during a release but not full disclosure of the detail behind what this will entail. For example, the goal for the next release could be “to deliver the platform via a native app”.
Engineering Manager: "How long do you think this will take? "
Don't do it
Don't do it
Don't do it
Don't do it
Don't do it
Don't do it
Don't do it
Don't do it
Don't do it
Don't do it
Don't do it
"Shouldn't take too long"
Fluff Society "Wow. And some humans won't even talk to each other"
Lesley Carhart This:
Which do I find myself doing more? To be honest, it’s often arguing against IT folks (and my better sales pitch) that things aren’t as catastrophic as they think. Panic is counterproductive to triage. I do plenty of arguing that conditions really do merit faster response, though.
Karen López Or to put it another way (a thread):
Another incident response tip: don’t panic and start pulling all the plugs, twisting all the knobs, flipping all the switches.
I watched a celebrity consultant do this during a minor incident. His voice went up several octaves as he went crazy panicking. 1/
Cory Foy Whether you're fixing computers or saving human lives (a thread):
“Panic is counterproductive to triage”. Oh my gosh yes. And after you read her excellent thread, let me tell you something that happened tonight in a very different scenario which highlights this brilliant phrase from Lesley.
Lynn Grant On the subject of clear communication:
Reminds me of advice from an airplane pilot’s blog I used to read: She said when you turn on the fuel pump switch, you don’t say the fuel pump is on, you say it is *selected on*, because it could have failed due to tripped circuit breaker, etc.
Incidents As We Imagine Them Versus How They Actually Happen "Real incidents (and the response to them) are messy, and do not take the nice-and-neat form of: detect⟶diagnose⟶repair"
Guillaume Chaslot And somehow this involves Boko Haram and Kyrie Irving:
So basically we have the two best AIs of the world, on Instagram and YouTube, competing to convince people that the earth is flat. Because it yields large amounts of watch time, and watch time yields ads. This is a #raceToTheBottom 11/
Wanted: The ‘perfect babysitter.’ Must pass AI scan for respect and attitude. What could possibly go wrong?
Jamie L. Williams, a staff attorney at the civil-liberties group Electronic Frontier Foundation, said most algorithms deployed now to assess the meaning of words and images online are widely known to lack a human reader’s context and common sense. Even tech giants such as Facebook have struggled to build algorithms that can tell the difference between a harmless comment and hate speech.
None of the Above
On November 26th, a mole will land on Mars The mole lands this Monday.
To Give a Great Presentation, Distill Your Message to Just 15 Words This article may be 1,045 words long, but it communicates the first key point in only 12 words. Show, don't tell. There's more to this article, if you're into public speaking, worth a read.
A good talk has content that is fresh and well-edited, with a clear arc that takes us on a journey. A good talk is one that is so well rehearsed that you are able to let go of the script and freely share the content in the moment. A good talk is one where your audience wants to adopt your idea at the end of the talk.
Climate change will shrink US economy and kill thousands, government report warns Released during Thanksgiving, so to not to attract too much attention. So please share!
The report was created to inform policy-makers and makes no specific recommendations on how to remedy the problem. However, it suggests that if the United States immediately reduced its fossil fuel use and greenhouse gas emissions, it could save thousands of lives and generate billions of dollars in benefits for the country.
Annalee Related. Calls for "individual action" are the whataboutism of climate change:
My dad was a forest fire fighter and Smokey will always be my bro, but seeing "only you can prevent forest fires" during a fire PG&E started is a reminder that focusing on individual climate action is an intentional strategy to distract from corporate responsibility.
Tom Gara "Ahh yes, the Science Channel, time crack open a cold one and settle in for some Science"
Netflix has been doing this thing where it plays one episode then returns me to the main menu and I cannot help but feel judged
I did not become a software engineer to have a website tell me to go outside
At my library we have an upright piano that the public can "checkout" for 2 hours. There's a homeless patron playing the most beautiful concerto--he told me that he misses his piano most of all. Never underestimate the resources your local library has to offer. #librarylife
Pulp Librarian "The 1983 Sony Liberty LP/Cassette/ CD player. Compared to this your Bluetooth speaker is feeble. FEEBLE!!"
NPR "What if loans are actually a good thing?"
Then why don’t y’all take out some loans and stop begging us for money on the air every 3 months
Airlines face crack down on use of ‘exploitative’ algorithm that splits up families on flights Once you get over how nasty they are, turns out, it's also a dangerous practice:
“This is especially important when adults and their children need to be seated near to each other if an emergency situation occurs, such an evacuation, decompression or air turbulence, when the assistance and supervision of an adult is likely to be of paramount importance.”
Fluff Society "When the squad is finally ready to head out"
Brexit has reached the part of a waterfall software development process where two years in you realise you aren't going to hit the deadline, your architectural assumptions were all wrong, and no-one wants what you built anyway
Inside the Pricey War to Influence Your Instagram Feed A price sheet for authenticity:
For a single photo post with a product, prices for an influencer with a million followers on Instagram start at $10,000, they say. YouTube is more expensive. A content creator with 3 million subscribers will usually charge at least $40,000 per video. If the company wants the YouTuber to produce a negative review of a competitor’s product, that’ll cost extra—often from $10,000 to $30,000 more.
On Thanksgiving Eve, Facebook Acknowledges Details of Times Investigation TL;DR Facing accusations of spreading false news, Facebook decided to attack by … paying a lobbying firm to spread false news.
Abhishek Singh "Built a universal remote control using #Arkit and a #RaspberryPi to control any device in my room."