Wednesday, December 30, 2015

Hacks and Tricks of the Trade at Facebook

Software engineers love hacks that become tricks of the trade.

A hack is regarded as something that gets the job done in a clever way, but it's usually brittle. It's an inelegant, but effective, solution to a computing problem, sometimes referred to as a kludge or jury rig.

Any software engineer who's coded on a daily basis has written a hack. Every so often, a hack rises to the level of innovative breakthrough and is recognized by a prominent person in the industry.

As I've said before, innovation is anything that reduces the cost of a transaction in terms of time or money. The best hacks are the ones that already use the current infrastructure in an innovative way.

Until a decade ago, most every time a website served up a webpage it would go to the database to refetch data. For example, an e-commerce store would look up the products that are on sale each time a user requested that page. The problem was that many pages were served up at the same time, with redundant hits to the database. After all, the list of items on sale isn't going to change from one minute to the next.

About ten years ago, as servers needed to handle more load, there was a rise in open source caching technologies to minimize the number of trips to a database. This was a big gain for read only data, which doesn't change often. Storing data in memory (as a cache does) reduces the overhead of interacting with a database. A database's job is to ensure data reliability by running many checks, formally know as ACID properties. But many of these checks are unnecessary if the data doesn't change very often. So, rather than make a trip to the database, the data is simply stored in memory so it's retrieved much faster.

Facebook Tricks

I recently heard about a brilliantly simple trick that Facebook uses to speed up their site. When a Facebook user logs into their account, their data is fetched from the database. While fetching the data, the user has to wait. The amount of wait time could be imperceptible to the user, or it could be a noticeably long time if the website is under a heavy load. "Heavy load" is a relative term, but Facebook services more than one billion users per day, so saving any amount of time makes a noticeable difference.

Wouldn't it be great if Facebook's servers knew what data a user needed before the user formally requested it? Well, that's effectively what Facebook's done with their little trick that simply involves sending an encrypted UDP (datagram) ahead of the formal TCP/IP request. UDP requests are fire-and-forget, meaning there's a small chance they might not arrive at their destination. TCP/IP, on the other hand, guarantees delivery (or notice of a failed delivery). TCP/IP is the reason that webpages render perfectly compared to the BBS's of the 1980s that used unreliable dial-up modems where static and interference would be misinterpreted as data and displayed as garbage text.

So, the UDP datagram arrives well ahead of the TCP/IP request which enables Facebook's servers to pre-fetch the data and load it in its cache before the formal TCP/IP request arrives. A simple yet elegant way to optimize a website for speed.

Thursday, December 24, 2015

Ethernet vs. WiFi: Why WiFi is Way Zippier

Speedtest: 94 Mb/s on LAN vs. 314 Mb/s on WiFi
This week, I bought a new TV and hooked it up at home. The key differences between this model and the previous ones are changes to the remote control and the new tvOS App Store. I figured hardwiring it, on my LAN, would be better than WiFi. My thinking was two fold. First, I expected less of a chance of interference on a LAN connection, than wireless, and more importantly, I also thought the LAN connection would be faster.

I was half right. Of course there's less of a chance of RF interference, since wired is better than wireless. But my TV sits less than six inches away from my wireless router. Interference is unlikely.

I was also half wrong. Surprisingly, the new TV's LAN connection is Fast Ethernet, not Gigabit Ethernet. That means the LAN connection to the TV tops out at 100 Mb/s. But the Internet pipe into my living room is several times zippier than Fast Ethernet.

As I said nearly two years ago, Common Sense Can Be Misleading. Even simple theories need to be tested.

