Thursday, February 27, 2014

Taking Inspiration from Others

Everyone wants to be an astronaut.

My college buddy is a Navy SEAL and astronaut. He traveled to the ISS in 2009, aboard the Endeavour, and then he went back to the space station, last March, where he remained until September. Even though I had nothing to do with his success – I only sat next to him in english class at prep school – I, like the rest of my classmates, take great pride in his accomplishments. After visiting him, in 2009, for a personal tour of Houston, he became my inspiration for learning to fly a few months later.

Last summer, NASA released a light hearted video of Chris shaving his head and growing a goatee in a move of solidarity to welcome Italian Astronaut Luca Parmitano.


What a great job and let's not forget the first step to becoming an astronaut.

Monday, February 24, 2014

Communication Pipe

When I was a 19 year-old Marine I listened to a captain talk about communications and military operations. He told us stories about his part during the invasion of Grenada and his time in Beirut. In the 1980s, very few Marines had seen combat, so his thoughts carried a lot of weight.

The captain had some insightful experiences. One point he made was about, what he called, the communications pipe (we call it bandwidth, nowadays). As a communications pipe increases, more stuff gets added. The problem is that we always fill it to capacity. The upside is as bandwidth increases, the older technologies, like text chat, can shine during a crisis. His point resonated with me on 9/11 when I couldn't reach my boss and fellow Apple coworkers in NYC via phone or e-mail. But, AIM, being such a low bandwidth channel, worked without a hitch.

Tuesday, February 18, 2014

Cache is King in Safari

One trick to speeding up an application is caching. Rather than fetching data from a database or over the network each time you need it, it's better to retrieve the data as soon as possible and hold on to it as long as possible --- and no longer. The only thing worse than slow or no data is bad data.

Autocomplete prefetching over the network before I hit enter.
Last week, I was monitoring a web server log for a URL shortener when I noticed a neat trick Safari does. Rather than waiting for me to hit enter after I typed in a URL, Safari automatically loaded the webpage during the autocomplete phase. It's a brilliantly simple solution. After all, why not start loading a webpage before I ask for it? Actively loading data before it's needed is known as warming up the cache. It's smart since it makes for the best possible user experience (BPUX).

There's nothing like proper optimization, done in small steps, when needed. On the other side of the coin is premature optimization which is the bane of any software engineer's existence. (Rules to Code By)

Another Safari optimization trick I read about but haven't confirmed is that, after loading a web page, Safari will prefetch each link's IP address for faster loading when a user clicks on it since the DNS lookup has already been done.

Anything to speed up my Internet experience is OK by me.

Wednesday, February 5, 2014

Work Hard, Be Productive

I've worked in some fast pace environments, from the Marines to startups. The one thing I've noticed is there's some confusion between working hard, looking busy, getting excited and actually being productive and making money.

Many people are drawn to day trading because it's exciting. Big mistake. If you're looking for a rush then ride a roller coaster or go to Vegas. If you're going to war or building a startup then work smart and be productive. In the Marines, we used to say, "It's easy to be hard. It's hard to be smart."

The key to good leadership is to give your people enough direction by prioritizing tasks (with deadlines) and then let them go. The antithesis is to interrupt them. I once worked for a boss who was horrible at communicating in a timely fashion. Nearly all phone calls and meetings had no agenda or succinct purpose. Non-pressing deadlines were set and then changed without clear reason. Actually, the real reason is he was disorganized and he had poor time management skills. He never wrote down any of his tasks that I saw and he couldn't  prioritize tasks or timelines. Ideas would pop in his head and he'd spit them out, regardless of the urgency. It was interruption after interruption.

Interruptions Be Gone

One thing to realize is that every call, text, IM and e-mail is an interruption. Each interruption is going to knock a person out of their productivity zone so it's important to weigh the interruption with the importance and urgency of the information being passed along. Many people constantly interrupt coworkers and subordinates because they're worried about forgetting their own assignments. Instead, they should simply write down everything they need to do (both what they need to do and what they need others to do) and then sync up with their coworkers during planned meetings rather than unplanned interruptions.

If you think making money is directly proportional to how smart you are or hard you work then you need to think twice. I worked way harder in the Marine Corps than I did after I left Apple when I just sat back and watched the price of my Apple stock, originally purchased at less than $10/share, go to $500–$700/share. Guess where I made more money: USMC or AAPL?

So, before interrupting a colleague, ask yourself if your interruption is urgent and important enough to justify it or can it wait until the recipient is better prepared to receive the information? Another test, before interrupting, is to ask yourself what will happen if you wait to pass the info?

Need more tips? See Time Management in the 21st Century.

Webification with Web-ins™

Webification is the process of converting content so it can be viewed on the Web. It's a big deal to simplify a technical process or protocol by overlaying a human readable Web interface. Hotmail did it for SMTP/POP (e-mail), Blogger did it for FTP, RSS did it for XML, and then Twitter took it one step further and did it for RSS.

