Reading The Next 93 – A goal for 2017

Looking back on 2016, I think there are many accomplishments to be proud of. Speaking in front of 1800 at re:Invent is a specific highlight, but there is something else that is even more magnificent in my eyes. This past year saw my awakening to reading.

OK, I could read before. But I read for information, to learn something specific. This year I read for fun. Reading became something I enjoyed. And even better, this year was the year I discovered the power of the Public Library. Yes, I had been to libraries before, but I did not love them like I do now. Today my local library is the Connolly branch of the Boston Public Library system and in a few months I will be able to start using the library almost across the street in Jamaica Plain (it’s been under renovation since we moved in to the neighborhood). I am so excited.

This year I think I read about 50-60 books. Before, the average for the year might be 1 or 2. But I couldn’t tell you what most of this year’s books were. Sure, “Fire in the Valley” and “Deep Work” stick out in my mind. So does the amazing story of a possible CIA agent captured in the Iranian revolution called “Off the Radar”, written by his son. Yes, those stick out, but the rest are mostly gone. Boston Public Library has a feature that will record your checkout history, but it doesn’t work. GoodReads has an integration with the BPL app, but its a manual step that I forget to click. I need to get better at this.

So that is a goal for 2017. The goal is to write a little summary of what I read. This will force the memory to last a bit longer than it does today. And the corollary goal is to read the books that I have. Sure, the library will continue to tempt me with stories and facts but I have my own library that I have neglected for years. So I have created a list of books that I want to tackle for 2017. Some are books that are currently checked out from the library, others are books we own. Some came from me, others from my wife. Some I have read a few chapters of, others have sat unopened for decades. I intend to read them. All of them?? I don’t know. But I would like to review this list in a year and see how I did. So here is the list for the me of 12 months forth:

Books that my wife and I have checked out right now that I am eager to read

  • The Making of the Atomic Bomb – Richard Rhodes
  • Titan: The Life of John D. Rockefeller, Sr. – Ron Chernow
  • Creative Schools: The Grassroots Revolution That’s Transforming Education – Ken Robinson
  • Hero of the Empire: The Boer War, a Daring Escape, and the Making of Winston Churchill – Candice Millard
  • Song of the Dodo: Island Biogeography in an Age of Extinctions — David Quammen
  • The Fish That Ate the Whale: The Life and Times of America’s Banana King – Rich Cohen
  • How Not to Be Wrong: The Power of Mathematical Thinking – Jordan Ellenberg
  • A Mind For Numbers: How to Excel at Math and Science (Even If You Flunked Algebra) – Barbara Oakley
  • The Lost Art of Finding Our Way – John Edward Huth
  • The Pigeon Tunnel: Stories from My Life – John Le Carre
  • Pirate – Clive Cussler
  • Superforcasting: The Art and Science of Prediction
  • Craft of Research – Wayne Booth
  • HBR on Innovation – HBR
  • The Last Kingdom – Bernard Cornwell

Books we own and I want to reread

  • Accidental Genius: Using Writing to Generate Your Best Ideas, Insight, and Content – Mark Levy
  • The Code Book: The Science of Secrecy from Ancient Egypt to Quantum Cryptography – Simon Singh
  • Deep Work: Rules for Focused Success in a Distracted World – Cal Newport
  • Smarter Faster Better: The Secrets of Being Productive in Life and Business – Charles Duhigg
  • # Books we own, I have tried to read, but never finished
  • Black Tulip – Alexandre Dumas
  • The Anatomy of Error: Ancient Military Disasters and Their Lessons for Modern Strategists – Barry Strauss
  • Arabian Sands: Revised Edition – Wilfred Thesiger
  • Long Way Down – Ewan McGregor and Charley Boorman
  • Enders Game – Orson Scott Card
  • Hyperion – Dan Simmons

