Intro to UX design for the ChRIS Project – Part 1

(This blog post is part of a series; view the full series page here.) What is ChRIS? Something I’ve been working on for a while now at Red Hat is a project we’re collaborating on with Boston Children’s Hospital, the Massachusetts Open Cloud (MOC), and Boston University. It’s called the ChRIS Research Integration Service or just “ChRIS”. Rudolph Pienaar (Boston Children’s), Ata Turk (MOC), and Dan McPherson (Red Hat) gave a pretty detailed talk about ChRIS at the Red Hat Summit this past summer. A video of the full presentation is available, and it’s a great overview of why ChRIS is an important project, what it does, and how it works. To summarize the plot: ChRIS is an open source project that provides a cloud-based computing platform for the processing and sharing of medical imaging within and across hospitals and other sites. There’s a number of problems ChRIS seeks to solve that I’m pretty passionate about: Using technology in new ways for good.Where would we all be if we could divert just a little bit of the resources we in the tech community collectively put towards analyzing the habits of humans and delivering advertising content to them? ChRIS applies cloud …

Flock Cod Registration Form Design

We’re prepping the regcfp site for Flock to open up registrations and CFP for Flock. As a number of changes are underfoot for this year’s Flock compared to previous Flocks, we’ve needed to change up the registration form accordingly. (For those interested, the discussion has been taking place on the flock-planning list). This is a second draft of those screens after the first round of feedback. The first screen is going to spoil the surprises herein, hopefully. First screen – change announcements, basic details On the first screen, we announce a few changes that will be taking place at this year’s Flock. The most notable one is that we’ll now have partial Flock funding available, in an attempt to fund as many Fedora volunteers as possible to enable them to come to Flock. Another change is the addition of a nominal (~$25 USD) registration fee. We had an unusually high number of no-shows at the last Flock, which cost us funding that could have been used to bring more people to Flock. This registration fee is meant to discourage no-shows and enable more folks to come. Second screen – social details, personal requirements This is the screen where you can …

Anaconda Crash Recovery

Whoah! Another anaconda post! Yes! You should know that the anaconda developers are working hard at fixing bugs, improving features, and adding enhancements all the time, blog posts about it or not. 🙂 Today Chris and I talked about how the UI might work for anaconda crash recovery. So here’s the thing: Anaconda is completely driven by kickstart. Every button, selection, or thing you type out in the UI gets translated into kickstart instructions in memory. So, why not save that kickstart out to disk when anaconda crashes? Then, any configuration and customization you’ve done would be saved. You could then load up anaconda afterwards with the kickstart and it would pre-fill in all of your work so you could continue where you left off! However! Anaconda is a special environment, of course. We can’t just save to disk. I mean, okay, we could, but then we can’t use that disk as an install target after restarting the installer post crash because we’d have to mount it for reading the kickstart file off of it! Eh. So it’s a bit complicated. Chris and I thought it’d be best to keep this simple (at least to start) and allow allow for …

Hyperkitty user profile idea

The last time I wrote about Hyperkitty here, we talked about the overall information architecture of the app, reviewed the UI as it is right now, as well as thought about how to list all of the lists on the mailman server in a nice, browseable way that gives you more information about each list to let you know what kind of list it is. One of the points that came up in the UI review was that it might be a missed opportunity to not have user profiles in Hyperkitty. Right now Hyperkitty provides a list of participants in a thread along the side of the thread view: It also provides a little avatar for the poster of each above right above the post content – another place to link to a user profile maybe: Okay but why would someone want to visit the profile? Let’s talk about this a bit. But Why? Mailing lists lack non-verbal cues that could tip participants off to a person’s intended tone – if there was some way to fill the void of those missing cues, perhaps it would help diffuse argumentative situations before they crop up. Part of misunderstanding comes from not …

Hyperkitty UI overview and list directory ideas

I emailed Aurélien early this week to see if I could help with HyperKitty. He said he would appreciate a UI review for mistakes and some help with icons too. Since it has been a very long while since I’ve been involved with HyperKitty, and a few months since I checked out the HyperKitty test server, I decided to do a review of sorts of the whole UI, check out how it works now, and brainstorm some ideas to make it better. Mapping Out the UI So first I clicked like a maniac and got a feel for the overall site structure. Then I drew up a site map to document the structure: Thinking through the design as I was clicking through it, I noticed a two major-ish features that I thought would make the app better: There aren’t user profiles. Each thread shows a list of the people involved in it as well as who wrote each individual post (of course.) This seems like a bit of a missed opportunity though. One of the strengths having a web app on top of the mailing list would allow in improving list communication is a bit more intelligence / smarts about …

