Ninjas and Robots

Makes stuff. Previous: Founder of writing software Draft, CEO of Highrise. Also founder of two YC companies. Engineer for President Obama’s re-election campaign.

Page 13


Group email address. An original idea?

Immature poets imitate; mature poets steal; bad poets deface what they take, and good poets make it into something better, or at least something different.

T.S. Elliot

A bunch of folks have been asking for my reaction to 37signal’s recent product launch of Basecamp Breeze, a tool for creating a group email address like groupname[at]breeze123.com. A few years ago I created a tool very similar in spirit called Tgethr. You can easily create a groupname[at]tgethr.com.

I’ve even gotten condolences about 37signals copying my idea. :)

So I thought this would be a good opportunity to write a few thoughts on competition and copying ideas, especially since this is a real common area where people get stuck.

First of all, I highly doubt I was even in 37signal’s peripheral vision as they were planning Breeze. Even if they did get inspired by Tgethr, I’d be flattered.

If my idea isn’t worth...

Continue reading →


Faster Rails partial rendering and caching. 78% improvement of test application

Using a new gem I created, I was able to optimize a Rails action by 78% (152 ms to 34 ms). The gem takes advantage of Rail’s read_multi method to retrieve cached partials in parallel instead of the traditional route of sequentially fetching things from Memcached.


Syntax

Using this gem, if you want to automatically render a collection and cache each partial with its default cache key:

<%= render partial: 'item', collection: @items, cache: true %>

If you want a custom cache key for this same behavior, use a Proc:

<%= render partial: 'item', collection: @items, cache: Proc.new{|item| [item, 'show']} %>

Background

One of the applications I worked on at the Obama campaign was Dashboard, a virtual field office we created. Dashboard doesn’t talk directly to a database. It only speaks to a rest API called Narwhal. You can imagine the performance obstacles we faced building an...

Continue reading →


Fragile

On July 13, 2012, Alex Okrent died from a heart attack. I didn’t know him personally, but we both worked on President Obama’s 2012 re-election campaign, and I was in the office the day he collapsed. He was only 29.


Many readers of this blog don’t know about this part of my life yet. After starting a second company, I wasn’t getting enough traction in a few things I had been experimenting with. In the middle of starting a new project, a friend of mine, Harper Reed, CTO of Obama for America, asked if I could put things on pause briefly and help with the campaign. There were a bunch of reasons to consider it. But even selfishly, I realized it was probably a good idea for me and my fledgling business to meet some new folks to collaborate with as well as see some more real world problems organizations and people are having that I could solve after the campaign. I’ve been in a pretty small...

Continue reading →


Personal Development: Lessons from Charles Tillman

Always be peaking.

Charles Tillman, cornerback for the Chicago Bears

I spotted an article a few weeks ago written by Jack Silverstein in Chicago’s Redeye about Charles Tillman, who plays cornerback for the Chicago Bears. In other words, he plays defense on an American football team.

Tillman has been gaining more and more fame lately. A big reason for that is his continual record breaking ability to create turnovers from the opposing team, which he still accomplishes at the age of 31 when the average career of a cornerback is just 3 years.

The article was interesting because it opened my eyes to how inspiring this guy’s work ethic and values are to folks who have nothing to do with sports.

A couple great bits:

“He ‘sucks’ in practice early in the week”

Tillman forces himself to find a new peak each week. He and his coaches place him in situations where he’s losing and screwing...

Continue reading →


Thank You

A little over 7 months ago I started blogging here on SVBTLE.

I just wanted to thank everyone who’s made the experience awesome.

Thank you for all the kudos, the comments on Twitter, the emails letting me know what you think, and for spending part of your day reading these words.

I blog about things that interest, delight, or confound me personally, but it’s you that keeps me motivated to keep sharing. I appreciate that more than I can properly articulate.

Have an awesome day today. I hope you find some time to relax with friends and family and enjoy yourself.

Thank you!

-Nate

P.S.

If you’re in Chicago and find yourself wanting to share a meal today with some new friends, this was a neat event that’s coming to Chicago today from The Laugh Factory.

 

