Not Your Father’s IBM!

Legendary investor Warren Buffett’s $10.7 billion investment in IBM Corp. (NYSE: IBM) has taken the tech world, as much as Wall Street, by surprise. What is one to make of an investor, arguably the world’s most famous, who never placed a pretty penny on tech stocks, not even during the Internet boom, now making his largest quarterly commitment of cash in 15 years on a single technology company?

In the hullabaloo about Berkshire Hathaway’s huge investment in IBM, many may have missed the fact that Buffett also placed a smaller bet on Intel ($232 million), too.

Buffett’s fabled investment strategy has been built on a few principles that he believes will always remain inviolable. With regard to tech stocks, it was encapsulated in his annual letter to shareholders amid an Internet-led tech boom in 1998: “Technology is just something we don’t understand, so we don’t invest in it.”

Clearly, that has changed. When announcing his huge investment, Buffett told CNBC: IBM “fits all my principles…it’s something we expect to own indefinitely.”

So, if Buffett has not really tweaked any of his stringent investment principles, we would have to believe that IBM has dramatically transformed itself to fulfill Berkshire Hathaway’s valued standards.

What really has happened at IBM?

Oldtimers will barely recognize Big Blue today. It has shed nearly all of its hardware business – only 1.6% of its revenues come from sale of servers and computers. After a strategic shift that started over a decade ago under Lou Gerstner Jr., IBM is today a software and technology and business consulting services behemoth.

Two things are crucial here.

One, IBM’s financials have vastly improved on account of far higher margins on software and services, and extraordinary execution. So much so, some analysts are calling IBM a “classic Buffett stock.”

Two, in its strategic transformation, the 100-year-old company is looking like a perpetual business machine that is never likely to go out of fashion or business, no matter what new technology or computer might emerge in the future.

Of the two, it is the latter that finally swung Buffett. Remember he is an investor who likes candy, paint, insurance and finance – things that everybody loves or needs, no matter the circumstance. Buffett likes things that seem perpetual, which is why he then holds stocks of these companies indefinitely.

“I don’t know any large company that has been so specific about what they want to do,” said Buffett. “I felt that IBM had a very good business.”

It is clear that Buffett, finally, believes IT services will be a bedrock of business, and that no business can be run without quality computers and software. In this realm, IBM is supreme with its innovative focus on business solutions, a strategy that Wharton marketing professor George S. Day says “is sound and hard to copy.”

Even though IBM’s transformation may have finally endeared it to Buffett, the fabled investor’s final embrace of technology still is a recognition that IT firms play a crucial role in powering business and will likely do so for the foreseeable future.

And that is a view that we at extensionEngine share with Mr. Buffett.

Are You Ready for the Post-Flash World?

Flash for mobile is dead. Can Flash for desktops be far behind?

That is the big question facing hundreds of thousands of websites after Adobe, maker of the most popular technology for web video and other interactive multimedia features, said earlier this month it would no longer support Flash on mobile browsers, ceding to the newer, feature-rich HTML5 technology that works – and performs better – on most mobile devices.

For years, Flash has enjoyed a monopoly that is comparable to Microsoft in the past and Google now. Just consider the following, advanced by Adobe itself but citing independent companies such as Forrester, Alexa and ComScore:

  • 85% of the top 100 websites used Flash;
  • 75% of web video is played on Flash players;
  • 98% of PCs connected to the Internet have Flash players;
  • 98% of enterprises use Flash to deliver videos;
  • 70% of games are delivered using Flash
  • Developer community of 3 million

Even though Flash remains near ubiquitous on PCs, web developers such as Robert Accettura give the technology a life of no more than 24-36 months. Some others such as Robert Reinhardt, founder of VideoRx.com, believe the transition to HTML5 technologies will be “slow” but “inevitable,” with the latter the operative word.

If history is any guide, technology change typically occurs more rapidly than we ever realize. In about 18 months since Apple’s Steve Jobs mounted the first serious opposition to Flash’s monopoly – refusing to include the technology in Apple’s iPad or iPhone – HTML5 has soared in popularity and emerged as a consensus technology by biggies such as Microsoft and Google. Just look at the figures below:

  • 34% of the 100 most popular websites used HTML5 in the quarter ended September, according to the blog binvisions.com.
  • By 2016, 2.1 billion devices will have HTML5 support, according to ABI Research Data.
  • Dice.com, the tech job site, has found that resume searches for HTML5 expertise more than doubled between the first and the third quarters.

