This morning I was reading Om Malik's post entitled Google & The Big Ideas where he writes

Earlier today, when I read about Google launching a mobile version of Tasks. I was amazed by the attention being focused on essentially a to-do list website. And while it wasn’t worth a story, I shared my feelings via I sent Twitter. My tweet read:

I think google has no big ideas. this morning they announced a to-do-list. FGS. [For God Sake] Remember the Milk MUCH better.

...
Matt’s comments and the responses both on this blog and FriendFeed resulted in some thoughts about what constitutes a big idea, where Google is right and where it is light. Instead of responding on
FriendFeed, I decided to share my thoughts with you, hoping that we can have a larger conversation about Google and the big ideas.

For me startups and products such as Skype, Flickr and YouTube represent big ideas. Why? Because they not only redefine our notions about certain technologies, but they also change our behavior and cause massive disruption. For instance, Skype redefined our relationship with our phone and in the process put disrupting the telecom industry. Flickr made a largely way web into a dynamic, thriving social community. Today even our friends at Wall Street Journal have comments, and the New York Times is hoping to use LinkedIn to foster a community. YouTube made us rethink television, by making it dead simple not only to consume video but also to broadcast video.

Similarly, Google’s Search changed how we consumed information. Instead of going to destinations, we now consume information by just finding it. What made this “big idea” even more disruptive — Google’s use of data analytics to offer highly focused advertising messages to marry search queries. (Of course, Google wasn’t the one to think of this big idea, but that’s a whole another story.)

The problem with "Big Ideas" is that sometimes people get obsessed with how game changing or disruptive their product is instead of focusing on making it the best at what it does.

I remember a few years ago when every other article out of the technology press was about how innovative every product Google created was. For a while, this created a scramble amongst various Web companies to show that they could be just as innovative as Google. Yahoo! tried to do this by buying innovation in the form of every hot startup they could get their hands on (Flickr, del.icio.us, Jumpcut, Webjay, Konfabulator, Upcoming, etc) which only led to spreading itself too thin as eloquently captured in Brad Garlinghouse's Peanut Butter Manifesto memo.

On the other hand, there are lots of products that have been unoriginal ideas now seen as game changing because of how these ideas have been executed. One example is the iPod + iTunes which started of as yet another MP3 player with a proprietary music player but has grown to be a cultural force and the number one retailer of music in the United States. When Facebook launched it plowed ground that had already been covered by MySpace, Orkut and Friendster yet today it is the number one social networking site in the world. In both cases, these have been very focused products that have been careful to grow their feature set in a limited way but have done an excellent job in providing a very user-centric experience. This isn't to say that there aren't any innovations in Facebook or in iTunes+iPod but instead that they are examples of products that have been game changing not by being a "big idea" but instead by being full of lots of good ideas.

Being original or innovative is nice but even better is building a product that your customers love. Never forget that.

Note Now Playing: Justin Timberlake - What Goes Around.../...Comes Around Interlude Note


 

From the Live Search team blog post entitled Live Search autosuggestions come to Firefox we learn

We're happy to report that we've officially integrated Live Search into Firefox by popular demand.
...
The Live Search add-on for Firefox is available to install at
https://addons.mozilla.org/en-US/firefox/addon/10434. It's based on the Open Search standard and uses the JSON interface supported by Firefox to retrieve autosuggestions.

Image of Live Search autosuggestions in Firefox

I'm glad to see this finally get out there since I was one of the popular demanders at work. If you're a Firefox user who's also a fan of Live Search then this is a must have extension. It's definitely improved my browsing experience when I've had to use Firefox.

By the way, it's an interesting insight into the different user bases to compare the suggested searches from Google with those from Live Search for a particular phrase.

Note Now Playing: Kelly Clarkson - My Life Would Suck Without You Note


 

Categories: MSN

From the blog post on the Office Live team blog entitled Looking ahead and bringing you even more we learn

Today, I wanted to share with you some exciting news about Office Live: To simplify and improve the customer experience around our Live services, we’ve made the decision to converge Windows Live and Office Live into an integrated set of services at one single destination. We think that just makes a ton of sense and goes a long way toward giving you a simpler, richer, better service that allows you to do more with one account.

