Archive
Ford: An API to Your Car
I was expecting the announcement a lot sooner. I made some slides about a similar concept some months ago (I called it the iCar) and presented them to one of the largest car parts manufacturer. Unfortunately car manufacturers have been very slow in adopting new innovations. At least one car manufacturer has entered the 21st century. Ford has created OpenXC, an Open Source hardware and software solution to interact with your car. OpenCX = Arduino + Android + Car Interface. Developers will be able to use their Android to read information from the car. You can read the angle of the steering wheel, vehicle speed, location, accelerator pedal position, brake pedal position, engine speed, odo meter (distance travelled), fuel consumed, fuel level, head lamp status, high beam status, ignition status, parking brake status, transmission gear position, turn signal status, etc.
At the moment you are not able to interact with your car unfortunately. It would be good if OpenCX could offer real interaction. Think about the possibilities of:
1) Parental control apps – my teenage child will not be able to drive more than 120km on the highway and 50km in the city center and I can tell them not to go to certain neighbourhoods.
2) Personalization – my car adapts to me. If I am alone in the car the car radio blasts out hits from the 90s, the motor goes into sportive, inside temperature goes to 21, etc. If my family is present, children music, comfort driving, temperature 22.5, etc.
3) Predictive Maintenance – my car tells me that there is a problem, finds the garage that has the spare parts in stock and schedules an appointment based on my calendar’s availability.
These are just one of many ideas. The main thing is that entertainment, personalization and third-party services will get an enormous boost if open hardware, open software and creativity are allowed to enter your car…
Maarten is currently looking for new challenges as a senior executive, expert in value innovation and using cutting edge technologies to generate new revenues. Contact him at maarten at telruptive dot com.
Usergrid – An impressive open source Mobile PaaS example
Apigee bought Usergrid. Usergrid is the type of Mobile PaaS that you would expect mobile operators to be launching. Usergrid is open source as well as available as a hosted service. Usergrid allows mobile developers to focus on mobile apps and not on the server. Everything from storing users, groups, roles, single sign-on authentication, social aspects (e.g. likes), feeds, queries, connections between users and objects (e.g. which friends of user X like restaurant Y), etc. is dealt with via an incredibly easy REST API. Usergrid also comes with toolkits for easy iOS and Android development.
Usergrid is impressive both as an idea as well as in how easy it is to build complex mobile applications, e.g. collective voting during a conference, etc. without back-end developement.
What is next?
Combining Usergrid with one of the many visual drag-and-drop mobile app development tools would allow users to create complete mobile apps without coding.
Being able to integrate other API based services into the same visual drag-and-drop development tool would allow even more complex applications: e.g. look at programmableweb for a list of thousands of public APIs. However ideally also private APIs (e.g. towards enterprise back-office systems) could be incorporated.
Finally being able to monetize these new mobile apps via in-app advertisement, enterprise mobile app stores, etc. would motivate developers to build millions of useful mobile apps.
Mobile PaaS is a very exciting domain and operators should be very actively investing in it…
Open Source Solution Index from the Big Dotcoms
The big names in dotcom world are busy open sourcing some of their secret sause. It is very important to become familiar with these often strangely named projects because they are responsible for several competitive advantages. Since the list is growing please suggest new solutions in the comments section so they can be added.
- Google has a very long list of open source projects. Some of the most famous projects are Android, Chromium, GWT, etc.
- Bigtable which by itself is not open sourced inspired the building of Hbase. The same happened for GFS which inspired Hadoop’s HDFS.
- Cassandra is a highly scalable, eventually consistent, distributed, structured key-value store
- Hive a data warehouse infrastructure that provides data summarization and ad hoc querying.
- FlashCache is a general purpose writeback block cache for Linux. It was developed as a loadable Linux kernel module, using the Device Mapper and sits below the filesystem.
- HipHop for PHP transforms PHP source code into highly optimized C++. HipHop offers large performance gains and was developed over the past two years.
- Open Compute Project an open hardware project aims to accelerate data center and server innovation while increasing computing efficiency through collaboration on relevant best practices and technical specifications.
- Scribe is a scalable service for aggregating log data streamed in real time from a large number of servers.
- Thrift provides a framework for scalable cross-language services development in C++, Java, Python, PHP, and Ruby.
- Tornado is a relatively simple, non-blocking web server framework written in Python. It is designed to handle thousands of simultaneous connections, making it ideal for real-time Web services.
- codemod assists with large-scale codebase refactors that can be partially automated but still require human oversight and occasional intervention.
- Facebook Animation is a JavaScript library for creating customizable animations using DOM and CSS manipulation.
- Online Schema Change for MySQL lets you alter large database tables without taking your cluster offline.
- Phabricator is a collection of web applications which make it easier to write, review, and share source code. It is currently available as an early release and is used by hundreds of Facebook engineers every day.
- PHPEmbed makes embedding PHP truly simple for all of our developers (and indeed the world) we developed this PHPEmbed library which is just a more accessible and simplified API built on top of the PHP SAPI.
- phpsh provides an interactive shell for PHP that features readline history, tab completion, and quick access to documentation. It is ironically written mostly in Python.
- Three20 is an Objective-C library for iPhone developers which provides many UI elements and data helpers behind our iPhone application.
- XHP is a PHP extension which augments the syntax of the language such that XML document fragments become valid expressions.
- XHProf is a function-level hierarchical profiler for PHP with a simple HTML-based navigational interface.
Twitter open sourced some complete projects (e.g. FlockDB) but especially adds extensions to existing projects. For a full list see here.
Yahoo
- Apache Traffic Server is fast, scalable and extensible HTTP/1.1 compliant caching proxy server.
- Hadoop THE nosql solution at the moment was started by Yahoo. Yahoo actively contributes also to several extensions like Avro and Pig.
- YUI is a free, open source JavaScript and CSS framework for building richly interactive web applications.
- Azkaban is simple batch scheduler for constructing and running Hadoop jobs or other offline processes
-
Bobo is a Faceted Search implementation written purely in Java, an extension of Apache Lucene
-
Cleo is a flexible, partial, out-of-order and real-time typeahead search.
-
Datafu is Hadoop library for large-scale data processing.
-
Decomposer is for massive matrix decompositions
-
Glu is a deployment automation platform
-
A set of useful gradle plugins
-
Kafka is a distributed publish/subscribe messaging system
-
Kamikaze is a utility package for performing operations on compressed arrays of sorted integers
-
Krati is a simple persistent data store with very low latency and high throughput
-
Base utilities shared by all linkedin open source projects
-
A set of utility classes and wrappers around ZooKeeper
-
Norbert is a library that provides easy cluster management and workload distribution
-
Sensei is a distributed, elastic, realtime, searchable database
-
Voldemort is a distributed key-value storage system
-
Zoie is a real-time search and indexing system built on Apache Lucene
What should tomorrow’s mobile cloud offer?
The IT cloud has taken shape. The next step is to offer a mobile cloud. How will it be different and what should a telco offer? For clarity, mobile cloud applications are combinations between mobile apps and cloud computing and telecom backoffice services, not iPhone or Android apps.
Mobile screens of all colours and sizes…
Where the PC worlds only has a handful of web browsers, the mobile world is completely different. Old mobiles live together with the latest smartphones. Applications can be native or web-based. Screens can go up to 11 inches (28cm) on tablets and even if we consider television screens to 50 inches (1.27m). We can even find mobile applications without screens (M2M) or via very limited character entries (SMS).
Although HTML 5 is bringing a good potential stardard, there are still quite some differences between different mobile browsers. So it will probably take some years before a reliable standard is omni-present.
In the mean time operators will have to offer solutions on their mobile cloud. Applications will have to be available on a wide set of platforms. Any help an operator can bring to developers will be highly appreciated.
Mobile testing nightmare
Having to test an html5 application on hundreds of mobiles is a nightmare. Some companies already offer partial solutions. However providing a solution via mobile hardware virtualization and automated testing would help developers bring apps to market quickly. Testing could be paid for by minute (instead of hours in the IT cloud). Mobile makers and testing software companies could get a revenue share for every developer that uses their virtualized solution. This would release the operator from having to do all the mobile OS virtualization and sensor testbeds themselves. It would be similar to having third-parties selling access to their Amazon AMIs but instead they would be for a Nokia Symbian or iPhone 4.
Mobiles have sensors
The latest mobiles have a long list of sensors (GPS, accerelometer, etc.). Mobile clouds should offer developers help in using these sensors and automating testing. You don’t want to physically move a mobile abroad to test if you get a roaming event, would you? Push notifications to the mobile have to be supported in a uniform way accross different platforms.
Latency and network connectivity can be a nightmare
Content caching on the mobile device is key. HTML5 offers an off-line key-value store but unfortunately not all mobiles support it so custom solutions are necessary.
Advertisment support is key
Offering a ready-made integration with major mobile advertisement solutions is important. Some applications can not be charged for, so advertisement is the only means of income. Inline content sales should be supported and hopefully at more competitive rates than the App Store’s 30% revenue cut.
Telecom assets should be the differentiator
All of the above can be offered by IT and dotcoms. Integration with unique telecom assets is a must. Sending an SMS is no longer a unique asset. Neither is location. They have to be real assets: micro-payments via telecom billing, custom numbering plans, zero-cost call forwarding, voice transcription, quality of service, etc.
Become the Elastic Beanstalk of the mobile cloud, not the Google App Engine
The Amazon Elastic Beanstalk is a service that allows java developers to deploy their applications and instantly benefit from auto-scaling, elastic loadbalancing, etc. However in contrast to Google App Engine, there is no one way of doing things. Developers have the liberty to swap out Amazon’s initial configuration by customized configurations.
Mobile to Cloud and Telco connectors
The mobile app, tablet app, TV app, M2M app should be seamingly integrated with cloud applications as well as telecom services. Having single sign-on via OpenID or getting data from the cloud via oAuth are basics. Setting up a conference call, managing call forwarding, voice transcription, etc. are others.
Selling the mobile cloud via a telco marketplace
Mobile cloud applications are combinations between mobile apps/M2M/SMS/Calls/TV Apps/…, cloud computing and telecom backoffice services. Programmers should be able to add them to a telco marketplace and sell them to different customer segments (consumers, soho, small/medium/large enterprises, M2M, etc.). However offen mobile cloud applications should be given away for free and programmers should get a revenue share on telco assets that are used, e.g. calls made, SMS sent, etc.
Mobile Social Networking
Adding social networking concepts are key. Operators know who you call most often. This information can be key when combined with cloud social networks. As long as privacy and opt-in are used, then users should only see benefits.
The long tail mobile cloud is nearby…
The long tail mobile cloud is nearby and operators can be the key players in it. However they will need to suppress their urges to be greedy. Revenue shares should be inline with the dotcom and IT industry. So should individual mobile cloud application pricing.
Cloud speed in time-to-market is necessary. Operators should not try to build things themselves. Instead they should partner with dotcoms and IT/network providers in real partnerships.
Finally the rules are changing. Old rules can no longer apply. Users need to be able to choose between multiple competing mobile cloud apps. No longer can the operator’s marketing department decide what will be a hit. The user community is the only one with this power. Social CRMs and other long tail support solutions can be used to avoid massive call center calls.
Social EPG, Semantics and how BroadCast becomes SocialCast
Cable operators and telecom IPTV providers are delivering a hundred or more channels to each subscriber. However teens are no longer enticed by TV broadcast and like the Youtube model more. Even a video-on-demand service would not fully cater to their needs because they are interested in the top 5 minutes of a show or gossip program, not the other 40.
In the Twitter-world we got accustomed to URL shorteners like: TinyURL, Bit.ly, Is.gd, etc. They take a long URL and make it short so it fits. What if a cable or IPTV provider would allow such URL shortening to be made for television programs?
TV Links
In search of a better word, let´s call them TV links. A TV link would be a short URL to a part of a television program that the viewer found interesting. By adding semantics to the part that is being linked, the viewer can provide information about what the TV link is about and why it caught his attention. Also automatically the program title and channel can be added from the public EPG.
Why would you need TV links?
A crowd of viewers that is watching all the hundreds of channels is filtering what is of interest to them and makes TV links to them. They can use the TV links to forward them to their friends on social networks. However by aggregating different TV links you can make social EPGs (electronic program guides). A social EPG is a collection of TV links that a group of viewers find interesting and often has a common theme or interest. Viewers that are under time pressure or from the Youtube generation can then easily pick the social EPG that most interests them and get all the content that peers with similar interests have preselected. Collective intelligence can be used to find those social EPGs that are more similar to your tastes.
The Social EPG technology
You would need to have a TV or set top box that allows applications to be executed while you watch television. Most Android systems can do this already. Via the TV link app, you would be able to indicate which part of a program you want to create a link for and how you want to tag it. Via the social EPG app you would be able to search for TV links and combine them into a social EPG. The SocialCast app allows you to find and watch social EPGs.
Cloud DVR (digital video recorders) would be needed to be able to rewind and play what was broadcasted in the past. These could either be provided by the cable or IPTV provider but could alternatively also be provided by the TV channel. At the moment TV is wasting a lot of content because each program is being aired and afterwards it disappears in the archives. By having social EPG and TV links this content could be repeated over and over again. Content from years back would all of a sudden get a totally new dimension because the cute little boy that was singing a song has grown into a major star. Fans would collect these TV links into their social fan EPG and post them on their Facebook Walls.
The business model
Having viewers aggregating content so special interest groups can take a look at it, is the ideal marketing vehicle for targeted publicity. The Social EPG for a music star will have publicity around the latest concerts and music downloads. A CSI Fans Social EPG will get you all the CSI merchandise via a single click. Car programs get car publicity.
Hollywood
I am pretty sure that some Hollywood executive would have some objective towards replaying content that was broadcasted before. So a revenue share for the content generators and producers should be part of the eco-system.
Does Google listen in when you use Google Voice?
The dotcoms of this world generate massive amounts of web server logs. Users upload files. Make comments. Vote on items. All this data is unstructured data. Google has just pushed the bar higher with their Google instant that is able to change almost instantly* their search results based on real-time data changes. Percolator is the real-time indexing that makes it all possible. Really impressive to see indexes change almost real-time for a company that moves daily 20 peta bytes of data [= almost 30.000.000 CDs].
So if Google is able to index all our web data, what about our voice and video data? Google Voice brought voice transcription to the general public. Voice transcription is based on machine learning. Every time a voicemail is incorrectly transcribed, users are able to “teach” Google how to do it right. This will make Google’s voice transcription quickly the best trained in the world. From there it is only a small step to also connect it to all Google Voice calls. Next step is to index what you say. Real-time indexing is key to interpret this vast amount of new content! So not only when you send a Gmail message talking about a trip you are planning to Paris, will you get advertisement from travel agents, but also when you talk to your friends about the trip.
Can Google go any further? Yes of course. Don’t forget Google Talk and Android. Two more sources to get voice data from. Google Talk can be used now. Android probably only if you use Google Talk or Google Voice on your mobile given the excessive data charges you would get if you would send “normal circuit” calls to Google.
Where are today’s limits of image recognition? Especially in videos? Taking a video with an Android phone and uploading it to Youtube could also mean that GPS data of where the video was taken could be included. Google Goggles ‘ technology could then find out what it is you were doing. Probably not possible today but let´s wait some months…
What this means is that Google will very likely be able to subsidize more customer services if you are willing to trade-in some extra privacy. “Free” calls and even video calls for Android will definitely set it apart from iPhones, Nokias, etc. Google would need to subsidize wholesale interconnects to other providers, which are not that bad compared to end-user prices. But could marketing dollars also subsidize a monthly data plan? If yes then Google could become an MVNO and offer free phone and data services. This would be a killer feature to subscribe to Google Voice on the mobile. Killer in both senses, but not the positive sense for operators…
Where does this leave operators? Again a piece of their voice and SMS pie will disappear. But also a large piece of monthly subscription fees. Today there is very few operators can do to defend themselves if they don’t change their own rules. Every operator that thinks their assets are sacred, RFQ’s will bring innovation and scalability is about writing a large check to Oracle, will likely suffer. Those that are willing to experiment with disruptive innovations and are open to discuss the previously unthinkable, still have a window of opportunity…
Note:
* There are delays between the time a page is updated and the new results being visible due to crawler and indexing delays so real-time indexing does not mean real-time search results.