Software Version Complexities

Today I had an experience that caught me off guard. I recently purchased a Cingular/AT&T Broadband adapter for my laptop. I do really love it … well … after I got it working.

One of the initial issues that I had was that the CD ROM that came with the Cingular package was *WAY* out of date. It dated back almost 12-18 months, from what the technical support person told me. When I bought the card and went to install, I never thought to check if the CD ROM contained current software … I just put it in and ran the installer.  That was is huge error on my part as the old drivers caused all sorts of problems with my laptop.  Three days later I was back up and running … with the new version of the software that I downloaded from the Internet.

Well, my problem today was that every now and then the broadband card would lock up.  It would just stop working.  I couldn’t “disconnect” or “reset” the AT&T software either.  I found that if I ejected the card, and then re-inserted it things would again work … for a while.  After going through several days with this routine, I started to wonder about the firmware in the PCMCIA card.  I did a little searching on the Internet, and sure enough found a Sierra Wireless 875 firmware update program.  I followed the instructions and ran the program … which proceeded to update my firmware from v1.0.0 to v1.7.8!

What really amazes me about this whole situation is the poor software installation design and coding, along with the pitiful state of AT&T automated support systems.  As a software architect, and also a business owner, I am always looking for ways to improve customer experiences, decrease support costs, and automate everything that I can.  In this day and age I can’t believe that AT&T isn’t looking to do the same things!

Anyone who runs Windows has experienced Windows Update.  Now I know that lots of people will bitch and moan and whine about Microsoft, however I will argue that Windows Update – which has been evolving for almost a decade – is a marvel of automated software updating.  If you stop and think that Microsoft can drop a patch out to their servers and update millions of computers across the globe in a matter of hours or days is pretty incredible.  And for those people who want to complain about it, the key here is that any software developer could add a comparable or better solution to their software at any time!

In my mind, the AT&T installation CD ROM could have asked me if I wanted to have it check the Internet for newer versions.  But it didn’t.  It also could have – upon installation – checked the firmware on my card, and let me know that there was a suggested update for the card.  But it didn’t.  Every time that I put the card in and run the AT&T Connection Manager software, it could see if it had checked for updates in the last day or week, and automatically check in with their servers and let me know there are new versions available.

In this day and age, most computer users are getting very familiar with the automated update programs … even Dell has instituted a very impressive one that I now have on my new laptop.  In the last couple of weeks it even told me about a new version of the BIOS for my laptop … and handled the download and installation.  A while ago I launched iTunes … and it told me there was a new version … and handled the update.  And yes … Windows told me about some new patches and automatically downloaded and installed them.

I’m always shocked when I see a company that employs talented product management and software developers who seem to have no clue about how to integrate this automatic update functionality.  AT&T?  Sierra Wireless?  You have to be kidding me … I even had clicked the little menu item about checking for updates … but couldn’t decode the landing page I was taken to.  No … I do not want to read a web page about updates … I want you – the software developer – to simply implement some code that checks with my machine, and then your servers, and lets me know there are updates to apply.  I then want your software to nicely handle the update … and yes, even tell me to reboot if I really have to.

As for their business?  They would probably see less technical support calls (two from me … one lasting almost an hour!), more customer satisfaction (I’m still a little pissed off about what I had to go through!), and even get a bunch of analytics about their user base, what versions are out there, when they are using the software, etc.

I believe that as we continue to embrace technology, and software continues to evolve, the winners are going to be companies that create products that are easier to maintain and that provide an improved customer experience.  If you are a software developer, you might consider how you can reduce the software version complexities … or make them go away completely!  It’s all very possible.

The Benefits of Broadband

I’m finally there. I wasn’t sure exactly when I would take the leap … but I did a few weeks ago. It wasn’t without problems … but I’m glad that I made the move. I finally bought a Broadband card for my laptop, and service from Cingular/AT&T.

I have long been a user of wireless. I bought my first Xircom gear in ~1995, just prior to the Xircom management buyout that formed NetWave Wireless. I think that I spent ~$2000 for an access point and two cards! In 1997 as a Novell employee I began working with the folks at NetWave on potential applications of wireless networking … and this was all pre-802.11 standards! All of this culminated with the demonstration of my research at the 1998 Novell Brainshare where we covered the Salt Lake City Convention Center – the Salt Palace – and surrounding area (~5 city blocks) – with wireless Internet access. I’ve never gone back. I love Wifi … and it is great to see it everywhere. Well … almost everywhere.