Every day, more and more people are signing up for Office Live Workspace and Office Live Small Business (4 million of you so far!), as well as Windows Live (460 million to date!).

Secondly there’s the MSDN forum post entitled Working Together: Live Mesh and Windows Live by the Live Mesh team which informs us that

For some time now, many of you have expressed interest in seeing some sort of combination of Live Mesh and other Microsoft services. In order to further explore these ideas we would like to ask you to share with us the scenario(s) that you have in mind. 

What combination(s) are you interested in, and why? Whatever your interests, whatever problem you’re trying to solve or scenario you want to enable, we’d like to hear the details – and the more specific you can be, the better.

We know you have ideas – this is the place to share them!

Thank you,

The Live Mesh Team

I love it when things come together this way. There's been a lot of choice in Web-based storage solutions offered by Microsoft and some would argue that it's been too much choice. It will be good to how the cross pollination of ideas ends up working out between these various products over the coming months and years.

If you are interested in developer or end user scenarios around Web-based storage I recommend chiming in on the MSDN forum post linked above. It's your chance to give your feedback to Microsoft and help influence the direction of the most innovative technology product of the past year

Note Now Playing: Amy Winehouse - You Know I'm No Good Note


 

Categories: Windows Live

Sarah Perez over on ReadWriteWeb has a blog post entitled In Cloud We Trust? where she states

Cloud computing may have been one of the biggest "buzzwords" (buzz phrases?) of this past year. From webmail to storage sites to web-based applications, everything online was sold under a new moniker in 2008: they're all "cloud" services now. Yet even though millions of internet users make use of these online services in some way, it seems that we haven't been completely sold on the cloud being any more safe or stable than data stored on our own computers.
...
Surprisingly, even on a site that tends to attract a lot of technology's earliest adopters, the responses were mixed. When asked the question: "Do you trust the cloud?," the majority of responses either came back as a flat-out "no" or as a longer explanation as to why their response was a "maybe" or a "sometimes." In other words, some people trust the cloud here, but not there, or for this, but not that.

The question this article asks is pointless on several levels.  First of all, it doesn't really matter if people trust the cloud or not. What matters is whether they use it or not. The average person doesn't trust computers, automobile mechanics or lawyers yet they use them anyway. Given the massive adoption of the Web from search engines and e-commerce sites to Web-based email and social networking services, it is clear that the average computer person trusts the cloud enough to part with their personal information and their money. Being scared and untrusting of the cloud is like being scared and untrusting of computers, it is a characteristic that belongs to an older generation while the younger generation couldn't imagine life any other way. It's like Douglas Adams wrote in his famous essay How to Stop Worrying and Learn to Love the Internet back in 1999.

Secondly, people are often notoriously bad at assessing risk and often fail to consider that it is more likely that data loss will occur when their personal hardware fails given that the average computer user doesn't have a data backup strategy than it is likely to occur if their information is stored on some Web company's servers. For example, I still have emails from the last decade available to me in my Hotmail and Yahoo! Mail accounts. On the other hand, my personal archive of mail from the early 2000s which had survived being moved across three different desktop PCs was finally lost when the hard drive failed on my home computer a few months ago. I used to have a personal backup strategy for my home desktop but gave up after encountering the kinds of frustrations Mark Pilgrim eloquently rants about in his post Juggling Oranges. These days, I just put all the files and photos I'm sure I'd miss on SkyDrive and treat any file not worth uploading the cloud as being transient anyway. It is actually somewhat liberating since I no longer feel like I'm owned by all my digital stuff I have to catalog, manage and archive.

On a final note, the point isn't that there aren't valid concerns raised whenever this question is brought up. However progress will march on despite our  Luddite concerns because the genie is already out of the bottle. For most people the benefits of anywhere access to their data from virtually any device and being able to share their content with people on the Web far outweighs the costs of not being in complete control of the data. In much the same way, horseless carriages (aka automobiles) may cause a lot more problems than horse drawn carriages from the quarter ton of carbon monoxide poured into the air per year by an average car to the tens of thousands of people killed each year in car crashes, yet the benefits of automobiles powered by internal combustion engines is so significant that humanity has decided to live with the problems that come along with them.