If anything, HTML5 adoption will likely accelerate, ironically because of Adobe’s abandoning Flash for mobiles.

Given the situation, what are companies and IT heads to do?

As many have pointed out, the current period is one of transition in which web developers will have to work with multiple formats. Some believe HTML5 still lacks some features such as full-screen rendering that is so exciting on a desktop or laptop, or streaming out-of-the-box. Still, many will want to progressively convert from Flash to HTML5 in order to deliver their content. Also, companies can, and should, decide when and how to manage this transition, and when to dive headlong into HTML5. These are tricky decisions critical to the enterprise but those that nevertheless need to be taken at the right time.

The Challenge Arising from Many Screen Sizes

Enterprises are in a hurry to hand out tablet computers and smartphones to their employees. Consider the following:

• 93% of the Fortune 500 companies are testing the iPhone for enterprise use, according to J.D. Power.

• More than two-thirds of companies plan to formally deploy iPads or other tablet computers by 2012, with Sales Force automation applications, particularly cloud-based systems, according to a survey by Model Metrics.

• Enterprises will buy 1.1 million tablets this year, 50 times more than they did in 2010, according to U.K. market researcher Canalys.

• The installed base of smartphones will rise to 2 billion by 2015, nearly matching the installed base of PCs, according to Gartner Consulting.

Clearly, enterprises are eyeing the day when they can provide most, if not all, employees anytime, anywhere access, dramatically transforming the way we work and, hopefully, dramatically raising productivity. But to truly empower their workers, they need to do more than merely configure these mobile devices to receive emails or connect to their enterprise servers. Enterprises need to devise ways to optimally deliver enterprise data to these devices, ensuring usability and performance, not to mention enhancing user experience.

Now, this poses challenges. Let’s consider one: retrofitting enterprise data on tablets and smartphones with diverse screen sizes.

Most enterprise systems were designed to fit a PC screen. Engineers stuck to this format because, until recently, there was only one screen size. But as smartphones and tablets become standard tools for workers, enterprises will want their systems to be optimized for these smaller screens. Else, workers will be less efficient than desirable or, in many situations, may not even be able to use key enterprise data on their mobile devices.

So, what are enterprises to do?

A clear choice is to architect the solution to include an API that abstracts the “back end” from the presentation layer. This architecture allows IT to develop new front-ends for the application ideally suited for the device/screen size be it web, tablet, phone or otherwise. It also supports browser-based HTML whether desktop or mobile, native apps and even 3rd party systems. While this 3-tier architecture requires a little more overhead for a simple web-application, it affords great flexibility to support future screen sizes and devices not yet deployed. At extensionEngine, we have deployed this architecture using JSON APIs which, due to their conciseness, are well suited to mobile applications where bandwidth is a consideration.

This conversion presents a huge business opportunity, probably on the scale of the Y2K, or Millennium Bug. This would mean tens of billions of dollars in business for software companies. We are at a probable tipping point for growth in tablet adoption in the U.S., and for smartphones across the world, as data cited above suggest.

The Consumerization of Enterprise IT

The term “consumerization of enterprise IT” entered the tech vocabulary in the early aughts and the main gist at the time was that the UX of enterprise applications should be easier to use (like consumer apps).  This review from 2006 of the new Ketara SaaS procurement solution is a good example.  Later with the success of iOS and the App Store, the term expanded to include the idea of adopting the infrastructure supporting consumer application within the enterprise and, in fact, many companies launched “enterprise app stores.”  Of course, recently, the term morphed yet again to include social media features.

