Incentives matter

The tech sector’s obsession with user engagement is like quantifying health by measuring total calories consumed.

In case it’s not obvious: this is a bad thing. Let the renewal begin.

First Arduino project: distance alarm

Amazingly, our refrigerator doesn’t have an alarm for when you accidentally leave the door open.

In the last six months, we’ve left the refrigerator door open overnight three times. Because the light stays on when the door is open, another horrible design decision, the refrigerator thermometer hits 107°F by the time I notice it in the morning.

At yesterday’s inaugural PDX Raspberry Pi and Arduino meetup, I prototyped my solution to the problem: an alarm for accidentally leaving the refrigerator door open.

Using a Parallax Ping Ultrasonic distance sensor, the Arduino board detects its distance to the nearest object in front of it. If there’s nothing within 2 inches for greater than 5 seconds, then the Arduino board uses a piezo buzzer to make some noise. The system resets when an object is placed within 2 inches again.

On a whole, I was surprised how quickly I got up to speed on Arduino. My “Hello World” project, blinking a LED diode, took about 10 minutes to complete. This distance alarm only took 20 minutes beyond that, with a little bit of guidance on what hardware to use and access to tutorials on how to use it.

Up next: figuring out how to miniaturize the entire setup so I can put it in a small housing and deploy to production (aka use it in my home).

Four short links – April 5, 2018

TV worth watching, urban experiments, and open source sustainability.

  1. Lessons from "The Profit" (Marginal Revolution) — I hardly watch TV but I'm going to binge so hard on this series.
  2. The big experiment at Plaza 122 (Bridgeliner) — To buy in, neighborhood residents first have to participate in a financial literacy class, which is available in Spanish, Vietnamese, Arabic, and Russian. After completing the course, they can make micro investments of $10 to $100 in the plaza each month. With enough of these investments, the community will eventually own Plaza 122 in full. So cool! You should subscribe to Bridgeliner.
  3. One City: Many Futures / Better Block PDX (Design Week Portland) — Can we make this bike lane better, on a budget that's slightly more than beer? "Street prototyping" as disruptive policy innovation.
  4. Open source sabbatical = awesome (Julia Evans) — Sabbaticals as a model for open source sustainability.


Thanks to the generosity of WP Engine and DreamHost, I now have a good amount of time to dedicate to Gutenberg over the next few months.

Of particular interest: using automated systems to ensure an exceptional day one (and two and three) user experience.

Lots of problems to solve between now and then — looking forward to diving in!

Nothing is sacred

What’s wrong with voting?

Although voting seems like an intuitive concept, there are a few major flaws that seem to be getting worse over time.

Voting is never truly representative

We assume voting is fair because it vaguely reflects some total population that we are trying to represent. It’s impossible to exactly pin down what “representative” means. (Similar demographics, interests, incomes, ideologies? All of the above?)


Voting is a competitive game

Voting is a zero-sum game, meaning that whomever wins does so at the expense of someone else. As a result, voting promotes competition, not cooperation. Players might coordinate as a means of gaining an edge (“if you vote for X this time, I’ll give you Y next time”), but ultimately, “winning” the vote means beating someone else.


So. We have our current system, and we’ve identified some emerging problems that we need to solve for. What does that look like?

Designing for cooperation, not competition

If you’re an avid board gamer, you’ve probably come across a cooperative game or two, like Pandemic or Forbidden Island. In a cooperative game, you work with, rather than compete against, your fellow players to achieve a shared outcome…

Nadia Eghbal – The problem with voting

Effective product management

Too many projects go off the rails, and it always relates to:

  1. Deliverables.
  2. Timeline.
  3. People

Successful projects are a harmonious balance of these three attributes. Every failure is the result of some leg of the stool not holding its weight.

But all is not lost! A project can recover at any point by revisiting its first principles, and closing the identified gaps. Simply ask yourself some guided questions.

Have we identified all of the work to be completed?

Project management is the art and science of getting people to work together. And the more people involved in a project, the more challenging it is to get them headed in the right direction.

The project manager takes ownership of ensuring the project is deconstructed to its requisite components, and those tasks are delegated to their relevant parties. Any failure in this process is a failure of the project manager.

Identify the work to be completed, and make sure someone is responsible for it.

Does everyone have the information they need?

Communication is the most important skill for a project manager. It can make or break the entire project. It's the single most important fulcrum in the whole process.

The tool itself doesn’t matter. Slack, email, Zoom, Google Spreadsheets, Basecamp, Asana, and Jira are all forms of communication.

Communication ensures everyone knows what they need to know.

But this sounds like a bunch of heady mumbo jumbo?

You’re right. It’s up to you to translate these principles to the real world.

New person cc’ed into an email thread? Reply with a recap of the project to bring them up to speed.

Details and nuance getting lost in text? Offer a catch-up call to take advantage of higher-bandwidth communication.

Something not getting done? Make sure the task is actually defined, that there’s a person responsible for it, and that the person is capable of completing the work in the time allotted.

Leading a meeting? Share the agenda for review beforehand, set time limits for each discussion, and identify key takeaways and next steps that serve as the tangible results for the meeting.

General confusion about the project? Synthesize key details into a document everyone has access to, and keep it up to date.

Keep it up!