Log in

View Full Version : Making Software Smarter


Robert Levy
02-14-2004, 07:12 AM
Anyone else out there notice the subtle change in the <a href="http://toolbar.google.com/">Google Toolbar</a> today? They replaced their logo, the background of the textbox, and the "Search" button with a Valentine's Day them. At first glance this is a just a "oh that's interesting" kind of thing (and there are surely some people who find it annoying) but to a geek like me it is a sign of much more... it is a primitive step down the path of software becoming smarter. And more importantly, it's prompted me to post this rant...<br /><br /><img src="http://www.smartphonethoughts.com/images/vday.JPG" alt="User submitted image" title="User submitted image"/> <br /><br />When someone talks about software being "smarter" there are really two things they could mean. The first is making software that can do more in less time. The second is making software that can integrate itself seamlessly into the user's life - their life <i>outside</i> of the software. Most of the software ever written has the first in mind. <br /><br />The past few decades have been all about this idea that computers should let you do more and do it faster. The industry as a whole has done a good job of meeting that goal. Now it's time for phase 2 of smart computing. I want my computers (desktop and handheld) to understand me, my lifestyle, what I'm currently doing, and how I want to do it. I want my computer to figure this out on it's own - I shouldn't have to tell every app every time my goals or circumstances change. <br /><br />Here's an example: Outlook and Internet Explorer each have a "Work Offline" menu option. It's bad enough that they need this menu option - my computer should <i>know</i> when it's offline. What's worse is that these two apps don't interact with each other (setting Outlook to work offline does not automatically set IE to work offline).<br /><br />The future of software is all about integration. Software integrating with other software and, more importantly, software integrating with it's user. Here's a good example of where this kind of integration has been done well: if you set your Smartphone's profile to "automatic", it will keep tabs on your calendar and (based on whether or not you are currently scheduled to be in a meeting) switch between ringing and vibrating. But even this isn't perfect yet... If you're in a boring meeting and decide to play a game, the game isn't smart enough to realize what's going on and is quite likely to start making loud noises. This significantly hurts your relationship with both the software and with your co-workers. All because the software didn't integrate itself into the rest of my life.<br /><br />Of course, this isn't really the fault of 3rd party software developers. The operating system pretty much determines how much they can do. And right now <i>no</i> operating system (desktop or handheld) makes it as easy as it should be for software to achieve this new level of intelligence.<br /><br />We are changing that in Windows Mobile. This platform in particular is all about smart, personal devices so it only makes sense for Microsoft and 3rd party developers to work together on <a href="http://www.smartphonethoughts.com/forums/viewtopic.php?t=4277">making the devices smarter</a> and <a href="http://www.smartphonethoughts.com/forums/viewtopic.php?t=4281">more personal</a>. So what exactly are we (Microsoft) working on to enable developers to do this? Come to <a href="http://www.microsoftmdc.com">MDC</a> and find out first hand.<br /><br />What are your favorite examples of software being smart?

pdantic
02-14-2004, 06:31 PM
Hmmm....it must not be TOO smart, as my Google toolbar is still the plain old ugly bar I see every day! :pukeface:

Seriously, though - one thing I find to be a huge help is the Autofill function provided by Google toolbar and other browsers (Safari on the Mac, for example). Even though it doesn't fill out forms correctly 100% of the time, it does enough to keep me from having to re-type every line when I'm filling out an online form. Since I've been using browsers in one form or another for 10 years, I appreciate the fact that they've become "smarter" as time goes by...

rbrome
02-14-2004, 10:54 PM
Hmm - my Google toolbar is still plain, too...

But in general, I agree that certain types of intelligence are badly needed in software.

But it can definitely be too smart, or at least fail at being very smart. Remember clippy? Definitely too smart for his own good, or never smart in ways that helped me.

There's nothing more frustrating than when software tries to be smart, and intervenes when it shouldn't. My device should never think it's smarter than me. :wink:

Specifically, if it wants to intervene and take action unprompted, it should ask first. Also, certain types of "intelligence" should be optional. If I have some unusual way I use my devices, that the "intelligence" wasn't designed for, I should be able to switch to manual mode permanently. And the manual controls should still be easy to use. Intelligence should never be a replecement for a good user interface - you should always have both.

In general, most "intelligence" features I have seen recently obey these principles, but not all.

Kris Kumar
02-15-2004, 01:23 AM
Thing that is not Smart about my Smartphone 2002 (hopefully its fixed in 2003, someone can verify)

- I put the phone in Airplane Mode. Email app still tries to check for new mails. And I get that annoying message box "error connecting, network unavailable...blahblah". Worse, I have the phone key pad locked. I pull my phone out to check time, and I have to unlock the phone, clear the mesg box, then check the time, and lock the phone again.

- Again to do with Email App being unaware of network availability. I think if the signal is poor, below one bar (some threshold). It should not try auto-sync (this can be user configurable).

- When I am in the middle of the voice call, why does the mail program try to connect to internet to check for email, and show me that annoying error connecting mesg box.

Hey..sorry if you guys think I am hung up on the email app and network connection. But after a while it becomes frustrating, that your phone is not so smart.

