Published
Weekend Reading — Taco Cat
@CuteEmergency "just a little reminder that taco cat spelled backwards is taco cat"
This week we discover the simplest way to run Docker on OS X; we learn how to hide bugs in plain sight; that order of operations matters; why humility helps us avoid catastrophe; how to remote disable AirBnB spycams; the challenges of leading in tech; and the secrets to parenting a princess.
Design Objective
- Approach each problem with a beginner’s mindset.
- Compare multiple solutions before committing.
- Prototype to build understanding.
Tools of the Trade
nlf/dlite Probably easiest way to use Docker on OS X. Kick boot2docker to the curb.
inikulin/elegant-status Create elegant task status for CLI.
RxJS is great. So why have I moved on? Another success story for ClojureScript:
There are tons of great UI developers that can build great work with React and JS. 85% of our development time for our web app at Capital One is building UI. We don’t need a huge barrier for entry to get great developers doing great work in our web app. With ClojureScript they don’t even need to know they are using ClojureScript.
But also — confirmation bias alert! — insular developer syndrome?
I’m the only front-end developer that needs to know ClojureScript when the rest of the devs just use JavaScript.
My kids' favorite HTTP status code is 204 OK BUT
Lingua Scripta
I like arrow functions as much as the next person, but they are NOT just shorthand for function #knowthedifference
Lines of Code
Juniper's Backdoor Password Disclosed, Likely Added In Late 2013 I'll cover the cryptographic implications later, but first, let's learn how to hide a bug vulnerabilty in plain sight:
The argument to the strcmp call is <<< %s(un='%s') = %u, which is the backdoor password, and was presumably chosen so that it would be mistaken for one of the many other debug format strings in the code. This password allows an attacker to bypass authentication through SSH and Telnet, as long as they know a valid username.
Cooking is just like programming. You follow an algorithm, and once you try to make an optimisation you screw everything up.
Architectural
Good Mail Sorting Whenever state is involved, the order of operations always matters:
Code that enumerates files and then moves them around is much harder to screw up catastrophically than code that is responsible for data that only exists in main memory.
@denormalize "This Dijkstra quote perfectly represents my views on JavaScript frameworks + build tools"
Simplicity is a great virtue but it requires hard work to achieve it and education to appreciate it. And to make matters worse: complexity sells better.
-- Edsger W. Dijkstra
Peopleware
The problem with most engineering projects – particularly complex, highly coupled, high performance, extreme environment engineering projects –is that there are too many issues to deal with. … There is never enough resource (time, people, money) to get to the depths on all the issues that are out there. By their very nature, complex problems require priority setting and resource allocation.
So what do you do?
Or you can just remember to think “I’m not as smart as I think I am.” Properly applied, that can work too.
Meritocracy or Bias? Hopefully this will settle it once and for all:
research findings suggest that the definition of meritocracy used by white people is far more fluid than many would admit, and that this fluidity results in white people favoring certain policies (and groups) over others.
Programmers: “It’s ridiculous when managers make decisions about things they don’t understand. That’s why we shouldn’t have managers.”
Locked Doors
Why 451? Why we need HTTP 451 Unavailable For Legal Reasons
.
On the Juniper backdoor And more here.
To sum up, some hacker or group of hackers noticed an existing backdoor in the Juniper software, which may have been intentional or unintentional -- you be the judge! They then piggybacked on top of it to build a backdoor of their own, something they were able to do because all of the hard work had already been done for them. The end result was a period in which someone -- maybe a foreign government -- was able to decrypt Juniper traffic in the U.S. and around the world.
Detect and disconnect WiFi cameras in that AirBnB you’re staying in
dropkick.sh
, based on glasshole.sh
, kicks DropCam cameras off the WiFi network.
Startup Life
What Are the Challenges of Leading in Tech?
Trying to understand your core customer, how many iterations of the product you have to go through, how you get the right economics for the business to work.
None of the Above
Colorado's new $225,000 iPhone killer.
Facebook Bends to Publishers, Tweaks Instant Articles Advertising Here's a new term that will help define websites for years to come:
The feature will ensure maximum ad load is reached for each Instant Article.
Why you should always buy the men’s version of almost anything
Another analysis from the University of Central Florida found women’s deodorants typically cost 30 cents more than the same product for men. Wrote the authors,“The only discernible difference was scent.”
1st lecture I ever gave, quizzed students on best strategy to profit in casinos. Lot of answers but noone got the right one: start a casino.
I get why a lot of people hate the whole princess culture aimed at little girls
But when I was a tiny princess, my dad used to be my royal advisor. He would come to me, and over tea we would discuss the problems of the kingdom. He would tell me that new people wanted to move to the kingdom, and ask me what we should do. Or he would tell me that the teddybears and the dolls were fighting over the enchanted forest, and ask me what to do. Basically, he took the trappings of the princess culture, and used it as a tool to teach me about leadership, civic responsibility, and compassion.
So if you have a little princess around, consider helping her figure out how to run her kingdom. There’s no sense in telling a kid they can’t be a leader, or that they can’t wear sparkles while they do it.
a wise woman once said "fuck this shit" and she lived happily ever after
@phaiidros "Machine learning"