Archive for July, 2007

Innovative Interfaces and Usability

July 27, 2007

You use computers and digital devices all the time. Maybe you even write software for these devices. Software is complex and provides a myriad of features to users. While featureset and data increases, device sizes are shrinking. With scarcity of input and output methods, an increase in software features and information, and construction done by engineers what are we to do?

Along with recommending a couple books, The Design of Everyday Things by Donald A. Norman and The Inmates Are Running the Asylum by Alan Cooper I’ve compiled links to some interesting ideas for interacting with our digital devices. Hopefully they will provide some inspiration to what you build. Devices need to become easier to use.

No Mouse Clicks

dontclick.it is a web application with an interesting design feature. It provides no buttons for click. All actions are initated with gestures of the mouse. Of course, the gesture interface is being touted by Apple and the iPhone right now but this example takes it to the next degree.

Buttonless Interface

Spatial Computer Interface

Back in 1999, Microsoft Research worked on a project called The TaskGallery. This is a project that introduces the concept of grouping Windows into tasks, using rooms, pictures, and walls rather than a desktop, and a 3d orientation for it all. Remember it’s from 1999 so the graphics aren’t that great. It has some compelling concepts when it comes to window and document management.

The TaskGallery Interface
Click for an animated view.

Quikwriting

Ken Perlin, someone I admire for the creation of Perlin noise, has a number of computer science experiments. One of those is Quikwriting. Quikwriting allows you to make pen gestures quickly to select letters from regions of a pad. Potentially good for mobile devices as the in-between of handwriting recognition and a keypad.

Quikwriting Example Interface

 Zooming Interfaces

Ken Perlin also has some tools available for the concept of zooming interfaces. These interfaces display heierarchical data and provide the ability to drill down the heierarchy by zooming into graphical representations of the system. Perlin has implemented these interface demos for a few applications.

A Zooming Navigation Interface
For General Computing and Web Browsing.

Zooming Interface on a Phone
For interfacing with a mobile phone.

You can view more examples of zooming interfaces at Ken Perlin’s homepage.

GroupBar

GroupBar is a Window management alternative developed by Microsoft Research. It is an obviously simple but unique way for managing Windows. You can download and install it as an alternative to the start bar. I definately could see uses for MDI (multiple document interface) applications such as Visual Studio, where there are often many windows open concurrently.

GroupBar from Microsoft Research

Surface Computing

Along with the gestures we mentioned above is a new form factor. The table top and surface computing. Microsoft has release a product, called Surface. Here is an in depth sit down demo as well as a teaser commercial. There is also a Linux version in development.

Surface computing is an interesting concept and introduces a new form factor. It provides multiple touches, the ability to recognize real object set on it, a host of gesture based inputs, and new metaphors for computing.

Microsoft Surface Computer

Mobile Browsing

While not completely innovative I thought it was worth inclusion because mobile computing is a huge growth area and something you need to be aware of. 

iPhone

Browsing the web on a mobile phone is a pain. The screen is too small and content never looks right and navigation stinks. This is being addressed by Microsoft with Deepfish and Apple with the iPhone. Providing zooming, scrolling, multi touch, and other mechanisms to interface with the phone, these are technologies that are going to make mobile browsing much more functional and pleasurable.

Jurassic Park

And just for fun, the Jurassic Park interface. You know, the one that annoying girl was using to interface with the Unix machine. Hey, it’s 3d!

Jurassic Park Unix

Conclusion

There are numerous ideas out there for new interfaces to software and computers. While consistency can be important, providing an enhanced interface can shorten the learning curve and increase productivity ongoing. Keep the user in mind, hire interactivity designers, and don’t be lazy about the software you design or write. Taking time to build a good use interface now will save countless man hours for people.

If you have any design ideas or links, please add them to the comments. You can continue your research into Interaction Design on Wikipedia.


Be A Popular Blogger

July 26, 2007

I’ve seen a trend in blogging. To be popular you have to write about popular items with enough meat to inform but short enough to not lose reader attention. You have to post with a medium frequency, enough to stay fresh but not so much as to overwhelm. You have to give a personal touch, but not so much that you lose credibility.