But it seems like there is an even bigger opportunity which is to adopt the business model of consumer products and tailor/integrate them into enterprise applications.  What does that mean?  Here are a couple of things off the top of my head:

  • Enterprise “GroupOns”.  No, I don’t mean employee discounts, this is something entire different.  What if an enterprise created a tool that enabled managers (or any employee) to create a “deal” that other employees could “sign-up” for?  Many companies have a “10% rule” that allows employees to spend 10% of their time working on projects of their own liking.  Perhaps a tool like this could provide another way of managing that time?  Imagine a manager creating a “deal” providing a $100K prize for any team that developed a system/procedure which solved a very specific customer problem?  Or how about a sales manager that creates a contest that his or her sales team could opt into?  Performance is all about incentives and providing a tool to adjust/manage these could be powerful.
  • Hunch meets Quora for the enterprise.  Companies have vast pools of talent little about which they are aware.  Most companies provide some sort of directory that provides snippets of employee’s resumes but that is the tip of the proverbial iceberg.  How about an application for the enterprise that is a “talent discovery / matching” tool?  Couple this with location and calendar functionality and this could be used to accelerate innovation.
  • Couponing for the enterprise.  To understand a coupon, you have to understand marginal cost.  The idea with a coupon is that once you get a customer in your store you can upsell them other items or services at zero or little marginal cost.  Obviously the marketing department at companies understands this, but what if this were used systematically with employees (as well as customers)?  Imagine a field service repairman out on a call that finishes at 3:30 and there is another call nearby that will take 3 hours (going over shift hours).  The marginal cost of this time/location sensitive opportunity is low, but without the right “coupon” it won’t be exploited.

So is this the next phase of the consumerization of enterprise IT? Time will tell, but I’d be surprised if we don’t start seeing consumer business models adopted within the enterprise.

iPad in the Enterprise

Yesterday I finally received and read iPad in the Enterprise that I had pre-ordered a while ago.

If you’re involved in enterprise mobile whether it’s C-level strategy or implementation for a business unit, this book is worth a read. In truth, this book is really two books in one. The first seven or eight chapters are written for the CIO. The author, Nathan Clevenger, writes about the evolution of iOS and how enterprise IT has influenced it, the “consumerization” of IT, developing an enterprise mobile strategy, build vs. buy, etc. You can tell Clevenger interviewed a lot of people for the book and covers a lot of ground in these first chapters without diving too deep.

One of my favorite bits in the first chapters is Clevenger recounting an interview with Geoffrey Moore (of Crossing the Chasm fame) about how the technology adoption curve he theorized is affected by the consumerization of IT generally and the the iPad specifically. The response (which I think could be expounded into an entire book itself) was that it blows up the curve. The whole idea of early adopter and mainstream and laggards goes away with things like the iPad because it is so intuitive and easy to use. Grandmothers (traditional laggards) and nerds (early adopters) are adopting the iPad at the same time.

Not surprisingly, the biggest take-away of the strategy chapters of iPad in the Enterprise is defining and understanding the business metric(s) you want to improve and then working to build a team and plan to achieve that. Technology for the sake of technology is to be avoided.

On the topic of build versus buy, Clevenger offers a strategy of see-if-you-can-buy-before-you-build. There are probably 50 pages of the book dedicated to a review of dozens of applications that address various enterprise problems (from content management, to communication, to sales automation). With hundreds of thousands of apps in the app store, it’s hard to find fault with the advice of buy before you build. On the flip side, Clevenger points out that the apps themselves can be a small fraction of the overall cost (if you integrate with internal enterprise systems). This is not a warning, but rather a reminder to consider the total costs…a topic that I want to address in more detail in a future post.

In the second half of the book, Clevenger and his co-authors dive into the details of iPad application design and deployment. He touches on the entire development process from initial UI design through build, test and deploy. Probably the most important bit is the focus on what Apple has already defined in their Human Interface Guidelines. To understand design for iOS you really need to start with Apple’s HIG. Clevenger spills much ink on this topic, all of it warranted.

Then this is where the book gets into the weeds…to the point where there are pages with sample code. While it might be worth a CIO skimming these latter chapters, they’re really written for the IT professional and product managers implementing or considering implementing iPad applications in their company. There are many real design nuggets…one of my favorite is on the topic of data security and how to avoid users “capturing” data using the native screen capture functionality (hint: you can’t turn it off, but you can thwart it).

So all-in-all, iPad in the Enterprise is a well written, timely and informational book which we recommend.

TEDxBoston Adventure Video