Our yearly tradition of serving over 2000 turkey dinners along with good spirited comedy performances to the people of Los...

Continue reading →


Facebook Pages: Why I don’t like Nest thermostat or anything else anymore.

A few months ago, my wife told me something about, “I saw you liked Nest on Facebook.”

“Oh, yeah. The thermostat. I guess?” I told her. When the Nest thermostat first came out it seemed like a pretty neat and innovative idea. I didn’t have one myself, or any plans to buy one immediately, but I thought it might be a decent idea to “Like” their Facebook page. After all a like goes into my Facebook stream or the streams of my friends, and helps spread the word that I thought this was kind of cool. Also, liking the page will allow for some Nest news to end up in my timeline so I can follow these folks and the cool stuff they’re working on.

But what’s weird is that my wife is telling me this now. I think I liked the Nest Facebook page maybe an entire year ago? Whatever. I brushed it off.

Then a month later, my wife tells me I liked the Nest page again. Huh. That’s weirder. I brushed it...

Continue reading →


Please believe in the wisdom of our crowd.

I definitely don’t spend a lot of time talking about politics here.

I know we see things differently.

I know the problems are infinitely complex.

But I do believe in the wisdom of crowds.

I’ve seen the results. I’ve seen the math at a company I helped build, Inkling, that provides a software tool enabling the wisdom of crowds for companies and consumers.

We do make better decisions when we apply our wisdom together.

But it only works when we aggregate in quantity the diverse expertise, thoughts, and opinions we have around us.

So regardless of our views of politics and whether we agree, it’s insanely important to have your input counted.

Please vote.

And encourage your friends to.

View →


10000 hours

A couple weeks ago, the hip-hop artist Macklemore released an album, The Heist, containing the song 10000 hours.

I’ve been a big fan of Malcolm Gladwell, journalist and author of a few popular books you’ve probably read or at least heard of. Things like The Tipping Point or Outliers.

In Outliers Gladwell makes readers aware of the “10000 hour” rule. It’s not a rule he invented, and it’s more like a “rule of thumb”.

If you want to be great at something, it’s probably going to take 10000 hours of practice.

So it was neat to see the 10000 hour rule, Gladwell and a few other names of people whose work is important to me inscribed in a song which describes some of the struggle that went into Macklemore’s career and creating the album this song is on.

Even if Macklemore isn’t your music of choice, it’s still pretty damn cool to see a song inspired by Malcolm Gladwell’s work.

...

Continue reading →


Retractable tarp system for trucks - an innovative idea

The other day walking to the office I spotted this.

IMG_0959.jpgIMG_0961.jpg

I hadn’t quite seen something like that before. A truck that has a retractable, accordion-like body that entirely collapses. Seemingly to be able to get at that cargo from every direction you possibly can.

Sounds like a very useful thing even for trucks in smaller sizes like home moving trucks. I’ve used a moving truck a few times, and the back of the truck isn’t always the most convenient place.

For example, the back of the truck sometimes seems to slow people like professional movers down. If you’ve ever watched a truck being unloaded, there’s often a guy waiting outside the truck while others are occupying the back unloading a piece of furniture. It seems interesting what would happen if you removed that choke point and gave movers the ability to get stuff off the truck from all sides.

What’s also interesting to me is how...

Continue reading →


Rails Caching: A problem with etags and a solution

A few months ago I blogged about a problem I was having with busting the http caching Rails does. That post had a pretty naive solution, and I wanted to provide an update to raise a bit more awareness of the problem and a better solution.

First, I’m a bit surprised that this isn’t a problem folks are talking more about.

The basic gist of the problem is: when you use Rails http caching using something like fresh_when in your controllers, simply deploying your application will break the styling of your application for anyone who has one of your pages already http cached. Let me show you what I mean with a super simple application.

All this application does is render a simple view, and makes sure to set an etag.

class WelcomeController < ApplicationController
  def index
    fresh_when(etag: "VERSION_1")
  end
end

In your app the fresh_when likely wraps around an object and uses...

Continue reading →