This is the issue that I found. Wifi isn’t everywhere … or sometimes when you find it the cost is just too great. A month or so ago I found myself at the airport … for about two hours … and the Wifi access was $10 for the day. I thought about it, and chose to find out exactly how much the service costs these days. I had seen Phil Windley using broadband from Verizon, and he really seemed to like it. As a Cingular/AT&T customer, I figured that I would check out what they had to offer.

I visited the local Salt Lake City Cingular store, and the deal was a Sierra Wireless 2G/3G PCMCIA card for $50 (after the $100 rebate), and the service – with unlimited bandwidth – was $60/month. I was in. I bought the card and the service, and headed off to install and get things working. I will say that I didn’t expect what happened next.

When I went to install the card in my laptop I didn’t even think to check on new versions of drivers. I popped the CD into my drive and installed what they gave me with the card … v5.4.1 drivers. When I rebooted … and inserted the card … BLUESCREEN. Ugh … the drivers were crashing my laptop. I was able to boot into “Safe Mode”, but I then spent two days debugging and interacting with technical support to find out that the latest drivers were v6.2.10, and that there was a conflict with the McAfee firewall that I was using. That mess started on Friday, and by Monday I was recovered and up and running. And now? I’ll never look back!

I have done some speed tests, and fairly consistently get ~1.5mbps down, and ~300kbps up. Several times now I have been getting speeds even faster! It is amazing to me that for $60/month I am now able to get megabit speeds almost any where that I go.  Over the last week, I have found myself in several places where I had no Wifi access … and plugged in my card, and jumped on the net.  The unlimited bandwidth enables me to not even think about how often I use the card, and what I do when on-line.  The speed is good enough for me to run all of my standard business applications.

I’m sure that I’ll do more testing, and might have more feedback, however so far I am happy and impressed with what is possible.  Broadband is now bringing the Internet to you – at an affordable price – in even more locations than ever before.  I now have multiple levels of fall-back to stay connected and in communications.  I’ll have to see when I do my first blog post from a moving vehicle (not while I’m driving!), and also see how many different strange places I can blog from now.  It also gets me thinking about getting out my wearable computers again … I had some fun ideas for mobile games … hmmm …

Microsoft … making Windows irrelevant?

Sometimes I think that “old people” really don’t get it. When I say “old people” I’m pointing at the twenty-somethings and up. Yeah … once you get into your college years, you begin to formulate a lot of perspectives and hold onto them. You hold onto a “religion” about things … even technology.

I have long listened to all of the complaining and whining about Microsoft. Frankly, I’m tired of it. Most people simply want to blame their problems on others, and attack the current king of the hill. It’s a human disease. The worst part of it is that I believe it causes people to loose sight of what is going on around them, and to fall victim to changing markets.

On Tuesday when I was at the LearnKey Challenge at UVSC, I got to listen to a presentation by Ivan Lumala called XNA Xbox 360 Development Framework. If you click the link, you can see his presentation. I have to admit that I was blown away. I had no idea what Microsoft was doing in this space … and the potential impact on the future. Most people … caught up in their whining about Microsoft and Windows are completely missing what is coming at them.

XNA is the development environment for the Xbox 360. Actually … it’s much more than this. XNA Game Studio Express is a – completely free – development environment for creating cross-platform applications that can run on the Windows, or the Xbox 360. Microsoft is quickly pushing to allow any software developer to create their own games and applications … and to build out the community of Xbox 360 developers and users. They are providing the source code for some amazing applications and games as the foundation for anyone that wants to create “your world. your game.” These sample applications are written in C# and can be compiled to run on Windows and the Xbox 360. If you want to learn more … read here!

So what is it that the old folks are missing? It’s that the younger generations are now seeing a much different Microsoft. They aren’t hanging on to their long-term “make wrong” and complaints about Microsoft. It was amazing to see … when Ivan walked in, and started to get set-up, there were the typical jeers and comments about Windows. But when Ivan asked how many students (all high-school) had an Xbox or Xbox 360 almost all of the hands went up. He asked about the games they play and they all started to shout out the names of the big classic Xbox games. He asked them who might want to write their own games that they could give away or sell for the Xbox 360 … the level of excitment continued to grow.

