Archive

Posts Tagged ‘android’

Ford: An API to Your Car

January 11, 2013 Leave a comment

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

March 20, 2012 1 comment

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

January 26, 2012 Leave a comment

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

Facebook

  • 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

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.

LinkedIn

  • 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
  • Indexing engine for IndexTank and API, BackOffice, Storefront, and Nebulizer for IndexTank  
  • 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

How to avoid becoming a bad Amazon-clone when doing IaaS?

February 17, 2011 Leave a comment

In previous posts I already expressed my doubt about telecom operators getting any real benefits from offering virtual servers and other IaaS aspects to their customers. It looks like “a 2000 déjà vu” in which operators started to offer hosted email after Yahoo and other showed them the way…

So if you don’t want to be a bad clone of Amazon AWS what can you do?

Alternative 1: The Mobile IaaS

Operators are all about mobile communication. However creating mobile applications is hard. Testing them is even harder. Let alone testing them on different hand-sets in a continuous automated testing approach.

This is exactly the type of services that a mobile operator can offer:

  1. Mobile hardware virtualization – instead of virtualizing an x86, why not virtualize the phone hardware, e.g. Nvidia Tigra2. A mobile operating system (MOS) developer could choose which hardware to virtualize: the amount of ram, which sensors, which CPU, which graphics card, etc. Afterwards different flavors of operating systems can be ran on this hardware: iOS, Android, Blackberry OS, Symbian, Windows Phone 7, etc.
  2. Mobile operating system virtualization – For less experienced developers they can already pick a pre-configured phone, e.g. iPhone 4. Afterwards a developer can launch applications on the phone.
  3. Automated mobile phone testing – After installing the application on the phone or using the build in browser to access a remote application, a developer should be able to run automated tests. This would allow for a continuous testing approach whereby a new version of a mobile app or an HTML5 application can be automatically tested by a whole set of mobile devices.

The business model would be the same as virtual servers: you pay by the hour.

Alternative 2: Telecom Infrastructure as a Service

Why not offer telecom infrastructure as a service instead of pure virtual servers? Admitted, the boundry between IaaS, PaaS and SaaS might be thin but ideas can be the following:

  • Billing as a Service: this can go from offering a complete billing system as a service to MVNOs or other industries that need real-time billing capabilities. To the other extreme whereby you would only offer APIs for partners and developers to charge.
  • Numbering Plan as a Service: more then just offering DIDs, you should be able to create services and associate them to a number formed by shortcode+mobile phone+app id => 12367012345601 => calling this number would forward the call to the application 01 belonging to the mobile subscriber 670123456 and 123 means the owner pays the call. 234 could mean caller pays. 345 could mean caller pays premium call and gives revenue share to owner. This could allow every subscriber to have multiple applications without having to pay €1-€5 for a virtual phone number.

Alternative 3: Mobile Development IaaS

Different from the mobile IaaS in the sense that we focus on facilitating the development and hosting of applications for mobiles. Developers would find tools to develop mobile application interfaces very easily. You write it once and run it on a large set of different mobile devices. Services like mobile push notification, device detection, charging, etc. should also be available. Also the hosting is optimized for mobile applications in which you have very strict low-latency and unreliable connectivity requirements.

Alternative 4: Beat Amazon AWS at Bootstrapping, Configuration Management, and other cloud operation automatization

If you are going to offer virtual servers, focus enormously on the bootstrapping and configuration management. Amazon and others have virtual images that allow a quick deployment of an existing configuration. However that is good if your application is stable and your software stack needs few modifications. Real-life applications and business solutions need a lot more flexibility. Setting up a database cluster, a webserver/proxy/memcache farm, a high-availability loadbalancer, an application server cluster, etc. are very manual tasks on most public clouds. True you can get an image with an apache, tomcat and mysql pre-configured, but you do not get a multi-node cluster image. To solve this you could use software like Chef or Puppet for provisioning and ControlTier or Capistrano for command & control. See my other blog post

Alternative 5: Be the Salesforce for Telecom & Mobile Applications

This is more PaaS then SaaS but being a Telco PaaS in which in a Salesforce.com style you can use Web 2.0 and drag-and-drop to create mobile and telecom applications. Instead of having to code, people can create application via visual designers.

Alternative 6: No.de/Heroku/etc. alternative for quick web & mobile front-ends combined with custom protocols and on-site systems

No.de is PaaS for applications written in Node.js a javascript language that allows for massively scalable applications to be quickly developed.

Heroku is a PaaS for Ruby applications.

These are language specific PaaS that are similar to Google App Engine (GAE).  Where GAE allows Java and Python, No.de has Javascript and Heroku has Ruby. Developers can very easily create applications. However GAE falls short writing front-end applications: Web GUI/Mobile HTML5 quickly. Also integration with non-HTTP protocols is not offered. Although the Internet lets you believe HTTP and FTP are the only protocols out there, there are literally thousands of binary, alternative standards and proprietary systems that large enterprises can not do without. Examples in the telecom industry are RTSP, SS7, etc.  If you can combine the speed of developing modern front-end together with the integration with legacy systems, binary protocols, on-site systems, etc. then you can have a large advantage when corporations want to move their back-office to the cloud.

Alternative 7: The Zoho/37 Signals for Telecom Applications

Zoho and 37 Signals are companies specialized in creating one-purpose mini applications for small and medium enterprises. Instead of a Siebel, Zoho will give you a basic CRM that works out of the box and has virtually no learning curve.

Zoho allows others to build applications on their infrastructure as well and resell them.

The same concept could be applied to telecom. Mini telecom applications like a PBX in the Cloud, SMS marketing, etc. are build on a common infrastructure. Externals can extend the application portfolio and resell them.

Alternative 8: Hosted PaaS

Instead of offering PaaS you offer a hosted PaaS infrastructure for enterprises. Each enterprise gets their own PaaS. Companies like Longjump and WSO2 are in this market. Be sure to add in some telecom assets…

Social EPG, Semantics and how BroadCast becomes SocialCast

October 20, 2010 Leave a comment

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?

October 15, 2010 Leave a comment

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.

Follow

Get every new post delivered to your Inbox.

Join 274 other followers

%d bloggers like this: