March 22, 2006

Tetris

Whenever I've had a free minute the last few days, I've done nothing but play Tetris DS. Talk about addictive. Along with the classic game we all know (and hopefully love), Nintendo has added in a few new modes -- Push, Mission, and a few more -- that really add replayability to the game. What really makes the game addictive, is the online play.

When you go online, you can play in one of three modes: Standard (2-Players), Standard w/Items (4-Players), and Push (2-Players). Standard is what you would expect -- normal tetris where the lines you clear get thrown to your opponent. Standard with items is a twist on this where you can also clear "Item Blocks" which give you items you can then use to help yourself or attack others. Finally, Push mode has you playing on the same field as the opponent and the more lines you clear, the further you push into their territory. If you push them far enough, they are burned in fiery goodness down below.

The best thing about this game is how it really gives you a sense of "gaming -- anytime, anywhere, anyone." Picking up the Nintendo DS, flipping it open/on, playing a 3-minute game, and then flipping it back closed. So simple and so nice.

I'll also take this opportunity to wonder out loud how games end up with such great interfaces. The menu system in Tetris DS leaves a lot to be desired, but once you get into the game itself, there are a number of just awesome interface elements that really make the game flow. So without further ado..


The Interaction Design of Tetris DS (Nintendo DS Reference Picture)

Controlling the position of a falling piece is performed using only the d-pad
In Tetris DS, pressing left and right on the d-pad moves the piece left and right. Pressing down speeds the decent of the piece. Pressing up makes the piece instantly fall to the floor of the board. Putting all the positional control on the d-pad and, thus, one-hand allows a clear separation of the two core concepts of Tetris: position and rotation..

The rotation of a falling piece is controlled by two buttons under the right hand
Pressing 'B' rotates the piece counter-clockwise, the 'A' button clockwise. Again, the 'A' button is located to the right of the 'B' button and thus maps to the direction of the rotation -- right and left, respectively.

The Tetris board functions acts as a predictive display with respect to falling pieces
As pieces fall in Tetris DS, a "ghost" piece appears on the stack of blocks below that shows how the falling piece will fit into the current stack of blocks if it is allowed to fall without further manipulation. While some consider this "cheating," it can at least help novice Tetris players to learn where and how pieces may fit into the field.

There are a number of other touches that enhance the multiplayer experience that I won't get into in detail, but to name a few: incoming line notifications, visibility of other player's tetris fields, novel item depictions to convey meaning and action. There are also some downsides, mainly the inconsistent and sometimes extensive menu system to actually get into a game. That being said, Tetris DS rocks.

Posted by fugimax at 11:45 PM | Comments (1)

March 21, 2006

Google Finance

Check it out.

Quick impressions:
- The initial main page is a little weird (before you have "Recent Quotes"). I'm not sure how I feel about a single column logo, searchbox, news arrangement of things. It seems to break some of the design elements of the other services (News, for example)

- The details page is great in terms of both design and information. It gives you a snapshot of the company from inside and outside. The mapping of news stories to the stock chart is also excellent. I think there are some interaction tweaks that could be performed for that interface, but otherwise it's great.

As always, though, try it for yourself.

Posted by fugimax at 11:04 AM | Comments (0)

Die Spam Die!

Sick of all the comment spam, I've done the following:

1. Deleted all comments. Sorry to the legit commenters, but I wasn't about to wade through tens of thousands of comments. Needles in a spamstack.

2. Comments will be open for 2-3 days after the initial post and then will automagically close.

3. No URL's in comments.

Sorry for the inconveniences if you like to comment here.

Posted by fugimax at 12:58 AM | Comments (0)

March 20, 2006

Implicit Search


As Cole talks about here, we are in the process of working on an Implicit Search application called et cetera.

The basic idea is that there are a number of contextual signals to a user's activity and goals within a computing environment that can be used to present goal-related information to this user. Providing useful and usable information in situ without the need for a user to specifically ask for it is the basic premise. For example, if I am in iChat, my goal might be to chat with someone. Further, I may want to send them a photo I have of them in my photo library. Presenting images to a user of the chat participant, then, may be helpful to the user's workflow.