The cloud Web is already here and it is here to stay. It's about time we stopped questioning it and got used to the idea.

Note Now Playing: Amy Winehouse - Love Is A Losing Game Note


 

Categories: Cloud Computing

I've been hearing the term deflation being bandied about by TV news pundits with Japan being used as the popular example of this phenomenon for the past few months. The claim is that if the trend of price drops in the U.S. continues then we will be headed for deflation. When I first saw these stories I wondered what exactly is wrong with falling prices? Well…

Everywhere you look assets are worth less than they were a year ago. Gas prices are lower, house prices are lower, and stock portfolios are lower. At first I considered this a net positive. According to Zillow my house is now worth 10% less than what we paid for it almost two years ago and my 401(k) lost about 35% during the 2008 calendar year. However I treated this as a "correction" since these were in effect paper losses since I bought my house to live in not to flip it and I'm not planning to spend out of my 401(k) until retirement. On the other hand lower gas prices and cheaper consumer goods at Christmas time had a real and positive effect on my bottom line.

In addition, despite the media's claim that people were hoarding we planned to ignore the hype and help the local economy by continuing our plans to have our bathroom remodeled and get a new car later in the year (my wife has her eye on the Ford Flex).

As each week passes I've been less sure of our plans to "help the local economy" and last week's announcement by my employer to eliminate 5,000 jobs within the next 18 months began to make the plans seem downright irresponsible. At this point we've decided to hold off on the purchases and are debating the safest way to hold on the money and still retain value. My behavior sounded familiar and I looked up Wikipedia for information about deflation in Japan it was interesting to see the parallels

Systemic reasons for deflation in Japan can be said to include:

  • Fallen asset prices. There was a rather large price bubble in both equities and real estate in Japan in the 1980s (peaking in late 1989). When assets decrease in value, the money supply shrinks, which is deflationary.
  • Insolvent companies: Banks lent to companies and individuals that invested in real estate. When real estate values dropped, these loans could not be paid. The banks could try to collect on the collateral (land), but this wouldn't pay off the loan. Banks have delayed that decision, hoping asset prices would improve. These delays were allowed by national banking regulators. Some banks make even more loans to these companies that are used to service the debt they already have. This continuing process is known as maintaining an "unrealized loss", and until the assets are completely revalued and/or sold off (and the loss realized), it will continue to be a deflationary force in the economy. Improving bankruptcy law, land transfer law, and tax law have been suggested (by The Economist) as methods to speed this process and thus end the deflation.
  • Insolvent banks: Banks with a larger percentage of their loans which are "non-performing", that is to say, they are not receiving payments on them, but have not yet written them off, cannot lend more money; they must increase their cash reserves to cover the bad loans.
  • Fear of insolvent banks: Japanese people are afraid that banks will collapse so they prefer to buy gold or (United States or Japanese) Treasury bonds instead of saving their money in a bank account. This likewise means the money is not available for lending and therefore economic growth. This means that the savings rate depresses consumption, but does not appear in the economy in an efficient form to spur new investment. People also save by owning real estate, further slowing growth, since it inflates land prices.
  • Imported deflation: Japan imports Chinese and other countries' inexpensive consumable goods, raw materials (due to lower wages and fast growth in those countries). Thus, prices of imported products are decreasing. Domestic producers must match these prices in order to remain competitive. This decreases prices for many things in the economy, and thus is deflationary.

The crazy thing is that this sounds like a description of the United States of America today. That's when I understood that the threat of a deflationary spiral is very real. If people like me start hoarding cash then businesses get less customers which causes them to lower prices in return. With lower prices, they make less money and thus need to cut costs so they have layoffs. Now the local situation is worse giving people even more conviction in holding on to their cash and so on. The bit about imported goods kicking the butts of locally produced items in the marketplace is also especially apt given the recent drama about the automobile bailout

Anyway, it looks like we are at the start of a deflationary spiral. The interesting question is whether there is anything anyone can do to stop it before it fully gets underway.


 

Categories: Current Affairs | Personal