Now let me throw out some possible scenarios. What if Microsoft produced a “portable Xbox 360” that has a screen? Sort of a UMPC based on the Xbox 360 hardware? What if they created a laptop based on this Xbox 360 hardware? What occurs in 3 or 5 years as the younger generations have no qualms with the “Xbox 360” … a word that now represents a hardware platform, coupled with a form of operating system, and an open development environment? What occurs when these – now college – students might be able to run other productivity applications on this platform?

I wonder how this might compare to the current craze around the proprietary Apple MacBooks? (There are lots of numbers out there about Xbox 360 sales, and Apple MacBook sales. ) Could this be a way that Microsoft themselves actually makes “Windows” irrelevant, and has the next generations of college graduates and business workers continue to embrace Microsoft products?

I have to admit that coupled with Silverlight, I believe that Microsoft is making some strong moves to secure its future … even with all of the complaining and whining by old people!

P.S. Get over it … Microsoft has helped to create everything that we have to date! They will always have their place … and if you underestimate them, they might even end up with more!

LearnKey Challenge Presentation – Wearable Computers, etc.

For the last number of years I have had the privilege to present to high-school students from all over the state of Utah when they participate in a “Challenge” at the UVSC campus. The “Challenge” is allow the students to demonstrate their understanding of technology and computer skills. This used to be the “TestOut Challenge” but this year there is a new sponsor and so it’s the “LearnKey Challenge”. On Tuesday I got to do this again and had a blast.
Each year I’ve been asked to present on Wearable Computers and Virtual/Augmented/Mediated Reality. This is an area that I am really interested in as the man/machine interfaces continue to evolve … and computers and peripherals begin to become more embedded. I love to show the students the miniature computers and hardware, and to show them the hardware that I have collected over the years. I also love to shown them the videos of some of the advanced research going on around the world in these areas. If you want an idea, go and check out ARQuake and the Tinmith project, and the Mixed Reality Lab in Singapore, the HIT Lab at the U of Washington, or the work of Steve Mann at the U of Toronto.
The real reason that I love to give these presentations is to see if I can encourage and inspire some of these kids to think out of the box. I want them to get my enthusiasm about technology, and what is coming in the near future … to expose them to things that seem almost too far in the future … things they might not understand they could be involved with. Some of this work is pushing the limits of what we believe is possible … stuff of dreams. I want these kids to know they too can get involved and create the future … and play with some really cool computer stuff. This year they even recorded the presentations and put them all on-line … my Wearable & Mobile Computers is here! One warning … most of the initial presentation is about tech jobs, my experiences, what to expect, and what to consider to love your job.

It was fun to have so many of the student come up afterwards and ask questions … where to learn more … what degrees to pursue … where to go to school. Overall … they seemed to enjoy it, and I know that I did. If I made a difference with just one of these kids it’s all worth while.

I wouldn’t want to be AMD in a Wintel world …

I have to admit that I really haven’t had much to complain about AMD and their products … until recently. I have long been an Intel fan, but I had no reason to believe that AMD was not “Intel-compatible”. Over the last year, I bought a few rack-mount systems that contained AMD motherboards and processors. I was able to install Linux (Fedora Core 4) on them, and everything seemed well. All of that ended about three months ago.

About three months back, I chose to take one of my rack-mount systems, and reconfigure it to take the place of one of my last two Novell NetWare servers. (Yes … I worked for Novell and still have two NetWare boxes running some services … if it ain’t broke, don’t fix it!) To replace the one NetWare box, I needed to have two network cards in the server. Easy enough … I’ve done this with Linux before … add the card, configure the driver/interface settings, and off you go. Now I’m not doing this as a full time job, so this is something that I do when I have the time late at night … between e-mail, blogging, coding, etc.

