Thanks for the Coffee!

Jimmy got good karma!

In the right column of this site, below the “Categories” and “Recent Readers” modules, is a “Want Good Karma?” module. It’s kind of subtle. I added it late last year after removing some CPM banner ads. Within it is this button:







My world-traveling buddy Jimmy was kind enough to buy me a coffee, provided I show a picture of the coffee he helped me purchase.

Well Jimmy, this one’s from you! Thanks man! I’m mentally beaming you good karma right now.

Programming is Like Sex Twitter Meme

It’s fun to play with others! Um, that sounded dirty. But I must thank Isaac for giving me a heads up about a “programming is like sex” meme on Twitter. ‘Twas quite fun!

And I think this phrase originated from Peter Harkins way back in 2006. Funny stuff! (For geeks, mostly. Everybody else is going, “these guys really gotta get laid.”)

I think I’m starting to enjoy this Twitter thing…

Good, Fast and Cheap: Pick Two

Life is about trade-offs. One more bite of that delicious ice cream means more calories. Buying that expensive suit means a regular dry cleaning bill. Spending more time at work means less time with family & friends.

The same is true of building products. Which is why we have the project triangle.

It basically says that if you are building a product, you can build it good and fast, or good and cheap, or fast and cheap – but not good, fast, and cheap. In other words – Good, Fast, and Cheap: pick two.

Why can’t you have all three? Typically because of resource, time, and cost constraints. If you had an unlimited supply of each, then, well, send me and email and let’s be friends! hehe.

Another way to describe this project management concept is to think of it this way:

  • If you build it good and cheap, meaning of high quality and within a tight budget, then it will take a long time (it will not be fast).
  • If you build it good and fast, meaning of high quality and very quickly, then it will be fairly expensive (it will not be cheap).
  • If you build it fast and cheap, meaning very quickly and within a tight budget, then it will not be of high quality (it will not be good).

This is a typical problem for any entrepreneur. You want all three, but know you can’t. So which trade-off is the right one to make?

I believe it depends on the stage of your business. Let’s take a web start-up, for example.

  1. In the ideation stage, where you are still forming your idea and doing research into its viability, it may be important to build a proof of concept to test it with potential users. At this stage, quality isn’t very important; you’ll have time to build it right later. For now, you just to make sure a market actually exists for your product. Also, you don’t have much money yet because you’re just starting out. Therefore, you want it fast and cheap.

  2. The next stage is building the first version (or beta) of your product. Just as with before, it is crucial to get your product out the door and into the hands of consumers quickly. But you also want enough features & quality to be a good product. If your first version is weak, consumers will ignore you and competitors will surpass you. Start-ups used to go for good and fast at this stage, with lots of VC-based money. Personally, I think the sweet spot is fast, fairly cheap, and pretty good (listed in priority order). Picture the dot floating somewhere in the middle of the triangle, though a bit closer to fast and cheap.

  3. The next stage is the next version of your product. This would involve iterative cycles of consumer feedback, new feature development, and bug fixes. Where the prior stage targeted innovators, this stage is aimed at early adopters, as defined by Crossing the Chasm. There is much debate over what the trade-offs should be in this stage, but I tend to favor cheap, fairly good, and pretty fast (listed in priority order). Most companies probably aren’t rolling in the dough by version two or three yet, unless you’re Microsoft (MSFT) or Apple (AAPL). So cheap is always a highly-prioritized constraint. Speed is still important, but not as much as quality now. The dot is still floating in the middle of the triangle, but now closer to good and cheap.

  4. When the product and industry mature enough to begin enticing the early & late majority, then it’s time to focus on quality. This crowd isn’t as tech-savvy or tolerant of bugs & difficult-to-use products. So now it’s important to provide them with a high quality solution. Hopefully, you’ll have enough income to be able to hire more resources now. Depending on your industry, you can be good and cheap or – especially if you’re in the high-tech world – good and fast.

Quick disclaimer: I realize that sometimes it’s important to denote a fourth constraint too: scope. Many project managers do this and I think that’s a great tactic as well.