A few months ago, Tim O'Reilly wrote an excellent post entitled Web 2.0 and Cloud Computing where provides some definitions of two key cloud computing paradigms, Utility Computing and Platform as a Service. His descriptions of these models can be paraphrased as

  1. Utility Computing: In this approach, a vendor provides access to virtual server instances where each instance runs a traditional server operating system such as Linux or Windows Server. Computation and storage resources are metered and the customer can "scale infinitely" by simply creating new server instances. The most popular example of this approach is Amazon EC2.
  2. Platform as a Service: In this approach, a vendor abstracts away the notion of accessing traditional LAMP or WISC stacks from their customers and instead provides an environment for running programs written using a particular platform. In addition, data storage is provided via a custom storage layer and API instead of traditional relational database access. The most popular example of this approach is Google App Engine.

The more I interact with platform as a service offerings, the more I realize that although they are more easily approachable for getting started there is a cost because you often can't reuse your existing skills and technologies when utilizing such services. A great example of this is Don Park's post about developing on Google's App Engine entitled So GAE where he writes

What I found frustrating while coding for GAE are the usual constraints of sandboxing but, for languages with rich third-party library support like Python, it gets really bad because many of those libraries have to be rewritten or replaced to varying degrees. For example, I couldn’t use existing crop of Twitter client libraries so I had to code the necessary calls myself. Each such incident is no big deal but the difference between hastily handcrafted code and libraries polished over time piles up.

I expect that the inability of developers to simply use the existing libraries and tools that they are familiar with on services like Google App Engine is going to be an adoption blocker. However I expect that the lack of of a "SQL database in the cloud" will actually be an even bigger red flag than the fact that some APIs or libraries from your favorite programming language are missing.

A friend of mine who runs his own software company recently mentioned that one of the biggest problems he has delivering server-based software to his customers is that eventually the database requires tuning (e.g. creating indexes) and there is no expertise on-site at the customer to perform these tasks.  He wanted to explore whether a cloud based offering like the Azure Services Platform could help. My response was that it would if he was willing to rewrite his application to use a table based storage system instead of a relational database. In addition, aside from using a new set of APIs for interacting with the service he'd also have to give up relational database features like foreign keys, joins, triggers and stored procedures. He thought I was crazy to even suggest that as an option.  

This reminds me of an earlier post from Dave Winer entitled Microsoft's cloud strategy? 

No one seems to hit the sweet spot, the no-brainer cloud platform that could take our software as-is, and just run it -- and run by a company that stands a chance of surviving the coming recession (which everyone really thinks may be a depression).

Of all the offerings Amazon comes the closest.

As it stands today  platform as a service offerings currently do not satisfy the needs of people who have existing apps that want to "port them to the cloud". Instead this looks like it will remain the domain of utility computing services which just give you a VM and the ability to run any software you damn well please on the your operating system of choice.

However for brand new product development the restrictions of platform as a service offerings seem attractive given the ability to "scale infinitely" without having to get your hands dirty. Developers on platform as a service offerings don't have to worry about database management and the ensuing complexitiies like sharding, replication and database tuning.

What are your thoughts on the strengths and weaknesses of both classes of offerings?

Note Now Playing: The Pussycat Dolls - I Hate This Part Note


 

Categories: Cloud Computing

I've been a FeedBurner customer for a couple of years and was initially happy for the company when it was acquired by Google. This soon turned to frustration when I realized that Google had become the company where startups go to die. Since being acquired by Google almost two years ago, the service hasn't added new features or fixed glaring bugs. If anything, the service has only lost features since it was acquired.

I discovered the most significant feature loss this weekend when I was prompted to migrate my FeedBurner account to using a Google login. I thought this would just be a simple change in login credentials but I got a different version of the service as well. The version of the service for Google accounts does have a new feature, the chart of subscribers is now a chart of subscribers AND "reach". On the other hand, the website analytics features seemed to be completely missing. So I searched on the Internet and found the following FAQ on the FeedBurner to Google Accounts migration

Are there any features that are not available at feedburner.google.com?

There are two features that we are retiring from all versions of feedburner: Site Stats (visitors) and FeedBurner Networks.

We have decided to retire FeedBurner website visitor tracking, as we feel Google already has a comparable publisher site analytics tool in Google Analytics. If you do not currently use Google Analytics, we recommend signing up for an account. We want to stress that all feed analytics will remain the same or be improved, and they are not going away.