12/25/2015 Update from an Apple senior software engineer who contributed to the AppleTV:
The WiFi chipsets implement more of the protocol stack than ethernet chipsets (this isn't unique to the ATV by a long shot). Thus, using WiFi consumes *less* of the main CPU than ethernet, which is counter intuitive in that a wire is more reliable and requires fewer re-transmits. This also means that a wifi only device will idle sleep using less power than a wired device (if power management is of great concern).

Wednesday, December 16, 2015

Flying vs. Driving

Flight planning, flight planning, and more flight planning.
When I learned to fly, I thought it would be like boating. Sure, I knew maintenance would be expensive, but I imagined jumping into my plane, at a moment's notice, and heading off into the wild blue yonder.

It turns out, while driving and boating can be relaxing, flying is a bit more stressful on a complex level. For starters, when flying, I have to always be "on," meaning highly attentive, lest I make a catastrophic mistake. Even when cruising on autopilot, I have to continually monitor the instruments while talking to air traffic controllers; and they're not patient if you miss their calls more than once or twice. Driving tends to be very linear, in a single direction. A driver maneuvers based on what's directly ahead. Rarely does a driver worry about what's coming from the sides, never mind above or below as is the case when flying through three dimensions. What's more is that most of the flying I do is to keep my skills and plane from getting rusty. I'd love to fly for leisure, every day, but that's not realistic.

A couple months ago, I noticed the big difference between flying and driving on a trip to Cupertino for a speaking engagement on Apple's design and marketing philosophies. My intent was to fly myself into San Jose Airport. I did my usual planning, the night before, and drove out to the airport at noon. As soon as I got out of my car I noticed it was eerily quiet; like the calm in the eye of a hurricane. Something didn't seem right since the airport, which is usually a whirlwind of activity, was too still. After a minute or two I heard several F/A-18s flying fast, low, and loud. I pulled up a digital chart (map) of the airport and saw that it was under temporary flight restrictions (TFR). I hand't noticed the pending TFR, the night before, which seemed odd. I called the airport operations manager and he confirmed my concerns. The airport had suspended operations while the Blue Angels practiced for the next day's airshow. He also mentioned that the TFR was a moving target since the times kept changing leading up to when it went into effect. The TFR began about 30 minutes before I arrived at the airport and it would be in effect for nearly six hours.

Buttoned up since I was driving instead of flying.
I took a few minutes to do some mental math as I sat in my car listening to the silence, pierced by the roar of jet engines. Flying commercial, on short notice, was prohibitively expensive. My next option was to wait until 5 PM, pick up my flight clearance, and then depart, along with many other flights. That would probably get me to Silicon Valley around 9 PM. My final option was to hit the road and drive for eight hours. That would get me to my destination around 8 PM. I chose to drive.

As I headed up the 5, I couldn't help but notice my immediate mental shift from being outwardly focused on flying to being inwardly focused on me, myself, and I as I daydreamed through LA traffic.

Saturday, November 21, 2015

How Not to Get Rich

It's almost needless to say that business pitches like "Get Rich Now!" or "Grow Your Business Revenue by 10x!" or "Earn $90,000 Working From Home!" should be avoided. It's not that these businesses don't want you to succeed, rather it's that their priority is to get you to buy their system or program, at any cost.


Twenty years ago, I was browsing magazines at my local Borders bookstore. A forty-something-year-old man approached me and said, "I can tell, by the magazines you're looking at, that you're an interesting person." Flattery will get you everywhere. After a couple minutes of chit-chat he told me that he trusted me enough to give me a cassette tape with some business opportunities. It only cost me my phone number. I listened to his tape. It was a recording of a 15 minute group presentation about getting rich, living your dreams, having enough money, etc. As I listened, I kept wanting to know more. Specifically, how do I do it? How do I get rich? Then I realized what it was. When he inevitably called me, I asked, "How is this different than Amway?"

"We are Amway," he exclaimed.

Thanks, but no thanks. One of many problems with Amway is that they treat every person as if they can be turned into a hard-sell sales person. That's like assuming we can make every person a software engineer. To each their own. Engineers and sales people are wired differently.


This past week, I attended a free presentation with headlines similar to those I mentioned above. I knew exactly what to expect, and reality was inline with my expectations. These pitches follow the tried and true "amway-ish" techniques. "Would you like to earn an extra $2,000/month?" Of course you would. Who wouldn't?

Here are the simple tell-tale signs:
1. Pump the benefits.
2. Hide the features.
3. Offer a single solution: Buy my money making system.

You'll see the same routine over and over again. These companies will push their benefits hard, with details, without explaining a single, actionable feature other than buying their system. The tripwire is something like, "I charge $500/hour, but I'll give you a free hour to see if you can be accepted into my sales program." Adding scarcity is another key selling point.

Generally, the benefits of their system will be explained, in detail. "I used to do this, but now I do this." This is an excellent story telling technique I learned from Joyce Maynard. "I used to work hard for six months to earn $2,400. Now, I only need to work for six days to earn $24,000. And my program can show you how to do it." While the benefits are plentiful, the features are scarce. The "How is it done?" details are no where to be found during the initial pitch. And, when you hear it, it's almost always a let down.

My guard was down when I was in Borders, flipping through magazines. And cheap sales talk is designed to catch the attention of the unguarded. And, as I mentioned, you'll hear little to no details on the features of the system. In other words, "What do I need to do to achieve success?" or "How does it work?" is missing. That requires signing up for the program.

So, why do people continue to fall for it? PT Barnum is credited with answering that question.

Sunday, November 8, 2015

Imagining the Invisible

In the 1990s, I read Information Anxiety. It's written by Richard Saul Wurman, the creator of the TED talks and the Access travel guides. Wurman wrote about how to manage information. The anxiety he speaks of stems from the explosion of information; the fact that an issue of the New York Times contains more information than the average person in seventeenth-century England would have encountered in a lifetime.

Wurman suggested ways of coping with the overload of information by visualizing the invisible, such as size or distance and compare them to tangible things. For example, an inch is the diameter of an American quarter coin, six inches is the length of a U.S. dollar bill, an acre is roughly the size of a football field, without the end zones.

Road Trip

A common analogy I frequently make and forget (which is my primary purpose of this blog post) is explaining how far San Diego is from San Francisco. In raw distance terms, it's about 500 miles. That's the same as driving from Washington, D.C. to Kittery, Maine, which is at the southwest tip of that state. That's a long distance, but it pales in comparison to the 830 mile trek from the southeast tip of Texas (Brownsville), due north, to that state's most northeastern point in Follett.

Sunday, November 1, 2015

Telling a Great Story

My Silas Wood 6th grade teacher, Ms. Cooke, speaking about South Huntington Schools Hall of Fame inductee and Bank of America executive, Kieth Cockrell. 

What's the secret to telling a great story? It depends on a lot of things. Mostly, though, it's important to know your audience. The topic of your story doesn't even have to be interesting, rather, how you tell a story is key. A little levity and drama is helpful, when appropriate. Great storytellers have a way to pull in their audience without shutting them out; and the latter part is key – think about great mysteries with surprise endings.

A few years ago, I began writing fiction. I simply sat down at my computer and wrote a few short stories. And I made some classic mistakes, such as beginning a story with weather and writing the cliche story about a divorced woman and a sick dog.

I had no idea if my storytelling was good, so I went to a professional, Joyce Maynard. Joyce's biography always begins with the fact that she wrote her first book while living with the author of The Catcher in the Rye, J.D. Salinger. What adds to the allure of this tale is that, at the time, Joyce was 19 years old and Salinger was 53. But it was truly the high quality of her writing that got the attention of Salinger when, at 18, her article, "An 18-Year-Old Looks Back On Life" was the cover story of The New York Times Magazine in 1972. A key thing I learned from Joyce is that the story behind the story can be more interesting than the story, itself, since it's more exciting to show people what's going on behind the curtain.

The Cooke's In

Even more important is the storytelling technique of summarization that I learned from my sixth grade teacher, Ms. Cooke.

Last weekend, I had a chance to spend a couple days with Ms. Cooke – something I hadn't done for five years – and it was highly enthralling.

I, along with several other 6th grade classmates, still connect with Ms. Cooke because she had (and still has) a strong presence in our lives. She cared about us as students and she was a great storyteller. She's a smart, independent person who neither tolerates fools nor stupidity. As a teacher, she wanted to teach her students not only book smarts, but also key lessons in life. The quintessential "teach a person to fish" by showing us critical thinking skills.

After more than 30 years in the classroom she retired and opened The Cooke's In restaurant for more than a dozen years. Shortly after retiring from her restaurant, in 2009, I spent a couple days at her house scanning school photos covering three decades, followed by a mini 6th grade reunion where we got to hear more of her stories.

Ms. Cooke preparing her spectacular jerk chicken.
Fast forward to two weeks ago, the night before my 30th high school reunion, when about half a dozen of us from my 6th grade class descended on a classmate's house in Amagansett, NY, in the Hamptons, for a couple days of reminiscing. Of course, Ms. Cooke joined us and prepared her spectacular jerk chicken.

While listening to her speak, I learned another key storytelling secret: keep your story short and to the point. As we hung out in the kitchen and spoke about how good her food was Ms. Cooke said, "You know that the secret is to running a restaurant? Expediting."

Do you see what she did there? She summarized her entire story – a story she had yet to tell – in a single word that drew us all in.

"What do you mean?" we asked.

She told us that running a restaurant is about coming up with a recipe and being able to make it the exact same way, every time, and to do that quickly. She told us the obvious, but it carries more weight when spoken by the voice of experience. She told us just enough to pull in our attention and then she answered our question without waste of time or words. We speak about "active writing," but active talking is equally important since it's a key essence of storytelling, regardless if it's fact, fiction or marketing.

Wednesday, October 28, 2015

Guy Kawasaki: Lessons of Steve Jobs

Lessons of Steve Jobs keynote

Posted by Guy Kawasaki on Wednesday, October 28, 2015

Monday, October 12, 2015

The Apple Way of Design and Marketing

1 Infinite Loop: The Mothership
I figured, "Why not toot my own horn?" and brag about my Apple speaking engagements. I'm surprised how well it's been received, probably because it touches on a some key design, marketing, and branding topics.

I've given The Apple Way of Design and Marketing presentation a number of times, mainly to Chinese delegations of business people touring America's tech companies. Having worked at Apple, I forget the allure of how the company looks from beyond Infinite Loop and what makes Apple unique. Like a beautiful photo, things look amazing from the outside, where you wish you could touch the magic, on the inside.

My presentation touches on a variety of topics such as: why the Apple logo used to be upside down, to Apple's sophisticated unifying branding techniques, to simplifying UX and technology processes, along with Apple's brilliant decisions and mistakes.

Monday, October 5, 2015

Twitter Unique

Twitter is the haiku of the new millennium.

But, there is serious discussion to remove the 140 character limit in tweets.

Removing a tweet's 140 character limit is the equivalent of showing up at a haiku conference and telling everyone to stop using 5-7-5 and, instead, to use 7-5-7 since that would generate more content.

If Twitter removes the limit, what will differentiate it from other platforms, such as Tumblr, Medium, Blogger, etc? Twitter has recently removed this limit in their direct messages and I've already felt the negative effect of this decision.

In Corporate America, we detest e-mail because of its unlimited length. But Twitter's loved because it's short and to the point. The beauty of 140 characters is I always finish reading what I've started. ​It keeps everything short and to the point with the option to link to detailed content.

A few weeks ago, I blogged about the benefits of the 140 character limit in direct messages (DMs). Recently, I had a customer service issue I addressed through DMing. My DM was not read, in detail since it was more than 140 characters. The CSR asked me for information I had previously included in my original DM. At 500 characters, my DM, written like a short e-mail, was too long. It's a fast and noisy world out there – clear and concise communications is appreciated more than we realize. 


Twitter is unique. It's both a micro-blogging platform and a two-way communications medium. One key feature that makes Twitter unique is the mention. What other blogging platform enables this type of communication? Remove the 140 character limit and you have what we already have with Medium, or most any other blog.

We the People of the Internet used to enjoy Posterous.  It was a longer form than Twitter, but simpler than Tumblr. You could even blog on Posterous without setting up an account. Then Twitter acquired Posterous and shut it down (so as to not compete with Twitter). Twitter gave me my Posterous content, but it looked nothing like it did when Posterous was alive and kicking.

My favorite part of Twitter is the absence of an over-lawyered, one-sided, postscript disclaimer: This E-mail and any attachments are private, intended solely for the use of the addressee. If you are not the intended recipient... When has that disclaimer been of any use in an e-mail? Increasing the Twitter character limit beyond 140 characters will definitely add more noise. And I also fear that it would lose its simple two-way dialog via mentions.

Active Writing

For me, the personal beauty of Twitter is it has improved my writing, in a Hemingway sense. I enjoy writing fact, fiction, non-fiction, and narrative. A key to writing well is using the active voice which is direct and to the point, much like Twitter. Many times, I've drafted a "long-winded" tweet, that wouldn't fit into 140 characters, and had to pare it down to a more active voice:

never heard before vs. never heard
tell anyone else vs. tell anyone
a friend of mine vs. a friend
taking care of vs. fixing

But, in the end, Twitter, the corporation, needs to grow, so it must generate more content.

How much better would Twitter be if it expands beyond 140 characters? Fundamental changes like this are bold risks. Perhaps it will payoff. Then again, what is haiku without 5-7-5?

Simplicity is the ultimate sophistication.
–Da Vinci.

PS – Tweetstorms, on the other hand, are a great way to link tweets together to say more.

Saturday, September 26, 2015

1 Infinite Loop Apple Store

Last weekend, the new Apple Store at 1 Infinite Loop reopened, after being closed for remodeling for a few months, and I had a chance to visit it during its opening week.

If memory serves, at the end of the last century, this store was called the Apple Store. After 2001, it was renamed The Company Store since it was unique in the truest sense of the word. Now, it's been rechristened, once again, as the Apple Store, manned by Apple retail employees who comprise 50% of Apple's 110,000+ workforce.

What makes the store at 1 Infinite Loop (called IL1 by Apple employees) unique is it's the only store that sells Apple logoware such as t-shirts, coffee cups, water bottles, pens, etc. I suspect that it's the only Apple Store without a Genius Bar, too.

See the video of the inside of the new Apple Store at IL1, below or, even better, checkout the raw super-high resolution HD video.

1 Infinite Loop Apple Store.

Saturday, September 19, 2015

Biennial Flight Review

BFR ground review with pilot Debbie.
As a private pilot, I require a formal review (previously known as a BFR), every other year, by a certified flight instructor (CFI). The purpose of the flight review is to ensure a pilot is safe and competent to fly. The key tell is that the pilot stays ahead of the aircraft meaning they're prepared for what comes next. For example, when approaching an airport to land, the pilot should have already set up the ground frequencies so, after they taxi off the runway all they need to do is push a button, instead of looking up the ground control frequency, dialing it in, and switching over to it. Since private pilots, like myself, are not required to fly a minimum number of hours it means a private pilot could go almost two years without flying and still legally fly an airplane. After becoming a pilot, I was surprised how much flying I had to "force" myself to do so I felt comfortable at the controls. Commercial pilots, on the other hand, have more frequent checks mandated by the airline, so they're skills are fresh and spot-on.

Yesterday, I had a college classmate, who's also a CFI and commercial airline pilot, take a flight with me for my BFR. We spent time on the ground, going over the fundamentals of aviation and planning, before taking to the skies. She also shared with me the detailed, structured, environment of her daily life as a commercial pilot for United Airlines. Suffice to say, the processes and procedures of the airlines are thorough and detailed.

Passing by Scripps Pier on our way to Carlsbad.
When I first bought my plane, I was surprised how many fighter pilots and commercial pilots wanted to go flying with me. Cruising speed in my Cessna-182 is slower than a jet can typically fly without falling out of the sky. It turns out that these jet jockeys love the freedom (and low flying altitude) of a small, single engine plane. A commercial airline pilot has to file an instrument flight plan and stay exactly on course, or as an air traffic controller directs. While I do the same thing on my cross country flights, I usually find myself flying much shorter distances, in clear Southern California weather, using a less formal procedure known as visual flight rules (VFR). The difference between flying under instrument flight rules (IFR) and visual flight rules is the difference between standing in line at the DMV and walking, willy-nilly, through the mall. Just like in the mall, VFR literally uses the same procedure to prevent collisions: "See and avoid."

I'm happy to report I passed my BFR without any problems and even received a complement, "I like how methodical you fly and do your checklists!"

Saturday, September 12, 2015

"Apple Crosses The Line With New iPhone Feature"

Apple Crosses The Line With New iPhone Feature

That's the headline of a piece a friend just sent to me asking if there was genuine cause for concern. When I began reading it, I thought it was a Facebook alarmist post or article from a yellow journalism website:

If you’re setting yourself up to get the new iPhone or get the new iPhone for your kids then you need to make sure you’re aware of the new features. This is something that needs to be shared with friends to let Apple know sneaky behavior will NOT be tolerated. According to Gawker, the new iPhone will be recording video and sound AT ALL TIMES when your camera app is open by default whether you’re taking picture or not. If you’re planning on getting the iPhone 6s BE SURE TO TURN THIS FEATURE OFF.

Obviously, I'm not Tim, today.
No, this quote, complete with bolded capitalization, is not from Fox News or some tin-foil hat blog. Rather, it's from CBS.

So, are these claims true? Well, on a very technical level, yes they are, but there's no cause for concern. Apple calls these features Hey Siri and Live Photos.

This might sound like splitting hairs, but there's a bit of a difference between "listening" and "recording." The key difference between listening and recording is the same as caching and saving. Saving something means it persists until a user deletes it. Caching something means it's temporarily saved, for perhaps a second or two, until it's determined if it's needed. If the content is not needed, it's discarded much like a buffer; or, more likely, erased as new content is recorded over it.

Hey Siri, which is available on currently shipping iPhone models, only works when the phone is charging to save power. With the new iPhone 6s, the Hey Siri feature can be enabled at all times and, much like other listening devices, such as Amazon's Echo, it's constantly listening to sounds to determine if a key phrase is spoken. Let's say that's no more than two seconds of sound. After two seconds, any new sounds are recorded over the previous sounds. The same is true for Live Photos where Apple records video in a cache which is saved when you press the shutter button. With Live Photos, about one second of video is recorded just before and after you press the shutter. If you don't snap a photo, the video is discarded.

This isn't much different than any digital camera, whether it's on a smart phone or point-and-shoot model. Without pressing the shutter button, images are still cached on the LCD display on the back of the point-and-shoot camera for a fraction of a second. You could point a point-and-shoot camera at something I can't see and even if you never press the shutter, I could still record a video of the LCD display on the back of the point-and-shoot camera and capture everything. The key difference with Hey Siri and Live Photos is that no one has access to the cached content while the one or two second loop is recording.

Yellow-journalism is creeping more and more into mainstream media. Anything to get eye balls. Phft. Or, perhaps the joke's on me.

Update: Just to beat a dead horse, Apple chimed in to confirm that none of the Hey Siri or Live Photo content is leaving the iPhone 6S.

Thursday, September 10, 2015

Corporate Taxes, Private Taxes

I asked a question on Twitter which lead to a fruitful discussion:
What's the difference between corporations doing business overseas to reduce taxes and New Yorkers who drive to NJ to avoid paying taxes on clothing?

The conclusion we reached was that it's about the corporations not doing business where they say they're doing business. It's the equivalent to an American citizen claiming income tax-free Las Vegas as their state of residency while living (domiciled full time) in California.

Of course, it's hard to blame a company or person for paying as little taxes as legally possible, but...

Wednesday, September 9, 2015

Mechanical Turk

Amazon's Mechanical Turk ( is a web service I've used, many times, over the years. It perfectly fulfills a hole left by Criagslist is specifically designed to enable two people to meet for work, fun, etc. Mechanical Turk, on the other hand, is designed for paid work to be done that doesn't require two people to meet (the work is done anonymously).

I've used Mechanical Turk to record news articles for podcasts, answer survey questions (like every lean startup entrepreneur should do), transcribe letters, edit photos, beta test websites, etc. Today, I used it to hire a worker to split a continuous live recording into individual tracks for $2.00 (plus a 50¢ tip).

Getting Results

The key to getting results on Mechanical Turk is to set an appropriate payout and head off any potential miscommunications with detailed, yet simple, instructions.

Here's the description I used for today's task.

I have a (approx.) 1 hour (62 MB) M4A raw, live recording from my jazz jam sessions that needs to be sliced up into individual tracks (songs):
  • Download this file:
  • This file contains about six jazz jam sessions separated by applause, pauses, speaking, and breaks in the music.
  • Split up the music file up into multiple tracks at the end of each session. A jazz jam session ends when you hear the applause or no music is playing (not to be confused with applause after a solo while the music contiues playing).
  • When possible, each track should have a few seconds of lead in before the music plays and a few seconds of applause at the end. Discard the remainder of the applause, pauses, speaking, silence, etc.
  • Each track shall be saved as a separate file either in M4A or MP3 format.
  • Each track filename shall be named JazzJamMay2015Track1.mp3 (or m4a), JazzJamMay2015Track2.mp3, etc.
  • To complete this HIT and get credit, either e-mail the tracks to or provide a link to each track where I can download the tracks.
  • No need to enhance or further compress the tracks, once they've been separated. Audio quailty shall not be compromised.
  • Note: Don't worry that the opening of the first song is cut off.
  • Questions? E-mail me at or use Mturk.

Apple Pencil

Yes, when the iPhone was introduced by Steve Jobs, in 2007, he panned the stylus since the iPhone used a touchscreen. Now, Apple's announced the Apple Pencil which is a stylus for the iPad Pro, seemingly reversing Steve's original convictions, and some news sites are harping on that.

There are two points to take note of. First, Steve's changed his stance (publicly) on other features Apple shipped. For example, he pointed out that no one wanted to watch video on a tiny iPod Classic screen, and then he allowed video playback in a future iPod.

My second point is more salient in that, early PDAs required a stylus just as today's computers require a mouse or trackpad. And, now, just as a creative person would buy a Wacom pen tablet, so will they buy an Apple Pencil. Optional, yet empowering.

What did I think of the rest of today's keynote?

Sunday, September 6, 2015

Blogging On a 1928 Underwood Typewriter

Last month, I blogged about tweeting on my "new" 1928 Underwood typewriter.

Today, with too much time on my hands, I moved up from tweeting to blogging on the typewriter. That was painful and unforgiving. Looking back on what I typed was even more painful since it's a hardcopy and it reads like it was written by a writer with 25 IQ points less than I have. It's no wonder there were no bloggers 100 years ago. ;^D

As the old-timers will point out, I didn't use the requisite two spaces after each period. But, after all the flack they've received for continuing to use two spaces after a period, when writing e-mails, they deserve to have some fun at the expense of us "mono-space kids."

Writing can hardly get more real-time than typing on a typewriter.

Saturday, September 5, 2015

Twitter Removes DM Limits

The key to good customer service: Be respectful.
Twitter is all about 140 characters. At least it was, until a couple weeks ago and that could be a problem.

The 140 character limit was driven by the 160 character limit of SMS. A 140 character tweet, preceded by the, up to, 15 character Twitter username along with punctuation fits perfectly into an SMS text. (The reason SMS is limited to 160 characters is an interesting story in itself.)

For the most part, tweets are public which anyone can see; no Twitter account required. On the other hand, a Twitter direct message (DM), which's limited to 140 characters, is always private. Originally, a DM couldn't be sent to any random Twitter user. The recipient has to be a follower of the sender to limit unsolicited, spammy, DMs. A smart decision.

With so many other communication channels to choose from, DMs weren't nearly as popular as messaging on other platforms such, as Facebook and other mobile apps.

The Perfect DM Application 

Over the years, though, I found the perfect application for Twitter's DMs: Customer service with "Big" companies (think: oligopolies).

Why can't we, as consumers, e-mail a tech support question to our ISP, phone company, etc? The answer is obvious: because Cox, AT&T, etc would be inundated with e-mail manifestos, tirades, and diatribes.

However, with more and more "Big" companies using Twitter, the drama of a public customer/company battle could escalate into a PR nightmare. Enter the Twitter DM.

Over the past few years, when I've had a problem with Cox, AT&T, and GoDaddy, I've used Twitter DMs to get ahold of their customer service department without drama or waisting my time navigating an interactive telephone menu.

The process is simple: Send a respectful tweet to the corporation's customer support Twitter account:
"Hi, I'm having a problem with my service. Could you follow me so I can DM you?"

These companies have active social media customer support personnel, so it usually takes only five or ten minutes, during business hours, before they've followed me. In many cases, they'll immediately DM me, before I've even noticed they started following me.

For this to work, you need a reproducible problem. With Cox, my connectivity, which is typically 100+Mbps had dropped to less than 100Kbps. I DM'd them a screen shot of the slow bandwidth with a note that I've restarted the cable modem and other steps I took to troubleshoot the problem. They're responses have typically been, "We're seeing the same issue. We can have a technician out there, tomorrow, between 8am-noon, noon-4pm, or 4pm-8pm. Which works best for you?"

Now that is amazingly quick and simple. This entire interaction might take place over the course of 30 minutes, but I actually spend less than five minutes documenting my troubleshooting steps and DMing the CSR.

This technique can work for complicated support issues, too. GoDaddy consolidated my domain names into a single account, but the DNS for some of the domains didn't transfer, which I discovered the next day when incoming mail was bouncing back to the senders. I explained the issue all within 140 characters. They quickly responded that they were on it, as they reinstated the backup copies of my DNS.


So, that gets to my concern. Twitter has removed the 140 character limit in DMs which could mean CSRs might be reluctant to continue using it if they begin receiving long and unreasonable messages. And I'm wondering what Twitter will gain by making this change. Of course, they could always switch back to the 140 character limit and use e-mail when needed, as GoDaddy and I did.

Perhaps I'm old-fashioned, but I feel like removing the 140 character limit is the equivalent of showing up at a haiku conference and saying, "Hey, everyone, instead of doing 5-7-5, we're going to do 7-5-7 so we have more content."

Yes, I'm a customer service snob. But I've been on both sides of the fence and I give as good as I expect.

Saturday, August 22, 2015

Too Perfect To Fly Casual

Today seemed like the perfect day to go flying, sunny and mid-70s. It turns out it was too perfect to fly casual.

It was unusual when I taxied up to the runway and there was only one plane ahead of me and none behind as I did my runup. I figured they'd be a lot of pilots looking to take advantage of today's weekend weather. But it turns out I was ahead of the rush as we departed on a 25 minute flight from Montgomery Field to Palomar Airport.

As I entered Palomar Airport's traffic pattern, the control tower asked me to make a right 360°, meaning they had a lot of planes in the traffic pattern. A standard rate 360° turn takes two minutes. After completing my turn I proceeded downwind for a minute or two when the airport tower asked me to repeat the maneuver. There were some mountains less than a mile to my right and higher than me that I kept an eye on since my navigation system kept giving me terrain alerts.

After my second 360°, the tower controller had me continue downwind a few more miles before turning base to make my final approach. One 360° means the airport traffic pattern is congested, two 360° turns tells me they're very busy. But it all worked out.

Flying Home

Flying back to Montgomery Field was even more congested. The busiest airspaces are designed as Class B, also known as bravo airspace, surrounding the most active airports. San Diego's Lindbergh Field and the Marine Corps' Miramar Air Station, both surrounded by bravo airspace, are eight miles apart. About halfway in between these two airports is my home airport, Montgomery Field. Getting in and out of Montgomery Field, without going through bravo airspace, requires a little finesse. Two alternatives are to ask for a clearance into the bravo airspace or to request an IFR clearance. An IFR clearance is like having a second sets of eyes (air traffic control) looking out for my well being; but it also means I'd have to follow their flying instructions which isn't always the most direct route.

When I reached the outer edge of the bravo airspace, I began orbiting the Del Mar Racetrack as I tuned in air traffic control. It was virtually impossible to get a word in edgewise. The air traffic controller was continually giving instructions to the airlines flying into and out of Lindbergh Field. After a long several minutes there was a pause. I asked for clearance into the bravo airspace and she immediacy said, "Unable." I continued to orbit for a few more minutes, hoping she'd call me back, but that never happened.

I began heading back to Carlsbad so I'd be in a less busy area as I dialed in a new air traffic control frequency and requested an IFR clearance to get me into Montgomery Field. Air traffic control issued me my clearance, gave me a heading to fly, an altitude to climb to, and a new frequency to switch to. It seamed that the air traffic controller and I were the only two people on this frequently. The same was true for the next frequency I switched to. Those were good signs that things were not busy where I was being routed to as I began my approach to Montgomery Field.

The last air traffic controller began lining me up with the runway about eight miles from the airport. Normally, from this point, it's smooth sailing to touch down, especially since the weather was clear. Once I was lined up I tuned in Montgomery tower to let them know I was approaching the airport. The tower asked me if I could cancel my IFR clearance and fly VFR. This seemed unusual, but I told her that I could do it. She then told me to make right 360° turns. Next, she told about six aircraft, on the ground, waiting to take off, to hold their requests for six minutes until she cleared out the inbound traffic.

As I completed my first 360° the tower cleared me to land where I could see a line of planes, leading to the runway, waiting for their departure clearances. That's when I realized the reason for the congestion at Montgomery Field was due to the fact that the airport has three runways and two were under construction. Usually, the two parallel runways at the airport are in use, simultaneously. With the beautiful weather bringing out private pilots, like me, and every plane vying for the same runway, it made flying a bit more exciting. Unlike driving, flying alway yields new learning experiences.

Tuesday, August 18, 2015

Random Thoughts on Randomness

Here's a random thought on randomness...

In a typical state lottery, like California's Powerball, a player chooses five or six combinations of numbers between 1 and 59.

So, how likely is a lottery's winning set of numbers to be 1, 2, 3, 4, 5 or 1, 2, 3, 4, 5, 6?

Surprisingly, it's no more or less likely than California's most recent Power Ball winning numbers: 3, 13, 17, 42, 52, 24. Random numbers are random numbers. While 1, 2, 3, etc doesn't seem random, it's no different than any other combination with non-patterns. Don't forget, since we're dealing with pure numbers there's solid mathematics behind it.

The Medium is the Message

The medium is the message. Sometimes that medium is specific, like an advertisement or newspaper, and other times it's general such as a person or environment.

Leaders who pride themselves on not being politically correct are entertainers since they've forgone the actual issue to choose form over substance. We have an expectation that respected politicians, who are to be taken seriously, will be politically correct; hence the plain English description: politically correct. While this phrase is usually used as a pejorative, it can also connote tact. And tact, coupled with good intentions, are the lubricants of human relationships.

Instead of creating problems, we need more leaders who can solve problems. And, sometimes, we need leaders who know how to follow – in other words, we need leaders who are team players, not dictators.

Friday, August 7, 2015

RIP Apple Online Store: 1997 – 2015

It brings a tear to my eye that Apple shut down the Apple Online Store, yesterday.

When I worked at the Apple Online Store, almost a decade ago, it fell under Apple's Engineering department. More specifically, the online store fell under Eddy Cue who also oversaw the iTunes Music Store, as it was originally called since it initially only sold music. That changed, about half a dozen years ago, when the online store moved out from Engineering, into Apple's IT department (IS&T).

Of course you can still buy Apple hotness at, but there isn't a separate tab for the store. Instead, you add items to your shopping bag, directly from a product's marketing page.

I've always enjoyed telling people about my experience at the Apple Online Store. Before each of Steve Jobs's Keynote speeches, we'd turn off the store then Steve Jobs would take the stage and announce the new products we, the store software engineers, didn't even know about. After he walked off stage we'd turn the store back on under a huge load. Most customers would skip the marketing pages for the new projects and immediately go to the online store and add the new products to their cart to see the prices, configurations, and order ship times. I learned some important load balancing and stress testing lessons while working at the Apple Online Store, especially for scaling servers and writing fault tolerant code.

Does this change make sense? Of course. Looking back, I ask myself why it wasn't this simple in the first place. Probably because this was how it was done in the 1990s. Now, without an explicit store, each product's marketing page is where you browse and the shopping bag has become the checkout portion of the old online store. At first, I was wondering where I'd find accessories. It turns out those are under each of the respective product tabs (Mac, iPad, iPhone, and Watch). So, it all works out. As Apple grows bigger and bigger, streamlining and simplifying processes pays the company dividends.

Saturday, August 1, 2015

Underwood Typewriter

A century of keyboarding.
I've been looking to acquire a working mechanical typewriter since I saw one for sale in Annapolis, last year.

A few months ago, I added my name to a waitlist at a local shop that receives typewriters, from time to time. A couple weeks later, I got an e-mail from the shop about one they had, but, by the time I got there, it was gone. Earlier this week, I received another e-mail that three were in stock, so, yesterday, I biked over to check them out.

"Dear Mom,"
Antique mechanical typewriters are not cheap, especially if they're in working condition. I fell in love with the first one I saw, today, and bought it. It was manufactured in 1928 by the Underwood Typewriter Company which produced the first widely successful, modern typewriter. When Underwood was in its heyday as the world's largest typewriter manufacturer, it was turning out typewriters at the rate of one per minute

In the Internet age of instant gratification, real-time is a big deal. Surprisingly, it doesn't get anymore real-time than pressing a key and seeing a character appear on paper, instantly. Obviously, mechanical typewriters are too real-time, and unforgiving. Perhaps my keyboarding skills have deteriorated, but I am overly conscience of making typos as I press each key.

I took my new toy home last night and wrote my first typewritten note. Today, I sealed it in an envelop, put a stamp on it, and mailed it to my mother. It has been decades since I last did that.

After mailing the letter, I couldn't resisted using my typewriter to send out a tweet.
Tweeting with a typewriter.

Tijuana Manufacturing for Kickstater

Wire harness manufacturing.
This past week, I took a group business tour of a few manufacturing factories in Tijuana, Mexico. The tour was part of the San Diego Inventor's Club and Kickstarter Meetup that I've helped coordinate for the past year and a half.

We visited a few different factories that specialized in textiles, injection molding, and electronics. Two of the factories looked as I expected. But one looked ultra-new and high tech with impressive security. After checking the bus's undercarriage for bombs, this high security facility, which required all employees to back into their parking spots, carefully reviewed everyone's paperwork. A few people were denied entry, since their paperwork wasn't in order. 

The key purpose of this tour was for members of our meetup to establish connections with companies in Tijuana who could make the products they're fundraising for on Kickstarter. The idea, rather than outsourcing to China, is to explore nearshoring opportunities in Mexico.

What made this a no brainer for our group of two dozen is that the Tijuana EDC arranged for our transportation, tours, and lunch. 

Leadership Observation

Back in the U.S.A.
I made an interesting group observation at the end of the tour. Our tours went smoothly, but crossing the border back into the United States is always dicey in terms of how long it will take. It can take less than 30 minutes or it can take three hours, or longer. Our bus dropped everyone off at the border crossing building and it took us less than 30 minutes to walk across the border. Then we waited on the American side of the border for our bus for more than an hour. At first, we weren't sure where our bus was until we walked up to an overpass, to peek into Mexico, and saw our bus sitting idle, awaiting inspection. 

At this point, we had had a long day after spending 12+ hours on the bus or on tours. This is when a few people's patient was starting to wear thin and I noticed the difference between the true leaders, the followers, and the "not a team player" people. In the corporate world, leaders are managers and followers are individual contributors.

Career individual contributors focus inward, since they aren't responsible for any direct reports, while managers focus outward. True leaders set the example and don't needlessly complain, "Where the hell's our bus? It's stuck at customs? This is ridiculous. Don't you think this needs to be fixed?" We've all seen it before, it's useless complaining from high maintenance people which makes the situation worse.

This minor observation is one I take for granted given my formal leadership training and experiences. But a little stress, put on people when they're tired or hungry, brings out tantrums. Stress Can Make You Behave Like a Toddler is a perfect description. Fortunately, for us, mob mentality worked in our favor since most everyone was a strong leader and they didn't bite the hook cast out by the complainers.

There's a new joke: Before marrying someone, you should sit them down in front of a computer with a slow and intermittent Internet connection to see how they behave. 

Thursday, July 30, 2015

Process Flow Diagrams

USMC supply system process diagram.
Most full time employees have a keen understanding of their daily processes. However, others, outside the organization, can easily become frustrated when they have to get involved in a process they don't understand. We experience this when we visit the DMV, file our own taxes, etc.

I learned a great way to solve this problem when I was a student at the Naval Academy in the early 1990s. As a midshipman, I had the opportunity to participate in a teleconference with Dr. Deming. Dr. Deming is known for his significant contributions in business management throughout Japan after World War II. In the mid-1980s, his Total Quality Management (TQM) teachings were adopted by the U.S. Navy and branded as TQL (L for leadership).

I paid close attention to Dr. Deming's comments during his conference call since I was raised by a father who spent a career in quality assurance.

The key issue Dr. Deming spoke about, that was actionable for me, were his comments about process diagrams. He pointed out that businesses need to diagram their processes, with names below each box of the person responsible for each step. This point stuck with me for two reasons. First, because it was an epiphany; and, second, because he was a bit of a curmudgeon about it. I got the impression he'd consulted to many businesses, over many decades, that didn't follow his simple, sensible advice.

Process Flow Diagrams

Process flow diagrams are very simple to create. Here's a real world example I developed in the Marines. While creating process diagrams, both in the military and in the corporate world, I refined my technique beyond what I learned from Dr. Deming into a highly effective tool.

Each box in a process diagram represents a step in the process for a particular task. (In my example, commodity is military-speak for customer.)

The text inside the box is a short description of the step. The first word inside the box is the department responsible for that step. If you have more text than can fit in a box then you may need to break that into multiple steps. 

Three items are listed under each box.

The first item is the job description of the person responsible for that step, along with an employee's name.

The second item is the most likely problem (MLP) encountered that holds up that step.

The third item is the solution (Sol) to the MLP. In other words, how to avoid the problem in the first place. 

Real World Reception

In the real world, this document can be received positively or negatively. A lot depends on how well an organization's processes are thought out. When I shared my process flow diagrams with my commanding officers, they were very well received. After all, the military has well established procedures, even if they're not always obvious.

In the civilian world, I got a lot of push back at one company I worked at (not Apple). No one had a clear understanding of the organization's internal processes. Initially, that surprised me when I started working on this simple, side project. Then, it became clear I was asking managers questions about things they didn't know, but should. This resulted in unresolved finger pointing and passing the buck. That organization reinvented the wheel over and over. Needless to say, it was an ineffective organization to work in as I discovered most every procedure was handled ad hoc.

Good definitions make for clear ideas.

Friday, July 24, 2015

What's Exciting About High Tech?

Coding with my team at Apple in Mariani One
Perhaps I'm getting grumpy in my old age, but I don't see anything new and exciting when it comes to high tech and the Web. As a matter of fact, I haven't seen anything too exciting in years.


When I first began coding, as a kid, in the late 1970s, everything was exciting. In 1977, the first three PCs came to market: Apple ][, Commodore PET, and the TRS-80 Model I.

I cut my teeth on the Model I, since access to it was easy through Radio Shack Computer Centers. I learned BASIC and Z-80 assembly on my Model I. In junior high school, we had PETs in school which worked similar to the Model I. The Apple ][ was an impressive machine, but they were hard to find. First of all, they were a tad expensive (everything's expensive when you're a kid). Also, there was only one place, which was close enough for me to bike to, that sold them. That beloved computer store is now a Starbucks.

Through out the 1980s, computers kept getting noticeably faster and bigger, in terms of memory. The Model I had a BASIC interpreter, which ran a bit slow with it's 1.77 MHz processor. Then BASIC compilers came to market, and the world got fast. Very, very exciting.


The 1990s were exciting, even for casual consumers. The World Wide Web was born, making use of the Internet which had been around for decades. Sending an e-mail from one part of the world, to another, for free, was a big deal. In 1997, I deployed with the Marines to the Persian Gulf. We had one digital camera for my battalion and the wives, back home, had another digital camera. Marines' wives gave birth, back in the states, and a couple hours later, fathers could see their newborns while floating in the Indian Ocean. We were amazed. And e-commerce for consumers was quickly becoming the killer application. Billionaires were made at unprofitable companies, many of which couldn't scale.


The dot-com bubble burst in the Spring of 2000 due to overzealous investing and things calmed down for a couple years, at least in the high tech business world. But, software engineers still had exciting technologies like VoIP (free audio and video calls), XML, RSS, and podcasts. We began to say good-bye to dial-up and hello to broadband. Then came Web 2.0 (dynamic webpages and user generated content). A couple years later came social media, cloud computing, cloud storage and mobile smartphones with GPS. For software engineers, compiler technology was innovative when source code could be changed, compiled, and placed into memory to continue running without needing to stop your application for recompiling, linking, and launching.


That leads me to today. As I look at the world of high tech I don't see much that excites me. Perhaps I'm standing too far away??? The only things, in the past few years, that's moved the needle for me was Swift, Uber, Lyft, and Car2Go.

So, what am I missing? What's the hot high tech, nowadays, that changes the way consumers and software engineers do business? I'm talking about something that couldn't be done five or ten years ago?

Friday, July 10, 2015

What Makes Apple Unique?

Presented with a gift of a Chinese fan stamped with their company logo.
I was recently invited to the Bay Area to give a talk to a group of business people from China about Apple's marketing and design philosophies. Putting together the presentation was simple, since I've written and discussed what makes Apple unique, in the past.

The interesting part was speaking through a translator – a first, for me. I'm not sure exactly what the translator said when she introduced me, but the group seemed impressed.

The best part of this gig was how quickly it came together. A woman I never met contacted me on a Tuesday and asked me if I was willing to fly up the following Tuesday to give my talk. When I agreed, she immediately transferred half the payment to me. She paid the second half to me at breakfast, before I spoke. No contract, SOW, schedules, or exhibits. It worked out so well that we'll probably do it again. I can get used to this.

Wednesday, July 8, 2015

All Noisy on the Western Front

Today's an interesting day in the world, especially in the world of cyber.

On the heels of China's stock market turmoil came a slew of high profile computer problems resulting in United Airlines grounding their flights, overloaded Wall Street Journal servers taking down the newspaper's website, and suspended trading on the New York Stock Exchange.

From a technical perspective, each of these issues is unrelated. But, what is interesting is that I came across a cyber security company, Norse, which claims to display cyber attacks in a real time. Although I don't know what a typical day looks like, the following video gives you a good idea of the endpoints of each cyber attack.

Cyber attacks in real-time via

PS – One more intriguing thing, as I wrote this blog post, is my computer crashed (kernel panicked). Yet another rare coincidence, but it helps spin a good yarn.