Books that we own but I never tried

  • Being Mortal: Medicine and What Matters in the End – Atul Gawande
  • The Book of Strange New Things: A Novel – Michel Faber
  • Golem and the Jinni – Helene Wecker
  • Gene: An Intimate History – Siddhartha Mukherjee
  • Emergence: The Connected Lives of Ants, Brains, Cities, and Software – Steven Johnson
  • Eden on the Charles: The Making of Boston – Michael Rawson
  • Moor’s Account – Laila Lalami
  • Power of Habit: Why We Do What We Do in Life and Business — Charles Duhigg
  • The Paying Guests – Sarah Waters
  • Papercuts Anthology: What Happened Here, Volume 1 – (our local bookstore)
  • Hidden Life of Trees: What They Feel, How They Communicate—Discoveries from a Secret World – Peter Wohlleben
  • Race Underground: Boston, New York, and the Incredible Rivalry That Built America’s First Subway – Doug Most
  • Power of One: A Novel – Bryce Courtenay
  • The Winter People – Jennifer McMahon
  • The Writers Portable Mentor – Priscilla Long
  • Wanderlust: A History of Walking – Rebecca Solnit
  • Innocent Abroad: Life-Changing Trips from 35 Great Writers (Anthology) – John Berendt, Dave Eggers
  • Oregon Trail: A New American Journey – Rinker Buck
  • Cryptonomicon – Neal Stephenson
  • The CS Detective – Jeremy Kubica

Books that came from me before marriage but I never read

  • The Land That Time Forgot – Edgar Rice Burroughs
  • A Year in Provence – Peter Mayle
  • A Tramp Abroad – Mark Twain
  • Blue Latitudes: Boldly Going Where Captain Cook Has Gone Before – Tony Horwitz
  • The Back of the Napkin: Solving Problems and Selling Ideas with Pictures – Dan Roam
  • The Selfish Gene – Richard Dawkins
  • A Study of History, Vol. 1: Abridgement of Volumes I-VI – Arnold J. Toynbee
  • Snow Falling on Cedars: A Novel – David Guterson
  • Stuff: The Things The World Is Made Of – Ivan Amato
  • The Friar and the Cipher: Roger Bacon and the Unsolved Mystery of the Most Unusual Manuscript in the World – Lawrence Goldstone, Nancy Goldstone
  • Ever Since Darwin – Stephen Jay Gould
  • Lead the Field – Earl Nightingale
  • A Mathematician Reads the Newspaper – John Allen Paulos
  • Mediterranean Winter – Robert D Kaplan
  • Our Man in Havana: An Entertainment – Graham Greene
  • The Hotel on the Roof of the World: Five Years in Tibet – Alec Le Sueur
  • The Koran
  • Herodotus: The Histories
  • How the Irish Saved Civilization – Thomas Cahill
  • The Complete Sherlock Holmes, Volume I – Arthur Conan Doyle
  • Connections – James Burke
  • The Hedgehog, the Fox, and the Magister’s Pox: Mending the Gap Between Science and the Humanities – Stephen Jay Gould
  • Guns, Germs, and Steel : The Fates of Human Societies – Jared M. Diamond
  • Great Railway Bazaar: By Train Through Asia – Paul Theroux
  • Rendezvous with Rama – Isaac Asimov
  • The Razor’s Edge – W. Somerset Maugham
  • The Prince – Niccolo Machiavelli
  • The River War – Winston S. Churchill
  • Creative Habit: Learn It and Use It for Life – Twyla Tharp
  • God: A Biography – Jack Miles

Books that came from Toni before marriage but I haven’t had a chance to read

  • Thinkertoys: A Handbook of Creative-Thinking Techniques (2nd Edition) – Michael Michalko
  • The Cement Garden – Ian McEwan
  • Blank Slate: The Modern Denial of Human Nature – Steven Pinker
  • The Big Picture: Reflections on Science, Humanity, and a Quickly Changing Planet – David Suzuki, David Taylor
  • A Short History of Modern Philosophy: From Descartes to Wittgenstein – Roger Scruton
  • Spook Country – William Gibson
  • Secret History – Donna Tartt
  • From Abacus to Zeus: A Handbook of Art History – James Smith Pierce
  • Geek Love: A Novel – Katherine Dunn
  • Flight Behavior: A Novel – Barbara Kingsolver
  • Made to Stick: Why Some Ideas Take Hold and Others Come Unstuck – Chip Heath
  • Mere Christianity – C. S. Lewis
  • Power of Myth – Joseph Campbell
  • Path of Least Resistance: Learning to Become the Creative Force in Your Own Life – Robert Fritz
  • House – Tracy Kidder
  • How the Mind Works – Steven Pinker
  • Propeller Island – Jules Verne