What do you think? How would you make these trade-offs?

It’s the End of Instant Messaging as We Know it (and I Feel Fine)

That’s great, it starts with an earthquake, birds and snakes, an aeroplane,
Lenny Bruce is not afraid, eye of a hurricane, listen to yourself churn.
– M. Stipe

Yea, okay, so that title is a little dramatic. Blame Douglas MacMillan on it.

He recently penned an article for BusinessWeek (MHP) entitled, “The End of Instant Messaging (As We Know It)” that discussed the rise of in-browser instant messaging clients like those used on Facebook and Gmail (GOOG).

These IM clients differ from traditional IM clients in that they are, well, in the web browser. Embedded in a website, so to speak. As you type on your friends’ Walls and Facebook Stalk your secret crushes, you can get a little message in the bottom-right corner of the page. It only exists while you’re on the Facebook website though. If you go check your stock quotes on another site, that little message in the bottom-right corner will disappear.

Also, you don’t have to download anything. Or sign up with another account. It’s just there for you automatically, as long as you have a Facebook account.

With traditional IM clients like AOL (TWX) Instant Messenger and Yahoo! (YHOO) Messenger, you have to download some software and create an account. It’s a little more tedious, but lots of people have done it already. Plus, it doesn’t go away as you check out different websites.

The End of Instant Messaging as We Know It?

So what’s the big deal? MacMillan pointed out that traditional IM clients have been seeing a decline in usage. “Instead of spending time with these old-fashioned chat windows,” he writes, “Web users are flocking to sites like Facebook and Google’s Gmail, where instant messaging tools are more closely embedded in what they are doing.”

That’s a good point. Sites like Facebook already have a person’s attention. Instead of asking my friend, who’s using AIM to download YM so I can chat with him, why not just send him an instant message via Facebook (assuming he’s got a Facebook account, of course)?

MacMillan doesn’t supply any data to back up the claim that the decline of traditional IM usage is due to in-browser IM usage, but anecdotally, I have seen an increase in friends using in-browser IMs. The first time I received a Facebook IM, I thought it was some kind of ad. Nowadays, I receive lots of Facebook IMs, some from friends already on my traditional IM lists, others from friends not on my lists.

Those latter messages I’ve grown to appreciate. Since I don’t have them on my traditional IM lists, Facebook has given me an easy way to chat with them. In addition to connecting me with long-lost friends whom I can now email, I can also chat with them in real-time without needing their YM or AIM username.

(Sure, I could call them up too. And I have in a few cases. But sometimes the spontaneity of a random IM chat is kinda nice too.)

And I Don’t Feel Fine

Which brings me to an issue that concerns me greatly. I am a power user of IMs. I use IMs frequently for work purposes. Since I work with people across different geographies, IM has become an important business tool for immediate conversations. Phone is just as good, but when you need to share a URL, IM is much better.

Also, IMs offer a log of chat history. I faithfully archive all of my conversations in case I need to refer to information shared over past IMs. In order to do this, I need a client that has archive ability.

Yahoo! Messenger does. And since it allows MSN (MSFT) Messenger contacts to be added, I get to archive conversations with users of both clients. Gtalk does too. And since it allows AIM contacts to be added, I get to archive conversations from both of them.

Unfortunately, Facebook does not archive conversations. I haven’t had any business-related conversations on Facebook yet, so that hasn’t been a problem. But what if I do? What if a client is available on Facebook and decides to chat me over there. How can I keep a record of that conversation without having to copy & paste it? And what about other websites? If they incorporate in-browser IM, will they have archives?

That’s just one problem. Another is having chat archives all over the place. Already, I have one with YM and another with Gtalk. 37signals has a great collaboration tool for small businesses called Campfire which contains its own archives as well. While it’s nice that they all keep a record of my conversations, searching through all of these sources is a major pain in the patootey.

Offer Me Solutions, Offer Me Alternatives and I Decline

What I need is an IM archive aggregator of some sort. Not more in-browser or out-of-browser IM archives. But a way to search through all of one’s IM archives.

