• Apple Disappoints... Strategically

    September 8, 2016

    The iPhone 7 Launch is the new Apple

    I'm an Apple fan. Not a fan-boy... but a fan.

    I've got an Apple logo (6 color) tattooed on my arm.

    I've been using Apple products since 1978.

    I was also a NeXT developer so I grew up with what is now iOS.

    The iPhone 7 launch yesterday is, in my mind, the harbinger of Apple's new strategy and direction: more is more.

    The New Black

    One of the big things that Steve Jobs brought to Apple on his return in the 90s was the idea that less is more.

    Fewer product lines was less easier both internally and for the customer.

    Focus on what people did with computers (and computing devices) was what Apple built their products and marketing around.

  • Docker Not Ready for Prime Time

    August 27, 2016

    Not in large scale production

    I love Docker. It's so freakin' useful for distributing predictable runtime environments.

    Using it during development means radically less time configuring my dev machine. Using it during development means I can "install" different versions of PostgreSQL, Redis, etc. for different projects.

    In this way, Docker is very useful.

    Not in production

    But in production, Docker has a ton of problems.

    Each version of the CLI is incompatible with the last version of the CLI.

    I mean, WTF. This means that if I have Docker 1.9 in production someplace, I have to have a machine with a Docker 1.9 CLI installed in order to control that machine.

  • Eating our way through Rhode Island

    August 6, 2016

    Lots of Meals, Some Tasty

    I spent a week in Rhode Island on vacation. I grew up here. When I lived here, there were some pretty good restaurants, but nothing like the dining scene that Providence currently hosts. Here's a partial list of the meals we've had and some thoughts on each.

    Twin Oaks

    In the 80s, Twin Oaks was one of the most awesome dining experiences in Rhode Island. The food was good quality, huge portions, and just plain tasty. The drinks were liberal. The service was amazing.

    Fast forward... Twin Oaks is competing with a number of high end and "traditional" restaurants and changed the formula a bit... for the worse.

  • A couple of weeks with Window 10

    April 30, 2016

    It's 2016, WiFi should work

    Microsoft announced Bash on Windows. Basically, it's user-space Ubuntu that proxies kernel-space syscalls through a proxy... what it means is you get something that executes Linux binaries on Windows with little or no performance penalty. Cool.

    Given that I'm a sucker for new toys and new stuff, I went out and bought a Yoga 900 to try Windows 10, Bash, etc.

    The Hardware

    The Yoga 900 is quite a nice piece of hardware. Compared to my 13" MacBook Pro, the Yoga is competitive. It's similar in size, weight, and feel (solid). Is the Yoga as good as the MacBook Pro? No. Is it in the same league, yes.

    Windows 10

    Windows 10 sucks far less than Windows 8.


  • I'm Joining Kiva.org

    December 18, 2015


    I have been doing technology for a very long time... professionally since 1978.

    I have seen technology grow and evolve... software is eating the world... developers are the new king-makers...

    And we as humans have a choice of how we use technology.

    We can use it for marginal personal gain where we offer something that make's someone else's life much better but take a substantial portion of the betterment for ourselves. For example, taking a 30% cut for brokering between a driver and a passenger may be a passable transaction, but is also a radical wealth transfer to the broker.

  • Twitter Revenue by Solving the Lunch Problem

    September 3, 2015

    My Opinion

    Like many other humans, I have an opinion about how Twitter could significantly increase its revenue. We can start down the discussion with lunch...

    The Lunch Problem

    It's coming up on noon... where do I go for lunch?

    This is a non-trivial problem. It's a choice problem. It's a social problem. It's a commerce opportunity.

    Any time there's a choice problem that has social components and commerce, it's an opportunity for Twitter to make money. But I'm getting ahead of myself...

    The Choice Problem

    There are 25+ lunch spots in walking distance of my office. I've fallen into a rut. I'm at Cassava where I've ordered the curry meatballs. Like I do at least once a week. Why?

  • Apple Watch Thoughts

    August 3, 2015


    I spent a week with the Apple Watch. It's in the drawer with my Android watch and my Pebble.

    The hardware

    The Apple Watch is one of the nicest pieces of physical hardware I've ever put on my wrist. I've got a Rolex and a Tudor... a bunch of Seiko watches, and others. My favorite watch is a Traser... but that's mostly because it's very practical.

    I got the 38mm, Black Sport Watch. The physical feel of the Apple Watch is superb. The materials are amazing. The silicon band is the first silicon band I felt comfortable wearing for 12+ hours.

    I would gladly pay $500+ for a watch built like the Apple Watch with a quartz movement and tritium hands.

  • Python: Yuck

    July 23, 2015

    I really dislike Python

    A short blog post about my experience with Python. I've been doing Python/Flask work for about a month. It's long enough to get some sense of the language. It's not long enough to feel "comfortable" in the language. Please read these comments as such.

    My experience includes decades with C, C++, Objective-C, and Java. Years of Ruby. Nearly a decade of Scala. A year with Haskell. A couple of years with Clojure (my fist Lisp). I've also done JavaScript and Pascal and some other languages that I don't remember... oh and 6502 assembler and 68000 assembler and BASIC.

    My net is the Python is a bunch of hacks on hacks that created a mis-shapen beast.


  • Firefox is very disappointing

    July 15, 2015

    And I'm pro-Mozilla

    I've been a Netscape and Firefox fan since the browser wars began in 1996. There's been a special place in my heart for this lineage of browser.

    Every quarter or so, I try to use Firefox over Chrome. Every quarter, I switch back after a week. I switch back because Firefox is unusable.

    My hardware

    My desktop machine is a 6 core i7-4930K CPU @ 3.40GHz with 64GB of RAM and the fastest SSD SATA drives around.

    My laptops are 2014-era MacBook Pros (13" and 15") each with 16GB of RAM and SSD drives.

    My hardware is pretty much top of the line. Nothing should run slowly on this hardware.

    But Firefox does.

    Firefox hangs

  • Some Process Thoughts

    July 7, 2015

    In an Era of Distributed Teams

    Over the last bunch of years, I've worked with a fair number of distributed teams, both doing open source and contracting. Over this time, I haven't ever been in the same room as half the people I've worked with. I've used a ton of tools from AIM to Slack.

    Here are a bunch of thoughts on process.

    Almost Always in the Light of Day

  • You're Stealing from Yourself

    July 6, 2015

    And from Me

    I read Jessie Frazelle's blog post that outlines some of the horrid things that have happened to her solely because she's a woman contributing to the tech industry.

    If you're engaging in acts of aggression against Jessie or any other woman or person of color, you are stealing from yourself.

    Jessie is making a measurable contribution to the tech community. How do I know? Well, because I've heard of her. Because she wrote a very fine post on isolating desktop apps using Docker and done conference presentations as well.

  • Filling the Pipeline

    June 28, 2015

    With qualified People of Color

    Kumi Walker tweeted:

    What a joke: Behind Silicon Valley's Self-Critical Tone on Diversity, a Lack of Progress http://bits.blogs.nytimes.com/2015/06/28/new-diversity-reports-show-the-same-old-results/ cc/ @cbracy

    And he's right!

    There are no excuses for failure to improve the diversity in high tech companies. None!

    The platitudes of "we're trying" and "the pipeline sucks, so we're victims" is bullshit. These are companies that "disrupt" and use "social networking" to get the job (and the revenues) done. They should use the same tools to recruit a diverse workforce that they use to generate revenue: data mining and social networking.

    A plan for Detroit

  • Thoughts from Munich

    June 20, 2015

    Random Stuff

    I'm spending the weekend in Munich on my way to Devoxx in Krakow.

    I've done a ton of travel this year: London, Tokyo, Atlanta, Beijing, and now Munich.

    I'm drafting this post from the San Francisco Coffee Company. So, yeah, I flew 11 hours and 1/3 of the way around the world from San Francisco to sit in a coffee shop named after my town, hacking on my MacBook, and feeling meta-mocking about the whole thing.

    But the differences between cities around the world seems to be less and less. I'm really conflicted about this.

    What's good

  • CSS Selector Transforms in ClojureScript

    June 9, 2015

    Coming full circle

    Lift's CSS Selector Transforms are the best thing in web development, ever.

    Granted, Lift's CSS Selector Transforms are built off concepts in Enlive, Lift treats the transforms as composable components... and that means more concise, reusable code.

    If you're doing client-side work, there's Enfocus and kioo, but they are very brittle and don't play well with Reagent.

    So, I decided to write a bunch of web utilities for ClojureScript, single page apps.

    The code is stand-alone and outputs Hiccup format HTML or it can return a DocumentFragment that can be used any old way.

    The code is the first part of Dragonmark Web.

    So what, and why?

  • We Live in an Amazing World

    May 23, 2015

    We Really Do

    I hung out with a couple of friends last night and we spent a fair amount of time finding interesting and obscure music tracks and videos and playing them for each other. We carry the collective musical creation of all of humankind in our pocket and any of it can be recalled and performed at any time.

    This week, I started work on a new project.

    I was able to access all the tools and documentation that I needed to learn a new computer language. I was able to become proficient with the new computer language and publish code for part of my new project for the world to see and use.