FeedBurner Networks, which were heavily integrated with FeedBurner Ad Network, are no longer being supported. As with many software features, the usage wasn't at the level we'd hoped, and therefore we are making the decision not to develop it further, but to focus our attention on other feed services that are being used with more frequency. We will continue to look out for more opportunities for publishers to group inventory as part of the AdSense platform.

I guess I should have seen this coming. I know enough about competing projects and acquisitions to realize that there was no way Google would continue to invest in two competing website analytics products. It is unfortunate because there were some nice features in FeedBurner's Site Stats such as tracking of clicked links and the ability to have requests from a particular machine be ignored which are missing in Google Analytics. I also miss the simplicity of FeedBurner's product. Google Analytic is a more complex product with lots of bells and whistles, yet it takes two or three times as many clicks to answer straightforward questions like what referrer pages are sending people to our site. 

The bigger concern for me is that both Google Analytics and FeedBurner (aka AdSense for Feeds) are really geared around providing a service for people who use Google's ad system. I keep wondering how much longer Google will be willing to let me mooch off of them by offloading my RSS feed bandwidth costs to them while not serving Google ads in my feed.  At this rate, I wouldn't be surprised if Google turns FeedBurner into a Freemium business model product where users like me are encouraged to run ads if we want any new features and better service.

Too bad there isn't any competition in this space.

Note Now Playing: Lords of the Underground - Chief Rocka Note


 

Categories: Rants

A few days ago someone asked how long I've been at Microsoft and I was surprised to hear myself say about 7 years. I hadn't consciously thought about it for a while but my 7th anniversary at the company is coming up in a few weeks. I spent a few days afterwards wondering if I have a seven year itch and thinking about what I want to do next in my career. 

I realized that I couldn't be happier right now. I get to build the core platform that powers the social software experience for half a billion users with a great product team (dev, test, ops) and very supportive management all the way up the chain. This hasn't always been the case. 

I went through my seven year itch period about two years ago. I had always planned for my career at Microsoft to be short since I've never considered myself to be a big company person. Around that time, I looked around at a couple of places both within and outside Microsoft. I had some surprisingly good hiring experiences and some that were surprisingly bad (as bad as this thread makes the Google hiring process seem, trust me it is worse than that) then came away with a surprising conclusion. The best place to build the kind of software I wanted to build was at Microsoft. I started working in online services at Microsoft because I believed Social Software is the Platform of the Future and wanted to build social experiences that influence how millions of people connect with each other. What I realized after my quick look around at other opportunities is that no one has more potential in this space than Microsoft. Today when I read articles about our recent release, it validates my belief that Microsoft will be the company to watch when it comes to bringing "social" to software in a big way. 

~