However, something we are beginning to understand right now is that in any given context, there is a *lot* of relevant information and there is simply not enough of the user's goal evident simply through context -- the current application, which applications/files are open, etc -- to narrow all this information down to a manageable size. Parsing user keyboard input and document content with a not-yet-invented natural language algorithm that can determine a user's intent and task would be great. But since we don't have this, we are beginning to explore the idea of Implicit Query Generation.

The idea behind Implicit Query Generation is that users request classes of information for which information related to their context is available. Going back to the previous example, a user may be interested in an image of their chat participant. To access such an image, the user would somehow indicate they are interested in "Images" of their current context, at which point images of their chat participant would appear. These "Smart Queries" could also be layered. For example, imagine they have dozens of images of this chat participant. Expressing interest in images "Within the Last 2 Weeks" may narrow the results enough to locate the image they are looking for.

Of course, there are potential problems with such an approach. The main issue is that a user has no idea if the data they are looking for is even in the presented implicit results. If the data a user is seeking is filtered out by the actual context they are in, they will never find what they are looking for. To light of this, we are considering transparency in et cetera's context such that a user can see what the application believes is going on and possibly correct it if it is wrong -- potentially falling back to a plain old search box if things are really bad.

One thing that is clear to both of us is that searching is going to become easier and more efficient in the future. Look at Google's Personalized Search. Based on your search history, they present results that are "Most Relevant" to you. This means if you often search for "Jackson" and repeatedly follow results to pages about "Jesse Jackson," the ranking of your results in the future will be biased towards Jesse Jackson, and not our friend Michael. Taking in long-term context is something that can be incredibly valuable for determining results for future similar searches.

So, keep an eye out here as well as here for more information as we go along. If and when it is released, it will require Mac OS 10.4 due to our use of Spotlight for wrangling all that messy metadata.

Posted by fugimax at 11:41 PM | Comments (0)

March 15, 2006

The Break

Supposedly I'm supposed to be experiencing what the university and undergraduates call "Spring Break." However, I haven't successfully gotten through a day yet without doing work.

Let's check the board..

Friday: Meeting with Pittsburgh Voyager client
Saturday: All-day boat excursion to learn about process on Pittsburgh Voyager boats
Sunday: Misc. work and interview excercise completion
Monday: Portfolio work
Tuesday: MakeTools packet assembly
Wednesday: 9-5 work session on et cetera

And the projected schedule until "Spring Break" ends..

Thursday: Interviews!
Friday: Interviews!
Saturday: HCI Project presentation assembly
Sunday: MakeTools session preparation

Not that I'm complaining, of course. I don't think I would have it any other way. I just wish they'd call it what it is: "Catch-Up On Work Week."

Posted by fugimax at 11:11 PM | Comments (0)

March 01, 2006

MacBook Pro

I haven't had time to talk about it, but I got my MacBook Pro about a week ago. First impression was "fast." Second impression was "real fast."

There are plenty of reviews of the MacBook up on the web, so I'll leave it at that. I did find this interesting article on RAM usage in applications on PPC v. Intel v. Rosetta. Basically, Rosetta has a huge memory overhead and Intel applications are using slightly more RAM than their PPC equivalents at this pont. Like the author points out, compiler optimizations should help the Intel situation.

Finally, my MacBook is freezing up and doing this randomly once every few days. Looks like a VRAM thing to me..

Oh well...to the Apple Store I go!

Posted by fugimax at 11:48 PM

R.I.P. -- PSP Portal

It hasn't been up for about 2-3 weeks, but I'm finally getting around to announcing the formal "death" of the PSP Web Portal I started almost a year ago. I just wanted to take this opportunity to thank everyone who used the portal as well as those who helped keep it alive in the form of donations.

At over one-million visits, I think it was a slight success.


Comments will be open for a limited time on this post.

Posted by fugimax at 11:43 PM | Comments (0)