Sunday, May 19, 2013

Product Management: When to add a new feature


When do you add a new feature as opposed to improving the existing feature?

Past week I had a chance to spend time with a bunch of customers.  It always gives me a new perspective, a perspective that really matters to the company, i.e. the reality.  

Customers care about their unique problem.  They might not be at the stage where they can make use of all  the product features.  Their users may not have been trained on all the features, they may not have the browser version that supports the latest feature, or their internal roles may not have been set up the way product was designed to support.  Or they may not even know about the capability of the product.

Each customer is at different adoption curve.  They have a different set of problems they are dealing with.  When they are having user adoption problem, they are not interested in hearing all the great features that the product has to make it easier to scale the roll out.

Because of the unique customer perspective, many customers have their wishlist.  It is a list of enhancements to make their jobs easier.

Sunday, May 12, 2013

Facebook Trusted Contacts & Mother's Day Notification

A couple of weeks ago, Facebook rolled out a feature called Facebook 'Trusted Contacts'.  Instead of relying on security questions and two factor authentication, Facebook is saying that they can solve the problem by using social graph.  Facebook is thinking that our identities can be verified easier by sharing the secret codes with our Facebook friends.  They can forward the codes to us, and we can enter them to regain access to our Facebook account.

A neat idea on the paper.  I like the idea of password-less login.  But asking them to send me a secret code that they received just so that I didn't choose to pick my security question or enter mobile phone number?  For me, the pain of bothering someone to solve my forgotten password problem is greater than regaining access to my Facebook account.

What about this push notification that I received from Facebook Pages yesterday?

Push notification that I got from Facebook Pages yesterday.
Sorry, Facebook.  My mom got a phone call from me instead.

Sunday, May 5, 2013

How to run a small business

Yesterday I dropped off my wife's car for an oil change.  My mechanic is a small independent one.  He is a typical small business owner.  He always has greasy fingers and runs between his tiny 6-by-6-foot office and the next door repair shop.  When the office phone rings, he is the one picks up the phone to talk to the customer.  Often despite his best efforts he answers the phone after several rings because he has to rush to the office from the repair shop.

When I dropped off the car, the shop was busy as ever.  There were three customers waiting to speak to him.

After waiting for my turn, I asked him.


Sunday, April 28, 2013

Thoughts on social network and its API

I have been thinking about what API meant for social networks.  Social in nutshell is about identities, sharing content and engaging with readers in two way conversation.  It made existing blogging concept easier to adopt and more accessible to millions of users.  While popularizing publishing and subscription model with social relationships, social found new exciting applications like user-reported breaking news network, 1-1 messaging networks, and photo and video sharing services.

Blogging platforms were available well before social networks.  But it took Facebook and Twitter for content publishing and subscription model to really take off.  People saw what they can do by easily sharing updates with friends and families.  Technology (publishing and subscription) disappeared in the background and the user benefit (staying connected with friends and families) emerged.

Social API on the other hand is all about allowing developers to integrate social network identities and social graphs stored in each social networking service.  Social API is there to allow other applications to incorporate what social network has done to blogging platform.  Social API made it for social applications easy to use identities, share information and get engagements from people around us.

It allowed many applications to introduce social component by plugging into social network APIs.  What could have been a run-of-the-mill word puzzle turned into real-time family room board game that could be played across cyberspace.  Flower shop applications knew before I did that my mother's birthday is coming up and reminded me to send her bouquet.  Social API instantly allowed developers to run their applications in context of user's own social graph.  These applications in turn provided richer environment for the social network and its users.


Sunday, April 21, 2013

Product Management: What I would expect from API

Thanks to slower pace blog update, I have been able to spend a hour a few days a week to pick up hacking again.  I would call it hacking, not coding, and I want to draw distinction between the two because I see the difference.  More on that later.

The project is migrating email to collaboration platform.  I blogged about it earlier.  One sentence description is to take emails in Inbox and post them on enterprise collaboration platform to be shared to internal audience.  Minimum Viable Product is posting the emails that I select on my Outlook client (yes, I'm the user of this product) to collaboration platform, and have collaboration platform return the link where it's posted so that I can forward it to anyone who need to be included.  Tagging the email so that I can search easily would be nice as well.

I use Outlook client for my work, and in order to access Exchange server, I had to use C#.  I've never coded in C# before.  I don't know any C#, and that's where my hacking began.  I call it hacking because I didn't sit down to learn C#.  I had a specific goal that I had in mind, which was to use Exchange Web Service API to access Outlook Inbox messages with special tags.  I had to figure out a way to do it using C#, a language that I didn't really care to master, so I had to hack something together.  That meant I relied on Google extensively to code and troubleshoot compilation errors.  I began from working code sample, and what I have still very much resembles the sample code from MSDN.  All my hacking was done on Visual Studio, and much of credit should go to autocomplete feature of Visual Studio.

While I was doing this hacking, I learned a few things.  I wanted to share them with you to see if any of you felt the similar way.  What I'm about to share is hacker's perspective.  Someone who doesn't know the language or doesn't care to learn the language.  All they are interested in is getting the stuff to work.

These are things that I learned.


Sunday, April 14, 2013

Product Management: What hiring manager looks for

The other day I had a chance to sit down with someone who was looking to get into product management role.  He shared his experience of applying for product management positions, and I shared with him how I got into product management role.  I told him that I began my career as coder, then professional service guy, back to engineering as development manager, and only after that the opportunity landed on my lap to try out product management role.

Then the topic turned to what I look for from product managers that I hire.  I thought that might be help him get some perspective on what hiring managers look for and what areas that he should invest his time to land a  product management position.

After sharing my perspective with him, I thought my blog readers might be interested in what criteria that I measure PM candidates.

There are three areas that I look for from PM applicants.  Note that I consider all three areas to be equally important.


Sunday, April 7, 2013

Slowing down the pace

When there is time to start, there is also time to stop.  I remember my college English professor's definition of self control.

Self control is knowing what to do, when to do it, when to stop, and doing it.

It's little over two and half years since I've started blogging on Future of Social Network.  Starting January 2012, I've committed myself to write every single day to improve my writing and get in the rhythm of daily writing routine.  Just like I've decided to write every single day on the spur of the moment, I have decided to slow down my blogging schedule.

Instead, I plan to blog once a week.  I want to try this schedule for a few reasons: