Concurrency, Complexity, and Composability

Who should and should not be talking to your fridge? by Gilad Rosner
The dream of the IoT becomes a dystopian nightmare if anyone can mine your IoT data exhaust.

Why is Concurrent Programming Hard? by Stefan Marr
Try summarizing the article while reading all its sentences at the same time.

The 30,000 futures of the brain by Adam J Calhoun
A long, fascinating read on advances in neuroscience research.

The ‘Metaform’ – The Platform of Everything by Jonathan Murray 
Great word. It’s services all the way down.

The Crummy Pillow Paradigm

Bob Borson writes

If you think that you can’t be a part of the solution, you never will be. In fact – and possible even worse – you stop seeing the problems.

Mindset is everything.

I’ll add that I am always saddened when I work hard to find a solution to problem only to learn that the problem was ill-defined. What a waste!

A clearly articulated problem liberates the mind.

Image via

The Rise of Distributed Autonomous Companies

David Morris has a thought provoking post about Distributed Autonomous Corporations (DACs) on Aeon:

When everything from your alarm clock to your car is managed remotely through the global network, autonomous cloud robots will run free.

DACs should make us think about the immediate consequences of the rapidly accelerating automation of our economic system.

They sound like science fiction, but we may all have DACs soon due to an increasingly complex legal and regulatory environment.

Continue reading The Rise of Distributed Autonomous Companies

Not Everything Has to be Great

Andrew O’Hagan’s article in the Times Magazine travel section bemoans our distaste for adequacy in an era of awesome:

Not just in travel, but in terms of food, fashion, music, business ideas and design, the lovely, enabling idea that things can just be “fine,” is under threat. Nothing’s allowed to be fine because, to the hyped-up mind, “fine” sounds quite a lot like “mediocre.”

Not everything has to be great… In my slow but persistent bid for the reader’s sanity, I hereby prescribe a period of allowing things to be adequate.

I fall victim to the Cult of Awesome: I search endlessly for the perfect product with every trivial Amazon order; I spiral cut my hot dogs; I hand grind the coffee for my Aero Press; I Instagram. Why?

Striving for the excellent and awesome is the way to go. But I think it is important to rein it in and accept how rare awesome is. Everything is marketed as if it is awesome, but most things aren’t. Android vs iPhone; Coke vs Pepsi, french press vs pour over. Having a choice between two things doesn’t necessitate that one is fine and one is awesome. Typically both things are fine at best.

I want to recognize this false dichotomy and allow things to be adequate. Doing so will save my time and energy and ensure that I am aware and ready when an opportunity for awesome finally shows itself.

More Big Data for Credit Scores

This recent press release for FICO’s Model Builder for Big Data reminded me of the work I did last year for the Thomson Reuters Text Mining Credit Risk model. It’s nice to see that other organizations are using big data tools and unstructured text in credit analysis.

Picture of Data


Model Builder for Big Data brings proven machine learning and statistical data mining to Big Data for the first time, enabling analysts to find the predictive signals hidden in huge and challenging data sources. Its state-of-the-art text mining capabilities, unique Semantic Scorecard formulation, and embedded Lucene and Tika indexing and extraction libraries, provide powerful mining of text from a wide variety of document types, and boost the predictive strength of its transparent, easily understood scoring formulas. Model Builder for Big Data also integrates Apache Hadoop, the open-source framework for scalable, reliable, distributed computing and storage, and works with Cloudera’s proven, enterprise-ready Hadoop distribution. Along with new support for the popular R language for statistical computing and graphics, Model Builder brings a breadth and depth of functionality for Big Data that is both scalable and cost-effective.

Roasting Coffee with a Popcorn Popper

Roast your own coffee at home

I’ve been roasting coffee off and on for a while now with my popcorn popper. So far the results have been inconsistent, but the good batches have inspired me to keep trying. I plan on taking a systematic approach to coffee roasting to better understand what makes for a good batch on an air popper.

Catch the chaff that comes off the beans as they roast

I’m using a Poppery II air-pop popcorn popper. It was a five dollar purchase at a thrift store, which was a bargain, especially compared to a real coffee roaster. If you want to try it out, get the kind of air popper with spiral air vents so you can get a vortex of hot air that spins the beans around. Some poppers just shoot the hot air straight up and this doesn’t work as well.

Air poppers with spiral vents work best

I purchased some green Brazilian beans and some Sumatran beans from Mr Green Beans in Portland. While roasting I’m keeping track of several parameters, including 1)  the type of bean, 2) the amount of beans per batch, 3) the duration of time until first crack, 4) the duration of roasting after first crack, and finally  5) the amount of time the beans rest between roasting and brewing.

Green beans in canister

Currently I am roasting 45g of beans per batch. I typically use 22g of beans per cup of coffee, so this is enough for two cups at a time, and the amount fits nicely in my little canisters. The Brazilian beans are smaller than the Sumatran ones, and they give off much more chaff while roasting. Since they’re smaller, they take less time to get to first crack, about 3:00, while the Sumatran ones take an extra 30 seconds. I’m not sure yet how long I should roast after first crack to get a good flavor.

Recording coffee roasting parameters

I record all of the settings on the little storage canisters with a grease pencil. After brewing the coffee I rate the batch 1-5 and note any of its special qualities. It takes about 45 minutes to roast all eight canisters worth of coffee. I hope that I can speed things up once I have a better understanding of how to best roast the beans.

All the coffee is roasted and ready to go

I’ll follow up in future posts on what roasts well in the air popper.