Whew, thats a lot of books. I think if I tackle half of these plus a few dozen others I find at the library as I go, I will be quite happy. If you would like to follow along with my progress, I started using Libib to track this stuff:

Podcasts You Need To Listen To: 99 Percent Invisible

Every now and then I see reviews of podcasts. Actually they are more like lists of favorites. Lists of podcasts the author enjoys. I have almost written many such lists myself. But I am not sure I see the value. A list of dozens of resources, each with two sentences on what they mean to the listener doesn’t really tell me all that much about why I should listen. Surely there is more to a collection of 90 minute episodes than two sentences…a dozen or so words.


The Hand of Roman Mars Showing His Challenge Coin

So the list I am going to collate is more…or less. It’s not a list but a series of posts on “why” I listen to what I listen to. Let’s start with one of the best: 99% Invisible.

I think that most of the credit for the greatness of 99pi goes to its producer and the narrator of many of the stories: Roman Mars. I have no idea if this is in fact his real name. Roman Mars? Really? Sounds like a name dreamed up in a grade school writing class assignment…an assignment with low marks for not being believable. But thats the name he goes by.

Roman has this gift for finding the stories about the buildings, the events, and the times we all know and telling them in a way that is totally fascinating. Many of the stories have an architectural slant, but I have loved the show since well before marrying an architect…though now that I think about it, maybe I appreciate her more from what Roman has taught me.

Over the course of 5 or so years, Roman has made 188 episodes of this amazing show. 188 gems. You might wonder if he remembers every one of these shows. Well recently I got the chance to meet him at an event for show supporters held near the campus of Harvard University. There was a crowd surrounding him and somehow I wedged my way in. They asked about some of his more popular shows including one on flags (sure, it was a great episode, but definitely not in my top 10). He rattled off facts and trivia to help further fill out the stories.

And so I asked him if he remembered every show. Apparently the flag one is a bit of an edge case. After the first episode, he did it on the TED stage. It’s been watched 1.5 million times. That’s kind of a big deal. Yeah, if over a million people watched me say something, I would probably keep that top of mind too. But thankfully he revealed that he is human and there are shows that get forgotten quickly. Despite spending hours editing each show, hearing himself repeated over and over as he gets the audio just right, he can forget. Once someone asked him about a episode only a few hours old and he had no idea what the guy was talking about. Whew, good to know.

Anyway, the show. Being a podcast, listening to them out of order is very easy. Lets take the last episode I listened to: about the problem with New York’s Citibank building. This was actually a repeat of episode 110 but one of the best. I heard about the kerfuffle originally while living in New York in the late 90’s. And if the show covered only what was told in the original New Yorker article, that might be good enough. Hearing the voices of the parties involved put more life in the potentially disastrous scenario. But they didn’t stop there. They also solved the one mystery left in the story. They found the who in the whodunnit and made the story magical.

Every episode is like this. Finding something magical in what would already be a great story. The episodes tend to be 20-30 minutes and are all well worth the listen. There are some podcasts where it makes sense to make the previous episode your first and just go from there. You can do that here too, but you will probably want to listen to every episode from the beginning as well. Go through the back catalog…every one is a gem. Here are some of my favorites. Rather than linking to each one, just add it to your podcast app of choice through it’s directory and pick the episodes that resonate (I prefer using Overcast).

43 – Accidental Music of Imperfect Escalators

83 – Heyoon

166 – Viva La Arquitectura

156 – Coin Check

118 – Song Exploder

65 – Razzle Dazzle

188 – Fountain Drinks

182 – A Sweet Surprise Awaits You

181 – Milk Carton Kids

172 – On Location

162 – Mystery House

