April 26, 2006
Early last month, I developed and posted what I think is the coolest Ajax UI ever. Dan Cornish pointed out that Comet is another related technology taking root.
I needed some “warm up” material for my introductory remarks for our technology day at our xAAS forum today, so I expanded the Ajax UI so that it now sits on Comet (and a stove 🙂 making it a pretty hot Ajax on Comet UI. Take a look here.
I also inserted a soap interface here. It was a little unstable at first, given the soap container was a little too flexible 🙂
April 25, 2006
ASP, ISP, MSP, xSP, SAAS, Web 2.0, On-Demand, service bureau, business service, Internet service, service utility, data service, web service, service oriented, video on-demand, "salesforce.com for (fill in the blank)", mash-ups, composite applications, technology-enabled outsources service, blah blah blah…
We recently had to sort through all of these terms to try and decide how to title a forum. Since we settled on a B2B focus, we decided to call it a On-Demand/SAAS Forum, which seem to be the most appropriate "tags" in use today.
The process pointed out a real flaw in the current vocabulary for describing newer approaches for offering valuable products to consumers and businesses with as little installation/configuration/integration/maintenance/use headaches as possible (that's what it is all about, isn't it?).
The forum led to my rethinking the tag for the introductory presentation at the forum. Perhaps a better tag for the service is xAAS (pronounced zass).
Here is the 2 minute presentation posted as a YouTube Video…let me know your thoughts…
Update: Tien Tzuo, SVP of Strategy at Salesforce.com, pointed out that the presentation style I used was of the Lawrence Lessig style. I didn't realize it had a name, but I had seen and loved Dick Hardt's Identity 2.0 presentation using the style. I have also met Dick a couple of times and have a lot of time for both him and his ideas…
March 22, 2006
I spent the last couple of days at the Microsoft Mix Conference. In a nutshell, they get it and are coming on strong.
What is new (besides the new healthier snacks and lack of Microsoft Backpacks) is that the competition and market results from companies like Google and Salesforce.com has unlocked the latent innovation potential from Microsoft and they are currently going through an extreme cycle of innovation (they have always had a very large group of very talented people, but, like all other companies, need the outside competition to drive the innovation).
Yes, there is still lots of vapor, but that doesn’t bother me at all. The fact that the entire platform (operating system, browser, Windows Presentation Foundation [guys, please get a better name, Avalon was a lot better!!], new design/development tools, Office etc.) is going through the innovation cycle all at once gives Microsoft a huge opportunity to string together a set of products that, together, will offer their customers a significant, new new platform. I was at the Microsoft PDC when they started pushing .NET, and my sense is that this new new push is going to be even better…
Vista is late (already predicted) and the rest of the products will probably be late as well…it doesn’t matter. When they do come out, they are going to be awesome, low cost, work together, and offer ISVs and continue to offer innovators a platform with great tools to increase development productivity while offering end-users a user experience that is an order of magnitude better than the current experience. (My view is that Microsoft should delay the products as long as possible and make sure that they meet the bar that they have set for themselves…nothing but upside in taking this approach).
What to look for:
– New operating system– Vista is now delayed until January ’07, but it is an awesome operating system. While I will continue to work primarily off of my Apple laptop (I like the entire product including its operating system), I will also buy a new Vista machine and will continue to run Microsoft in the office.
– Flash-times-100 presentation platform– Windows Presentation Foundation (formerly Avalon) is a bad name, but great product. Essentially, Microsoft is building a platform that will work on Microsoft products AND on other products (at least this is the vision). Assuming it works (I think it will), this presentation foundation is going to change the user experience by an order of magnitude (possibly 2 orders of magnitude). It will take a while to get user adoption (and it will probably strain the bandwidth of internet connections), but they demonstrated the product working using Firefox (my preferred browser), Safari (not sure why, as this product shouldn’t exist), the new IE7, and native Microsoft executables on the Vista operating system. Everything blew my hair back.
– New Browser– IE7 has some great new ideas built into it. Since they no longer support Apple, I won’t be using it, but I do like to see the competition between Microsoft and Mozilla, as it keeps both of them innovating!
– New “Development” tools– Expressions is actually three products that brings design aspects of the development process into the Visual Studio development platform (note: others would say that these are designer productivity tools, but my view is that Expressions is the missing link that FINALLY fixes the interface gap between the user experience and the back end development…this should be a HUGE advantage for development productivity).
Have I been drinking too much cool-aid? Possibly, but the fact is that I think the New New Microsoft offers a huge advantage to people who make software, whether it is installed on the user’ machines or offered on-demand. I will continue to push to have my portfolio companies actively consider it and I think the new products will make the benefits that much better over the next few years.
End-note: In case it is not clear, I am also a huge fan of point solutions, open source, and other platforms (I particularly like Apple for my platform and use an Apple laptop exclusively at this point (with a built-in Verizon card)…I am looking forward to a product that will allow me to run Vista and OSX on an Apple/Intel laptop and my sources tell me at least one product will be coming out this year. My strong belief is that these other products and services have helped Microsoft get its creative juices going again AND Microsoft helps get the rest of the ecosystem’s creative juices going.
March 5, 2006
With the recent snow in Boston (some of which is still around) I found the time to build the coolest AJAX UI that I have ever seen. Some of the characteristics of it:
- Built 100% with off-the shelf AJAX components (7 in total)
- Each component is fully encapsulated with an off-the-shelf wrapper
- The interfaces between the components were so simple, I only needed to literally place each component (they were designed to be stackable).
- The total cost of the components was $8.41 (U.S.) and I had a few components, included in that price, that turned out not to be necessary to use.
- The only real trick to the entire exercise was getting the foundation stable enough to stack the components on top. I found that the initial foundation caused the components to crash, but with a few minutes of configuration adjustments the foundation was completely stable.
- I tweaked the alignment of the stack to try to get to optimal alignment. I could probably have spent a little more time perfecting the alignment, but the UI still looks very good.
Take a look at the UI here. It is extremely intuitive and you do not have to be familiar with AJAX to get an appreciation for the construction technique.
I think that you will agree that this is the coolest AJAX UI ever!
February 5, 2006
Recently, I wrote a post on the issue of the computer screen size as my personal issue with the truly portable device formats. Today’s Boston Globe article “The next big thing: Tiny screens, way up close” made me connect the dots on a few developments that I believe will give us a new portable computing platform, the Wearable Internet, (at least for early adopters) within the next 2-3 years (perhaps sooner, as it is hard to give a point estimate).
Much has been written and discussed about wearable computers over the years (example here and some additional resources here), but until now it has been just a futuristic vision for me. The Globe article, along with some other recent experiences, has made it clear that some combination of companies will be coming out with a practical set of devices sooner than I would have previously thought.
The Components for the Wearable Internet…
From my vantage point, there are several components necessary for a truly wearable experience. Each is getting VERY close or is already here:
1. The wearable screen. I have investigated wearable screens a few times over the last 25 years, and each time have come to the conclusion that there is more work to do (the big issues are price, size, quality, and battery life). The Globe article made me realize that the advances in wearable screens are accelerating and that the move toward portable video (ala the Video Ipod) might help the innovators put more resources against getting there more quickly. (this is probably the single component that will determine how quickly the new platform becomes truly practical, at least for me). My sense is that I still will need a wired connection to the central processor for video, but, even if this is right, it is not an issue with making a practical wearable computer.
2. The wireless keyboard. I have had a wireless keyboard for several years now, so this is really a no brainer. My new Xbox 360 wireless controls also has reminded me that the wireless input device technology has no issues at this point. It seems to me that some combination of “thumb keyboards” and full size keyboards would be useful for several situations, although there are lots of possibly great developments that could lead to much better finger/hand input for the wearable computer. Allowing the Treo, Blackberry, or other PDA keyboard to communicate directly with the central processor would be useful.
3. The central processor. Again, already here in a lot of ways, although the power of the truly wearable computers is not to the level I would like (I don’t want a PDA connected to the Internet, but rather a fully functional laptop, perhaps without the DVD slot). I built a wearable computer for a master’s thesis 21 years ago with the then available technology, so there is no doubt in my mind that a manufacturer can take the current chip sets and put them into a smaller battery powered bundle (without a keyboard or screen…similar to the Mac Mini in concept). Worst case, I can use my laptop in my briefcase as the central processor, although it would not give me the geographic range that I am looking for longer term.
4. The Internet connection. I use a card in my laptop with a Verizon Internet service that costs about $60 per month for unlimited use. It works beautifully (Brad Feld and Robert Scoble have had similar experiences, Robert with Cingular). Manufacturers are already working on building the cards into the computers, so again no issues with easily getting a combination of Verizon and Wifi connection, depending on location (perhaps Wimax will come along as well, but the technology is here already and works great).
Other peripheral technologies such as location, voice I/O, and image capture are equally well developed, so there do not seem to be any issues standing in the way of this platform becoming a reality other than some straightforward engineering and getting to a set of components that are relatively easy to mix together to create the wearable bundle that most suits the user.
As with anything, there are many possible paths to getting here. One practical path is that the wearable screens continue to evolve (pushed by video players) and eventually people like me start hooking them along with a bluetooth keyboard and Verizon internet service into our laptops (the laptops then stay in the briefcase). Then, one of the laptop manufacturers (Apple, perhaps) comes out with a “wearable laptop” that is essentially a laptop without the screen, keyboard, or DVD slot, and includes a built in Verizon card)…it only takes off from there!
An alternative (parallel?) path is for users to start connecting the wearable screens to their PDAs and/or Ipods and for the PDAs to continue to evolve in processing power and internet connectivity until the laptops and PDAs converge into one.
Lots of other possible paths, but these two seem the most logical to me, at least at this point.
What are you going to do about it?
Ed Sim reminded us recently that “A great hockey player plays where the puck is going to be.” If this is where the platform is going to be, where are you going to be?
January 16, 2006
This is a summary of my series on Opening up the Search Tech Chain. The major point is that opening up the search technology model will have some great effects on all of the possible innovations around the model. The post the opening of the search tech chain discusses my argument for the opening up of the tech value chain and links to some other bloggers thoughts and resources on OpenSearch and the opening of the Alexa A9 search engine platform for others to innovate on.
Just so that I am clear on the abundance of innovation opportunities related to search, I have several posts that describe some opportunities for innovators. The ideas overall can be applied to text, images, audio, or video, each of which has its own issues and opportunities.
- Every site needs to expose its APIs. Open APIs would be a huge opportunity to improve search, even with today’s search technologies.
- Lots of innovation potential in micropayments. While the ecosystem could get started without a micropayments infrastructure, these issues will need to get worked out.
- Mashups will be a lot more interesting with the new APIs. In my view, the mashups for the end users are the most exciting innovations (but probably not the most difficult). I lay out my thoughts on the potential for mashups in this post.
- Help me find what I am looking for. The matching of search intent to search results works okay today, but there are lots of improvement opportunities.
- Some thoughts on improving tagging. The social tagging sites have changed my use of the internet in tremendous ways. I point out some of the improvements to the tagging that I would like to see in this post.
- Put more features in feature vectors. We need to move beyond exact word search into many new approaches to finding what we are looking for. The posts start getting a little more technical here with the ideas on creating and exposing larger feature vectors.
- Machine Learning as a Web Service. Machine learning is one of developments on the internet that will change things dramatically for the users (and will offer some great economic results to the winners). This post outlines some thoughts on how it might be achieved as a web service.
- Machine Extraction. Finally, turning unstructured unlinked data into structured and linked data is unbelieveably difficult but very powerful stuff. This post gives an example and outlines some other rough thoughts on the topic.
I am sure that I have missed lots of opportunities for innovation in search, but this list is still very long and hopefully demonstrates the point that there is a lot to do! If I have any other ideas worth posting, I will post them and link to them here. Please also comment if there are other ideas or resources that are valuable to this list.
Following up my post on the opening of the search tech chain, the eighth opportunity that I see is with machine extraction and, even better, “linking” material from machine extraction. While this is really a subset of machine learning, the concept is different enough to discuss separately. The basic idea is how can you extract information from the web and put it into a more structured and, more importantly, accurate form. Then, how can you infer the relationships between the data elements that you have extracted.
A good example of a company related to this field is zoom info. Their tag line is “the search engine for discovering people, companies, and relationships.” I typed my name in to see what they had on me, and the list of information that they were able to extract and put together was very complete (I saw one error, as they matched me with an Insight Ventures that has a confusingly similar name to my firm. Hard to take that away from them, however). Pretty impressive stuff!
It seems to me that machine extraction and building relationships is an important part of finding non-explicit links between entities (people, places, and things) as well as compiling information on those entities. The web has a lot of resources (URIs) that help describe the entities, but Machine Extraction along with other Machine Learning techniques may be what is necessary to help push forward with Tim Berners-Lee’s vision for the Semantic Web (a very powerful concept).
I would put this in the category of VERY advanced search with an HUGE amount of innovation potential!
Following up my post on the opening of the search tech chain, the seventh opportunity that I see is with machine learning of various kinds. If you are not familiar with machine learning, take a look at Tom Mitchell’s book on the topic (funny, when I punched “machine learning” into Google, the first entry was an advertisement from Google asking “Want to work at Google?”)
This topic gets deep and broad very fast. I have put a lot of time into it over the years (starting with some credit card behavioral modeling in the early ’90s), but even with all the research I have done, I know only enough to be dangerous. Machine learning is relatively technical and relatively difficult to get exactly right (lots of math, CS, and art here).
I do, however, have a few non-technical thoughts on the topic:
What I would use it for…
Machine learning can be used for an amazing number of things (too many to describe here and many, many that I have not even considered). With respect to search (and assuming that all of my improvement ideas so far have had some level of development), innovators could create the following (and much more):
- Propose tags for me on the social tagging (as I requested in an earlier post on tagging).
- Given a set of resources (a.k.a., webpages, URIs), find resources that are similar (the find similar buttons on the search engines are really quite bad at this point. The approach that I would test would be asking the user what “dimensions” of similarity the user is looking for and then find everything similar. Note that the approach would use the feature vectors and models from the machine learning algorithms.
- Automatically update my Ajax desktop pico-domain. There is refresh work that would need to be done in addition to the machine learning, but I should be able to develop algorithms that help me to quickly find and update resources in my domain-specific site.
These are just a few of the list of examples that solid machine learning can do. Clearly, it is not perfect, so I will still need to have some manual activity to sort through some bad results, particularly at the beginning. But, the machine learning will save me a lot of time.
An innovative service…
The problem is that building good machine learning models is a time intensive task that starts with creating a model building environment. While many of the large companies appear to be doing just this, most smaller companies are standing flat footed in this area, due to lack of understanding, resources, and skills.
So, how about an innovative On-demand (SAAS) service as an offering in this area from a company that has the skills (generally now operating as professional services groups)? Most internet services could use machine learning of one kind or another, but they do not have the resources/skills to set up the model development environment. The service could be helpful with code that helps create feature vectors (and other machine learning inputs), recommend modeling approaches for the particular class of problems, walk the user through the model building process, and back test the models. Finally, it could deliver the code for the models or, possibly, even implement the models on its own systems as an ongoing service.
Since the inputs are all available via the Internet and there is a lot of work in the set-up of the model building environment, this innovation lends itself pretty nicely to be set up as an internet based service.
Given that the process still has a fair amount of art in it, the service could also offer up expert model building advisors to its customers.
If some innovators do not move in this direction for the community at large to share, this will become a major area of strategic advantage for the larger companies over the next few years. Perhaps Alexa (or another innovator) will move in this direction for the benefit of many?
Huge amount of innovation potential here!
Following up my post on the opening of the search tech chain, the next few opportunities start getting slightly more technical. The sixth opportunity that I see is with more useful features in the search feature vectors and the mathematical combination of entries in those vectors.
Briefly, the current features that I can use to extract resources in the major search engines are word-based where each resource can be retrieved based on a series of words. (Note that this is not completely accurate, as there are a few other features that could be searched on such as language, file format, date of update, and domain suffix but the vast majority of the entries in the vector currently represent words).
Some Ideas (aimed at the search engines):
- How about giving me a few more features to search on? For example, search engines seem to be storing away bolded and highlighted words to use in their prioritization schemes. How about exposing some of them so I can use them in a basic (or more advanced) search?
- More advanced, give me the access to a large number of features that you are not already calculating, but should be (maybe you are already?). For example, I am always searching for interesting new technology product companies. Most of them have a tab-based link on their home page that says “product” (sometimes plural, but the stem is fine). How about a calculated feature that I can search on? This is one of a huge number of possible features.
- Even better, let me make my own features calculations with some tools that you provide and you execute them and store them on your systems!
- Just as important as the exposure to features, I would like to have the ability to make calculations off of the features and store them in your system. This will allow me to create some machine learning models (at a higher, concept level) and make the calculations in advance of my searches. (I will reduce the load on the systems by only uses specific features through this method, as I will use my composite variable for the resource extraction). This will also give me the ability to store some very advanced searches AND some of my schemes for prioritizing results. If you are really generous, you would allow me to make the calculations through the API as well.
I think Alexa already allows me to do this with its open platform, but I have not studied it enough at this point.
The net result is that I should be able to do some really interesting things with the information, especially if the other components of the open platform are in place (prior posts). The Amazon Camera Image search is one good example of what is possible (even if this does not interest you from a user standpoint, the search ability is amazingly specific).
Following up my post on the opening of the search tech chain, the fifth opportunity that I see is with improved tagging. (While tagging may not be thought of in a traditional search sense, the reason for tags is to find things, so I include it here.)
The basic issue is that, while I love the tagging sites, I suck at tagging. When I find a site that I like, I would like to remember it, so I tag it and put it on Delicious or Wink, right? Well, it doesn’t work very well for me for several reasons. First, I have a hard time thinking about the tags that I should have. Second, I have a hard time remembering my tags. Third, the thought pattern that I have at the time of tagging is usually different than the thought pattern that I have at the time of retrieval. Fourth, the semantic meaning of one person’s tags can be very different than another person’s tags. Finally, those tag clouds definitely were not build with me in mind (they are attractive in an artistic way, but hard to use).
The net net of it is that a given resource ends up being tagged more generally rather than specifically, gets tagged based on a thought at the time of tagging, and gets tagged in a subset of all possible tags. This causes all sorts of retrieval problems.
Some thoughts on improvements to tagging:
- Bare minimum, when I find a resource that I want to tag, let me know what others have tagged it and let me tick off the tags that I want to use for it.
- Allow users to put together tag trees (already starting to happen. Wordrpess, for example, allows me to nest categories to two levels) that allow the tagger and the reader to better understand how a given tag fits into the world (as a side note, everyone knows that single taxonomy trees suck, but facited tree taxonomies are in my view the ultimate approach which is effectively this point. In my view, there can be lots of different overlapping trees that change over time, which allows for the “messy” world to be described better.)
- Allow users to create tag trees that can be used by other users.
- Use machine learning to propose possible trees and tags at the time of tagging of a resource AND to propose trees and tags to the user at the time of search/retrieval.
- I am not sure the answer to the tag clouds, especially if others like them. perhaps a more organized way of representing how tags or trees relate would be helpful?
Again, there is an enormous amount of innovation potential here…