There is a spectrum of published content from micro-blogs, to blogs, to something closer to traditional publications. Let’s look at it graphically.

Spectrum of Blog Types and Popularity Curve

The spectrum goes from short posts to long posts; less research to more research; less formal to more formal; fast post rates to slow post rates. The sweet spot is right in the middle, it provides valuable and desired information frequently, in a short enough posts that do not deter user attention.

The center of the spectrum is where the popularity lies. It’s what the majority of the blogosphere is and you can see by the top Technorati blogs that it’s the frequently updated popular news blogs that dominate the top rankings. Bloggers who write traditional blog posts (meatier than micro-blogs but less formal than a researched article) gain the highest rankings and most page views.

To be a popular blogger you need to be in the middle of the spectrum. Keep balance… medium length posts, a mix of pop news and insights, clear writing but not stingy, concise but not boring, authoritative yet friendly.

There is a lot of competition in the blogosphere; but maintain a balance by posting original content promoted by pop subjects and you are on the right track.


Deal for MS Developers: HTC Mogul for $299 with Sprint Plan

If you’re a Microsoft developer and looking for a new cell phone and service, there is a deal out there for you. Microsoft and Sprint are offering a deeply discounted HTC Mogul for only $299 with a Sprint plan, usually a $549 phone. I couldn’t find the phone for this price on eBay.

I’m in the phone for a market and this was a timely advertisement to receive. I use Cingular and will not be switching though; despite the fact I’m looking for a new phone and service looks a bit cheaper.

No, I’m not sponsored, this deal landed in my inbox today so I thought I’d share. This is a deal that isn’t well advertised but might be interesting to some.

HTC Mogul


Microsoft Financing

July 24, 2007

If you need to finance technology purchases for your business give Microsoft Financing a look over. Microsoft will finance purchases outside of just Microsoft products.

I recieved a Microsoft partner email about a contest going on for parners by Microsoft Financing. I wanted to share the link to Microsoft Financing in case you have never heard of the program.

Antecdotally, I have a friend who made some very large server purchases recently. He was approved very quickly, had very good terms, and the entire transaction was smooth and seamless. If you require debt financing for purchases for your small business, definately give Microsoft Financing a look.

You’ll need to find a Microsoft Financing Partner to take advantage.


Types of Software Developers, What Are You?

What kind of software developer are you? There are many types of developers out there, they serve different functions in the development lifecycle, have different skillsets, and have different job titles. Here’s a list of non-job-title types of software developers. What are you and where do you want to be? 

Architects – Architects have a difficult job, they are the ones that resolve the creative, application, business, and technology needs. Architects take thethe problem and deconstruct it to the most optimum pieces. Architects provide plans for the other developers. They are able cross disciplines and vision the code.

Implementers – Implementers are developers with less creative or algorithm development skill. These developers take the components, APIs, and pre-written modules from the Architects and create the final product. Implementers put the pieces of the puzzle together. Implementers work best working with specification manuals and third party development APIs.

Discoverers – Discoverers are developers that test and experiment with things to come up with ideas. These are the developers that hunt and find. They are the ones that have lesser capabilities of developing quality solutions, especially to complex problems. For example they will see an API call and come up with a niche idea to implement that call. These developers solve small puzzles and can be related to a more “procedural” programmer.

Thinker – The thinker is a little bit of a discoverer and an implementer. The thinker creates algorithms but not to the level of the Inventor. Thinkers create algorithms that are simpler… to solve simpler problems. Thinkers work best at optimizing and streamlining code. Thinkers are similar to implementers; the exception being they do not require as much definition in the pieces of the puzzle. Thinkers are capable of developing pieces when the components given to him do not fit optimally (if at all).

Inventors – Inventors are developers that think outside the context of APIs. They think about concepts and ideas, they think in theory, they are computer scientists. They are the ones that come up with encryption, compression, image processing, and other interesting algorithms that enable the discoverers to find the niche applications.