Labnotes

Weekend Reading — How coffee works

Published on

This Photograph of the NYC Winter Storm Looks Like an Impressionist Painting

Back from vacation. This week we add a feature and "it should be pretty easy"; gulpfile is lore; 2 unit tests and 0 integration tests; framework is a unit of time; USA vs USB; the server has gone to "the cloud".


Design Objective

SVG Path animated Text Cool.

Super Mail Forward : an email that evolves as you forward it A silly thing you can do with HTML email by exploiting email client quirks.

@iainthomson "What computer users see in security warning boxes"

@GonzoHacker

We choose to do this not because it's easy, but because a product manager said it "should be pretty easy."


Tools of the Trade

jiahaog/nativefier Create a desktop application for any web site. Uses Electron and works on Windows, OSX and Linux.

Jam3/devtool Runs Node.js programs through Chromium DevTools.

dspinellis/gi Git-based issue management. Interesting because it's a Bash script, a well designed one, good way to learn some Bash.

ellotheth/pipethis "I would have called it stop-piping-the-internet-into-your-shell, but that seemed too long"

A Visual Introduction to Machine Learning Very slick and quite informative.

ben174/git-draw Click and draw your Github heatmap.

Browser Fairy If you're using multiple browsers, e.g. one for work and one for personal use (OS X).

ncrocfer/whatportis Command line tool to search port names and numbers.

@HenrikJoreteg

Avoid framework fatigue, JS fatigue, and ${otherFatigue} by building things instead of talking about building things 🎉

@patio11

The gulpfile we use is lore passed down to us. We do not understand & cannot reproduce it; we only know that changing it risks catastrophe.


Lingua Scripta

Does Curry Help? TL;DR JavaScript is not Haskell, and arrow functions are idiomatic in JS:

In JavaScript, the concept is alien. Most developers I’ve talked to find it difficult to grasp and hard to read. While you could argue it makes code simpler, it’s not close to hand enough to benefit many teams.

2016 - the year of web streams Streams are coming to the DOM, here's a quick intro.

@gavinjoyce Console output is no free lunch.

It sounds crazy, but disabling npm's progress bar yields a 2x npm install speed improvement for me

rstacruz/pnpm An incomplete, but faster alternative to npm, with an interesting file structure:

pnpm maintains a flat storage of all your dependencies in node_modules/.store. They are then symlinked whereever they're needed. This is like npm@2's recursive module handling (without the disk space bloat), and like npm@3s flat dependency tree (except with each module being predictably atomic).

@garethr This.

npm: when people said bundler or maven downloaded the internet this was not praise nor a feature request

@mcclure111

The blast doors were sealed, the oxygen depleting. They begged the ship's AI to explain. "Object object", was all the silvery voice replied.


Lines of Code

@rundavidrun "Show this to anyone who argues about whether that refactoring effort is worth the investment."

@garybernhardt

As you remove mutation, OO disappears, which is exactly what I've found over the last five years. (Assuming you don't use inheritance.)

@BobRossGameDev

If you're having a hard time programming, maybe try cleaning your desk or doing some stretches. Often times, the little things help.

Melody’s Guide To Programming Languages Haha.


Architectural

Seven Deadly Annoyances of API Design Naming. Naming. Naming. Bad docs. Versioning. Over complication. XML.

@HenrikJoreteg

Never underestimate an engineer’s ability to over-engineer something that probably didn’t need to exist in the first place.

@zachleat

proposal: make “framework” a standard unit of time

“I’ve been working at this job for 4.6 frameworks”


This is just a Test

How to do test reviews Readability, Maintainability and Trust.

Review EVERY piece of unit testing code, and use the following points as a simple check list of things to watch out for. (you’ll find this is mainly useful when working in statically types languages such as Java or C#).

@ThePracticalDev "2 unit tests. 0 integration tests"


Devoops

@sadserver

What's your favorite server monitoring tool and why is it your users?

@J4vv4D

"We have a problem."

"Remember, there are no such things as problems, only opportunities."

"Well then, we have a DDoS opportunity"


Locked Doors

@thegrugq "We do client side filtering."

High-severity bug in OpenSSL allows attackers to decrypt HTTPS traffic Another day, another OpenSSL security vulnerability.

ShmooCon: LastPass design elements create perfect Phishing opportunity The problem with password managers that live in the browser.

AWS Certificate Manager – Deploy SSL/TLS-Based Apps on AWS Another major step towards $0 HTTPS certificates.

Amazon’s customer service backdoor Customer support is the weakest security link in many of the services we use:

For users, be extremely careful with the information you share. Even big companies like Amazon can’t keep it safe, they’re far from the worst.

The Web Never Forgets: Persistent Tracking Mechanisms in the Wild "We present the first large-scale studies of three advanced web tracking mechanisms — canvas fingerprinting, evercookies and use of “cookie syncing” in conjunction with evercookies." (PDF)

@mikko


Peopleware

@corey_latislaw

Some days getting dressed is scope creep.


None of the Above

@rfbrazier

“How likely are you to recommend this survey to a friend?”

AdNauseam Instead of blocking ads, attack at the source:

Working in coordination with your ad blocker, AdNauseam quietly clicks every blocked ad, registering a visit on the ad networks databases. As the data gathered shows an omnivorous click-stream, user profiling, targeting and surveillance becomes futile.

Cat Cosplay of the Feline variety Is a thing that exists.

The Best Damn Coffee Product Hunt for coffee lovers.

@jreuben1 How coffee works:

Inside the Eye: Nature’s Most Exquisite Creation

@KFRGFrogatelli

My mom asked me how to screenshot on her phone. I laughed and then remembered she taught me how to use a spoon and toilet.

@carlfish

A few years later, the parents in this book had the awful job of explaining how the server had gone to "the cloud".