Paul Graham is Wrong

In Paul Graham's latest blog post, he voices his support "to make immigration easier" to allow easier hiring of foreign tech workers by using a overly simplistic argument:

The US has less than 5% of the world's population. Which means if the qualities that make someone a great programmer are evenly distributed, 95% of great programmers are born outside the US.

US does rougly has 5% of the world population: 320 million at end of 2014 out of the world's 7.3 billion. But is comparing strict population appropriate? Are rural farming families in China likely to apply for technical jobs in the Us? No.

A better comparison maybe to compare number of college graduates. The data is less accurate, but this gives you a good picture:

The ratio of these numbers are much closer, far less dramatic.

Constrained for Talent, or Cheap Talent?

Graham argues that there are just not enough great programmers to go around and the immigrate programmers are being paid the same:

But if you talk to startups, you find practically every one over a certain size has gone through legal contortions to get programmers into the US, where they then paid them the same as they'd have paid an American.

Personally, I cannot imagine a start up that can affort this type of legal fees are start ups anymore. I would love to see the actual figures that back this argument up.

Immigration is Good

Ironically, I believe immigration reform is good, and it is good not just for the tech world. I like free markets. I like competitions. Within the startup world, I have hired and worked with great programmers all around the world.

But Local is Important

There is a lot to be said for having software developers that understand the local culture and market. To use a reverse example, can a US designer successfully design a UI for the Chinese market without a lot of local help? No.

What to do?

To solve the root of the program, America needs to pay more attention to STEM in school. We need to eliminate the gender gap in engineering. We need to teach more and better maths in elementary schools. Otherwise we are loosing the race to build a great talent pool.

When is Free not Free? When it is Verizon

Yes this is a "first world problem". I came across this "Free On-Demand Marathon" on Verizon FIOS. As I do not have a subscription to HBO I was eager to check out some of the movies. Remote on - navigated to the confusing UI, click on the clearly labelled "free" movie, then it ask me to subscribe...

Every reading the "fine print" on their webpage, I realized that all the good stuff is only available until Sept 22nd (yesterday). Could they at least update their webpage and their banner?

EventDove is much more then a EventBrite Clone

I learnt of EventDove several years ago via my Boston connections. I even used it once at a small local event in the Boston area, but honestly did not find it particularly different from eventbrite. I was so wrong.

I attended a talk by Jun Chang, the CEO and founder of EventDove in Shanghai. She gave a very personal talk about the company and it's business model. My key takeaways make me believe that this company is going to be very successful:

EventDove focuses on B2B

While the EventDove platform clearly is useful for event registration services for events of any size, (there is a free plan), the company is focused on servicing large scale, repeated customers. EventDove often provide back end system integration with their larger customers to provide many features that may not be visible to the event attendees. This provide a high barrier of entry for competitors, and high exit costs for their integrated customers.

These integration reaches beyond event organizers. It can include event revenues operators as well, which are a source of new customers.

A customer is a customer when they are paying for the service

Jun stress that while she values all customers who uses her platform, paying customers are where she is concentrating her companies resources on. The initial paying customer based is most important. Having worked with many start ups, I completely agrees with her. A start up sometimes too eagerly chases after potential paying customers by listening to their non paying customers too much.

O2O - Online too Offline (and back)

This is a key feature of EventDove that I did not see before because I did not attend a large scale event serviced by EventDove. Their platform has significant feature set to support onsite registrations, badge handling and much more. It is geared towards a large scale event hosted at a convention type venue. These onsite, off line features, with venue system integration, create another high barrier of entry for competitors.

EDM and Data Mining

As EventDove is used by more and more conference venues, with it's integration with both the event organizers and venues, it has access to a large data set of attendees. While currently the platform can feed this data back to the conference organizer for used in the electronic direct mail (EDM) marketing, is it possible for EventDove to mine this dataset across events and organizers?

Jun also mentioned that events in China a slowly moving away from focusing on big name speakers as the key marketing source. As the event organizers focus more on the content of the events, and the quality of the attendees, (think barcamp) can EventDove leverage it's combined attendee dataset and provide social networking features like

