I’ve been trying to “hack the startup process” with a new kind of startup lab for a few months now. As part of the process of trying to launch TenZeroLab, I’ve been talking to a lot of people, pitching and describing the concepts behind it. Recently I started getting one particular piece of feedback: “Talk to Bill Warner, he’s got something going on you’ll be interested in”.

Finally, I managed to talk briefly with Bill at Tech Tuesday this past month and he suggested I join his “Anything Goes Lab” Anything Goes Lab accelerator project happening at the CIC. Come Monday, I’m going to be participating in the two week pilot program.

What is it? It’s a co-working space but with a special focus on startups and teams. Bill and his partner Nick Tommarello have some interesting ideas about startups and startup formation. Many of the principles behind AGL seem to stem from Bill’s recent talks about intention and creating startups “from the heart”.

I’m not only excited to meet and work with some really interesting individuals, but also to see if I can contribute some of the ideas I’ve been working on with my own startup lab. I’ll be very interested to participate in the program, to see first hand the things that work in this environment and the things that don’t.

TenZeroLab and Anything Goes Lab appear to have some core principles in common, not the least of which being that we need to start helping each other. Facilitating the creation of trust-based working relationships is, I believe, a path to creating many more startups in the Boston area.

There’s a lot exciting stuff happening around the Boston startup scene and I’m glad to be a part of it.


I’ve dowloaded a coupe of iPhone games, but none have really grabbed me like “Tilt to Live” from One Man Left Studios.

Tilt to Live The gameplay is really simple, you tilt the iphone to steer your little “arrow” ship to trigger weapons to destroy “the evil red dots”. You have one life, touch any red dot and it’s game over.

Overall it’s a very high-quality game. The graphics are simple but satisfying. The music is fun. There are little tongue-in-cheek “Awards” you unlock for various game events. When you get enough awards, you unlock new weapons. Even though it’s accelerometer-based, the control isn’t twitchy or annoying. The game has enough twists and strategy to keep me trying that just… one… more… time…

It’s available for $0.99 in the iTunes store.

Video from the One Man Left website:


Lackluster Startups Magazine

When I was in the airport this week I had a minute before my flight boarded and decided to get a couple of magazines. On the stands I saw Startups Magazine published by Entrepreneur. Startups magazine Being a topic near and dear to my heart I decided to pick it up (didn’t have time to really flip through it).

The magazine was pretty thin and didn’t really have much meat to it. If you’re just curious about startups (haven’t yet put any plans into action or done any research at all) this magazine might be somewhat interesting to you. The articles were OK, but not very informative or particularly inspiring. Part of the magazine was devoted to tips for getting started but these tips should be fairly well known to anyone who’s been even remotely interested in startups.

I get the feeling that this magazine is an attempt to cash in on the sudden surge in the casual interest in startups. If you happen to see this on the stand and have more than a passing interest in startups, I’d recommend passing on it.


We want to be interrupted

Recently I read an article in Wired, “The Web Shatters Focus, Rewires Brains” by Nicholas Carr in the June 2010 edition (adapted from his upcoming book The Shallows). I thought it was thought provoking because I’ve been dealing with some personal focus fragmentation issues.

As someone who writes software, I often need long uninterrupted blocks of time to concentrate. This is a fairly well known phenomenon that most hackers experience, but I’d found while trying to start my latest startup I was spending a lot of time on Twitter, blogs, email, and other online / marketing tasks. I found it almost impossible to ignore the distractions.

We want to be interrupted, because each interruption—email, tweet, instant message, RSS headline—brings us a valuable piece of information. To turn off these alerts is to risk feeling out of touch or even socially isolated. The stream of new information also plays to our natural tendency to overemphasize the immediate. We crave the new even when we know it’s trivial.

My solution to this has been trying to apply a certain amount of discipline. I’m trying to forcibly block out chunks of time by turning off all of these forms of media delivery. My initial results have been very promising, I’ve been able to get a lot more code done, at the expense of being a little less engaged with Twitter and email.

His other point in the article, though, appears to be a general attack on hyperlinks.