Storage from a UX designer's perspective

Designing interfaces to deal with storage technologies is not only hard, it’s terrifying. This is especially true if you aren’t familiar with the storage technologies involved and have to learn how they work on-the-fly, even if you don’t have easy or any access to work with some of these (typically quite expensive) technologies first-hand. After we redesigned the storage UI for Anaconda around Fedora 12 or so, I gave a short talk at the Linux Plumbers’ Conference in 2010 to share my storage UX ‘war stories.’ We very happily have an interaction design intern, Stephanie Manuel, who will be working on putting together a usability test plan for the new Anaconda UI, courtesy of the the Outreach Program for Women. Since I need to get Stephanie up to speed on how some of the storage technologies Anaconda deals with work, I decided to provide a summary of that Linux Plumbers’ talk to make it a bit easier to access. Storage for Desktop Users So if you’re a general desktop user, there’s a few kinds of storage devices you’re pretty familiar with. Your laptop has a hard drive, perhaps an SSD (solid state disk), you likely have at least a couple …

Reclaiming space from partitions during installation Round 3

So you’re getting a blog post on this because I missed having something to show Garrett before he finished work for the day (he’s several timezones ahead of me and I was overly slow.) 🙂 This may be crispier than it would have been had I caught him. Let me catch you up on where we are with reclaiming space from pre-existing partitions during installation. First of all, what is this design meant to address? Well, if you’ve selected what you want to install and selected disks to install it on, and don’t have enough free space in any single continguous free chunk but you do have enough latent space to cobble together enough space to install to – this is the screen that tries to guide you through shrinking your pre-existing partitions to make that latent space useful. This is not the custom partitioning screen design (just to make that clear. 🙂 ) So where were we?: Rough Thoughts on Reclaiming Space from Partitions During Installation – We walked through the lightbox dialog that appears when you’re in the situation described above, and then a few possibilities for what the actual space reclaiming dialog looks like. We tried a …

More Anaconda Custom Partitioning

We’ve been having a bit of a Anaconda custom partitioning UI thrown down the past couple of days in #anaconda to try to make some more progress on it. You may recall, the direction we’d most recently taken the mockups involved a UI centered around the mount points that are / will be created on the system: We hashed out some issues to address with this approach. Some we have addressed over the course of our discussion, some we haven’t. Here’s how it broke down: Issue #1: If you have more than one mount point of the same type on the system, you have an odd name clash. See, we let you select whatever hard drives / storage devices you want as part of the installation. Now, the drives you select may not be blank / nicely-formatted. Rather, they may have pre-existing OS installations on them, and some of those you might want to keep around – maybe you just want to install in the available empty space on the drive(s). The UI above assumes you’re only displaying mount points for one OS. What if I have a Fedora 16 installation on a 1 TB disk that I want to …

Reclaiming space from partitions during installation Round 2

So with some great feedback and great suggestions from you, I’ve been iterating more on the partition resize screen for Anaconda. I started out by poking around with the visual design of the drag handles, and Robin had the idea to make the space between partitions draggable and to use a model where you only drag between two partitions at a time. I think it will make more sense to do it that way, at least in this iteration. Initially I wanted there to be a free bucket on the right side that would grow as you shrank the partitions, but I think that makes it a little confusing as to how you would re-grow that partition if you changed your mind. Non-intuitive in the manner that the affect of your dragging can be displaced by more than just the next box over and it might not be immediately apparent to you that you can grow your partition even though it isn’t immediately adjacent to a block of free space. Smooge had the idea that there should be a clear indicator of how much you can squeeze down a given partition, so now the partitions have a lightly-colored graph to …

Drag / resize handles

In my last post about Anaconda’s UX redesign, there were a couple of mockups that featured draggable diagrams for managing space on a disk, allowing you to shrink its partitions as possible: I’ve been thinking about the best way to make the partitions look draggable. They only need to be draggable horizontally; the mockup above shows a diagonal drag handle making it seem as if the space could potentially be dragged upwards as well as horizontally (it can’t.) I’ve looked around different UI patterns for this; it seems a lot rely on the mouse hovering over the area to be dragged and the pointer changing to indicate draggability. I’m not sure that’s enough; I think there should be more visual clues that something is draggable that don’t require you to mouse over them to determine draggability. So here are some mockups I did just experimenting with different looks; some are definitely more successful than others, I think. What do you think?