Google's search results for CNN.
A friend, who runs a green website, created what she calls web-ins™. What she's done, without realizing it, is webified the XML sitemap.

Sitemaps help search engines understand the hierarchical structure of websites. When I google "CNN" I see that the search engine returns more than a simple summary and link to the cnn.com homepage. With the help of CNN's sitemap.xml the search engine deep links me directly to the content I'm looking for rather than me needing to first visit the CNN homepage followed by clicking through to the content.

Each web-in™ is manually created depending on the destination website. Different areas of a web-in™ link to different parts of a website:

ST - Buy Solar - Build It Solar
Sample live web-in

KISS

Web-ins™ are nothing more than HTML area and map tags. It's such a simple solution it could easily go unnoticed. But, then again, Twitter is nothing more than 140 characters of text without markup.

The next step in standardizing web-ins™ is to have webmasters create their own for third parties to display on their websites in place of simple links to home pages. Webmasters could provide web-in™in sizes that conform to IAB guidelines as either static HTML or, even better, as a Javascript that implements an iframe whose content would be maintained by the content provider instead of the third party.

There's an elegant beauty in simplicity.

Thursday, January 30, 2014

The Future of Tech: The Web's Not Dead (it's just not sexy, anymore)

Technology can be thought of as anything invented after you were born. As it matures, it fades into the background and it's taken for granted. One of the most prolific inventions of the 20th Century was the automobile – entire cities are designed around this invention – but it's no longer cutting edge technology.

The Web has reached this level. It's hard to find cutting edge Web sites. I saw the writing on the wall when I left the Apple Online Store in 2007. At the time, the Apple Store was headed up by Eddy Cue as part of Apple's engineering department. Engineering, at Apple, is the talent. I could see there were no revolutions on the horizon. E-commerce on the Web hasn't changed much since I left the store. It's not dead, it's just mature. Buying online, today, is the same as it was 10 or 15 years ago.

Blogs (Web logs) are another mature technology – they haven't changed in the eight years since the invention of Twitter as a micro-blogging platform. Dave Winer described it best, yesterday, in his interview with The Guardian on the 20th anniversary of the blog when he said that some of the spark is gone.

A couple of years ago, in Two Ships Crashing in the Night, I wrongly predicted that the next big thing would be random video chat for social media. Today, I see that the Web, social media, blogs, e-commerce, e-mail, etc, have plateaued. None of these technologies behave much differently, today, than five or ten years ago. I used to implement cutting edge entrepreneurial ideas enabled by the Web such as SMS payments and classified ads, URL shorteners with revenue models, race photo distribution before the proliferation of RFID, etc. These technologies aren't dead, rather their growth is dead.

So, what's the next big thing?

The Future of High Tech

Without a doubt, the future is in wearable technologies. Eyeglasses have been around since the late 13th Century so it's only natural to incorporate a heads-up display into them now that networked computer displays can scale down and be (almost) fashionable. The ubiquitous smartwatch isn't far away. GPS in shoes isn't just for endurance athletes – Alzheimer patients won't remember their phone and they may forget where they put their shoes, but they're not going to forget to wear their shoes – it's self-prioritizing. Silver alerts will become a thing of the past.

Entrepreneurs looking for the next big thing on the Web will be challenged. It's hard to be revolutionary in a mature industry. Instead, entrepreneurs should to growing markets in technology. The longer a technology market moves sideways on its plateau, the harder it will be to make a difference since small, incremental changes aren't sexy. It's like adding a catalytic converter to the internal combustion engine. Sure, it's great for the environment, but a typical consumer could care less.

If you want to put a dent in the universe, you'll need a hockey stick, curve jumping idea in a growing market.

Revolutionary Innovation: Hockey Stick, Curve Jumping Ideas

Innovation is anything that reduces the cost of a transaction. Revolutionary innovation is a curve jumping idea that looks like a hockey stick graph in a growing market. 

There are incremental improvements and then there are revolutionary improvements. The latter are improvements that aren't only twice as good, rather they're ten times better. It's a paradigm shift that disrupts markets. 

The ice trade is a perfect example of revolutionary technological improvements. In the late 1700s, only the rich had ice since it had to be harvested in the winter and then shipped like granite or marble and stored with a short shelf life. Frederic Tudor was Boston's "Ice King" who made his fortune by harvesting and shipping ice to places that would not have otherwise had it such as the Caribbean and India.

Innovation during Ice 1.0 revolved around making sharper saws to cut the ice and inventing insulation, other than hay, to keep it from melting.

With the advent of electricity, ice harvesting was no longer necessary. In Ice 2.0, warehouses could make ice anytime and send it out for local delivery. This is, in its truest sense, a curve jumping disruptive technology. If you worked in the ice business in the late 1800s you needed to pay attention when refrigeration technology came along otherwise you'd be left out in the cold. 