Attached to this suggestion is the natural idea of an IM aggregator – a central IM client that allows you to sign in to multiple services in one place. That, fortunately, has been addressed. On the traditional IM client side, there’s Pidgin, Jabber, Trillian, and tons more.

On the in-browser side, there’s Meebo, Soashable, ILoveIM.com, and tons more. (Not to be left behind, traditional IM clients have also created in-browser versions: AIM Express, Yahoo! Web Messenger, and MSN Web Messenger. Gtalk was released as a downloadable client and in-browser app at the same time.).

That’s a whole lotta choices. A whole lotta. Looking at them all is kind of like going through the cereal aisle of the supermarket, except that these require login accounts and passwords and no milk or bowls or… ah, nevermind, bad analogy.

That’s a whole lotta choices. All of them solve the problem of having multiple IM accounts. But now that Facebook and other companies are releasing their own IM systems, we’re going to run into the problem of having multiple IM accounts again. Great. Thanks Facebook.

That’s Great, It Starts with an Earthquake

Having a proliferation of choices isn’t uncommon though, especially not for new markets. Over time, leaders will emerge. Hopefully, global standards too. The current leader, Meebo, is already doing something that I hope will continue:

They just got Flixster to offer Meebo’s in-browser IM client as a feature. This means Meebo is moving into the IM provider business. Since they already offer an archive, any in-browser IMs I get from Flixster will appear in my Meebo account too. Neat!

Now if Facebook integrated Meebo, how cool would that be? Or – even better – if Facebook integrated Gtalk, then I’d be able to combine my Facebook chats with my existing Gtalk & AIM archives. Oh what a happy day that would be.

And not just for me, but perhaps for Facebook and others as well. They’d be able to outsource all of their IM development & maintenance to a IM provider. Sort of like a Disqus for IM, perhaps? (Not sure if that analogy works either, but you know what I mean.)

I’m guessing the folks at Meebo are already thinking about this. I wonder if the Gtalk people are too. If not, I hope so. An IM aggregator that works both in-browser and as a downloadable client, and can be leveraged on third-party websites, and has a common, searchable archive would be totally awesome. And I’d feel fine…

The Internet, It’s Just Gone

Now for some Friday fun.

Apparently, in the quiet little white-bred redneck mountain town of South Park, the Internet is gone. It’s just gone.

My favorite quote:

When I get to that Internet, I’m click on just about everything in sight. Might even click on a pop-up ad, just for the heck of it.

Ha! Gotta love Trey Parker and Matt Stone.

Check out that hilarious clip or watch the full episode online for free! Gosh, I sure love the Internet. Hope it never goes down for me, I sure don’t know what I wou

Online Searching in the Interview Process

You’ve gotta read this if you are interviewing or hiring somebody.

According to Heather Havenstein at ComputerWorld, “One in five employers uses social networks in hiring process“. And “CareerBuilder.com says one third of hiring managers rejected candidates based on what they found,” states the subtitle.

The top areas of concern found on social networking sites include:

  • Information about alcohol or drug use (41% of managers said this was a top concern)
  • Inappropriate photos or information posted on a candidate’s page (40%)
  • Poor communication skills (29%)
  • Bad-mouthing of former employers or fellow employees (28%)
  • Inaccurate qualifications (27%)
  • Unprofessional screen names (22%)
  • Notes showing links to criminal behavior (21%)
  • Confidential information about past employers (19%)

The study did find that 24% of hiring managers found content on social networks that helped convince them to hire a candidate. Hiring managers said that profiles showing a professional image and solid references can boost a candidate’s chances for a job.

Interesting statistics.

When I was a hiring manager, I always looked up my candidates online. First, I’d use Google (GOOG). Then LinkedIn. Then Facebook.

The people in my industry, the Internet industry, are typically web-savvy and tend to have some kind of web presence. So it’s easy to find out more about them.

But even if you’re not in the Internet industry, I think every employer should consider doing this. You are already doing a background check. This is just another form of a background check – a check on a candidate’s personality, culture, interests, and values.

