What is Internet of Things (IoT) really?

Obviously the most over hyped word of the moment: IoT. The Gartner Hype Cycle 2014 shows it pretty clearly

 

gartner_2014-2

but the more I am dealing with IoT the more I realize that this word is really a garbage bag for about everything closely related to some object that can connect to something else, somehow.. It’s so vague that everything kind of falls into this category these days.. Old 15 or 20 year old companies are now IoT companies without having changed a bit what they were actually doing. I can understand it. If there is a wave, one should try to ride it.

But let’s look at it a little closer and try to give it an accurate definition. IoT: Internet of Things. That is standing as a reflection of an Internet of People I assume. So the internet today is mostly people connecting to servers or other people via a large network of interconnected networks that is accessible to all. It relies on a set of standards (the most famous being TCP/IP, HTTP, etc) to enable open communications between people and servers.

If we translate that to “Things”, we should define the Internet of Things as a large network of interconnected networks where Things communicate with other Things. There should really be no people involved. So why is Wearables in the Internet of Things? why is a connected Oil rigs in the Internet of Things? Why is your connected car in the Internet of Things? I am really starting to think that they are not. They are just a new wave of connected and potentially smart devices but still connect to a person at some point.

Your FitBit will connect to you phone, which will send data to a server so you can review, track, compete with other people. That’s not an internet of thing, that’s a thing connected to the internet.

In an internet of things, things are the actors. A device connects to another device of server which sends something back automatically, and the device may take action based on that response. If the interaction starts to become more complex, to the point where an entire life cycle can happen between devices, then we are in the internet of things.

What could that look like. Imagine your self-driving car..

Self-driving car

It detects some high level of vibration in one of the wheel. It connects to a server that can identify the cause and likelihood of failure thanks to all the other cars that had the same issue, and roughly in the same condition of use (some predictive models would apply). The verdict is clear: that wheel will have an issue in the next 2 to 4 weeks. The server let’s your car know. The car checks your schedule and maps it to potential repair slots in a garage near your work. It books an appointment during your work hours. That day, it takes you to work, then leave to go the appointment (on it’s own!! it’s a self-driving car!). It gets the repair, and comes back to pick you up at the end of your day. Potentially the repair was made by a robot in the garage. No humans involved, maybe except for the validation of payments 😉

There we are talking about an internet of things. The car could talk to the garage, thanks to standard protocols, it could analyze issue based on other data point from other things, it could read your agenda and self drive thanks to sensors and plenty of other information given by other Things it didn’t know about that were connected and intelligently inform the car’s decisions.

I think we will truly achieve the Internet of Things, when things can autonomously interact between each other to the benefit of people. In the meantime, it’s a lot hypes, but don’t get me wrong, it has tons of value and that’s why I’m so passionate about it.

Internet of Things Landscape Beyond Things

As I am looking at the different facets of the Internet of Things, I realize that there are a million ways to slice and dice it’s different components. It is clearly a complex ecosystem and the amount of buzz generated around IoT is a clear demonstration of that fact. Similarly to my previous post around the IoT protocols stack I wanted to attempt to draft a view of the landscape but this time beyond the things and communication layers. I wanted to have a focus around the application side of things where I believe most of the value lays. So let’s show that. Here is my view of the IoT landscape and I’ll talk about the different bricks right after:

Image

 

Following a strong message pitched by Salesforce.com around the fact that behind every device is a customer, this is where I started: The connected customers on the left.

It all starts with connected devices, and you will find in there chip manufacturing, and connection protocols like Bluetooth, wifi, etc.. Not the focus of this blog but definitely important. The following bucket to look at is to the right of the connected devices: The communication buckets where you will find a lot of the protocols I described in my previous post. But there is where the interesting part begins.

DATA END POINTS. I have create a bucket for this as it many players actually only play there. The features found in this bucket are around pub/sub architectures and protocols for high volume communications for millions of devices, but also intelligence. I believe that intelligence at the Data end point level is extremely important as it will avoid the overload of totally useless information coming from the devices. The end point should be capable of creating a first level of triage of the information coming in: What’s expected? what’s normal? what is NOT normal? The end point should be able to generate alerts in near real-time to the customer support bucket (below) or to applications through the development platform (above). The better at assessing data in real time, the less dumb data will be added to the data store (to the right). Another important element of the data end point, is authentication and security that can be handle there. The end point should be able to know (authenticate) the devices and customers behind the devices as well as make sure that communication are secured (encrypted) and no one can send data or commands in a malicious way.

BIG DATA STORE. This is where the raw data will go in. I do believe that if the data end point has done its job right, not everything needs to be stored. Maybe only aggregate data is store like “the device has been on for 24hours” instead of thousands of “I’m alive” data points. That said, there is a balance between pure raw data and not enough data. The value of a big data store is to be able to query and work through that data via learning algorithms, and pattern detection algorithms. Those algorithms love to have tons of data as they become better and better with it. There again, the intelligence is key to determine predictive outcomes. This is the holy grail of the industrial internet by the way: predicting when things are going to fail in order to reduce unplanned maintenance. You will notice that the diagram connects the big data store to applications (above) and customer support (below) as this data is key to provide insights to agents in call centers (of in the field) as well as provide input, bi-directionally, to applications. Maintenance history, upgrades, etc, should feed back from specialized application into the big data store as well.

ASSET MANAGEMENT. There is data generated by the devices, but there is data about the devices. A device needs to come online for the first time and declare itself through a provisioning system before it can send data. The devices have owners, serial numbers, a history of their creation, maybe even all the way to the CAD designs and specifications. It is made of parts that can be assembled, upgraded, etc. It has a cost, to sell of to built. It can be optimized in a way or another. All that information about customers’ assets will be kept in that system. An advanced asset management and asset optimization system is a critical piece of the landscape where a lot of value can be generated.

DEVELOPMENT PLATFORM. On top of the data and assets, can sit a development platform. From simple cloud based OS to full fledge application development platform, you will find a entire ecosystem just in that bucket. Anything that allows others to create applications linked to the data or to connect to the device (via the data end points bus). Those platform have to provide all the brick of security, authentication, licensing and provisioning management, workflows and business processed, etc.