161 – Show of Force

159 – The Calendar

149 – Of Mice and Men

147 – Penn Station Sucks

144 – There is a Light That Never Goes Out

137 – Good Bread

130 – Holdout

117 – Clean Trains

108 – Barcodes

105 – One Man Is An Island

97 – Numbers Stations

87 – I Heart NY, TM

66 – Kowloon Walled City

52 – Galloping Gertie

40 – Billy Possum

Listen to those and you should have a good feel of what 99 Percent Invisible has to offer. I think it is the best podcast out there and I can’t wait to hear how Roman is going to inspire me next.

Go build and install on save in SublimeText3

Update: Turns out every new Go developer makes this mistake. I realized the err of my ways with a week of writing this. When you just accept the Go way, everything gets better. Ignore my stupidity below.

Recently I have been dabbling more and more with go. And I write my go apps in SublimeText3. Soon after starting this I found the awesome SublimeGo plugin. So without knowing much, this makes life a lot easier. What I especially enjoy is the ability to run an argument on save. So every time I save a go file, it can do something. At first this ran a build . errors && go vet. But then I wanted a bit more. I wanted it run that, then if successful build the app and move the compiled app to my bin directory.

Unfortunately, the one sucky part of golang is the opinionated way it wants you to organize your filesystem. If you want to keep all your projects together, then your bin directory is going to be required to be in a certain place. The build command claims to allow an output directory with -o but that doesn’t actually work the way it’s documented.

But I managed to find a workaroud and thought I would share. I just build to the current directory then move the file that has the same name as the current directory to my ~/bin which is already in my path. Its not perfect since a file briefly appears in my ST sidebar, but it works.

Here is my full GoSublime.sublime-settings file:




Dealing with slow outbound connections in Vagrant hosted WordPress

When I started working with WordPress on Vagrant yesterday I noticed that it was very slow. Turns out it was due to how Vagrant and VirtualBox were dealing with DNS. It also turned out to be an easy fix. I just needed the following in my Vagrantfile:


It’s always good when I can finish my goals for the day

I had two goals for today…yes, it’s a holiday and I had goals. My wife is working today so I figured I might as well work on a few fun things. OK, now one of those things is actually work-related, but that’s what you get when you enjoy what you do. 

So here they are:

  1. Finish up the Vagrant box
  2. Migrate from Squarespace to WordPress on Digital Ocean

Let me walk you through a bit of that. The first item is the continuation of a project that I had been working on for a while. I spent Christmas with my in-laws and with my parents in Detroit and Seattle. In between far too many family visits to count, I started working on adapting a git deploy workflow for the Datadog corporate website. This meant getting everything set up for developing locally. And that meant requiring Apache, PHP, and mysql on the local machine.

I have this configured on my machine, but one of the main reasons for going through this process was to ensure it was easy for anyone to work with. After working with one dev on setting up their local machine, I was frustrated. Then on Friday one of my colleagues, Mike Fiedler, suggested going the Vagrant/Chef route. 

Of course!!! So I started down the rabbit hole and tumbled faster and faster as I went. Every step I made inspired another turn and with every turn I experienced the joy of solving a puzzle and the grief of creating another. But finally this morning I had a single repo to clone, then run a script and within a few minutes both production and staging are ready to go; ready for your improvements. I am psyched!!

So the other goal was pretty easy: migrate off of Squarespace. Why do I want to do this? Squarespace didn’t do anything wrong, but for the functionality it provides, its just a bit too expensive. I pay $20 per month and have paid that or something similar for about 10 years. Normally that would be fine. But I have hosted another two sites on a Digital Ocean droplet for $5 per month (total, not each). When I signed up for sqsp, I wanted to stop managing my own server. Back then it was harder. Plus my server was hand built by me, then later on it was Community Server and Graffiti. Squarespace was easy. And it wasn’t that much more than what I was paying. Well, except when I was at Microsoft and at the time they were running their own hosting which was free for employees. 