You may be thinking, “Isn’t this an invasion of privacy? How are the stupid things I’ve done in college relevant to me now that I’m thirty? Why should my outrageous partying be a factor of my qualifications?”

Sure, those are fair questions. Here are my answers.

Isn’t this an invasion of privacy?

I admit that there’s a creepy big-brother-ish quality to this. But if your information is online, then it’s already public. It’s not private. So if you want it private, work to remove it.

Unfortunately, it’s not always possible or easy to remove harmful information from the Web, especially with the Internet Archive’s Wayback Machine and Google’s cache.

But fortunately, if you’re tech-savvy enough, there are things you can do. You can prevent the Wayback from archiving your site and get Google to delete pages from their cache. Ah ha!

The other thing you can do is to police your online personal brand closely. Monitor it and shape it. It takes some effort, but it can be worth it – especially if you’re in the Internet space.

Otherwise, you should consider searching for yourself to see what comes up. If you like the results, then you’ll be fine – because that’s what your interviewer will see. If you don’t like the results, however, then you’ll have to do some damage control. See if you can remove or revise what’s online. Buy your friend a drink so he’ll take down that photo of you with the keg and “Party Nekkid” t-shirt, for instance.

How are the stupid things I’ve done in college relevant now?

They are and they aren’t. They are, simply because some interviewers will see it and make a judgment call. Some believe that that past behavior is an indicator or predictor of future behavior. So if you’re prone to streaking across your college campus, your interviewers might assume they’ll see your ass running down the hallway (no pun intended).

They aren’t because, really, who didn’t go a little crazy in college? This is more of a message to hiring managers than candidates, but don’t forget that college was a different time and a different environment.

Personally, I like to see a candidate with some kind of fun side. I don’t mind someone who parties hard, as long as he or she works hard too. In fact, hiring someone who knows how to let loose and have fun can be a desirable thing. It adds to the culture of the company, shakes things up, and makes the office more fun.

Also: if an interviewer dings you for being a fun person, then maybe you don’t want to work for that company.

Why should my outrageous partying be a factor of my qualifications?

If you were an outrageous party maniac in the past, that’s one thing. If you’re still an outrageous party maniac, then that’s a reason for an interviewer to hesitate. As a hiring manager, I’d have to wonder if you’re going to show up to work late and hung over. Or call in sick often. Or be sloppy about your work.

Seeing this kind of behavior wouldn’t necessarily weed a candidate out for me. I’d still want to meet the candidate and see how they present themselves in the interview. If I’m still unsure, I’d test them somehow to try to gauge how well they can do their job (probationary period, in-house exercise, take-home exercise, contract-to-hire, etc).

It’s not that being an outrageous party maniac means you’re a bad employee. It means there’s a potential red flag about your work ethic. That red flag could be totally unfounded – you could be one of those people who truly works hard and parties hard. But it will still raise a red flag. You may think that’s unfair, but that’s how many hiring managers think.

What really does matter

You know what would really hurt you? If I found examples of one of these, then I’d ding you and drop your resume in the trash:

  • Inaccurate qualifications – This is huge. Don’t lie. If I catch you in a lie, then I’ll know I can’t trust you.
  • Unprofessional behavior – If you publicly bad-mouth your former employer, fellow employees, or display confidential information, then I’m going to assume you’ll do it to me too.
  • Poor communication skills – Good communication skills is very important to just about any job out there. If you can’t articulate yourself well, please consider a communication class.
  • Information about alcohol or drug use – Alcohol is fine, alcohol abuse isn’t. Drug use isn’t at all.
  • Notes showing links to criminal behavior – Well, duh.

I should add that I’ve made lots of exceptions before. If the candidate demonstrates tremendous ability and can assure me that he/she is dependable, then I’ll make significant allowances to their background. After all, we’ve all made mistakes in the past. If we’ve learned from those mistakes, we shouldn’t be shackled by them.

Myth: All The Good Domain Names Are Taken