CUSTOM APPLICATIONS. Either through an ecosystem of ISV or by customers themselves, applications can be developed on top of the platform to consume data and manipulate / control devices. Applications can be virtualized for certain industries (smart home, smart cities, industrial internet, healthcare, etc..) each having their own market to go after. I think there is still a lot of work and opportunities in that bucket where most certain 70% of the value chain will reside at some point. Note that those applications will connect back to the customer via the web, through any type of device (mobile, tablet, desktop) including the device itself.

CUSTOMER SERVICE AND SUPPORT. Going back to the bottom part of the diagram, you may know that I am a big fan of the service use case of the IoT. I believe it is one of the big opportunities that this trend provides: to offers outstanding customer service thanks to the data generated by connected devices. From intelligent routing of alerts coming from the data end points in real time, or from the data store asynchronously, to knowledge management, entitlements, RMA, and then multi-channel communication with the customer, a good customer service operation will empower agents by tying device data and related intelligence to the customers themselves.

FIELD SERVICE. Interestingly the field service use case is very big in customer support. It’s not because machines are connected that there is never a need to physically go see them. Repairs, maintenance, refill, physical upgrades, all those still have to be performed by a field technician. I think what has changed is that now that devices are connected, the field service technician can be much more efficient than before. Accessing the entire history of the devices, its usage and failure patterns, knowing everything about the parts needed and planning for preventive maintenance are all very cost effective tasks that will drive significant returns to companies using connected devices. I even think that it will drive more field service needs than before, but it will be done is a more efficient way. Instead of incurring a huge cost of a failure, a company can have a much smaller cost of more efficient technicians.

SALES AND MARKETING PROCESSES. Even if support is definitely a big use case for IoT, the extension into sales and marketing is undeniable. A cartridge is low in your printer: that’s a lead. You don’t drive your car very much: that’s a lead. You go in certain places very often: that’s a lead. Opportunities are all over the place for up-sell, cross-sell, proactive marketing, in-context marketing, etc. I think this will come a bit later as the infrastructure need to be in place for it to be realized fully but it will come and it will be big.

ANALYTICS & INSIGHTS. I could not have a diagram without this piece. Understanding the data through smart visualization is critical to efficient decision making. Seeing trends and patterns and being able to generate reports and dashboards conveniently for every level of the organization are constant asked from any company I talk to. Bringing together, Device data, support data and sales data into single dashboard has tremendous power that many company will take advantage of.

I hope that this view of the IoT landscape brings some clarity to some of you. I would love to get feedback about it to make it better. Why I built this initially was to understand where we wanted to play as a company and I think it has been helpful to segment the market and the players we have been talking to.

Enjoy and share.

 

 

The Internet of Things Protocol stack – from sensors to business value

There is no doubt that we are entering a new era.. An era that will change the world more than the Internet did 15/20 years ago. This era is the Internet of Things, or IoT. John Chambers, the CEO of Cisco is going on a crusade to tell the world about and is driving many conversation with his potential $19T in economical impact from efficiency gains to pure economical growth. I have personally never seen a number that big, and it’s starting today.

Granted connecting objects is not something new, we have had connected machine for more than 15 years. Axeda, one of the leading solution providers in connected machine, has been in business since 2001! What has changed is that now: 1- it’s becoming cheap to connect machines to the internet. Very cheap. Hardware is affordable and even open source: Raspberry Pi announced it’s 2M unit sales in November 2013! Knowing that they compete with Arduino, Mbed and others, I am astounded by the cheer volume of supposedly “hardware enthusiasts”. This not a hobbyist game anymore, it’s everywhere. I personally played around with an Mbed and a Spark Core using Cloud based backend from Xively. It’s so easy, it amazed me and got my imagination going on a few projects.

But where is the catch? I’ll be honest: Standardization. The IoT landscape is a mess! Too many protocols, too many wannabe standards, too many revolutions. It will calm down and consolidate but for now it’s creating more mess with every new device that comes out on the market.

I’ve decided to give a try at describing that mess through a protocol stack that I’m hoping to be useful for others. My goal was not to be exhaustive in anyway, I don’t even think it’s possible. But I hope that I captured the most common protocols that people encounter on in a day in the life of an guy in IoT.

IoT protocols stack

 

[Note: This diagram has been updated based on comments and feedback received since Jan 29]

What I found important in this stack was to add a Business value layer, because what’s the point of connecting devices if in the end there is no business value.

Some will find similarities with the ISO stack (Link layer, Transport, Session, etc..) and there are some, but I wasn’t particularly trying to map to it. It just happens that the ISO stack is foundational to the Internet and as a consequence in the DNA of everything Internet.

Protocols you will find in there:

Connectivity layer: What kind of physical connectors you can find. RJ45 (the physical connector, usually for Ethernet), PLC, RS-232, RS-485, ModBus, USB (as a connector type, not the communication protocol), SPI, ODB2 (in Cars), and Wireless (no connector!). You will sometimes find gateways that will convert any of those physical connectors into wireless.

Link Protocol: How do those device actually send the data. Ethernet 802.3, Wifi 802.11a/b/g/n, BlueTooth, BLE, Dash 7, ZigBee, RFid, GSM, 6LoWPAN, 802.14.5e. The last two are really focused on the IoT use case. I have put ZigBee here only but I am well aware that ZigBee covers a large portion of the entire stack. To avoid too many redundancy, I had to make a decision on where it would fit best.

Transport: IPv4 and IPv6. I also added 6LoWPAN and RPL despite the fact that they are both based on Ipv6. The IPv6 has been a long time coming and was supposed to be adopted by everyone 10 years ago, but now with the projection of having 50 Billions devices connected in 2020 (according to Gartner), we have to go to IPv6! What was interesting is that I haven’t found much of anything beside the IP protocol out there which proves the dominance it has acquired through the rise of the Internet.

Session / Communication: This section is an interesting bunch with a lot of new protocols that have been build for super high volumes and large networks of things. The most famous right now is MQTT, a subscribe and publish protocol that is used by Facebook for its mobile app. You will also find CoAP (kind of a REST Based protocol but much more efficient than its HTTP counterpart), DDS, XMPP and AMQP that are all well suited for IoT and will map different use cases. One will still find older protocols like FTP, Telnet and SSH, but even though they are working very well, they are resource intensive, power intensive, and do not fit well with the low power, unreliable bandwidth of the IoT realm.