In my almost seven years in the software industry, I've had a number of friends go through the sense of needing change or career dissatisfaction which leads to the seven year itch. Both at Microsoft and elsewhere. Some of them have ended up dealing with this poorly and eventual became disgruntled and unhappy with their jobs which turns into a vicious cycle.  On the other hand, I know a bunch of people that went from being unhappy or disgruntled about their jobs to becoming happy and productive employees who are more satisfied with their career choices. For the latter class of people, here are the three most successful, proactive steps I've seen them make

  1. Change your perspective: Sometimes employees fall into situations where the reality for working on product X or team Y at company Z is different from their expectations. It could be a difference in development philosophy (e.g. the employee likes Agile practices like SCRUM and the product team does not practice them), technology choice (e.g. wanting to use the latest technologies whereas the product team has a legacy product in C++ with millions of customers) or one of many other differences in expectations versus reality.

    The realization that leads to satisfaction in this case is that it isn't necessarily the case that what the organization is doing is wrong (e.g. rewriting an app from scratch just to use the latest technologies is never a good idea), it's just that what the employee would prefer isn't a realistic option for the organization or is just a matter of personal preference (e.g. the goal of the organization is to deliver a product on time and under budget not to use a specific development practice). Of course, these are contrived examples but the key point should be clear. If you're unhappy because your organization doesn't meet your expectations it could be that your expectations are what needs adjusting.

  2. Change your organization: As the Mahatma Gandhi quote goes, Be the change you wish to see in the world. Every organization can be changed from within. After all, a lot of the most successful projects at Microsoft and around the software industry came about because a passionate person had a dream and did the leg work to convince enough people to share that dream. Where people often stumble is in underestimating the amount of leg work it takes to convince people to share their dream (and sometimes this leg work may mean writing a lot of code or doing a lot of research). .

    For example, when you go from reading Harvard Business School articles like Microsoft vs. Open Source: Who Will Win? in 2005 to seeing an Open Source at Microsoft portal in 2008, you have to wonder what happens behind the scenes to cause that sort of change. It took the prodding of a number of passionate Open Source ambassadors at Microsoft as well as other influences to get this to happen.

  3. Change your job: In some cases, there are irreconcilable differences between an employee and the organization they work for. The employee may have lost faith in the planned direction of the product, the product's management team or the entire company as a whole. In such cases the best thing to do is to part ways amicably before things go south.

    Being on an H-1B visa I'd heard all sorts of horror stories about being the equivalent of an indentured servant when working for an American software company but this has proven to be far from the truth. There is an H-1B transfer process that allows you to switch employers without having to re-apply for a visa or even inform your current employer. If you work at a big company and are paper-work averse, you can stick to switching teams within the company. This is especially true for Microsoft where there are hundreds of very different products (operating systems, databases, Web search engines, video game console hardware, social networking software, IT, web design, billing software, etc) with very different cultures to choose from.

These are the steps that I've seen work for friends and coworkers who've been unhappy in their jobs who've successfully been able to change their circumstances. The people who don't figure out how to execute one of the steps above eventually become embittered and are never a joy to be around.

Note Now Playing: Estelle (feat. Kanye West) - American Boy Note


 

A few weeks ago, Joshua Porter posted an excellent analysis of FriendFeed's user interface in his post Thoughts on the Friendfeed interface where he provides this excellent annotated screenshot

In addition to the screenshot, Joshua levels four key criticisms about FriendFeed's current design

  • Too few items per screen
  • Secondary information clogs up each item
  • Difficult to scan content titles quickly
  • People who aren't my friends

The last item is my biggest pet peeve about FriendFeed and why I haven't found myself able to get into the service. FriendFeed goes out of its way to show me content from and links to people I don't know and haven't become friends with on the site. In the screenshot above, there are at least twice as many people Joshua isn't friends with showing up on the page than people he knows. Here are the three situations FriendFeed commonly shows non-friends in and why they are bad

  1. FriendFeed shows you content from friends of friends: This is major social faux pas. It may sound like a cool viral feature but showing me content from people I haven't subscribed to means I don't have control of who shows up in my feed and it takes away from the intimacy of the site because I'm always seeing content from strangers.
  2. FriendFeed shows you who "liked" some content: Why should I care if some total stranger liked some blog post from a friend of mine? Again, this seems like a viral feature aimed at generating page views from users clicking on the people who liked an item in the feed but it comes at the cost of visual clutter and a reduction in the intimacy of the servers by putting strangers in your face.
  3. FriendFeed shows comments expanded by default in the feed: In the screenshot above, the comment thread for "Overnight Success and FriendFeed Needs" takes up space that could have been used to show another item from one of Joshua's friends. The question to ask is whether a bunch of comments from people Joshua may or may not know is more valuable to show than an update from one of his friends?

In fact the majority of Joshua's remaining complaints including secondary information causing visual clutter and too few items per screen are a consequence of FriendFeed's decision to take multiple opportunities to push people you don't know in your face on the home page. The need to grow virally by encouraging connections between users is costing them by hampering their core user experience.

On the flip side, look at how Facebook has tried to address the issue of prompting users to grow their social graph without spamming the news feed with people you don't know

 

People often claim that activity streams make them feel like they are drowning in a river of noise. FriendFeed compounds this by drowning you in a content from people you don't even know and never even asked to get content from in the first place.

Rule #1 of every activity stream experience is that users should feel in control of what content they get in their feed. Otherwise, the tendency to succumb to the feeling of "drowning" will be overwhelming.

Note Now Playing: Lupe Fiasco - Kick, Push Note


 

Categories: Social Software