US 8,090,732
Posted on | January 7, 2012 | No Comments
As I’ve commented previously, regardless of what we software types think of software patents, we all enjoy getting the type of junk mail depicted on the left in the mail. I received some of this “good” spam in the mail this afternoon. “How about a framed copy of your fresh patent on parchment paper with a Double Suede Matte background in a Kensington Frame? All yours for only $529, but hurry why the offer lasts”. Motorola used to give us a certificate mounted on cherry wood when we had patents granted (only $88 in the spam I have on my desk!) but now that I work at the University, I’ll have to settle for a title page printout from the PDF tacked up on my office tack board.
In any case, Google should like this addition to the rather interesting patent portfolio they stand to gain if their acquisition of Motorola Mobility goes through. US 8,090,732 is on collaborative searching. If interested, you can read the whole thing here. Since my former Motorola colleagues and I submitted this patent app in 2008, there have been some interesting developments in the area of collaborative social searching. For a good summary take a look at Marti Hearst’s article in the November 2011 issue of the CACM entitled “Natural Search User Interfaces“.
Patents are more fun to get than they are to write. The initial responses you get back from the patent office often leave you scratching your head and wondering if they actually really read your claims. When a patent actually gets granted you feel like somebody in the vast bureaucratic machine known as the USPO finally understood your idea, or at least you like to think they did.
Standing on the shoulders of giants
Posted on | October 14, 2011 | 1 Comment
I’ve always appreciated the tag line of Google Scholar: “Stand on the shoulders of giants”. Google itself is a giant in its own right. Yet the tagline helps remind us that the real giants behind the technological successes we all enjoy today are the original researchers whose discoveries and inventions have paved the way for Google and others to achieve their current heights.
October 2011 has become an unprecedented month for the tech industry. Within the space of a week or so it has lost some of its most significant giants. These events have not gone by unnoticed. Many users who turned to Twitter when they heard about Steve Jobs’ passing got the “Fail Whale” instead of tweet streams. The enormous attention his death has attracted is not at all surprising. Steve Jobs was indeed a giant who had a profound impact on all of us, whether you use Apple products or not. It’s important to realize that Job’s impact transcends the current generation of iPhones and iPads. He has taught us perhaps more than any one else, what constitutes a truly excellent technology product. By raising the bar in this way, he has done everybody a favor – his fans, his competitors, and even those of you still living on the dark side with your Windows computers. 😉
However, the tech industry has also lost a couple of other notable giants in recent days that have garnered far less attention. Nevertheless, these individuals have also made enormous contributions and are responsible in part for creating the stage onto which Steve Jobs climbed many years later.
For us computer science junkies, Dennis Ritchie was the “R” in the classic “K & R” C book that many of us learned to program from. He not only was the creator of the C programming language but also made significant contributions to the development of the UNIX operating system. C and UNIX became more and more influential over time. Adoption of these technologies began in the academic setting as AT&T gave UNIX away to universities. It is interesting to note that some years later, Apple computers also followed a similar path to success with an early focus on the education market. Today, almost every computer and smartphone embodies UNIX/C and/or the successors inspired by UNIX/C. For example, your iPhone is running Apple’s UNIX-based operating system, and the apps you have installed have been written in Objective C – a language based on C that was extended with object-oriented syntax. The 190 million Android smartphones Larry Page mentioned yesterday are all running Linux – an open source implementation of a UNIX-like operating system. The Linux kernel is written in C as are many of the lower level libraries and framework. Though Android apps are written in the popular Java programming language, Java’s C pedigree is also evident to programmers familiar with both languages.
Another tech industry giant who passed quietly from the scene this week is Bob Galvin, the man who led Motorola from being a car radio manufacturer to the wireless communication giant that played a large part in creating the modern mobile industry. Bob Galvin, the son of the original Motorola founder, Paul Galvin was every bit the quality obsessed visionary that Steve Job was in his own day. Galvin actually retired before my time at Motorola, though he was still active in the company when I first started in the early 1990’s. I recall actually meeting him on one occasion. Shortly after I joined the company my supervisor (Allan Willey) took me along with him to a meeting involving our CEO (Gary Tooker at the time). In the course of the meeting I noticed a person who I thought was unusually old sitting off to the side and looking rather bored. During a coffee break I casually asked Allan who the “old man” in the corner was and I remember him furiously whispering back “Shhh, that old man is Bob Galvin – chairman of the Board!” Though I did not initially recognize who Bob was when I saw him, I had been around Motorola long enough by then to realize that Bob Galvin was “the man” and held in extremely high regard by everyone. I heard many stories from my older colleagues about Bob which clearly indicated he was a man with great character and vision. He cared not just about the bottom line, but also the people who worked for him. Later when his son Chris became our CEO I felt some of those traits were passed down to the younger generation as well. Though I had very limited interaction with Chris, I do remember him coming by each year to our annual innovation fairs and spending a significant amount of time with those of us in research, taking in our technology prototypes, and interacting with us on a technical level. From my perspective he clearly understood the business, the technology, and really appreciated the technical people who it happen. In any case, without the early pioneering leadership of visionaries like Bob Galvin, there would not be a mobile industry today.
So what can we learn from these recent events? Obviously, the passing of others reminds us of our own mortality in a personal way. The death of anyone, famous or unknown should always give us pause and encourage us to spend time thinking about the deeper issues in life and death, why are we here, how much time do we have left, and what ought our priorities be? Time is a precious resource, and ought to be used as such (I hope my CS students have made it this far in my post…).
Another thing these particular events should remind us of is that behind every high profile success, there are likely a number of prerequisite contributions made earlier by other lesser known but no less important individuals. When possible, in the CS courses I teach I try to help my students develop a historical perspective on the subject we are studying. Every technology has its pedigree and I have observed that the student will appreciate and learn it more readily if they understand something of the minds and circumstances that gave it shape. For example, in the undergraduate systems programming course I teach, in my intro lecture I have a view graph on Dennis Ritchie, Ada Lovelace and others who historically have played an important role in programming as we know and practice it today.
Finally, these events should remind us to thank God daily for giving us a sufficient supply of amazingly gifted people like Steve Jobs, Dennis Ritchie, and Bob Galvin, so that the rest of us have the shoulders we need to stand on!
Free Books Online…. for GVSU Students!
Posted on | May 10, 2011 | 4 Comments
From my own long tenure as a college student living below the poverty level (~ 9+ years!) I always thought students were by default ingenious when it came to finding free food and other good deals. Thus, I frequently am surprised to discover soon to graduate School of Computing seniors and even graduate students (who are otherwise way smarter than their profs) who go to B&N or amazon.com and spend $20 – $40 on a recently published but soon to be obsolete O’Reilly or Apress book when they can read it online for free via the GVSU Library portal.
In GVSU’s fine tradition of sustainability and for the advancement of science, I’ve decided to post this short screencast tutorial. Note that this tutorial is for the GVSU community only. If you are not a current student or faculty member at GVSU you can get “free” access to the Safari Online Bookshelf by becoming a member of the Association of Computer Machinery.
The basic steps are as follows:
- Visit http://www.gvsu.com/library and enter the search term “safari”.
- Click on the link “Safari Technical Books” displayed right at the top of the search results.
- If you are off campus you will have to enter your GVSU network credentials.
- You should now be on the Safari Online Bookshelf portal authenticated via GVSU.
Note that while not every technical book you’ll want to read is available on this site, you’ll find plenty to keep you busy for a while. Pass it on, stop wasting your $$, hug a GVSU librarian, and start reading today!
5 mobile apps to take shopping
Posted on | November 26, 2010 | 1 Comment
If you have Black Friday off from work, my advice is to simply stay home and read a good book, interact with your kids or something else useful. If however, you are aching for a punishment and insist on pushing/shoving your way through crowded local retail venues, you might want to make sure you deck out your smart phone with the right shopping apps to help you survive the retail gauntlet that you will surely face. Here are five shopping-related smartphone apps that I think each offer something very unique and are worth trying out.
1. Shop Social: Ok, I’m a little biased when it comes this app. Shop Social developed by a team of CS graduate and undergraduates that I lead in GVSU’s Mobile Applications and Services Lab. We worked for almost a year on a shoestring budget and created an app that we think is rather unique in the retail smartphone app category. Just like most of the rest of the apps in this category it has a barcode scanner and is capable of retrieving product information on literally millions of products on store shelves around you.
However, that’s about all Shop Social app has in common with the rest of the pack. A key feature that Shop Social offers that is not available elsewhere is the ability to pull up rich media content on the products you scan – both videos and photos. While prices are obviously important when you are shopping, we think its also important to help the shopper immediately conceptualize the product, its potential, and relevance to the shopper’s perceived needs. If a picture is worth a thousand words, a video should be worth a few more! For example, let’s say you’ve heard about Wii Fit but aren’t sure exactly what it is or how it might work. Scan the product barcode when you encounter it in the store and immediately view YouTube videos of people using Wii Fit. So far, the video relevance varies by product and product category. For most consumer electronics and media/content related products the videos are almost always spot on. It doesn’t do bad in other product categories either, and it’s getting better every day. In addition to tweaking our own search heuristics (deployed in the cloud) we also incorporate usage data over time so as certain videos are more commonly viewed in a given product context, those videos start to make their way to the top of the list.
In addition to the rich media features, Shop Social is also tightly integrated with Facebook, offering you a sort of retail product related social dashboard where you and your friends can view and share each other’s product favorites/wishlist. You also have the expected features that might be expected with a Facebook integration (e.g., ability to post products, comments, product related video content to your Wall). However, the app will not post anything to your Facebook Wall without your explicit permission each and every time.
Finally, Shop Social supports a set of simple game mechanics that makes the experience a bit more fun and sticky. For example, scan your first product barcode, and bingo – you get a newbie badge! Share a few products or product videos on Facebook and you’re earning yet more badges. Visit a featured nearby store and interact with the app while you’re in the store and you get even more opportunities to out-badge your friends. This is an experimental app that we’re approaching from a learning/research perspective. We’re hoping to learn more about the potential of mobile technology in retail, and this is our first testing of the water. We’ve been quite pleased with the response the app has gotten so far, and hope you’ll give it a try as well. It’s available on both the iTunes App Store and the Android Market. Just search for “Shop Social” and it should show up right on top.
2. ShopSavvy. In my opinion, ShopSavvy is the gold standard when it comes to barcode scanning smartphone apps. It has been a highly popular app on both iPhone and Android phones for quite a while now. ShopSavvy’s key feature is price comparison. You scan a product’s barcode and ShopSavvy does a magnificent job of finding just about every purchase opportunity you have for that product both online as well as in nearby bricks and mortar retail stores. ShopSavvy is so popular that I’m told some retailers will actually honor “competitor” prices if you show them the info that ShopSavvy retrieves when you scan the product’s UPC. I haven’t tried that myself, but in any case being well-informed before you purchase is good way to save yourself $$. In addition to prices, ShopSavvy does a great job of pulling down product reviews. The app also let’s you share product finds via Facebook, etc. In my opinion, the ShopSavvy barcode reading technology is the best available. We liked it so much that we licensed it for the iPhone version of our Shop Social app that was described above. If I was allowed to have only one barcode scanning app on my phone, ShopSavvy would be my first choice.
3. shopkick. When it comes to turning shopping into a game, shopkick wins hands down. Just recently, shopkick became available in the Android Market, so now all you droiders can play as well. Our experience thus far has been with the iPhone version. Basically you head off to partner stores (currently that includes Best Buy, Target, and others) and earn points (called kickbucks) automatically by simply walking in. You can garner additional kickbucks by scanning specific products. But wait a second, it’s not just about leveling up! Kickbucks can actually be redeemed in the form of mobile coupons, Facebook credits, and no doubt additional goodies each every day that save you real $$. The app’s user interface is well done and overall this is a great example of what can be done with mobile in a retail setting. If you are less interested in fun and earning coupons and more interested in finding information about products shopkick might not be what you are working for. The last I tried you can only scan a limited number of products that the app features.
4. Barcode Hero: We just became aware of Barcode Hero recently. The app is sort of a barcode scanner meets social graph experience. As you go around an scan/recommend products your activities get shared with other users who are using the app. Scan a product and you can see who else has recommended or owns it. In addition, the app also incorporates game mechanics. For example, when you scan a number of products of a particular category you can be come “duke” of that category. So, if you’re itching to become the “Queen” of “Home and Garden Features”, than this is the app you’ve been looking for! The app is generally well done. I like the user interface, and I think the idea of turning barcode scans and product likes into an activity stream and mapping it to social graphs is a good one. One potential concern I have is that by default everything you do is made public in the app and on their site. While that app makes that quite clear I sure hope folks buying gifts for friends and family also using app realize the app might be inadvertently spilling the beans! Barcode Hero is available on the iPhone and according to their website will be showing up on Android soon.
5. Meijer Find-it: This app will be of less interest to readers who are not located in here in the great midwest. However, I include it on my list for a couple of reasons. First, Meijer (a regional retail chain) is headquartered here in West Michigan and I’m fond of plugging all things “locally grown”! Second, and perhaps more important, this app marks a fairly significant step towards the future of retail in that it’s the first generally available retailer-branded smartphone app I am aware of that supports indoor-positioning technology. That said, the deployment is limited at this point and appears to be more of a pilot. The last I looked the in-store positioning feature was only available in some of the Grand Rapids, MI area Meijer stores. The app is based on Point Inside’s positioning platform. I had prior experience using Point Inside’s own app that provides maps and indoor positioning for malls and airports and found that app fairly useful in a variety of situations – especially when trying to quickly find the gate to my connecting flight with a tight time budget. I visited the Grandville Meijer store back in October and gave the app a try myself. Just for fun, I used it to try to locate the products in-store that the shopkick app promised me points for scanning. For the most part, the app did an uncanny job of pinpointing the products’ location on the store layout diagram, and I soon leveled up in the shopkick experience. 🙂 The two areas I had difficulty with were 1) during the evening that I was there the positioning technology didn’t work very well at all, it kept putting me out on the front curb. 2) It was difficult to search for a product. If I entered a more generic search term it seemed like hundreds of results showed up and there were no thumbnails to guide me to the specific product I had in mind. One thing that worked very well in the Meijer store was that I had excellent signal on my iPhone the entire time. One of the big issues I have with all the above apps is that often my signal strength is a single bar or non-existent when I’m inside many retail venues. Not so in Meijer’s Grandville store. I don’t know if they’ve simply got luck or if they actually have deployed signal boosting technologies in store, but this is definitely an area retailers needs to be thinking about as in-store smartphone usage continues to grow. All in all, Meijer Find-it is a step in the right direction and I hope it will eventually be available in all of their locations.
So these are my top 5 choices for mobile shopping apps. There are definitely other apps in this category worthy of mention including Red Laser, myShopanion, CheckPoints, etc. But this article is long enough already! What smartphone app(s) do you take shoppping?
Our Android tutorial now on iTunes U
Posted on | October 12, 2010 | 3 Comments
My good friend and colleague Hans Dulimarta and I recently gave a tutorial entitled “Developing Android Applications” at a conference. It’s an introduction to the Android platform, and the only assumption we make is that you already have a working knowledge of Java. You can find an outline, sample source, viewgraphs, and links to the videos on iTunes U over on our lab website.
It was a lot of fun putting this together, and we hope you find it useful. Enjoy!