Now for some Friday fun. Can’t find a good domain name? Think all the good domain names are taken? Well, you’re wrong, according to the NYC- and LA-based sketch comedy group Quiet Library.

My personal favorite:

Goooooooooogggllllllllllllllllllllllllllllllllllllllllek.info

(Think I might have missed some L’s in there…)

Via: Self Made Minds

Almost Half of Google is Beta

Oops, looks like someone forgot to finish Google (GOOG). According to Pingdom, website monitoring service, almost half of Google’s products are still in beta.

Out of the 49 Google products we could find, 22 are in beta. That’s 45%!

This list includes well-known products such as Gmail, Google Docs, and Google Finance. Pingdom didn’t include Google Labs products because they’re considered a “playground” for future products – though if they did, the percentage would be 57%.

What’s especially notable is that Gmail and Google Docs are products with premium editions – for $50 USD/year, you get more storage space, better security, integration capabilities, and deeper technical support.

The question on everyone’s (well, everyone who’s read Pingdom’s article, at least) mind is: why? Why are so many of Google’s products still in beta?

Why Are 45% of Google’s Products in Beta?

My take is that this is the result of a lack of oversight, coordination, and product release process within the product management organization at Google.

Google is full of smart people. It’s not like they want nearly half their company to remain in beta. However, Google is a company mostly run by engineers, not product people. Engineers typically want to build cool, innovative, and new products, as opposed to working with existing code. Ask an engineer to build you a new feature and the engineer is likely to rebuild your entire architecture in the process. Building something new is way more fun than working on something old.

So perhaps most of the top engineers who built Gmail and Google Docs have moved on to new projects, leaving junior engineers to continue their work. And the product managers don’t have a lot of resources or authority to take these products out of beta.

Other Opinions

Some have guessed that Google is trying to limit their liability by using the “beta” label. I seriously doubt that. Though I’m no lawyer, I would guess that since they accrue revenue from these products, the beta label doesn’t given them any extra protection. I’m not sure that a beta label would give anyone any serious protection anyways.

Others have surmised that Google is just making a statement that they’re constantly building & improving their products. That, of course, begs the question: why are some products in beta and others not? Are only some still being improved while others are not? And you don’t need a beta label to do that.

Google is Struggling Through Puberty

I see this beta label as an example of how Google is a young company that grew up very fast. They went from childhood to adolescence before they was totally ready for it. To be fair, many of the best companies do that. Now Google is struggling with puberty, that awkward age where they’re trying to stay true to their childhood ideals while becoming more responsible. Their voice is squeaky and there’s hair in funny places. But they’re trying.

What Beta Officially Means

Within the software world, a beta release is:

The first version released outside the organization or community that develops the software, for the purpose of evaluation or real-world black/grey-box testing. … Beta version software is likely to be useful for internal demonstrations and previews to select customers, but unstable and not yet ready for release.

Since Google is using this term, I have to imagine that they know what it means. But they clearly aren’t using it properly, since a product that is “unstable and not yet ready for release” is definitely not something for which you would want to charge your customers. Yet they are.

The argument that beta is Google’s way of telling the world they still have huge product plans is unfounded. Web software, by its very nature, allows for uninterrupted and relatively seamless updates. They don’t need a beta label to state the obvious, especially if they don’t use the label consistently.

Lack of a Product Release Process

That’s why I fault Google’s product management organization for this. They know this. At least, I hope they do. They just may not have the power and muscle to do this. And chances are, someone is emailing Pingdom’s entry around the Googleplex like crazy with the note, “Hey guys, did you see this? We gotta get on this!”

I hope someone listens and fixes this. Perhaps by doing an internal audit of all their products for official release viability. Or at least by implementing a proper product release process. This process doesn’t even have to be a convoluted and bureaucratic process; just a simple checklist will do. Otherwise, they’re diluting the beta label.

Though, honestly, I don’t think this is going to have a dramatic impact on how people use its products. Only software programmers and web geeks know what beta means, so they (we) are the only ones who are really bothered by it.

It certainly does irk me though.