By the end of the decade, the enthusiasm was turning to skepticism. Research was painting a fuller, very different picture of the cognitive effects of hypertext. Navigating linked documents, it turned out, entails a lot of mental calisthenics—evaluating hyperlinks, deciding whether to click, adjusting to different formats—that are extraneous to the process of reading. Because it disrupts concentration, such activity weakens comprehension. A 1989 study showed that readers tended just to click around aimlessly when reading something that included hypertext links to other selected pieces of information. A 1990 experiment revealed that some “could not remember what they had and had not read.”

This particular point has caused a small stir on the web with various articles asking questions like: “Does the Internet Make You Smarter?” and “Is the Internet Making us Smarter or Stupider”.

Intuitively I feel like the conclusion that hyperlinks are somehow bad for cognition to be too simplistic. I don’t think we should start writing without hyperlinks, they’re just too valuable. Hyperlinks are the foundation of the web. I thought it was an interesting enough idea to experiment with, though.

I created a simple way to experience pages without the links. I put together this small bookmarklet that hides links and have been checking out various online sources. The links are still there, they are just made to look like the rest of the text in the page.

The experience is different, but it’s subtle. I think it might be useful to use this to read complicated content once without links, and a second time to follow up on the linked content (creating two experiences of the same content).

If you play with this bookmarklet, let me know what you think and what your experiences are.

{ 1 comment }


I just read an interesting set of posts regarding Android market share. First NPD released a market analysis that claims that Android Handsets are now the number two smartphone, behind blackberry but edging out the iphone.

We’re starting to witness Google’s long term strategy starting to pay off. Fortune ran an article with the internet frothing title of Android demolishing iPhone in sales. Already people are coming out to argue that it’s not a fair comparison because of “buy one get one free” deals.

What this fails to take into account is this is exactly Google’s strategy. I’ve been arguing that they’re using the ultimate weapon, price, to win the eventual handset war. They want handsets to be free. They’re even pushing a business model where they’re giving handset makers a cut of search revenue to use Google’s official branch of Android.

Google wants people to get a free android handset with their cell plan. When all “feature phones” are running some version of Android, what platform will developers build for? Even if the platform is fragmented, not as elegant or feature rich, developers will gravitate to the largest possible audience for their apps. Google doesn’t care about the revenue for handsets, they want to be the gateway for all mobile data so that they can monetize that.


Recently, I shared a tip for using an IMAP prefix with Apple Mail to improve the experience of using Mail with gmail. James Lee left a comment on that post with another, in many ways superior, tip.

James pointed out that gmail “Labs” now includes an Advanced IMAP settings feature that accomplishes many of the same things my original tip did. To use it, open gmail’s browser interface. Click on settings then the Labs tab. Look for the Labs project “Advanced IMAP Controls”. Enable that and save.

Screen shot 2010-04-20 at 11.29.30 AM.png

Now, instead of using an IMAP prefix to limit what Apple Mail sync’s, you can choose which of gmail’s labels appear on a per-label basis. In the “Manage Labels” interface a new option appears “Show in IMAP”.


The reason why this is a superior technique is that you can now use some of gmail’s system labels without taking all of them. You get the syncing and bandwidth savings of not including things like All Mail and Spam but you can still utilize the ‘special’ labels like Sent and Drafts.

I recommend only enabling the system label Drafts, and any other custom labels you may be using. Also, I find it useful to create a custom label to use for Apple Mail’s trash. It allows me to see recently “deleted” messages that then get automatically “removed” on the Apple Mail schedule. When those messages are removed from the Apple Mail Trash, it only removes the custom trash label, and therefore they stay in gmail stored in the archive. Having Apple Mail sync with the default gmail Trash label means messages will be expunged completely rather than archived.

The only potential drawback is that it’s labeled as an experimental feature, so it’s not guaranteed to be stable or to remain a feature. I haven’t spent much time with it, but so far it seems solid. Thanks James.

{ 1 comment }

How much would you pay for the universe?

Neil deGrasse Tyson on NASA, and its effects on the dreams of a nation.

Nobody’s dreaming about tomorrow anymore. NASA knows how to dream about tomorrow. If the funding can accommodate it, the funding can empower it, the funding can enable it. Yeah you need good teachers, no doubt about it, but the teachers come and go cause I go to the next grade. Teachers can help light a flame but I need something to keep the flame fanned. It’s about the effect of NASA on who and what we are as a nation.