So I started another site on my multisite install of WordPress which took all of a minute. Then exported my content from Squarespace…saying it took a minute would be an exaggeration. Importing it to WordPress was super easy. And I had a theme I liked that I spent a little while customizing. All that was left was a simple DNS change and now the site is live. I’ll give it a few days then will cut the cord with Squarespace.

Single Clicking To Open A File In PHPStorm

I have been using PHPStorm for a few weeks and really enjoy it. I came here after using SublimeText 2&3 for the last few years, plus vim when I need to do something quick. But one of the big annoyances for me has been the need to double-click to open a file. Yeah, it’s kind of a silly thing to complain about, but I was very excited today to find the solution.

The fix is a strangely labelled option in the Project Files settings dropdown. Now I don’t mean in the main settings area, but rather from the gear icon in the Project View. In that dropdown you will find two magic options: Autoscroll To Source and Autoscroll From Source.

Turn both of these on and now a single click on a file opens it on the editor and selecting any open file highlights it in the project file list. Sweet!!!

Using Codekit Hooks To Get Around A Libsass Issue

Recently, I ran into a problem with libsass and loud comments. As some of you know I am working on building WordPress themes. At its bare minimum, a theme has a stylesheet with a comment at the top and a functions php file. I am using SCSS for styles and libsass to compile it.

While libsass does almost everything the regular sass command does, there are some things that are missing. Loud comments are one of the things that are broken right now.

I happen to use Codekit as well. Codekit watches a directory and then does what it needs to do to result in nice clean code. If there is anything Codekit doesn’t know about, you can run an extra command using a hook.

So I have Codekit take a style.scss file and compile it to style.css in the same subdirectory. Then I have a hook that watches for style.scss and runs the following shell script:

This super simple script concatenates template_about.scss and style.css into a single new file. Note that the new file is in a new location. When I had it adding the text to the same file, Codekit looped forever.

The result of this is I get a SASS compile far faster than what the standard command provides and I automatically get a file that works for WordPress. Woohoo!!!

What a Difference…Part 2

Four months ago, I wrote a blog post describing the year up to September 2013. It was a whirlwind year for me. But the last 4 months since that date have been pretty amazing too.

The big change happened in November; Thanksgiving Day to be exact. Toni and I took the train down to New York City, used my points to stay at a great hotel near Grand Central, and wandered the city for 4 days.

On the first day, we trekked across town and found the Highline, something we had both wanted to see for years. While wandering along the beautiful above-ground park, we held each other tight for warmth on the freezing cold day. At one point we took a break and sat on some bleacher seats built into the path.

After a short rest, it was there that I took my next step. I asked the love of my life if she would marry me. She said yes.

Since then we have been planning our wedding and continuing to love every day we have together. Every day we learn more about each other and become happier and happier about our decision to spend the rest of our lives together.

Our “Save the Dates” went out a few days ago and I look forward to seeing some of you there as we both say I Do.

What a Difference a Year Makes

I realize it’s not New Years yet, but the last 365 days have been truly amazing. I had thought the previous year was good, but it pales in comparison. There were hard times and wonderful times and the net result is a change I am so excited about, I needed to share it with the world.

So it’s actually a year and a couple of days now that I am writing this, but it was less than a year on Saturday…Lets get started.

One year ago at the beginning of September, 2012, I had been working for a Boston startup for a couple months and eager to move to the US. I was living in Amsterdam because I still didn’t have a buyer for my apartment there. And in the first few days of September, I found that buyer and he signed his intent to do the deal. He had a few weeks to back out, but I was hoping for the best.

In October, he signed the final papers and I was no longer a resident of the Netherlands. The place was sold well under what I paid invested into the place, but it was done. A few days earlier the movers came and packed my stuff up for the trip across the Atlantic.

At the end of October my stuff had arrived in Boston and waited for customs to sign it through…unfortunately a hurricane stopped by at the same time. Thankfully my stuff at the Port survived, as did everything else in Boston.

By November I was moved in and getting started with being a Bostonite. Things were pretty good. I wasn’t ecstatic about my job and I could see my boss wasn’t ecstatic about me, but I wasn’t sharing that fact with others. I had taken a big loss to get here and wanted to do everything to make it work. At the same time I started acting on the decision to get out there more. My parents helped me with the move and I knew the one thing they would want was to see me not alone.