ClayMJohnson
02-15-2004, 04:25 PM
I want my computers (desktop and handheld) to understand me, my lifestyle, what I'm currently doing, and how I want to do it. I want my computer to figure this out on it's own - I shouldn't have to tell every app every time my goals or circumstances change.
I completely agree with this! What can be done to start solving this? First LBS will give this area a boost because it will allow the mobile device to learn your patterns by what areas you work and live in and places you visit. Second, Smart Agents (on some server) that learns your patterns and does tasks automatically. This could be tied into LBS or could not be. For example, let’s say you check the traffic everyday at 5:00 pm. The agent would learn this and automatically send you an alert. Or one tied to LBS …. Let’s say I am lawyer and the courthouse does not allow phones to ring inside the building. I enter the GPS coordinates of the courthouse, so when I get close my phone automatically switches to some pre-defined profile (vibrate mode). When I leave it switches back. Of course there are many more examples.


The future of software is all about integration. Software integrating with other software and, more importantly, software integrating with it's user.
Not only is this true, but you also have to include networking and how the users and applications stayed connected. Seamless Connectivity, which is the ability to connect to another type of network without explicitly connecting to it either it be, LAN, WLAN or WWAN. There are devices that can do this, but currently the OS needs to explicitly be asked to connect to one of these. This explicit connectivity will become implicit as all of these networks become ubiquitous. The secret will be in integration (as Robert states) and tying applications to this connectivity at all times. Once you get this then you can let the OS (device) choose the best network, cheapest network, or the fastest network.

These are just a few ideas (tied in with Robert’s ideas) of where I think the next generation of “smart computing” will go. I could write for ever on these topics. More to come later!

Clay Johnson

Fitch
02-16-2004, 01:05 PM
My old ReplayTV box (2000ish) had red hearts instead of red circles on all the recorded shows. It was quite a suprise, I've never noticed it in past years! It was hilarious. I wonder if that's built into the box, to do that on Feb 14th, or did that come over on the February 13th download.

Mike Temporale
02-16-2004, 02:06 PM
As Clay mentioned, Location Based Services (LBS) is a big one for me. I would really like to see devices smart enough to know where they are and how they should be working in that environment. Think of a meeting room. Once the meeting starts, you flip a switch on the wall (like a light switch) and everyone’s device profile gets set to silent. And I’m not just talking phones. It could be PDA’s, Laptops, Tablets, or whatever. That’s just one example; there are plenty of opportunities for LBS.

Another thing I would like to see is VOIP on mobile phones and a phone/carrier that’s smart enough to route my calls over the best path. If I am out on the street and there is no WiFi connection, then use the existing mobile network. However; if I am in the office or my house, it should detect that high-speed WiFi network is available and route my calls in / out over that network.

One more Smart Thought. I would really like to see my Smartphone learn my habits. If I change my profile every morning at 6:30am to silent for 30 minutes while I ride the train. It would be great if the device would notice and after a couple weeks prompt me saying “You set the profile to Silent every Mon – Fri @ 6:30 for 30 minutes. Would you like me to automatically do this for you from now on?” Now that would be smart.

:mrgreen:

ClayMJohnson
02-16-2004, 10:46 PM
Mike …. Good example. The “Smart Agents” I mentioned above could keep track of these patterns and learn from them. You could setup these agents on the backend to learn from all types of stuff. It could be simple as the agent recognizing that a certain number calls you regularly and the agent asks you if you want to create a special ring tone for that person. Or as complicated as a set of rules based off LBS and your surfing habits. Or Mike entering the subway everyday at 6:30.

As for VoIP. One of my favorite topics because of it’s potential. I started working on VoIP in 1999 when everything was hot and the main focus was VoIP on a LAN and nothing to do with wireless. VoIP kind of died down a little for the next few years, but has recently started coming back to life. We are now seeing Voice over everything …. 802.11g for VoWLAN, 802.16e for VoWMAN and maybe even some standardization with 802.11o (voice standard for wireless LANs). Where I see this coming into play is in office buildings, schools and in homes. Let’s say I am work, but the wireless reception is poor, so my company sets up a VoWLAN network. Now I can talk on that network and when I leave the building it switches (Seamlessly) back to the wireless network. As devices begin to converge and carriers (AT&T, Cingular) start offering bundled services then VoIP mobile devices will become more prevalent. This will allow you to choose the fastest network or to do Least Cost Routing. I don’t think it is too far off in future either.

Clay Johnson

Mike Temporale
02-17-2004, 02:20 PM
Mike …. Good example. The “Smart Agents” I mentioned above could keep track of these patterns and learn from them. You could setup these agents on the backend to learn from all types of stuff. It could be simple as the agent recognizing that a certain number calls you regularly and the agent asks you if you want to create a special ring tone for that person. Or as complicated as a set of rules based off LBS and your surfing habits. Or Mike entering the subway everyday at 6:30.

Excatly. This is the kind of smart software/devices that I want to see. Oh, and it's not the subway train I ride. I get on the good old fashion above ground rail line. The GO Train (http://www.gotransit.com) is better because it's all above ground so I can still play with and use my phone the whole ride. I just don't like it beeping as I'm pushing buttons the whole way. ;)

As for VoIP. One of my favorite topics because of it’s potential. I started working on VoIP in 1999 when everything was hot and the main focus was VoIP on a LAN and nothing to do with wireless. VoIP kind of died down a little for the next few years, but has recently started coming back to life.

VOIP is great, eh! Primus Canada (http://www.primus.ca/en/residential/talkbroadband/index.html) has started to offer VOIP phones for $20 CDN a month. Not sure if Primus US is also doing this. It's time is coming fast. :rock on dude!: I am thinking of switching my company line to VOIP by the middle this year. :D