I installed an old 3Com 10/100 ethernet card into the working system, and chose to reinstall Linux from scratch … a brand new shiny copy of Fedora Core 6! It installed on the AMD hardware flawlessly … until I rebooted. The 3Com ethernet card would not obtain a DHCP address. Hmmm. I went through Google, tried a different card … an Intel 10/100. Same results. The ethernet on the motherboard worked … the card in the PCI slot seemed to work, but wouldn’t get an IP address. I ended up going through three more cards (five total!) and then tried Fedora Core 4, and Fedora Core 2, then Knoppix. Crap!

All of this was done over a period of two months … on and off … trying various things one or maybe two nights a week. I ended up doing dozens of installations before trying to install Windows XP. It installed flawlessly … and both adapters worked! Crap! Crap! So now I’m starting to guess … Linux and this AMD motherboard? I took the machine to a friends place and had him look at it also … and he gave up.

Last week I went and bought an Intel motherboard, and Intel processor, and installed it into the rack-mount case … replacing the AMD hardware. I ran through the Fedora Core 6 installation … rebooted … and everything worked as expected! Both cards were recognized, and obtained addresses … I did some reconfiguration and testing and now am close to having my machine ready to install in my data center.

If only I had given up on the AMD/Linux combination sooner … I truly wasted far too many hours not believing that such an incompatibility could exist. But it did … crap, crap, crap. I have learned my lesson … at this point I don’t care if I ever buy another piece of AMD hardware again .. it’s just not worth my time. My Intel solutions? They just work!

Brain / Machine Integration Continues

Nice . .. we are getting closer and closer to neural implants to augment the operation of the brain.  These first ones are oriented towards memory.  I wonder when we’ll be able to get additional memory added via this technology.  Anyone for a memory upgrade … for their brain?

The Memory Hacker. USC’s Center for Neural Engineering researchers have developed a chip that can communicate with brain cells, a first step toward an implantable machine that could restore memories in people with brain damage or help them make new ones.

… [ Accelerating Intelligence News]

Amazing Laser Graffiti … 15 stories tall!

On our NuMe website, the user rufinorosado posted an amazing video to their NuMe videoWrapplet playlist … this is too cool.  The video is by a group called Graffiti Research Labs and they have set up a giant video projector pointing at the side of a building, and then integrating a laser pointer tracking system to allow people to draw giant virtual graffiti on the side of the building using a hand-held laser!

I’ve added the video to my Inevitable videoWrapplet playlist with the title LASER Graffiti by Graffiti Research Labs … you have GOT to check this out … I want one!

We better be nice to them now …

It seems that someone is thinking ahead . .. to the future where robots and machines might have to make choices about what to do with the “legacy biologicals” roaming the planet.  One robot to another “But remember … they were nice to us in our infancy … don’t we want to stop the humans from becoming extinct?”

Robotic age poses ethical dilemma. The Robot Ethics Charter, an ethical code to prevent humans abusing robots, and vice versa, is being drawn up by South Korea.

“The government plans to set ethical guidelines concerning the roles and functions of robots as robots are expected to de… [ Accelerating Intelligence News]

Touch Interface of the Future

You have to watch the video to really see how impressive this is.  I’ve added the video to my Inevitable videoWrapplet playlist … it’s the presentation that Jeff Han gave at the TED conference of his ‘multi-touch interface’.  This is the stuff of Minority Report … but being demonstrated as reality.  Read the article … check out the video … this is an impressive product.

I keep thinking that I want this on my laptop, or Tablet PC!

TED: Jeff Han, A Year Later. Catapulted to geek stardom literally overnight at this high tech confab in 2006, inventor of mind-blowing touchscreen technology gives Wired News a glimpse into life as an entrepreneur and his new company, Perceptive Pixel. Kim Zetter reports from Monterey. [Wired News: Top Stories]

Brain controls for computers and games

As the work in the research labs continue, it was only a meeter of time before the technology begins to enter into commodity markets.  I do have to wonder if the quality and capabilities will meet peoples expectations, however it is only going to improve with time.

I keep thinking of other applications for this product … who will do the first TV Remote Control based on this?  Just think about changing channels …  🙂

Connecting Your Brain to the Game. Emotiv Systems has announced that video-game makers are able to buy Emotiv’s electro-encephalograph (EEG) caps and software developer’s tool kits so that they can build games that, they claim, can use the electrical signals from a player’s brain to c… [ Accelerating Intelligence News]