What are the best practices for keeping and analyzing unstructured user feedback?

To get and analyze users’ feedback is vital for designing successful products as all of you perfectly know. It is more or less clear what to do with surveys’ results, but what is the best way to keep results of interviews and unstructured user reports?

Shame but now I just keep feedback in a special mailbox and store interviews’ summary in Notes. As a result, I create tickets in Jira after short analysis 🙂 Previously when I had 3 more designers we used spreadsheets (excel, confluence, google sheets) but it takes too much time now when I’m the only designer (yet). The main issues with those approaches are:

  • you can’t really analyze anything (e.g. find alike or controversial things) in Notes and mail ))
  • spreadsheets give some sort of analysis capabilities but it consumes too much time

Any hints on how to avoid spreadsheets? Thanks!

Industry Best Practices for Managing Application Versions

I’m trying to see if there is an accepted industry best practice for managing the current version of a project in a single place for many things to utilize.

So I have a shared object that I developed. This shared object is packaged in two forms, a Conan package, and an RPM. It is a Qt project, so it has a .pro file associated with it. Up until now, we have managed our dependency versions through the .pro file by defining:

MAJOR = 1 MINOR = 2 PATCH = 3 

but now, with Conan and RPM, it is becoming a bit of a nightmare to maintain. Should we still be managing the version from the .pro file and scraping the version out for the Conan package version and the RPM version or should we have a separate version file that anything that needs it can scrape from?

Guidelines/best practices for CSS hover animations in web UI

What, if any, are the accepted guidelines and/or best practices for using CSS animated transitions on hover in a web-based user interface? When does it start to simply become annoying and distracting?

I’ve noticed it showing up on some technology related blogs (example – hover over links) and also on Stack Exchange sites in some places (such as the top navigation bar on security.stackexchange.com). It seems to me like it adds a nice touch to the interface. At the same time, I think there’s probably a point at which it stops being a good thing and starts to be distracting. And some other high-profile sites, such as other SE sites (this one) and jQuery’s site (example: the accordion UI demo) don’t use it at all.

Best practices to allow user to hide/show columns in a data table

I have a table which can contain more than 15 columns, it is not likely that users will see the 15 columns at the same time, but I need to give them the option to select which columns they want to see. I added a section in the table to allow the user to choose from the “Available columns” and move them to the “Selected columns” that will be displayed: enter image description here

But the client didn’t like it, because he is looking for something more interactive and intuitive. Can you recommend me other controls that I can use? Note! The table is like an excel table, user can expand, filter and sort by column. I was thinking of using something similar to excel to hide the columns, but I couldn’t find out how to make the “show” columns.

Recommended research articles or best practices for UI techniques for encouraging users to explore more functions of a complex application?

I can highly recommend the recent article by Cockburn et al. “Supporting Novice to Expert Transitions in User Interfaces” (ACM Computing Surveys, Vol. 47, No. 2, Article 31, Publication date: November 2014) but the research it reviews is almost exclusively about point-and-click interfaces that are trying to make small improvements in user performance.

What if you are trying to get users to be motivated to learn a new set of functionality in the app that they didn’t even know they would want?

As well as general research in this area, I’d also like to know if there is research or best practice about when to explicitly encourage the user to try something new.

When they open the app (like a Tip of the Day?) or just as they quit? If so, every time they open or quit the app, or spaced out, or randomly?

Best practices in portraying racism and its effects in a game

This question and its fantastic answers help answer NPC interactions with PCs. However, the question doesn’t really touch on a world building, immersion level. I don’t anticipate my players playing a race where these kind of interactions will happen to them. Though, NPC to NPC interactions are likely to have racial undertones (or even overtones).

I’m running a steampunk game that is attempting to be accurate to history and the party will be starting out in New Orleans in the 1880s. Some background of the quest involves a feud between two rich families, one white and proud of it, the other black and do their best to help the black community prosper in these post-Civil War times.

How should I best portray racism involving real-life communities as a white individual? How can I portray the effects of racism (e.g. limited education to a lot of black individuals)?

Obviously I can go the full monty and mimic something along the lines of the movie Django Unchained, with its usage of racial epithets and violence, or using the manner of speech along the lines of what Samuel L. Jackson’s character used in public.

However, white people using the n-word is a touchy subject, and it seems like mimicking certain speech patterns stereotypes racial groups, which is also uncool.

The question boils down to: how can I maintain accuracy and immersion involving racism without stepping out of line?

Assume that the group is okay with the portrayal being extreme though are of the opinion that obviously racism is bad. (I actually haven’t brought up the subject or had a session 0 yet. I’ll most likely mention it tomorrow when the group meets for a different game.)

Best practices: Save or return intermediate results?

Assuming IO is not an issue, is saving intermediate results considered a best practice? What are the pros and cons, and situations that warrant doing so or not?

Say I have two components along a long pipeline,
others--> Component_1 --> Component_2 --> others.

I can either save the output from Component_1, pass the path to Component_2, and have Component_2 read and process from there. Or, I can return output from Component_1, and pass output to Component_2.

This is for data processing tasks, where the server process itself can run continuously, but each user input data causes a single run through the pipeline, and it completes before it retrieves the next item from the input queue.

Pros of saving:
1. Makes testing and debugging a bit easier? I don’t have to save the output from Component_1 in my test/debug code, before doing stuff to it, if I don’t want to rerun Component_1. A debugger that saves all intermediate data can do that as well of course, but it saving everything means it might take a while to run.
2. Makes debugging if actual runs fail easier. Same point as previous.

1. Performance hit, but we assume it is negligible here.
2. Having to move all intermediate files to trash somewhere during/at the end of runs.
3. Having a separate debug folder with unique ID tag for each run, but that’s usually necessary anyway, if only to store output that the UI retrieves and presents.