Last month, just the day before the TEDxBoston 2011 main event, extensionEngine cosponsored an “adventure” at the Cambridge Innovation Center. The invitation-only event was dubbed, “Launch an Idea in a Day.” At the event, there were three teams of 7 or so people who were given a mission of developing an iPad application that achieved a civic good. The three teams spent the next 3 hours brainstorming, designing and ultimately pitching their idea to a distinguished panel of judges that included Jeff Taylor, founder of Monster.com, super-angel Bill Warner and a Massachusetts state representative.

Below is a TED talk style video summary of the event.

Top 10 Tips For Developing An Enterprise Mobile App

Every year since 2005 has been declared (in advance) the “year of enterprise mobile” however not until 2010 was that prediction correct.  And the catalyst for that was the introduction of the Apple iPad (and subsequently similarly featured tablets on other OS’s) which is now being tested or deployed by 65% of the Fortune 500.  And this isn’t just theoretical for us.  extensionEngine has been developing mobile applications since the firm was founded in 2000 and in the past year we have seen explosive growth, particularly in iOS and for the iPad (but also to a lesser degree for Android devices and RIM). So we thought we’d share our top 10 tips on developing mobile applications for the enterprise:

10. Make sure you really need it.  First of all, make sure the app doesn’t already exist!  After that, check to see if an app is the right way to do it.  For the vast majority of use cases, it’s easier, cheaper and faster to develop an HTML 5 version of the current online website specifically for mobile.  You only need a native app if you require access to device specific controls or inputs; for example GPS location data, accelerometer data, multi-touch screen, camera, working offline, etc.  If you’re just pushing reports to your sales force in the field, you can do that with a HTML 5 site.  But if you want to show a map of your sales rep’s customer accounts within a few miles of her current location filtered for those that are large but haven’t had a recent touch and make the experience interactive…you’re going to want to do that in a native app.

9. Decide which devices and OSs you will support.  Looking at the market place for tablets, iOS (iPad) is forecast to remain the dominant player through 2015, but still there are many firms looking to support Android, Windows and RIM.  Our view is that if you’re looking primarily at enterprise mobile as a platform for workforce efficiency and enablement then iOS/iPad should be your top priority.  However, if you’re looking to support customers, vendors and other partners as well (e.g. mobile banking) then you need to look at Android smart phones, Windows, etc.  If you have a plan up front and design to support it, your long term development and maintenance costs will be lower than if you adjust on the fly.

8. Invest in user experience.  Because of the ubiquity of the iPhones and iPads in particular, every employee who will be using your app has expectations for what amounts to a good user experience and ultimately a good app.  They’re already familiar with apps like Pandora, Twitterific, Angry Birds and Zillow.  Make sure you build the app to included “expected” features like nice splash page graphic on launch, landscape/portrait orientation for iPads, pinch and swipe for zoom and pan and you should use “standard” look and feel unless you have a good reason.  It’s pretty hard to win praise for truly novel features, but it’s very easy to generate some groans if you fail to meet UX expectations.  In our experience UX is frequently the area most overlooked by clients for want of a few thousand dollars to engage an experienced UX designer.