Data Aggregation / Processing: This is where it gets really interesting. When device send data, lots of data, you need an end point to do something with it. Be it processing it in real time (with Storm), but at minimum getting the data and sending it somewhere else at very large scale, which Kafka is a great example of. Other solution exists like RapidMQ, Scribe, Plume, Luxun, Fluentd (although more on the translation to JSON side)

Data Storage / Retrieval: The realm of Big Data backend and NoSQL solutions. Hadoop, HBase, MongoDB and Cassandra dominate the field. There are others, like the google AppEngine,  but I may add them later on if they start appearing more in IoT use cases.

Business Model: This is a new addition fro, the initial post. This layer is trying to capture the fact that business value and business processes always rely on an underlying business model. Open or Closed, Integrated or platform, direct sales or indirect, cloud based or on-premise (or private cloud), on-demand pricing, etc.

Business Value: I’ve split it in three. One part if around Device Management, the provisioning, registration, firmware management, remote access, but also the product and asset structure as well as Security (tremendously important, especially as we just went through the first massive Connected Devices attack just a couple of weeks ago. The second section is to highlight the birth or transformation of Service for smart devices, Marketing for owners of smart devices and the impact on manufacturing those smart devices.  Finally, the analytics piece shows how much technology could be applied to the data gathered, With machine learning algorithms, data mining, and all the insights and visualization that can be derived from it.

With such a representation of the most common protocols, the need for consolidation really becomes obvious, the IoT cannot keep going with so many protocols if the dream of having any devices talk to other devices in a fully connected world wants to come true. In any case, it’s fascinating.

Building your App in the Cloud or not is a business decision better made early…

Having worked at Salesforce.com for several years now, I have been immersed in the world of Cloud and I have witnessed first hand how an enterprise class application could scale in such an environment. It has been fascinating all along and that experience has been truly put to use as I have been dealing with ISV (Independent Software Vendors) partners in the last few months for Salesforce.

As I talk to CEOs and CTOs of those ISV who want to work with us, the question of the architectural choice they have made comes every single time: Is your offering Cloud based or on-premise? Is it truly Multi-tenant or more of a shared hosted solution? What I came to realize through those conversations is that the choice those companies made early on is definitely something that is very impactful to their business and that once it is made, it is extremely hard to change. That difficulty can have huge consequences on your ability to scale, your ability to innovate, your ability to lead and even your ability to exit!

As a consequence, I would like to write a piece of advice, or at least a bit of guidance to all  of you, early entrepreneurs, who are thinking about building software: Should you go Cloud or not, and if so what type of Cloud offering should you pursue? What I hope from this post is that you will realize that this decision should not be taken lightly and should definitely not be an afterthought, but above all, it should be made early.

Cloud, Multi-tenant, On-premise.. What is all this??

Let’s quickly recap what Cloud, multi-tenant or on-premise mean (I’ll stay very high level here):

  • A Cloud application does not live on your customers infrastructure(usually). The customer connects to your application via a basic Web Browser. Most of the time those solutions are sold on a subscription basis.
  • An On-Premise solution usually lives on the customers infrastructure. The customer owns servers and potentially spaces in data centers to run the software. Usually those solutions are sold through a one time license and some yearly maintenance fee that gives access to upgrades and patches.

Cloud based solution can have (roughly) two flavors: Hosted or Multi-tenant.

  • A Hosted solution usually means that despite the fact that the customer accesses your solution through the Web and has a subscription service they pay, the application lives in its own container called “instance”. Each customer has its own instance with its own engine and Database. There is literally a virtual separation between each customers instance.
  • A multi-tenant solution usually means that the Database as well as the application is unique and access for each customer is controlled through some meta-data layer. Everything is shared and security is ensured at the query level rather than at the virtual infrastructure level.

So what are the implications of each of those solutions for an early startup?

Let’s assume you start with an on-premise solution

Let’s say you start on-premise (just like many of the enterprise solution providers out there started many years ago). Here is how your business will go:

  1. Your sales representative will be compensated on the licenses they sell. Usually those up-front licensing costs are high: the customer “Buys” the software. That’s usually pretty attractive when you start because:
  2. You get more upfront cash which can fuel your growth
  3. You don’t have to have a security conversation with your customers which will ask where the data resides and how secure it is, etc.. so sells are a bit easier.
  4. You will have happy sales guys because they will get high bonuses

So it all starts pretty well, but then as your business grows, this is what happens:

Your customers are not upgrading which means you have to maintain several versions of your software which drives your support and development costs up. You have to release patches for several versions and you have to train your support crew on several versions.. this could quickly become a nightmare. So to reduce this cost you revert to a fewer releases which drives down your ability to innovate fast, react to new market trends and lead ahead of the competition as you cannot afford to manage too many versions and at the same time and you cannot force your customers to upgrade.

You realize that the new hardware that a customer has added to their machine is causing issue so you have to handle hardware specific patches, or your virtual machine provider has released a patch that is also causing problems with your application but that only happened for a subset of your customers..

Your sales guys constantly have find new customers because your revenue is dependent mostly on this one-time licensing fee that you charge and if they don’t get new deals they don’t get the nice bonuses they use to have.

Some prospects are worried about the seasonality of their business and how quickly they can scale up and down and also deploy mobile apps.. Well with your on-premise solutions Mobile access is not that simple as your customers need to open their Firewalls to give access to the servers that host your App. And by the way, they also need to integrate with other solutions, and some of them are Cloud based, so do you offer some kind of standardized platform where partners can create those hooks?

As a business owner you look at this, you look at your costs, you look at the market trend and the growth of the Cloud and you decide that it’s time for you to start providing a Cloud based solution..

This is where things really start breaking.

From on-premise to cloud: the equivalent of a pivot, but harder!

Your sales force has been trained to pitch the value of on-premise versus cloud and all your customers have bought into this vision. Now you have to go tell them that Cloud is better! If you don’t, you will have to manage yet another version of your offering and increase your costs even more.

Of course, you don’t want to re-code everything as multi-tenant, it would take you months if not years as the architecture are fundamentally different. Your developers would be frustrated and your customers may not have the patience. You may even loose the precious lead you had on your competition in terms of product features. Multi-tenant is a no-go, so you decided to go hosted.

Going hosted is easy enough, you basically take the on-premise App you have, hopefully you had a web browser front-end instead of a desktop application (if not you are really in trouble), and you put it in your own infrastructure.. You change your licensing model to be subscription based and you are good to go: You have a nice Cloud bases solution.

Well it’s not that easy..

First, you still had to spend an ungodly amount of cash to build or rent your datacenter in the meantime though. You will have to swallow that as the revenue of a Cloud based offering are also much more progressive, no big one-time fee here.

Second, your sales guys won’t like this and will always sell the on-premise version if they can. They will come in a deal leading with Cloud, start pitching and revert to the on-premise every time. Maybe you mitigate this with two different sales units, one for Cloud solutions and one for on-premise, but you will rapidly enter a turf war internally. I have seen this over and over. That means your cloud solutions will have a very hard time picking up.

The maintenance of the hosted solution is also going to be the same nightmare as it was for the on-premise.. When you upgrade you have to go through each instance individually and upgrade them one by one. The problem is that your customers will always tell you that it’s not a good time and it takes weeks if not months to upgrade everyone. By that time you may already have a new version available.

Going hosted you haven’t solved anything.. you made it worth. You have sales that don’t want to sell your stuff, you have support and maintenance nightmares and you lost your innovative power.

Let’s continue the story. You are resourceful and with your strong leadership you have been able to change the culture of your company and everyone is behind you now.. your hosted solution has taken off and you have an opportunity to exit with one of the leading firm in the Cloud.

Looking at an exit? Tough luck…

The company (fictional) that is looking at your business was attracted by you because of your Cloud offering. Their IT is looking at your architecture and realized that you host many instances of your solution.. There is nothing multi-tenant and basically the integration story will be almost impossible as everything will have to be re-written to be compatible with multi-tenant. Your support organization will be cut drastically as well as you have way to many and all your customer base will have to be migrated as heavy costs which means there is a good chance of attrition. How do you think the acquiring company will feel about your business? not so sexy anymore. Of course it can happen, but what multiple will you get?

So what about multi-tenant then?

Very quickly, multi-tenant means you ARE Cloud. You develop 1 version, you maintain 1 version, you upgrade everyone at once, you are nimble and innovative and you will crush your competition. Your sales will be trained on 1 message, compensated on 1 model, and customers will grow with you, making you a very good target for a beautiful exit.

One element often forgotten about hosted versus multi-tenant is that a hosted solution will never be able to grow your customer base in the SMB market if that is what you plan on doing (either as a start or if you want to go down market later). Spinning up a new instance and maintaining that instance for a customer with 2 seats will definitely not be worth the time. A Multi-tenant architecture on the other hand, doesn’t care if you are 1 or 10,000, the cost of deploying and maintaining each customer comes down to a cost per seat (roughly). Small business are subject to the same level of quality and care as the big customers and your overall level of service is much higher.

Summary: choose wisely and choose early… (my advice: choose multi-tenant!)

I took a very simplistic approach to the story, but hopefully you now have a better understanding of what it could mean to start with the wrong architecture. Going on-premise may be simple, or even hosted to start with, but the consequences on the growth of your company, the costs, the innovation and flexibility you will have to adapt to a rapidly changing market and the ability to exit may be really impacted and depending on your business strategy and goals could even be detrimental.

I truly believe in the Cloud but I also truly believe in multi-tenant. There are many different ways to architect your solution with some hybrid solutions but always keep in mind the maintenance costs they will generate assuming customers will not upgrade if they can avoid it.. Some customers are very sensitive to cloud solutions like in the banking industry but salesforce has proven that with the right security, the right message and with enough benefits, even the banks will follow you.

How difficult is it to build hardware for a startup?

My gosh… I’ve always been a software guy but since I’m young I like to build things. It starts with lego, even “Mecano” (ok I’m not that young anymore and I have played with Mecanos as a kid..) and last year I though it would be really fun to try to build some kind of hardware and see how that works. I was inspired by the Makers movement and all the Arduino’s projects and thought to myself: I can do this!  So I did..

Here was the plan:

  1. Find a good idea (I had one already)
  2. Build a prototype
  3. Put it on Kickstarter and raise some funds
  4. Sell it and potentially expand the product line

That sounded about right.. My initial goal was to learn about hardware making and prototyping.. All those Kickstarter projects were pretty fascinating and the advent of 3D printing allows you to go pretty far. Hoping to help (or warn) other entrepreneurs about going that route, here is what happened:

The context:

I watch TV and I have kids.. I can never watch a good action or sci-fi movie without the risk of waking up the kids or annoying my neighbors so I wanted a device to wirelessly transmit sound from my TV to my ears. There are plenty of them out there already but without going into the details, they SUCK! The only ones that work very well are the Sennheiser, which will charge you an arm for them and force you into a single type of headset.. I have my headsets, some nice Bose QC15 that work perfectly and I wanted to use those instead.

The Idea:

Have a very small device on which I could plug my own headset to listen to the sound of my TV wirelessly.

The constraints:

Wirelessly transmitting sound is not easy when combined with TV: It cannot suffer any delays (latency) between the image and the sound otherwise it would look like a horrible foreign language dubbing! And it cannot use too much bandwidth because there are a lot of interferences with existing wifi networks already. Wifi is out, Bluetooth is out, regular RF is out and the only really good solution I found was the KLEER chip (also used by the high-end Sennheiser system)

The easy part:

Get a name: Soundora.com was available..

Get a quick website up and running www.soundora.com

Get a Logo (I have some really talented friends there)

soundora_high_transparent

Get a twitter account, an email and a facebook page

Barely any costs there.

Building the first prototype:

I found who built the KLEER chip, and luckily they were in the Silicon Valley so it was easy to contact them. They send me all the specs of the chips some reference designs, and all the surrounding hardware.. That’s where the nightmare started.. My electrical engineering skills are about 15 years old and those chips cannot be soldered by hand.. Half of the surrounding component I had no clue what they were, some had different options I didn’t understand either..

So after a bit of research I reached out to companies that built prototypes for you. They know their stuff! Great conversation but the initial investment was at minimum around $10K to have a single prototype, and probably around $50K to get a first low volume batch.. No go.

The fun part is that I initially did some designs without hardware constraints, and had a good idea of what it would look like, but as soon as you add: Battery, Connectors, and all the other stuff around the device, you realize the amount of magic required to build something as small as an iPod Shuffle is! Man, Apple is good.. So all my initial designs went to the toilet. I had to start from the inside and work my way out.

So I bought a couple of low end Sennheiser headset (which use the same KLEER chip as the high end) and tore them apart . I took the board and put it inside small box I bought at Frys.. What I didn’t expect is that buying components such as a 3.5mm jack plug, flat batteries, etc.. would take so much time. I also didn’t realize that they were never exactly the right format, the right length, etc.. Amazon doesn’t have a lot of it so delivery would always take 5 to 7 days to realize it wasn’t what I needed.. In the end I did get all my part and a bit of soldering later I had a working device:

First prototype of Soundora

When I say working, it’s partly true.. The button in the front for power and Volume were iphone buttons that are way to thin to work with.. I could not really change the volume or turn on and off the device.. I had to design my own box (which was fun).

Here you go a few days later I had my 3D model:

3D model or Soundora receiver

I used Shapeways.com which had the cheapest 3D printing service I found and got me the box. Very existing but another few weeks to get it..

1 IMG_8225  3D Printed receiver open

 

At this stage I realized that 3D printed is not really there yet.. Anything under 0.8mm space will be filled.. That means that my button did NOT work (again!!). I was starting to get frustrated with this, buttons are really tough to design, it’s just amazing!

Anyway, I got the circuit in and kicked it up

2 IMG_8228 2 IMG_8233

 

huh… That orange light wasn’t supposed to show up that much.. I even had build a little deflection inside the box to let the light come out through a small hole.. Interesting surprise.

Anyway, it worked! I had to have another batch of buttons from Shapeways to solve my issued and it now looks pretty cool.

I also found another battery pack that is flatter and should work as well so I was in good shape. I’ll have to do another box (thinner) though.

But here is the main issue: Ripping out a Sennheiser device for my personal use is fine but I can’t really do that commercially so I still needed to find a way to get my own circuit built.

Getting my own:

By total chance, I stumbled upon a small business that is building systems around KLEER for different customers.. They built the Dr Dre wireless headset.. so I contacted them. Very cool guys and they had small circuits (smaller than sennheiser) that I could use to get an even better device. Very exciting.

But then we talked about production batches.. The Kleer chips are bought by batches of 2000, pretty expensive per unit cost.. Building the box (transmitter and receiver) would probably cost about $4K to $5K to get the mold and get it ready for a batch. That doesn’t even count for prototyping the real thing..

Basically I need to raise at least $100 to $150K to get the project going, and it would mean a sales price in the $150 to $200 a system (1 transmitter + 1 receiver). You can add more receivers (up to 4 total) but it cost about as much as the transmitter.. So the economics barely work for small batches of a few hundred devices. They would for larger batches though.

I am currently kind of stuck there, I don’t want to do a Kickstarter project with a prototype that doesn’t look like a finished product (maybe I’m wrong in thinking that by the way), and I am honestly having a hard time with anything touching the electronic of the device.. I’m a software guy. Also I want to keep it lean as much as possible but I realize that the lean startup model of software doesn’t apply that well in the hardware world.

Other things to consider:

Even if I get to a point where I do have a working prototype there are other things to think about when building a hardware startup:

  • This one is a wireless device and requires certifications about the lack of danger of the transmitted wave. There are a bunch of certs you need to get for the device that will add costs to the project.
  • Designs should be turned from the current Patent pending status to a real patent in some way even though it’s using only existing technologies.
  • Packaging is another good one: Getting a nice box that is cheap but looks good and conveys the experience you want to provide to the users
  • Power plug adapters for distribution in Europe and North america, including different voltage and frequency
  • Documentation in several language
  • Distribution network: initially direct as done through kickstarter, but eventually through stores like Best Buys and others. This will hit the margins.
  • Shipping costs between China (or wherever the device is manufactured) and the destination
  • Maintenance and defects management: Some devices won’t work, some users will be unhappy, and you have to determine who is responsible, what’s your return policy, what costs can be projected around those issues, including shipping..
  • Potential competition from Sennheiser or others.. Roku came out with a similar device and even though it is limited to one listener and to sources from the ROKU box, it still is a fairly tough competition.
  • Unsold devices: If you create batches of devices, what if you don’t sell them all?
  • Delays in production and shipping..
  • etc..

Conclusion

I didn’t give up. I still would like to get to a point where I have a very nice looking prototype, but when I compare this to any of the software project I have done, I realize that it is a totally different world.. Fun in a way as you can touch and feel something, and as you are effectively building something, but the initial cost and technical skills required are really larger.

I have learned so much along the way and I now look at all those Kickstarter project in owe of the complexity I lived through. Some of those guys are really good.

I hope you you entrepreneurs out there will find value in this experience and maybe make you think a bit more before going into hardware. I also welcome any help from someone with electrical engineering, manufacturing, hardware engineering to get this through a first finish line 😉

Cheers, and keep making stuff!

Gamification: The next revolution for the enterprise

In the last year or so as I was busy building our next generation of self-service support community product in my company, the question of users reputation came up many constantly from customers. I added the necessary activity tracking to app but was shy on exposing too much in the UI because I wanted to make sure I was doing things right. I did well to wait because as I started looking more deeply into reputation management around the web and what were the market trends in the field I stumbled on a world of opportunities under the name Gamification..

Gamification is the use of Game elements and Game mechanics in none game contexts.

You will find other definitions around the web but they all refer to the same core elements:

Game elements:

Points, badges, leaderboards, levels, etc..

Game mechanics:

Challenges, quests, transactions, win-state, etc..

Non game contexts:

Health & fitness, business processes, education, etc..

Think about it for a moment. Who doesn’t like playing Games? There are many research studies that have shown the positive effect of playing games on your self: Self-satisfaction, pleasure, sense of achievement, progression, sharing, socializing.

Games like World of Warcraft have cumulated over 6 millions years of playing hours by its players.. and it’s adding 3 Billions hours a week! That cannot be just because it’s fun.. The game mechanics of this type of games, WoW, Farmville, Halo, the Sims, etc.. are extremely powerful in engaging players, pushing them to overcome unnecessary challenges and spend hours and days on them for absolutely no other reward than pleasure or status..

Gamification is all about applying the same technics to other things than Games and hopefully generate the same level of engagement and fun for the users.

Applications of Gamification are almost limitless and despite the incredible hype around the term itself, it has proven to have enormous ROI. – If done right –

There are three major areas where I see Gamification could bring tremendous value:

Onboarding experience:

This would be to help a user start a new thing: A trial of a software for example. But also helping users learn more about an existing product creating little games to learn. Onboarding can also be for new hire in a company, instead of just throwing videos and intranets at them, why not taking them through a journey full of challenges and rewards which will make the on-boarding more fun.

Application specific behavior:

In a Community product I want people to post questions, reply, vote, thank others, select best answers, share files and interesting posts, provide ideas, etc.. What kind of game like tools can I use to drive the expected behaviors? Gamification has many answers to this question.

Real life games:

Want to help your employees stay in shape? want to help save the planet from global warming? want to have employee know each other more? There are many examples of real life challenges that could be tackled through Gamification.

This is the first post of many about Gamification that I am writing but I believe it is very relevant to entrepreneurship and especially to the potential success it could bring to entrepreneurs who embrasse gamification.

I will try to go through several example for each of those three buckets so you can have some insights and ideas for your own products.

Passion over business opportunity for entrepreneurs

Since I was teenager I thought about having my own company.. I had my dad as a model who never had a boss in his life and even if he never pushed me to start my own company and I seen as I grow up that it was what I wanted to do.. Early in my career I started a business in a field I liked (network security) within a great market. It was a services company with no product and I realized that I do enjoy building products which was part of my decision to take a big step, move to the US and get an MBA in the best place for entrepreneurship in the world. What happened, and I realize it now in fact, is that the MBA, despite all the great things it brought me, biased me into looking t business opportunities instead of listening to my passion.

This blog is inspired by the realization that a great business opportunity does not make it a great opportunity for the MBA entrepreneur…

In the MBA, you learn to study markets, business, massage company structures to make them work, look at synergies, macro economics, financial structure of companies and all the good stuff. The consequence is that I started looking at every opportunity through that lens.. The problem with that is that I got trained to look at a business and find a way (at least potential) to make it work. A lot of opportunities then become interesting to look at.. Many markets are still untapped, many markets and opportunities are still open or using old technologies that could be shaken up. Basically I kept seeing many opportunities all around me.

I came to believe that focus is important. Focus is the ability to set aside interferences and nail the energy in the one thing you want to achieve. I have always been in a rush in my career, jumping from an opportunity to the next, but as I listen to podcast of great successful entrepreneurs, I realize they often times have spend many many years in the same company, learning, getting really good at what they do, working long term projects, staying focus on their company. Comes a point where a trained MBA, with an entrepreneurial mindset, needs to focus as well..

Where are you going to focus? On a great opportunity or on something you are passionate about? That is the whole point of this blog.. I personally do not believe someone can stay focus on a great opportunity if it is not a true passion, and that it is bound to fail.

For MBA alumni or MBA students out there, stop thinking like an MBA on every opportunity you see, and match it to your inner passion… Do you see yourself working on this opportunity for 5 years? 10 years? Are you really interested in this field or industry? Is this field what you want to be the expert in? Are you ready to read entire books and reports about this industry without falling asleep?? Do you see this industry become your life on a daily basis? I feel this is fundamental and that the combination of technical skills learned in the MBA and the passion is the recipe for success..

Let’s keep searching, the opportunity is out there 🙂

A single metric for business: Profit per x?

I’ve been profoundly affected by a book: Good to Great by Jim Collins which has studied hundreds of companies to understand what made some of those good and others great. The findings are just incredible and the way the book is written allows any business person to reflect on its own attitude and approach and try to pursue the path of greatness in business.

I won’t go into every points addressed in the book, although I wanted to call out one of the thing Collins noted: great companies have a very clear metric they were following relentlessly. It’s the denominator of the formula: Profit per x. Each of the great company had a clear profit per x. For example, profit per visit for Walgreen, profit per employee for Abbott, profit per region for Circuit city, etc.. It seems very simplistic but it drove billion dollars businesses’ strategy and became the heart of their culture. The shift of revenue metric from one denominator to another was often time the starting point of fantastic results.

As I was reading this I asked myself what could be the right denominator of a profit per x of a very small business, and how could this drive the strategy of the company. I was fortunate enough to run such a small business, Iniflux, in the past and I was trying to think what it should have been.

The first step is to determine what metrics we have and that is probably the biggest issue most small businesses are facing. When you are small, you often live day by day, each deal is important, be it outside of your realm of skills, focus is not a virtue, and because management is so close to the field there is no time to think too broadly about culture, strategy, hiring and investment. Accounting is outsourced to a CPA which role is mostly to help filling taxes and make sure the company pays the right taxes to the state and the visibility of the cost structure is very weak.

Building those metrics takes time initially but they are crucial to growing the business. You need to ask the right questions:

– What are my costs? How much does every employee cost really? What’s my total overhead cost (attributing overhead correctly is also very important)? What is my cost per profile of employee? per employee? per deal? What is my sale cycle length? by type of deal, by size of deal, by sales person? How much hours of each profile have been put in on each deal? How much do I spend in marketing? where? for what return? what is my support cost? How much is debt costing me? etc..

– What are my revenue? What margin do I make by type of product, by deal size, by sales guy? How much revenue by practice if you have several? by region? compared to last year? and the year before? etc..

The idea is to have a perfect picture of your cost and revenue structure. The goal of this exercise is not to just do it once but also to be able to track those metrics over time and see trends appear. Once this is in place, the company has to compare itself to the market, and comparable companies in particular if this data is available. For example, what’s a good revenue per Sales in the first year? the second year? Hopefully you will realize that you are good in certain areas and weak in others but overall, you will know, from now on, how to plan for the future. By understanding your core metrics, planning becomes much easier. Later you can always compare your plans with your metrics to see if you are on track. Another to know more is to talk! talk to other small business owners, go to networking events, ask questions, talk.. IT is in fact incredible to realize how much first hand conversation can bring, and often times how people are open to talk about their company and experience. Who does not ask gets nothing. Talk.

So, as you are planning, what should be your denominator? The x of profit per x. Force yourself to think about a single one. What should it be?

I will take a few example to illustrate the impact that such an approach could have on your business.

As a service company, the denominator could be: Customer. Profit per customer. If you are set on this what does it mean: The number of customer is not that important, what you want is increase the profit for each of them. That might drive you to go see your current customers more. It might drive you to drop customers with which the type of deals you have are not in line with your strategy (service versus pure software/hardware sales for example). It might drive you to expand partnerships with a single partner. It might drive you to diversify your offer into a more complete or global offering. You will try to find ways to cross-sell or up-sell products with existing customers. At the same time you will try to reduce the cost allocated to each customer which means you might want to have someone dedicated to each customer that knows them in and out and can be efficient, spending less time on each new deal. You may want to incentivize your sales team on this metrics as well.

Now as the same service company, the denominator could be: Practice. profit per practice. Let’s imagine you have a security practice and a database practice and you want to maximize the revenue per practice. To achieve that goal you will have to develop certain expertise that justify higher sales costs, maybe find product in those practices that have bigger revenue and margin, your training costs will be distributed differently to maximize for this denominator. You may even want to drop one of the practices all together. Overall your strategy will be quiet different that is your denominator is “customer”.

If you are a SaaS software vendor, you denominator could be “visitor”, “paying customer”, “server”, “marketing campaign”, etc.. and each of them will call for a different focus, culture and strategy.

Finding your denominator is going to be very hard and will certainly be the source of many debate internally. Be honest with yourself, face the hard reality of your situation. Don’t just come with a denominator, try to figure out what is going to be the strategy to increase it (using the great tracking you have put in place earlier). You might realize that this focus will be what takes your company to the rank of great company.

Is SaaS such a great business model? – 19 months later.

Unbelievably I went back and read what I wrote in January of 2010 (link) where I compared BMC and Salesforce in terms of comparable companies (revenue speaking), BMC being a more traditional software vendor and Salesforce being the pure SaaS player.

Let’s look at the evolution of those two companies over the last 19 months

01/2010 SalesForce BMC
Market Cap $8.01B $6.84B
EBITDA $145M $633M
Revenue $1.24B $1.8B

Back then I thought that SaaS was not necesseraly the way to go for a startup, although fundamentally, I was seeing a lot of benefits to this model. Now about 19 months later the same table (looking at the last Balance sheet)

09/2011 SalesForce BMC
Market Cap $15.9B $7B
EBITDA $115M $677M
Revenue $1.94B $2.11B

Do you see what I see?? Salesforce doubled its market cap, increased its revenue by almost 30% and is dwarfing BMC.. That said it still has a small EBITDA. In comparison BMC basically stayed the same, with a slight growth and still a nice Earning number.

Salesforce numbers are impressive in terms of growth but scary in terms of earnings so the question remains: Is SaaS such a great business model?

Hell YES! I made one big mistake in my previous analysis and this post is here to correct it. I did not really look at the stage at which the companies were in their growth. Salesforce is a fast growing startup which has one thing in mind: Growth of the top line. On the other hand, BMC has been a stagnant company and is focused on its bottom line. I should not have compared those two companies in the first place because investment decisions are completely different in those two cases.

So why with only 6% of revenue in EBITDA is SaaS a great business model? The answer is simple: It’s the subscription model of SaaS, and it’s the growth.

If your business is using the SaaS model, you will get no big check when you sell your product, in fact it’s the opposite, you get a big cost. If the customer is big enough or if your reached a certain amount of customers on the same infrastructure, you may have to upgrade it, you will have larger server load, memory usage, bandwidth usage and all this will cost you from day one. Of course you will amortize those costs, and if you priced you offer well, you will collect the benefits of this model in the long run. So for Salesforce, a lot of those costs are applied today (R&D, Sales, Marketing, Infrastructure) which eat the margin (reducing the EBITDA).

The growth is the second factor. Growth is costly, you have to hire, you have to invest, you have to discount to win customers, etc. Marc Benioff said today in a keynote that we are trying to hire as many people as he can and the problem he has is that he cannot find enough people! Especially in sales. For a business, if the strategy is growth, where should you put your dollars? As earnings that will be taxed? distributed to shareholder (who will be taxed as well)? Or into your business to make it grow even bigger? Think about $1 of earning. Take out 30% tax. Distribute it, and take another 25%, this dollars is wasted. Now put this dollars in a business that has doubled its market cap in 19 months.. What makes sense now?

The low EBITDA of Salesforce is nowhere near the sign that the SaaS business model is weak, or that the company is not doing well, it’s the opposite. This business is doing very well, demonstrating how powerful the SaaS model can be. Companies using the SaaS as a business model cannot be evaluated as standard software vendor with on-premise solution. If you are considering SaaS for your own business, it should be very clear in your mind. It should also be very clear that transitioning from an on-premise model to a SaaS model is extremely difficult without significant hits on your revenue which is why SAP, Oracle and other big vendors have so much trouble.

Regarding Salesforce, the fun fact is that as soon as the growth starts slowing down, the earnings will explode through the rough relative to revenue. Funny how things work with SaaS.

Unlearning your MBA

I started listening (late enough) to podcasts a lot, and the one I’m really fan of: The Stanford Entrepreneurship podcast. It’s really awesome and you should look it up in itunes.. I’m going to post my thoughts about those because they have a capacity of making me react everytime..Wait till I get to the one where Guy Kawasaki talks!

I’m starting with the one about unlearning your MBA where David Heinemeier, one of the creator of Ruby on Rails is speaking. Interestingly enough, Steve Blank is the moderator (a guy I love). If you follow my blog you know that I was pretty harsh about Jason Fried who founded 37 signals (linked to Ruby on Rails), and I was really looking forward to hear David talk to see if I just was stupid in my analysis of what Jason said about a flat organization.. I will split up that post in 4 sections:

  • Unlearn MBA – the main theme of the podcast
  • Shouldn’t Take Venture Capital and spend your own money
  • Working like crazy to build a startup
  • Salesforce.com

I was optimistic about that podcast. I wanted it to prove me wrong and unfortunately started pretty poorly… Unlearn your MBA. David started criticizing how bad the MBA he did was and didn’t help him in what he did to build a business.. All his professors were so theoretical in nature, judging on the length of the papers he was handing in, and thinking 1980’s industries value chain and business models. Well, what I think is that the problem is not that people should unlearn their MBA: people should not attend the MBA he went to!! If that is the experience he got from his MBA in Copenhagen, they should really revisit the professors they hired and their curriculum because, excuse me, but David is right: He should unlearn all this.. I’m barely out of the Berkeley Haas MBA, and I have to say that a ton of what I have learned there can be apply to everything business I think about today. My professors were experience entrepreneurs (Steve Blank included), they were lawyers from the field (Mario Rosati), successful people from many startups and their knowledge was immense and relevant at every inch. They taught me to think much broadly than I was able to before the MBA, they taught me to question assumptions, they tough me to test my idea, pitch better, be more confident, challenge the status quo, everything. My view of how to tackle a business today has completely shifted thanks to the MBA and I thank them for putting together such a great program. That actually raises a valid concern if you are considering an MBA: how do you select an MBA that will allow you to NOT have to unlearn it afterward? Vesting your MBA is important, not all of them are equal.. but generalizing like David did is pretty closed minded.

So the podcast went on and David started talking about VC money. He is of the school that VC money is a time bomb on your business. I have to admit, that made me like him better. I agree that taking any kind of VC money could simply kill your business and make you focus on the wrong things. Taking VC money is not the only way to build a business. Spending your own money makes you think differently about what you need to focus on, and I agree with David on a lot of points he made. I would simply extend into the fact that some businesses are doomed to failed without VC money: Capital intensive businesses (clean tech or health care), or  industries where being the first to market is super important and extremely fast growth is needed (where market barriers are very low => think Groupon!). Some businesses, even software businesses (David restricted his comments to software/web) just have bigger chances of success if they are VC backed than if they are not. When do you take VC money, or what stage of the company is a true question that needs to be thought through carefully. Getting VC money is not an end goal, it has to support a growth strategy and make sense for your business and your industry. I think that fundamentally David is right, but again, a bit short sighted. VC money is not all evil, but he is right that many entrepreneurs fall into the bad trap of just looking at the money, not the underlying purpose of getting that money.

At this stage, I was neutral, and then David started talking about the fact that to build a business you didn’t have to work 100 hours a week or you get burned out and you might be much more productive working less and sleeping more. At that point I realized that I could relate to David’s experience. In my two former businesses I worked hard, but not like hell. of course I would spend much more hours on them than I would do for another business where I would be employed but not to the point where I would get burned out. I agree with David, efficiency is more important than quantity. Many people get overwhelmed very quickly and brag about how many hours they spend at work. When I hear that I always feel that those people have two problems: They don’t know how to prioritize correctly, and they are not efficient. Although I already hear some of you screaming that they don’t have enough resources, their deadline as so tight, etc and it is very true for many of you so I shouldn’t generalize. Let’s just say that “often times” those people bragging have those two problems. Prioritization and efficiency are extremely powerful skills that allow you to work on the right stuff, at the right time and get the job done without waste. Thriving for those two skills should be everyone’s goals. I am sure that David has both skills very developed. Good for him!

I started to like him at that point and thought that despite his take on the MBA, which is understandable if he did actually go to a bad MBA, made me think that I had been too harsh about 37 Signals. So I started writing this blog post thinking that I would praise the guy.. (not that anybody cares about who I praise or not by the way..). As I was writing I was hearing the Q&A section of the podcast in the background led by Steve Blank (which I love. Did I already say that?) and Steve asked him about the scalability of a business like 37 signals versus a $1B business. And he killed it.. David thinks he could run a $1B company with 15 people, the way they do today. No correlation. What the Hell?? Is he stupid or what?? 37 Signals is ten years old. I realized it’s like Salesforce.com. I thought to myself: well you are not a billion dollars company because you are short sighted, and salesforce.com is over a billion dollars company because they have done all thing you have been criticizing during the podcast. But what nailed it is when he started talking about Salesforce.com (I didn’t plan this! it just happened!). David said: did you look at their margin, did you look at their P/E ratio, it’s bad and all that stuff, it’s so low (P/E so high), how can a software business make 5% margin. This to me is just the final proof that David doesn’t understand what a growth business is about. Salesforce.com reinvests every possible dollars they have into their growth. Salesforce.com has had the goal of leading the revolution of enterprise software all along, they made the Cloud and SaaS a reality, they have a long term vision (something that 37 signals doesn’t have as – David’s words: they think 2 weeks ahead), they are buying their growth in a model where if they were to make no sales next year, and I means zero dollars, firing every possible employee, they would probably make over a billion dollars in margin (no cost). That is what the whole SaaS model is about, and that is what Salesforce.com is about: Growth! reinvest every penny into the business. If next year Salesforce.com announces 40% margin I’ll be pissed! Why didn’t they spend more in hiring, marketing, expending? When Salesforce.com is a $5B business I’m guessing the growth potential might slow down a bit and then the margins are going to explode, the P/E will go down from the really high level it is at today. When salesforce.com decide to stop fueling the growth, they will make huge amount of money: that’s the SaaS model, it’s not just software. David doesn’t get it apparently.

I’m coming out of this podcast wondering how 37 Signals is still alive. Basecamp is pretty good, I’ll give you that, but man, with such a management team, I’m surprise they are still here, and I’m starting to really think they have other sources of revenue to keep them alive. Anyway. Interesting podcast to listen to.

Cheers