Finding New Solutions in Old Philosophy

As a graduate student at Harvard University, one of my main influences was the Austrian philosopher, Ludwig Wittgenstein. Wittgenstein argued that many philosophical statements, and indeed, much of philosophy itself, became preposterous when applied to the real world. Since completing my doctorate in philosophy, I have been a professional programmer for more than twenty years, and I have learned a lot about applying philosophical thinking to design and development. Philosophy offers deep and profound insights about subjects like knowledge, meaning and justice. Insofar as computer programs concern these subjects, philosophy can be a fantastic source of ideas – and often is. Reading philosophy books has given me ideas for writing useful computer programs that span multiple industries, from healthcare to business, which contradicts Wittgenstein’s belief. After all, if philosophy can guide the design of profitable products, it must be meaningful. Ideas and techniques from such varied philosophers as Ludwig Wittgenstein, Jean-Jacques Rousseau, Rene Descartes, Karl Marx, and W.V.Quine can advance UX development and design. In this article, we’ll explore three software challenges, and the solutions philosophy inspired. Solution#1: Descartes and Austin complete sales Every point-of-sale (POS) transaction faces the same challenge: how do we bring users through the sales funnel and complete a sale? We know we must provide enticing content and a positive experience, but how? A certain number of prospective customers are expected to leave without purchasing, but the designer of a POS system wants to keep that number as low as possible. In order to reduce the number of times users abort a POS transaction, we consider an idea from the philosophy of knowledge. Descartes, in...

Code QA and UX, sitting in a tree. Kissing.

Jamie Appleseed recently wrote a brilliant article on bugs and user experience. It won’t help you magically prove the ROI of QA testing, but you should definitely read it because… It’s about accepting that things do go wrong sometimes. And that therefore, we should design systems that degrade tolerably and fail gracefully when they are actually broken. It argues that we should keep simplifying and using progressive enhancement. Think of accessibility in the widest sense, and design for the least capable people & technology first. Not everyone has good vision, good motor skills. Not everyone has a powerful computer, a fast broadband connection. It happens. Simple, lean, fast… then add the funk I know that as developers we already think about contextual impediments. Our task models sometimes show that not everyone has time to really concentrate on the information we present to them. Designing for degradation and failure is the same thing –  stuff gets in the way. So make it simple, make it lean, make it fast. Then layer up the funk. Spec it out good and proper. Like the other ‘premium’ (ie. done properly) things we try to do, this approach may initially take more time and therefore cost more than you expect. It’s a relatively easy thing to sell-in on public sector projects – those where accessibility in the traditional sense is a stated requirement. We’re working on a number of projects with Bristol City Council, and the teams for taking this approach already: keeping things simple and designing transactional forms that work well, with or without JavaScript; leveraging GPS capability on your phone, but not...

Aviva Rosenstein – Working with UX in an Agile Environment

[ Transcript Available ] Integrating UX into an Agile workflow has historically been a bit of a challenge. This could be due to a general lack of communication with the development team, or not feeling like the proper time or value is given to UX within the organization. Through her research, Aviva Rosenstein discovered that many problems people were having are commonplace. Additionally, she found that others had actually already worked out solutions to some of these. In her virtual seminar, Making UX Work with Agile Scrum Teams, Aviva discusses the position of UX on Agile teams and some of the problems they face. There were a bunch of great questions from the audience during the live seminar and Aviva joins Adam Churchill to answer some of those in this podcast. How do you manage the change from Waterfall to Agile? Are requirements fairly well defined before the Agile process? If the designers are working sprints ahead, then how much time are they also spending on the current sprint? Where do research and testing fit into the Agile process? Can you give some examples of UX tasks that are estimated? What are some best practices for documenting design in this process? What’s the development team’s role in UX design? How do you handle technology limits in UX design? Are there UX success measures for new products? Can a dedicated UX design team work successfully with product development teams in this scrum environment? Recorded: September, 2014 [ Subscribe to our podcast via ?This link will launch the iTunes application.] [ Subscribe with other podcast applications.] Full Transcript. Adam Churchill: Welcome,...

UIEtips: Misconceptions about Collaboration

In today’s UIEtips, Dan Brown of EightShapes discusses the three ways in which people misunderstand collaboration. You’ll be much more successful encouraging collaboration with an understanding of these misconceptions. Want more of Dan’s thinking about design teams and collaboration? Join us on May 15 when he presents our next virtual seminar, Make Collaboration Happen, Even with Stubborn People. Here’s an excerpt from the article: Sometimes, people think of collaboration in very simple terms, ignoring the planning, structure, and organization it requires. There are three common misconceptions that oversimplify collaboration, as discussed next: Throw smart people together. Suffice it to say that working with smart people is satisfying and challenging. But collaboration isn’t just about smarts. It’s about providing a framework for working together. Just as important as intelligence is a willingness to work within the framework. Read the article Misconceptions about Collaboration. How do you encourage collaboration in your team? Tell us about it...