Weekend Reading — Ice Bucket Challenge Ends Badly
@braddybb "oh my good god"
This week we get a new pair of socks; the
====comparison operator; we fix a bug in production; the tale of a startup with no servers; cryptomeopathy is bunk science; on lowering the bar and diversity in tech; boatload of people take the ice challenge – ends horribly.
Tools of the Trade
heroku/react-refetch A simple, declarative, and composable way to fetch data for React components (Background)
Daplie/node-letsencrypt Automates Let's Encrypt certificates for Node.js/Express.
BDDon’t We need to distinguish between "behavior" as the right abstraction for testing, and BDD frameworks like Cucumber, which are just horrible ideas:
It’s easy to construct a seemingly valid (from a user perspective) scenario that nevertheless won’t work because of the underlying dependencies. It’s tempting to write clever steps that sidestep these problems with conditional logic and defaults, but this quickly becomes a dark rabbit hole. By the time your test code is clever enough to handle whatever can go wrong, it will be as complicated as your application itself.
howdyai/botkit "Botkit designed to ease the process of designing and running useful, creative or just plain weird bots (and other types of applications) that live inside Slack!"
Choosing an HTTP Status Code — Stop Making It Hard Surprising how many developers are still confused by the proper way to use HTTP status codes. Maybe this will help.
B2 Cloud Storage BackBlaze is my favorite backup tool, and they just released a new product for cloud storage. An S3-like API for storing content at a fraction of the cost.
Four years of Schema.org - Recent Progress and Looking Forward "Structured data markup is now a core part of the modern web." Yet, you won't find any structured data on Google's own web pages.
d3.compose I like how the chart builds up, as you scroll down through the code examples. What a fantastic way to teach by example.
Netflix socks pause your show automatically, so you never miss a moment
Observations on Promises Think of promises as a dependency graph of deferred values.
Babel and CommonJS modules The differences and similarities.
'=====' is a good comparison operator to avoid type coercion and for checking if object is down to netflix and chill. #js #protip
Lines of Code
Why Don't Schools Teach Debugging? Such a fundamental skill to software development and computer science:
Why do we leave material out of classes and then fail students who can’t figure out that material for themselves? Why do we make the first couple years of an engineering major some kind of hazing ritual, instead of simply teaching people what they need to know to be good engineers?
Less comments, more structure - a proposal for self explanatory code The one simple trick that will make your code easier to write, read, and maintain (and if you don't localize the functions, also easier to test).
Don't confuse familiarity with simplicity. Scary things you don't yet know are sometimes far simpler than the hard things you already know.
Two big things I've found that help me lately is enforcing code standards with eslint, and writing tests. No surprise really.
@JonathanDeMoor "When you fix a bug in production."
The Serverless Start-Up - Down With Servers! Using AWS Lambda to build a startup that has no servers per se.
This was another of my Aha! moments: Everyone knew broken builds should be fixed quickly. No one did it. Introduction of a completely irrelevant stimulus/challenge caused people to behave correctly. Reason could not counteract unreasonable natural inclination, but a different unreasonable natural inclination could.
Secret Code Found in Juniper’s Firewalls Shows Risk of Government Backdoors
This is a very good showcase for why backdoors are really something governments should not have in these types of devices because at some point it will backfire.
On Encryption and Terrorists When encryption is little understood, it's seen as black magic, rather than a useful tool:
Ford and Toyota build automobiles so that the entire world can have access to faster transportation and a better quality of life. If a terrorist is suspected of using a Toyota as a car bomb, it’s not reasonable to expect Toyota to start screening who it sells cars to, or to stop selling cars altogether.
People ask me "How come all the hackers of these big companies are kids?" You should ask "How come it's only the kids that get caught?"
@staatsgeheim "Applied Cryptomeopathy" This term needs to be part of our lexicon when talking about the politics of cryptography.
The "Just F**king Do It" Manifesto
When I come across teams who have almost no say in how they do their work, there's usually a long backstory of micromanagement leading to disappointment leading to even worse micromanagement, until developers have to go through a long chain of command to get a pack of index cards.
Perhaps the most important startup equation? (Constant improvement trumps all)
Lowering the bar
Now, I know for a fact that “bars” get “lowered” for some candidates, because people have lowered the shit out of them for me many times. I’m white, I speak the nerd argot (see?), and I taught myself to code when I was 12. Because of this, every company I’ve ever interviewed at has overlooked the fact that I don’t have a college degree, my GPA both in high school and in the brief period that I was actually in college was abysmal (2.0ish, for reference), I routinely flake out on work to go hiking or bike-riding for months at a time, and – as a small degree of probing would uncover – my organizational skills are pathologically bad.
Silicon Valley’s Diversity Problem is Not a Myth Anecdotes is not a good framework for hiring.
A Modern Day Take on the Ethics of Being a Programmer
When someone on a platform that we helped build and are responsible for maintaining is being hurt by other people on our platform, through our platform, are we ethically obligated to do everything in our power to try to fix it? Even if it’s really hard? Even if we might fail?
None of the Above
#ExplainAFilmPlotBadly Paranoid billionaire afraid of immigrant
I'm just sayin', everyone that confuses correlation with causation eventually ends up dead.
Placebo effects are weak: regression to the mean is the main reason ineffective treatments appear to work What medicine gets wrong by confusing correlation and regression to mean.
Untangling the Tale of Ada Lovelace Fascinating story!
I suspect she was something of a nerd, complete with math jokes and everything. She was also capable of great and sustained focus, for example over the months she spent writing her Notes.
Who Y Combinator Companies Want A survey of hiring preferences in Y Combinator startups.
Boat load of people take the Ice Bucket Challenge. Ends horribly. #ExplainAFilmPlotBadly