7. Understand costs to build.  Whether you develop your app internally or outsource it to one or more vendors, the tasks required to build your app are always the same: product development, design, coding, integration, testing and project management.  Let’s look at each one of these in turn:

  • Product Development.  This task involves defining what the app will do at a very detailed level, the overall architecture, what systems within your organization will be connected, etc.  It’s important to think about things like who are the user types, how to credential users, what features of the device(s) you want to utilize and most importantly what is the business problem(s) you’re attempting to solve.  The output of this task is an app architecture, app features list, wire frames and other requirements.  For example, if you’re deploying an app for your sales team and your business goal is to increase sales to current customers, then you will want the app to help your sales people find and close opportunities with current accounts.  This step is probably the most important one in developing a successful app.  It’s also one of the trickiest steps to staff because often an enterprise won’t have the mobile experience internally but many technology vendors don’t have the business experience.  In fact, this is an area where extensionEngine excels because we do have deep experience in mobile AND we have very strong business strategy expertise.  Depending upon the complexity of the app/platform, if outsourced, this task usually bills at $150+ per hour and can cost anywhere from a few thousand dollars to low tens of thousands.
  • Design.    Design is the task of taking the requirements from the product development task and turning them into the look and feel plus user experience of the actual application.  Almost every enterprise will want to outsource this and the rates for design vary from as low as $75 per hour up to $150.  At the lower end you can expect a “converted web designer” and the higher end will be someone with expertise in mobile user experience and exploiting all of the mobile specific features (multi-touch, genstures, GPS, camera(s), accelerometers, off-line synchronization, etc.  Typically you’ll do two or three iterations on various aspects of the UX/design and depending upon the complexity of the app you can expect costs to range from $5-10K up to mid-five-figures for very complex apps with many pages, animation, etc.
  • Coding. The actual coding of the application on the devices is pretty straight forward and typically takes 1-2 experienced programmers anywhere from a few weeks to a few months, again depending upon complexity.  In addition, you’ll need to build connectivity between the apps and legacy systems within your enterprise.  This can often end up being the biggest expense.  Another common question about coding is how to handle multiple devices/OSs and whether to use platforms such as Pyxis Mobile, Worklight, Shumbi or one of the many other similar development environments or to use the OS specific SDK.  Our experience to date is that for most enterprise applications, the multi-platform development environments are still too immature and require lots of extra testing.  Programmers often describe them as “write once, test many” platforms.  Our long term view, however, is that these multi-platform environments will mature and there will eventually be one or two winners that will make sense to adopt.  Until then, it’s faster and cheaper to use the native platforms.  If you outsource coding, you can expect to spend anywhere from low tens-of thousands to low six figures where most of that variability depends upon legacy system integration.
  • Integration.  As mentioned above, integration with legacy systems can be a big task.  The ideal approach for integrating with enterprise systems is to use a 3-tier architecture with a custom API in the middle that will abstract the presentation layer (e.g. your new app) from the data layer.  Done well, this API will allow you to add new mobile apps on new devices / OSs as they become available and to even use this same API for your web and mobile web clients.  That way your user base will be seeing the same data / experience where ever they access it.
  • Testing.  Just because you won’t be rolling your app out to hundreds of thousands or even millions of users on the iTunes App Store, you still need to do lots of testing.  You also need to remember to test your app on the various version of the OSs for the devices you support.  Testing can take as little as a few weeks to a month or more.

6. Don’t forget about supporting infrastructure.  Often to deliver the solution to your original business problem, you need to build some supporting infrastructure.  For example, one of our clients wanted to develop an app for their sales force.  But before they could do that, we helped them build a data warehouse to consolidate data from a couple of dozen different systems which were then put into a data cube and finally pushed to the new iPad application.  As you can imagine, the enabling infrastructure investment in this case far outweighed that for the actual mobile app.

5. Have a plan for distribution. You could, but you probably don’t want to distribute your app through the App Store.  Instead, you’ll want to sign up for Apple’s Enterprise Program which allows you to distribute your proprietary apps to employees and other members of your organization.  But if you’re going to be deploying the app to more than 100 or so users, then you should consider some of the more robust tools like those from Apperian or AppCentral.  These proprietary platforms will afford you more control and feedback on the distribution of your apps.

4. Plan for long term support and maintenance.  iOS, Android and the other OSs have updates on a frequent basis; typically every few months.  There are major releases once or more annually and your enterprise app needs to be updated and tested on these new versions.  What’s more, your enterprise systems will go through changes as well so the connectivity with the mobile apps needs to be monitored and supported.  Since this isn’t typically a full time job and many enterprise IT departments don’t have iOS and Android expertise internally, they look to an outside firm for long term support an maintenance.  At extensionEngine, this is a core part of our offering.  Having been around for more than 11 years (and with clients spanning nearly that entire length), we know it’s important to support our clients in the long run.  Depending upon the type and amount of support required, it can cost as little as a few hundred dollars per month to as much as low thousands per month.

Sample Keynotopia Template

3. Build a mockup.  When you’re selling the idea of enterprise mobile within your organization, having some visuals to show your colleagues and the decision makers is very helpful.  One of the easiest ways to build a demo is to use Keynote on a Mac and the Keynotopia templates to build a mockup.  What’s really cool about this is that you can quickly create 5 or 10 key pages of your app using simple cut/paste and then you can hotlink areas of each page to other pages.  In presentation mode this makes the app look like it’s moving from page to page so the users can see what it looks like and get an idea of the user experience.  And even better, you can get Keynote for the iPad ($9.99) and show the demo on an actual device.  Lastly, if you use the video dongle to mirror your presentation, you’ll be able to convey your vision easily and clearly.

2. Iterate.  For your first launch, you should be focused on the minimum viable product (“MVP”).  The MVP should be simple and provide enough value to justify the project.  Once you have the basic infrastructure in place to support your mobile applications, you can rapidly iterate to fix bugs and add features.  If you have things set up properly it’s easy to push out updates.  What’s more, every app should have a feature to report bugs and provide suggestions.  You’ll find this a brilliant source of future features.  More than ever before, your user base is expecting frequent updates and enhancements so you should build into your plan support for this.

1. Have no fear.  Unlike many IT projects which often have little upside and lots of downside, enterprise mobile apps afford one of the best ROIs for IT projects you’ll come across.  For low six figures you will be able to design, build, deliver and support a platform that will garner praise and deliver tangible business benefits.  Your user base will be delighted to see you and will have positive things to say.  After delivery of an enterprise mobile project for one of our clients, the head of sales sent a note to the CEO with a copy to the head of IT that this project, “was the best thing he had seen come out of IT in the past 10 years.”

So that’s it.  That’s our top 10 tips for developing enterprise mobile apps and delivering them to your organization.  Hopefully you found this helpful.  In the future will be wiring more on enterprise mobile security, multi-platform development, user experience design and more.

Terrific Overview of a new Web/Mobile paradigm

Buy a home in Croatia…

The New York Times has an article this week about buying homes in Croatia. As the self-appointed president of the Boston Chapter of the Croatian Chamber of Commerce, I have to say I’m intrigued. Enjoy!

Mobile is the Enabler / 4 businesses that were transformed (or created) by Mobile

In the past, we used to distinguish between Technology Companies, and Technology Enabled Companies. The difference was pretty clear – the former developed technology products, while the latter used technology to enable the product or service delivery.

In the technology space, mobile companies used to be a distinct type of companies, which usually developed products or services specifically to be used on mobile devices and on-the-go. In the last few years, this has changed. Since Apple created the mobile apps market, and mobile devices with 3G and GPS became widely used, mobile became more than just a distinct technology arena. It is now the enabler of new products, services, and business models. Here are some examples for products and services that are not directly related to mobile, but would not be what they are without it:

  1. Pandora – The internet radio service was launched in 2000, with a unique technology to match songs their user’s music taste. Despite of their cool offering, the service never really picked up, but with the release of their iPhone app 2008, they immediately reported an unbelievable boost in the rate of new user registration. The ability to steam music on the go, which was not available in first 8 years of the service, was eventually what enabled its success.
  2. Zipcar – I’m one of the many fans of this popular car rental service, which allows you to rent a car by the hour from accessible locations across big cities. Their website works very well as a way to access the service and book cars, but the idea of a mobile application simply upgrades this completely. Regardless of where I am, if I need a car, the app locates the available cars near me and books one for me (and if I can’t find the car I booked, I can honk the horn from the app).
  3. Facebook – It can be interesting (or not) to read that my fried “Had a great time at the U2 concert today”, but it’s much more exciting to read “I’m at the U2 concert now!” and see a picture of Bono which was taken 2 seconds ago. That’s “live” social networking.
  4. Yelp – I don’t always know where I’m going to eat when I’m going out, especially as a tourist in a place I don’t know. There aren’t many things more intuitive than having your mobile device find you top rated restaurants around you, at a certain price range and that are currently opened. It’s one of the things that just make sense. And if it did not exist, someone would have had to invent it.

The common attribute of the above companies is that even though mobile presence is a key contributor to their success, they are not mobile companies. There are complex and unique processes involved in creating their service, product, or content (which is often user generated). These happen in the non-mobile side, but the mobile platform is the one that delivers a compelling value to the users. It’s the Enabler.