Looking back, it's obvious that Ice 3.0 was the invention of the personal ice maker, AKA: our home refrigerator. If warehouse refrigeration and ice delivery companies didn't start making home refrigerators in the first half of the 20th Century then they were left behind.

Tuesday, January 28, 2014

Laundering Money with Bitcoin

My Bitcoin address
Bitcoin is quickly becoming a way to generate (mine) and transfer funds over the Internet. Anyone can download the Bitcoin ledger detailing every payment ever made since day one, but who actually sent and received the funds is anonymous. It's literally the equivalent of digital cash. Each dollar bill I spend in the real world may be serialized, but I usually don't know the identity of the person I give it to and they don't know my identity – plus, there's no identifiable audit trail.

With the anonymity of Bitcoin comes problems similar to dealing with cash, such as losing it or money laundering. Entrepreneurs are setting up Bitcoin exchanges so people can convert Bitcoin to traditional currency and vice versa. This is how Bitcoin users get money into and out of the system. The big danger for entrepreneurs who run a Bitcoin exchange is that they may end up getting arrested if they do business with a known money launderer which is exactly what happened this week.

At lunch, today, I was discussing Bitcoin with some fellow technologists. Specifically, we talked about a college student who made over $24,000, last month, simply by waving a sign on TV with his Bitcoin address. As we discussed this we realized that this is a perfect way to launder money. Since each Bitcoin address is anonymous it makes it easier to launder money. Here's how it would work if you have a large amount of money to launder.

1. Deposit your funds, in relatively small amounts, across multiple Bitcoin accounts (you can generate an unlimited number of Bitcoin accounts). Perhaps one Bitcoin account for each transaction.

2. Advertise your Bitcoin address anywhere popular (online, in the newspaper, on TV, etc).

3. Send all of the funds in your multiple Bitcoin accounts to a single Bitcoin address.

4. Withdraw your bitcoins as cash and claim they were all anonymous donations, but don't forget to pay your taxes.

Can simply advertising your Bitcoin address result in strangers sending you Bitcoin? It did for that college student I mentioned above and it worked for me when I tweeted out my Bitcoin address and a stranger sent me 0.0001 Bitcoin (worth about 8¢).

For the record, this is my Bitcoin address:
1J5p7Uvwdn7tKEjwnEPv9hSfMtycyUfiR

Also, you can send me a Bitcoin using this QR code:

Bitcoin address requesting 1 BTC.

Monday, January 27, 2014

Metrics for the Best Possible User Experience

In the past, I've written about creating the best possible user experience (BPUX) and it's worth revisiting. Simply put, the basic metric for BPUX is how many clicks and how long it takes to accomplish a task. While you may be able to accomplish a task faster in ten clicks that takes me longer in three clicks, that's still not the BPUX. The reason you're so much faster is probably due to the fact you've memorized the click path and it's become second nature to you.

As Steve says below (52:14)...
You've got to start with the customer [user] experience and work backwards to the technology. You can't start with the technology and try to figure out where you're going to try to sell it. And I've made this mistake probably more than anyone else in this room and I've got the scar tissue to prove it.


 

Saturday, January 25, 2014

APIs for Government Services

I recently befriended a guy who used to work in the mayor's office. During his tenure he oversaw several key transportation initiatives related to making the city more green and efficient. After speaking with him an idea came to mind regarding the importance of opening up government data to third parties via APIs. This is, by no means, a new idea, but it became obvious to me what can be gained once that happens.

Currently, if I want to access my DMV information, I have to visit a website developed by the government. Government websites are notorious for their poor design. Yesterday, I visited an FAA website to make an affirmation and this is what I saw...

Click to enlarge

I spent a couple minutes looking up and down the webpage wondering where to click to register my affirmation. I finally discovered that the entire green shaded area was a "button" to click on for affirmation. Although spelling out "click here" is usually a poor design choice, this is clearly a case where that would have been helpful. Even better would have been a simple button reading "I Affirm." If you look closer at the screen shot, you'll see there's actually a second button (the mauve shaded area) below the green one.

Data Wants to be Free

The reason I harp on poorly designed government websites is it would be simpler for governments to mind the data and let third parties design the websites and apps to disseminate it. Much of this data should be in the public domain, such as where a bus, train, or letter carrier is at any given time. Private government data, like my DMV information, can just as easily be accessed without compromise in much the same way that third parties access your Facebook or Twitter account.

The private company, Car2Go, does a great job at sharing data. Car2Go has their own free app and they publish their car data APIs for third parties to access and develop against. Car2Go doesn't make any more or less money if a customer uses their app or a third party app. Third parties are incentivized since they can sell their apps. Car2Go makes their money on the car rentals while third parties make their money selling their own apps.

The next time you find yourself on a marginal government website think about how great it would be if a professional web design firm got a hold of it.