Published
Weekend Reading — Easy schleping
Biisuke Ball's Big Adventure Part 2 Brilliant.
Design Objective
Everyone is a designer. Get over it.
Exactly:
Whether you like it or not, whether you approve it or not, people outside of your design team are making significant design choices that affect your customers in important ways. They are designing your product. They are designers.
John Ferguson Smart "The problem with software development:"
Tools of the Trade
Debugging Tips and Tricks Fantastic tips for front-end developers. This one is under-utilized:
I have a lot of different methods of isolation in practice. One is to create a reduced test case on a local instance, or a private CodePen, or a JSBin.
So what’s this GraphQL thing I keep hearing about? In a nutshell:
The solution Facebook came up with is conceptually very simple: instead of having multiple “dumb” endpoints, have a single “smart” endpoint that can take in complex queries, and then massage the data output into whatever shape the client requires.
dan… slimmon?!?! "thinking about estimation. i think we usually go past 'probably good enough' and even often go past 'definitely stop'"
Lies My Parents Told Me (About Logs) Continuing the tradition of "myths developers believe about …"
notwaldorf/tiny-care-terminal "💖💻 A little dashboard that tries to take care of you when you're using your terminal."
OH: "We're doing soviet style agile - every two weeks there's a new five year plan" // Will Whittaker
Huenry Hueffman "I fucked up Git so bad it turned into Guitar Hero"
Lingua Scripta
Stanford CS department updates introductory courses: Java is Gone Since most people get a CS degree in order to work in the industry, schools need to pick practical languages. UC Berkeley, for example, starts with Python. Where do other schools stand?
The SIGCSE-Members list recently polled all of their members to talk about what they’re currently teaching. The final spreadsheet of results is here. Python appears 60 times, C++ 54 times, Java 84 times, and JavaScript 28 times. I was surprised to see how common C++ is, and if Java is dying (or “showing its age,” as Eric Roberts is quoted below), it’s going out as the reigning champ.
Async iterators and generators Using async iterators to read from a stream, as simple as:
async function getResponseSize(url) {
const response = await fetch(url);
let total = 0;
for await (const chunk of response.body) {
total += chunk.length;
}
return total;
}
Bodil Another JavaScript curiosity that didn't age well:
Here's a fun JS thing @brianloveswords showed me:
let x=5;
let y=1<!--x;
What are x and y after evaluation?
Why?
Are you crying yet?
Lines of Code
NodeJS and Good Practices I'm no fan of complexity dependency injection, but if it helps you tame complexity:
In software development, a responsibility is a task that a unity is committed to achieving, for example: represent the concept of a product in an application, handle network requests, persist a user in the database, and so on and so forth.
A quick look at reduce, foldl, foldr, and associative order "In sum, the order of consuming values and the order of associating a folding function are two separate concepts."
RE: A revolution in audio rendering When audiophiles write software:
found that a function called memcpy was the culprit, most memory players use memcpy and this is one of the reasons why memory play sounds worse ie digital sounding. Fortunately there is an optimised version of memcpy from http://www.agner.org/optimize/, using this version removes the hard edge produced by memcpy. the other thing I did was to close the file after reading into the buffer.
Christian Rebischke "So that's the trick.. 🤔"
Architectural
The Rise of the Data Engineer A new specialization:
Unlike data scientists — and inspired by our more mature parent, software engineering — data engineers build tools, infrastructure, frameworks, and services. In fact, it’s arguable that data engineering is much closer to software engineering than it is to a data science.
People use the word "monolith" as a epithet, but if your boundaries need to be easy to change, a monolith is your best architecture choice.
The next time someone presents an architecture idea, ask how does it perform in the presence of existing code that doesn't play into it?
Peopleware
The 15-minute weekly habit that eased my work anxiety—and made my boss trust me more Management is a two-way street:
The approach was simple. Every Friday afternoon, I’d send my boss a short email with three categories:
- The work I had completed that week
- What I was working on, including any deadlines that may have shifted or obstacles I’d encountered
- What I was waiting on—that is, tasks that I’d completed, but require sign-off from my boss or contributions from someone else
Jeff Bezos' 2017 letter to shareholders How to run a company at high velocity:
“Day 2 is stasis. Followed by irrelevance. Followed by excruciating, painful decline. Followed by death. And that is why it is always Day 1.”
And also:
Second, most decisions should probably be made with somewhere around 70% of the information you wish you had. If you wait for 90%, in most cases, you’re probably being slow.
Parand Darugar Then again:
Everybody generalizes from too few data points. At least I do.
Locked Doors
A 3D-printed key that can’t be copied The lock pattern is 3D printed on the inside!
Chrome and Firefox Phishing Attack Uses Domains Identical to Known Safe Sites Upgrade to the latest Chrome, see the article on how to fix in Firefox, doesn't affect IE/Safari.
A Remote Attack on the Bosch Drivelog Connector Dongle If you have an older (read: hack-proof) car, don't fret: Drivelog Connect is quite affordable and properly insecure.
Abusing NVIDIA's node.js to bypass application whitelisting The shortcomings of application whitelisting, as illustrated by NVIDIA's Web Helper app.
Malware Unicorn "This should replace hacker stock photos"
Artificially Intelligent
The Dark Secret at the Heart of AI "No one really knows how the most advanced algorithms do what they do. That could be a problem."
AI programs exhibit racial and gender biases, research reveals Well before AI rises to eradicate the human race, it will ruin us from the inside:
Machine learning algorithms are picking up deeply ingrained race and gender prejudices concealed within the patterns of language use, scientists say
by today's definition, y=mx+b is an artificial intelligence bot that can tell you where a line is going
None of the Above
Mr Bones "Do not feed the birds adderall"
The numbers for the Science March seem high but we won't know until we compare it to the numbers at the placebo march that's also happening
World’s “Mattest and Flattest” Black Paint is Now Available for All Worldwide TIL artists are fighting for who can use the blackest of black colors.
Showerthoughts Every "Millennials are …" article ever:
Most people hope their kid's future will be easier, but most people also get mad at the younger generation for having it too easy.
Patrick Dalton "Pound shop gold. The instructions are the greatest thing I've ever read."
Google Plans Ad-Blocking Feature in Popular Chrome Browser I'm going to guess … Google ads … would not be blocked …?
ever since I was made aware that the word "homeowner" contains "meow" in it I am incapable of reading that word without thinking about it
Sleep Is the New Status Symbol "Sleep today is a measure of success, a skill to be cultivated and nourished." I've been preparing for this moment my entire life.
@DrewTumaABC7 How to report the weather:
Emoji Forecast: 👍🏻👍🏻overall; need 🌂 then 🕶
Wed: 🌤➡️🌧(at night)
Thu: 🌤➡️☀️
Fri: ☀️🌡⬆️
WEEKEND: ☀️😎👌🏻
Mon: 🌤
Tue: ⛅️
Flying Snoopy Doghouse Remote Control Quadcopter Drone Not quite flying car, but close enough.