December rolled in and that means going to San Antonio for Christmas and New Years. I couldn’t take the amount of vacation I had become accustomed to now that I am back in the US, but I had a good time with family nonetheless. Unfortunately, the most wonderful person I had found online and exchanged a few emails with went dark.

That perfect woman came back online in January but I spent much of the month doing a lot of sniffing and sneezing. Ugh, sick. Not too sick to work, but sick enough to hold off on meeting this woman. To make things a bit worse I am seeing that most of the content I am creating at work is never allowed to see the light of day. Frustrating to say the least.

February started really well because the mystery woman wanted to meet. I was still getting off the cold. And I knew within a few weeks I was going to be jobless. Then on the weekend we decided to meet up, the biggest snowstorm in decades decides to visit Boston. Slam! Over 3 feet of snow in one day and the city stopped. Things are not looking good.

Then we met. February 10, 2013. A cold day. A quiet day. Transit was stopped but we both slogged our way to Boston Common. On the steps of the State House, Toni and I said hello and then we walked. And we walked. And we talked and walked. And walked and talked. I think we ended up going 6 or 7 miles. Seriously! Through the Common and the Public Garden for a few laps, down to the Fens, through and round past the MfA, had a bite to eat at Sweet Cheeks, and then walked a little bit more. Things are looking up.

March comes along and one month into this budding relationship we do another massive walk. 12 miles around JP. We loved it. And then she tests me: swing dancing. If you know me, you know dancing is not something I would ever choose…but I do it…and I pass the test. Whew!

With the beginning of March also comes my enrollment in the Startup Institute Boston. I would spend the next 8 weeks getting indoctinated into the tech startup scene here in Boston. I was a newcomer to this market, so having this guided tour would help immensely. A few weeks in and I tell Toni about my situation. I realized this relationship was turning into something significant and stopped the interview process in San Francisco and Seattle. She didn’t run away. We got closer.

April includes a weekend in Vermont and things progress both romantically and in SIB. I am already realizing that I am in the best time of my life. I also hear Matt Barba talk to the SIB group about starting Placester. We have a conversation afterwards. And another. And another.

April of course wasn’t all good. April was also the month of the Boston Marathon. Which is when the bombs went off. April was the month of the massive police action tracking down the suspects of the bombing. April was the month I realized I was scared that Toni might not be alright and I wanted to desperately spend every day with her.

April was the month SIB ended for us. We did our expose and graduated. And a few days before SIB ended for us, I had my offer from Placester: Developer Evangelist. Exactly the title I wanted, and I had a strong feeling that this time I would be allowed to actually do what the role implied.

May was a big month…but then every month since February has been big. We are getting serious about moving in together. We are getting serious about each other. I fly with Toni to Detroit to meet her family. I had no idea families could include so many people. I am almost convinced they hired a few extras to try to scare me, but of course they all love me.

June means I am over a month into my role at Placester. This is amazing. This is a company that respects what I do, values my input, allows me to speak and work with the CEO and the other execs. This is very different from my previous startup experience. I do great things and they are made public. I love my job and I love Toni. The two most important parts of my life are aligned and everything is good.

July…it all continues. Placester continues to be awesome. My role at the company is valued. Toni and I are spending every moment of every day together. She even comes with me to Seattle to meet my parents and my friends and everyone loves her.

August is the month that brings us to a full year. August was the month that made me realize how much had changed. August was the month I felt at peace with so much in my life and the month I move in with Toni.

Our lives have intertwined. Our stuff sits next to each other. We have a very comfortable home in Charlestown and are looking forward to our lives together. And yet we are cherishing every day.

I had an epiphany a few days ago. Much of my life I have regretted the silly decisions I have made: not paying attention in school, procrastinating here and there. Today that regret is all gone. Every decision I made, every delay I had, every step I took brought me an inch closer to Toni and that fateful day on the State House steps.

All regret is gone. What a difference a year makes.