What we have been as a nation, perhaps for a while there, we took it for granted. I see the most powerful particle accelerator in some other country. The fastest trains are built by Germany and are running in China right now. I see our infrastructure collapsing. No one dreaming about tomorrow and everyone thinks they can put a bandaid on one problem or another.

The most powerful agency on the dreams of a nation is currently underfunded to do what it needs to be doing and that’s making dreams come true. And at a half-a-penny on the dollar… How much would you pay for the universe?


I’ve found over time that a good tip for using gmail with Apple Mail is to use an IMAP prefix. This lets you control exactly what appears in Apple Mail (especially if you have a lot of gmail labels).

The first thing to do is to specify a prefix in Apple Mail:

Mail > Preferences Select Accounts, choose your gmail IMAP account and then select Advanced.


Enter a value into the field IMAP Path Prefix. I use the prefix IMAP, but this can be anything you want.

Now if you want to use a gmail label as a folder in Apple Mail, open your browser and go to the gmail web interface. In the gmail interface, you want to create labels that start with your prefix. Start by clicking Create new label, you might need to click on more to show the link depending on how many labels you already have. Start with the prefix you chose above, then a slash, and then add a name. I’ve got a couple of “auto filter” labels, one for DM’s and subscription notifications from Twitter that I don’t want in my inbox, so I’ve created a special “twitter” label to associate with this filter.


mailboxes.pngThe effect of doing this is that all of the “normal” labels from gmail like “[Gmail]” and “All Mail” won’t appear in Apple Mail. Only the “inbox” and labels that start with your prefix will be picked up by Apple Mail. I’ve found this improves the performance of Apple Mail when fewer labels/folders need to be synchronized. Also if you follow the new official Gmail IMAP + Apple Mail client settings instructions, all the labels you’re not using like “Sent” and “Trash” won’t clutter up your interface.

One of my goals with using IMAP prefixes was to keep my local Apple Mail database small. Before using this tip, some of my Apple Mail mailboxes were extremely large (even after optimizing the database/mailboxes). This made spotlight and Mail sluggish, unresponsive at times and often led to Mail crashing. Keeping only the inbox and a few select labels synchronized has cleared up most of my Mail problems.

One side effect of this, though, is that to search your email archive you’ll need to use the gmail web interface. Depending on how often you have set Apple Mail to clear out it’s local Send and Trash mailboxes, you will only be able to search relatively recent messages from Apple Mail. Anything older (again depending on how often you clear out Trash, Sent, etc…) can only be found from the gmail web interface. This fits my workflow because I find that gmail’s search interface is generally superior for larger numbers of messages.

The only minor drawback I’ve found is that it becomes trickier to synchronize drafts between the web interface and Apple Mail. I have an IMAP/drafts label associated with the Apple Mail drafts mailbox, but when you save a Draft in the gmail web interface it automatically gets gmail’s system label “draft”, which then gets filtered out of Apple Mail. I don’t often switch between interfaces with messages “in progress”, so I haven’t found this to be too much of a problem.

This tip also assumes you’re using the recommended client settings which suggest not storing Mail’s Trash, Sent, or Junk mailboxes on the server. If you’re not following those suggestions, you may see Apple Mail creating labels in gmail as it stores things under the IMAP prefix. I recommend following the recommended client config instructions, as there’s no real benefit to syncing/storing those Apple Mail folders into gmail.

It’s a small tip, but I appreciate the greater stability, performance improvements and cleaner folder interface. Also if you sync your settings with the iPhone, the label mappings and prefix will automatically apply there as well.


How to create a business card QR code

Generally there are two ways to create QR codes for business cards. The first involves putting the information directly into the barcode. The other usually uses a web address to act as either a landing page filled with the contact information (say your linkedin profile) or as an indirect way of pointing to your contact information. Each method has its pros and cons and I’ll go over each.

The Direct Method

QR codes are designed to store text. Over time, many barcode readers have evolved to understand that when the text is formatted in special ways, that they should do “smart” things with the information. Adding contact information with these formats, in many cases, allows them to be acted upon, say dialing an embedded phone number or possibly rapidly importing a contact into an address book.

One such format is vCard. vCards are fairly common, you may have seen vCards attached to emails with people’s contact information. Unfortunately, there are different versions of the vCard format, so usually only the simplest (first vCard version) is understood by most barcode decoders. While many address book applications can output vCards, just exporting a vCard from your address book application will usually not work and result in confused barcode readers.