Standards and Platform

If EventDove is the first platform to integrate event organizers and event venue operators, it has the potential to set the standard for data exchange in this space.  Will it become *the* platform for large scale event hosting?


I want to end this summary with a fun fact. The "Dove" in the name EventDove has a meaning that perhaps get lots in the English name. Doves can also be referring to carrier pigeons. They carry information back and forth. EventDove then is a platform for information exchange between event organizers, attendees and venue operators!

Squarespace has a URL formatting problem

I really like Squarespace. Their support of many of my favorite podcast (penaddict, ATP) helps. I have started to recommend and use Squarespace for many of my nonprofit websites (Fiske School PTO). Recently I started to convert some of my other blogs ( over. Immediately I run into a big problem. When Squarespace import (or create) a blog, it requires the blog entries to live under a suffix within the site's URL scheme. For example, the default suffix is "blog". This means all the blog entries will be of the form:
... etc ...

There is no way to not have the /blog/ or /anything/ suffix, for example the following URL is not possible:

Currently most blog based website removes the suffix and use some sort of date notation only in the URL. The site of Matt Mullenweg, founding developer of Wordpress, is a good example. Squarespace however cannot serves blog pages using this convention.

URL Mapping

Squarespace does have a URL mapping settings, where you can map one URL to another. However the mapping is a literal mapping. It does not support wildcard. i.e. you have to manually enter each page name. So you have to create a long list of URLs and issue permanent redirects for them one by one using this setting option. This is the only solution.

Customer Service

Squarespace always have great customer support. They respond to email or chat inquiries very quickly. This time is no different. I have to give kudos to the customer service reps that handle my inquiry regarding this bug. Stephanie D took my issue and spent a lot of time trying to get a definitive answer to whether this can be avoided with their tech team.


It is time to get rid of the floppy disk icon metaphor

floppy_disk_iconI was viewing a PDF in google chrome and wanted to save the PDF to my local drive. Hovering over the document, a icon bar popped up. To save the PDF obviously I press the floppy disk icon, right? I used floppy disk when I was in college. I remember Apple uses it a lot in its user interface. But I can tell you that my elementary age children have never seen a floppy disk in their lives and would never have guessed the meaning of the icon. It was more ironic to see this used in Chrome. Surely many of the young engineers at Google has never really used a floppy disk either, right? Apple is working hard to make the "Save to Disk" action unnecessary. So who is going to come up with the next great metaphor for "save" while we still need it?

Stop Whining, Marissa Mayer is right

I agree with Mayer. Stop whining. The media is quick to jump on the band wagon and proclaim Mayer is heading backwards in time. Not true.

  1. Not allowing working from home full time is not the same as inflexible work arrangement
  2. Nothing can substitute for in person communications (read up on Sherry Turkle's work)
  3. Would you rather never see your adult children in person? No more family gatherings for life? I don't think so.
  4. People who claim working from home is more productive is missing the point. Personal productivity is a very narrow measurement of success.
  5. Virtual team has to be built from in person connections

I am all for flexible workplace. Having to work with many different people in different stages of their lives, this is what I do:

  1. allow for flexible work time, but require core time block when everyone is in the office, say 10-3 M-Th
  2. allow people to start the day early and leave early -- great for parents who need to pick up their young children, and start the day late and work late, for the stereotypical techie
  3. allow for a comfortable work place, access to food/drinks/support services and R&R spaces (a given in tech companies)
  4. allow for short Friday's as long as work is done M-Th

Most importantly, stop whining. If you are unwilling to get dressed, commute into the office to work with your peers just because you feel like you work better at home? What else are you unwilling to do?

Why naming your child Hashtag is a bad idea

#FAILED By know you have read the news, some parent named their new born baby girl Hashtag. This is a really bad idea but not for what you think. It is not that the child may be teased, or confused, or her future cost of therapy. The reason that this is a bad idea is ironic:

If the parents named their child hashtag because they like social media, the name actually completely disadvantaged their child in social media. What do you the child can use as a name in her online identities? dashtag may well be a reserved word. How about her personal brand? I would suggest "". Because if I were to look for her, and perform a web search for "hashtag smith", do you think I will find her easily? Or would I get a thousand result pages talking hashtag the social media term instead?

Boston's new Lack of Innovation Center

[gallery] I love Boston. I lived and worked here for 20 plus years. My own little office has been in the Seaport district and South End for the last 8 years. Open loft office, bad HVAC ,cheap rent. It is, or rather was, a place for small start up companies to live. But developers are always looking for the next big thing. These areas are being bought up and developed into condos and apartments.

Reading Scott Kirsner's article this morning sadden me. He is right of course, as he is well plugged into the start up ecosystem in the area. This new "Boston Innovation Center" is just another insult. It is not cheap office space for start ups. It is a conference center and a restaurant. But wait -- is there not a beautiful and mostly unused conference center across a few block? How about asking the Boston Convention Center to contribute part the space for used by smaller businesses? A quick look at their schedule shows that they are not that booked up.

If the city actually meant to foster innovation and small business instead of pander mostly to large real estate developers, they should try the affordable housing model. Each time a developer gets approval to put up any new buildings, they have to contribute to a portion of low rent office space elsewhere.

The City's responsibility is to bring infrastructure to these low rent office space areas to help them thrive -- we need:

  • affordable and working transportation
  • parking and bike lanes
  • high speed internet connection (city of Boston is one place where you cannot get cheap FIOS)
  • cheap food and cheap rent

As a bonus if you target problem areas in Boston, it will help energize the neighborhoods. Except sadly I know this will not happen without some new innovation from the top.

Amazon shuts down Special Occasion Reminder, adding birthday to address app in OSX

I received an email from Amazon at 3 am EST this morning telling me that they are shutting down the Special Occasion Reminder service. They are converting these reminders to their (new?) Friends & Family Gifting service. I understand that they are trying to encourage people to buy things from Amazon for these birthdays as gifts, but do they have to externally rename the service? If you have been a long time Amazon customer like myself, some of the very old reminder setup did not have a marker to say that the reminder is for a birthday. Those older reminders will not be converted. What to do? I can add those reminders back to the new service, or I can add the birthdays to my address book database on my Mac. I updated my address book on the Mac. This is how:

Adding Birthday field to the Address book app on the Mac

  1. Go to the Preferences menu
  2. Click on the Templates button
  3. Click Add Field and select Birthday
  4. Voila ! Each contact in the address book now has a birthday field


Why I ditched Skitch and Evernote a long time ago

Today the internet is flooded with "we hate Skitch 2.o" sentiment. I hate to tell you, but I ditched both Skitch and Everynote a long time before today. Some background. I loved Skitch. But soon, Skitch gettings to be buggy and would crash on me often. It got to the point where I had to stop using it because I need a reliable way to share images at work. This was just around the time Evernote bought Skitch.

I was a very early Evernote adopter. I work on multiple machines and being able to automagically sync notes across them is priceless. But slowly I am annoyed by the subtle differences in the evernote clients across platforms. By all account Evernote is now a very mature platform but they still have problem deciding whether to support text formatting on all platforms. So I gave up.

I use Yojimbo for all my notes now. I am waiting for a read/write iPad and iPhone client, and that is a problem, but the Yojimbo guys know software and I trust them to get all the features right. Their notes organization support is very good which is what I need, and I use dropbox for general file syncing across platforms.

So why is Skitch and Evernote so bad? and Dropbox and Yojimbo so much better? Because fundamentally Dropbox and Yojimbo are run by techies -- programmers that put actual functionality first and business model second. They use their own products and will not make it not usable. My guess is product development team now drives Skitch and Evernote, and while "aligning their products with their strategic business model", short changing their actual user base.

Note: Yojimbo is an Apple platforms only product. If you use Windows, stick with Evernote.

mysql installation on ubuntu failed

We often use wordpress as the CMS for our application's public site. That means we have to install mysql on our rackspace servers. Today the installation process failed several times, with this error message in syslog.



ERROR: 1064  You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'ALTER TABLE user ADD column Show_view_priv enum\('N','Y') CHARACTER SET utf8 NOT ' at line 1


I first try to uninstall and reinstall sqlserver but it will not uninstall cleanly. Finally I have to both use apt-get and manually remove some directories to get back to a clean install:

[shell] apt-get purge mysql-server apt-get purge mysql-common rm -rf /var/log/mysql rm -rf /var/log/mysql.* rm -rf /var/lib/mysql rm -rf /etc/mysql # and then: apt-get install mysql-server --fix-missing --fix-broken [/shell]

Then I get a clean (re)install of mysql and it started up.

WebEx Totally Blew the New Customer Experience for Me

I signed up for a new WebEx account today for a client. Got onto the WebEx website, clicked through the sign up forms, gave them my credit card for the $468 annual plan, thinking I can immediately scheduled a web conference with a new sales lead. But No... 11:21 am: The last screen in the sign-up process tells me that it will take up to 30 minutes for them to setup my account. In the age of 5 seconds attention span, "do it now" mentality, I am already unhappy. In this specific instance, I actually need to schedule a conference with a customer *now*. Not happy.

11:28 am: "Receipt for you WebEx order" email arrived. Which tells me please allow for 30 minutes for my account to be setup.

12:12 pm: "Welcome to WebEx" email arrived. (that's 34 minutes later) saying I can start using WebEx.

12:13 pm: Trying to log into WebEx using my email address as the user id, which was *repeatedly" mentioned in all the emails so far, no luck.

12:14 pm: Trying to reset / retrieve my password, no luck. At this point it is cleared that something else is wrong. Signed on to their online chat to ask for help.

12:15 pm: Oh you are an existing customer? Please call our 800 number.

12:16 pm: Called 800 number, someone picked up, determined that "something is wrong, your account is invalid", and transferred me to another department.

12:21 pm: after waiting for a few minutes, the call dropped. (We will *not* blame WebEx for this one, it could be just the cell service).

12:21 pm: Call back, since it was "something to do with my account", I navigated to billing and not tech support. Waited and waited.

12:29 pm: Agent picked up, "oh you need to talk to "service" and transferred me again. More waiting.

12:40 pm: Can't wait anymore. Hung up. Went to get lunch downstairs.

12:50 pm: Eating lunch at my desk, called back to 800 number, navigated to "tech support", and, yes you guessed it, waiting in the queue.

12:57 pm: Someone picked up. "Oh you don't have a user name" he says. "Funny I thought it was my email address" I replied. He asked me to pick a user name, (not in the form of an email address), created my "account" and away I go. I asked why did the system from the first sign-up screen keep telling me that my email address is my user name?

He couldn't explain. Seems like perhaps there is a truly manual step involved in the WebEx account setup process, and someone is suppose to type in a user name for me.

Wait -- this is not over !!!

10:35 am THE NEXT DAY: I got an email: "Your meeting center user name and password" is created. That is about 19 hours later. And that it seems is in response to the customer service rep's setting up of my user name when I was on the phone with them.


If I had simply waited, perhaps 19 hours later I would have received my actual user name? What is the actual rules for user name? Email? or username? What exactly is the sign-up process? I really would like to know.

By the way, I tweeted my dissatisfaction on twitter to @webex. Someone responded several times, but nothing actually happened.


The irony is that I was a very early user of WebEx back in 2000 when they were starting out. I have used it extensively in a global start-up. Everything was first rate. This experience makes me want to go run to dimdim or gotomeeting.

Scratch @ MIT 2010 Day 2 and 3

This is a picture of the the Event Space, the main presentation space. Besides the obviously very high ceiling, the room is laid out diagonally. It works. A simple idea. Brilliantly executed. The building really is designed (by Fumihiko Maki) with function in mind. Loneliness is failed Solitude

I find the most value at the conference not at the workshops and how-to sessions, but the more general education related sessions. Day 2 KeyNote by Sherry Turkle, Henry Jenkins and Marina Bers was great. Turkle presented her latest thought on the importance of Solitude. This frankly scares me. She has pointed out with our new constantly connected, constantly fed (with information) environment, would teens (and adults) know now to be alone? Not knowing the value of solitude, when one creates, and engage in deep self development, teens will be increasingly dependent on shallow casual interactions. Their phones become the center of their lives. They move from "I have a feeling; id' like to make a call" to "I want to have a feeling; I need to make a call."

Turkle ends with an encouraging note -- Do not use the word "Addiction" when talking about this connected world. Addiction implies that we want to get rid of the cause. We will not and cannot get rid of the Internet.  While many people falls into the fallacy that we are stuck with the current state, the Internet is actually very young. We can learn to live with it.

Referencing Thoreau, she encourages us to not live thickly - "Just because we have the net we do not have to live thickly".

Side Note: A funny moment at the start of her presentation, when Turkle says "you know when I say phone, I don't mean phone". Of course, she meant the smart phone/device that is used for texting, running apps connecting to facebooks, and seldom for realtime phone conversation.

2.0 is a Business Model, not a Pedagogy

Jenkins pointed out that the participatory culture is not new. Facebook is not the first social network. While Jenkin's studies often reference the fan fiction culture, there are many more examples. A "good" participatory community is not a pure consuming community. The "hanging around" group consume content, but also communicate with each other. The "Messing about" group contributes with self-expression and self-actualization. The "Geeking out" group tinkers and create for the community. A participatory community allows experts and beginners share a common interest and help each other.

"Not every member must contribute, but all must believe they are free to contribute when ready, and that what they contribute will be appropriately valued."

BYOB for No Ceiling Computer Science Education

Brian Harvey gave a short presentation on Day 2, and a long one on Day 3 on BYOB, the CMU developed variation of Scratch that has list of lists and "procedures" which turn Scratch into almost visual Scheme. Given these new first order data object, one can program much more advance concepts using BYOB.

Technically BYOB is brilliant and I can't wait to use it. Politically they are working hard with the core Scratch team to find a way to incorporate BYOB into Scratch. Harvey is extremely sensitive to no wanting to split the Scratch community into the beginners and the advanced users. I hope they find a way to do this as BYOB clearly is a good thing.

Useful Software Finds

By talking with different people in different disciplines, often from different parts of the world, I found a few new software and web projects that are of interest:

  • Animationish -- flipbook type of desktop app
  • mind42 - a free online mind mapping tool
  • prezi -- a web based and desktop presentation software with a twist

My Love of Gadgets Started from my First Calculator

My First CalculatorWhen I was maybe ten years old, electronic calculator became available. I lusted after this basic scientific model, the size of a paperback book, at my local stationary store for a year. My dad bought it for me and I loved that thing. It has all the log and trig functions.

Since then, I slowly saved money and traded up for the latest in model. Remember the casio that also play music? Then a fancy Casio that has a 1/100th second timer, which I used in all my high school advanced Physics classes. Then the HP 27S that does financial and statistical calculations, too much of a geek to use a 19B even for my MBA classes.

How far we have come? When was the last time you used a physical calculator? I use my iPhone most of the time, or use Google. Next generation of children may never have to use one. But for my generation, that was my very first personal, electronic gadget.

The Beautiful Candle

Michael Faraday's lectures at the Royal Institution in London - "The Chemical History of the Candle" : A candle is beautiful. "Beauty means not the best-looking things, but the best-acting thing." A candle is beautiful because its functioning elegantly and efficiently rests upon a wide range of universal laws. The heat of the flame melts the wax while drawing upward currents of air to cool the wax at the edge, thus creating a cup for the molten wax. The pool of wax remains horizontal because of "the same force of gravity which holds worlds together." Capillary action draws melted wax up the wick from the "cup" at the bottom of the wick to the flame at the top, while the flame's heat trggers a chemical reaction in the wax that sustains the flame.

Faraday said the beauty of the cancel lies in the intricate play of scientific principles upon which it depands, and in the economy with which it knits them together.