If you want to explore QR codes with a simple vCard embedded you can use this form to generate vCard based QR codes. Alternatively, if you just want to convert some text into a QR code, there’s a form for that too.

A typical vCard formatted block of text might look something like this:

EMAIL:[email protected]

Which generates the following QR barcode:

Mike's vCard

There are a couple of benefits to adding contact information directly to the barcode. The first is that the information can be read without a data connection, all of the information is in the code itself. Another, related, benefit is that there is no reliance on a third party to connect you to your contact information. Most indirect methods rely on an intermediary to direct you to the actual contact information which can present privacy and dependency issues.

One drawback of putting the information inside the barcode, especially if you’re using more complex formats, is that not all barcode readers treat the formats the same way. There’s no official standard for storing contact information, so there’s no guarantee the barcode reader will identify it and do the right (or expected) thing with the data.

Another problem is that if you ever want to change the contact information in the code, you can’t. With the direct method, whatever is in the code at print time is now immutable.

The last drawback of the direct method is that the QR code becomes more complex, “busier”, the more information you store in it. This has direct implications for how easy it is to decode, especially with cell phone cameras. Simpler codes are easier to read. This puts a practical upper limit on what you can store in a QR code printed on something small like a business card.

The Indirect Method

The other method of storing contact information, the one used by SnapMyInfo, is to use a web url to act as a “pointer” to the contact information. This means that the actual contact details are not stored in the code itself, but rather they’re stored online somewhere that can be accessed by the link.

In the case of SnapMyInfo, each user’s contact card is assigned an address. Here’s an example of what’s actually stored inside a SnapMyinfo QR code:


This link results in a QR code that looks like this (this is the one that stores contact info for SnapMyInfo itself).


These addresses currently turn into an email “mailto” link. If you follow them, your email program should open pointing at SnapMyInfo’s email decoder, send that email and you get contact information in a response. After a lot of trial and error, it turned out that most phone devices seemed to accept maito links and handled the resultant contact data more easily if it was attached to an email. (As an example, redirecting the link to download a contact directly fails on the iPhone. Mobile Safari currently doesn’t understand how to download contact information from the web). One of the nice things about using these kinds of addresses is that their behavior can be altered. A feature I’m planning to add is the ability for users to change what their SnapMyInfo address redirects to on the fly.

Obviously, you don’t have to use SnapMyInfo to use the indirect method. There are other services that are using a similar technique. Also, using a link to something like your LinkedIn profile accomplishes much the same thing, creating a pointer to where you can find your latest information (assuming you keep LinkedIn up to date of course).

The benefits and drawbacks of the indirect method are the inverse of the direct method. Storing a pointer means that you can update and change your contact information over time, and all the barcodes you may have printed remain valid and up-to-date. The indirect method also means that you can store a lot more information “behind” the QR code, the code itself never increases in complexity since the barcode only contains a fixed size web address. This means contact information that comes out can be richer, like the inclusion of contact photos in the contacts that come out of SnapMyInfo.

Using the indirect method, however, also means that the decoder needs to have a network connection to be able to access the data. It also means that the contact information is dependent on the intermediary being there, such as SnapMyInfo.

If you’re interested in giving the indirect method a shot, sign up for a SnapMyInfo account! I would love to hear your feedback.


QR me!

Click and hold, then drag it to the bookmarks bar on your browser.

Here’s a quick little bookmarklet to generate QR codes. If you click the bookmarklet while you’re on a page, it will generate a barcode based on the address for that page. Try it now! if you click the button, you should get a QR code for this blog post.

Another feature is that you can also generate barcodes from highlighted text on the page. You can use it to quickly encode any page text into a barcode. Of course, if you want to encode arbitrary text, there’s a tool for that as well.

What’s this useful for? Mostly this is just a fun, quick, way to generate QR codes to experiment with. There is one thing I’ve found it’s quite useful for though. Ever wanted to load the page you have open in your browser quickly on your phone? Click the bookmarklet then scan the code using your phone’s barcode reader. It’s faster than typing in long urls! Let me know if you find any other fun or useful hacks!


Update: Had some issues with wordpress and the quote marks in the bookmarklet. Should work now.