Human-Computer Interaction Seminar (Seminar on People, Computers, and Design) is a Stanford University course that features weekly speakers on topics related to human-computer interaction design. The seminar is organized by the Stanford HCI Group, which works across disciplines to understand the intersection between humans and computers.

Details of the current seminar series can be found on Stanford HCI website, whilst the 2009 seminar series can be found on iTunes U. The topics of which are listed below:

Winter 2009

  1. Pario: The Next Step Beyond Audio and Video
  2. Sculpting Behaviour: Developing a Tangible Lnguage for Hands-on Play and Learning
  3. Tap is the New Click
  4. Social Annotation, Contextual Collaboration and Online Transparency
  5. Enlightened Trial and Error – Gaining design Insight Through Prototyping Tools
  6. Computer Graphics as a Telecommunication Medium
  7. Not Invented Here: Online Mapping Revealed

Spring 2009

  1. Firefox, Mozilla & Open Source: Software Design at Scale
  2. Social Enterprise Software Design
  3. The Interaction Design of APIs
  4. Far Away Up Close
  5. What Still Matters About Distance?
  6. How We Use Data to Win the Presidential Election
  7. Social Immersive Media
  8. Launching Creative Communities: Lessons From the Spore Community
  9. Designing Online Communities from Theory

Autumn/Fall 2009

  1. Crowdsourcing Work
  2. Backtracking Events as Indicators of Software Usability Problems
  3. Programming by Sketching
  4. Aesthetic Science of Colour: WAVEs of Colour, Culture, Music and Emotion

Previous talks are also available on iTunes U — with the notable speakers Bill Moggridge, Bill Buxton and Donald Norman featuring — or on YouTube: 2006-07, 2007-08, 2008-09

User Experience Books Free to Read Online

The truly worldwide reach of the Web has brought with it a new realisation among computer scientists and industry professionals of the enormous importance of usability and user interface design. In the last ten years, much has become understood about what works in user interfaces from a usability perspective, and what does not.

The following are free-to-read books on user experience, available online:

Human Computer Interaction

Interaction Design

Web Accessibility

If there are any more you think need or can be added to the list, please leave a comment.

(via The UX Bookmark)

Dieter Rams’ 10 Rules of Good Design

Dieter Rams is a German industrial designer closely associated with the consumer products company Braun and the Functionalist school of industrial design. Many of Rams’ designs — coffee makers, calculators, radios, audio/visual equipment, consumer appliances and office products — have found a permanent home at many museums over the world, including MoMA in New York.

How does Rams’ define good design?

  1. Good design should be innovative — It does not copy existing product forms, nor does it produce any kind of novelty just for the sake of it. The essence of innovation must clearly be seen in all of a product’s functions. Current technological development keeps offering new chances for innovative solutions.
  2. Good design should make a product useful — The product is bought in order to be used. It must serve a defined purpose, in both primary and additional functions. The most important task of design is to optimise the utility of a product’s usability.
  3. Good design is aesthetic design — The aesthetic quality of a product is integral to its usefulness because products we use every day affect our well-being. But only well-executed objects can be beautiful.
  4. Good design will make a product understandable — It clarifies the product’s structure. Better still, it can make the product talk. At best, it is self-explanatory.
  5. Good design is honest — It does not make a product more innovative, powerful or valuable than it really is. It does not attempt to manipulate the consumer with promises that cannot be kept.
  6. Good design is unobtrusive — Products fulfilling a purpose are like tools. They are neither decorative objects nor works of art. Their design should therefore be both neutral and restrained, to leave room for the user’s self-expression.
  7. Good design is long lived — It does not follow trends that become out-dated after a short time. Well designed products differ significantly from short-lived, trivial products in today’s throwaway world.
  8. Good design is consistent in every detail — Nothing must be arbitrary. Thoroughness and accuracy in the design process shows respect towards the user.
  9. Good design should be environmentally friendly — Design must make contributions towards a stable environment and sensible raw material situation. This does not only include actual pollution, but also visual pollution and destruction of our environment.
  10. Good design is as little design as possible — Less is more – because it concentrates on the essential aspects and the products are not burdened with non-essentials. Back to purity, back to simplicity.

Many people say it is obvious that Rams’ designs have been influential on Jonathan Ive of Apple, designer of such products as the iMac, iPod, and iPhone, as can be witnessed particularly in the iPhone’s calculator application, whose design is based on the Braun ET66 calculator designed by Rams.

More

The Design Museum in London are holding a Dieter Rams’ exhibition between 19th November 2009 and 9th March 2010. The exhibition will showcase Rams’ landmark designs for Braun and furniture manufacturer Vitsœ, examine how Rams’ design ethos inspired Braun’s entire product range for over 40 years, and assess his lasting influence on today’s design landscape.

My Work Philosophy

Okay, so many of the points below aren’t purely my philosophy, but ideas and principles I have picked up along the way throughout my [development] career. Some relate to the UNIX philosophy, or even the Zen of Python, but wherever they’re from, they can be applied to many other domains.

  • Don’t reinvent the wheel unless you really have to. Borrow code and ideas from elsewhere whenever it makes sense. The web community it great at sharing, just look at the various JavaScript libraries, the huge quantities of APIs or indeed the major players’ developer areas: Google Code, Yahoo! Developer Network, Mozilla Developer Center, Adobe Developer Connection and Dev Opera to name five I regularly refer to.
  • Things should be as simple as possible, but no simpler (Einstein). This idea is really born out of and emphasised by 37Signals’ Getting Real book. Commonly, 90% of people using an application only use 10% of it’s functionality. The key therefore is to find what people use most often and only build that functionality. If there is a requirement to add more, then sobeit. This can also apply to the code-level, the essence here being a balance between over- and under-engineering something.
  • Do one thing well (The UNIX philosophy). It is better to do one thing well, than several second-rate. This could be at the code level — think encapsulation, coupling and cohesion — or indeed at the application level — you’re never going to beat Microsoft Word, but Google and Zoho have developed compelling alternatives, but with far less features.
  • Don’t fret too much about performance — understand how to write efficient code and plan to optimise later if or when needed.
  • Don’t try for perfection because good enough is often just that. This of course is a matter for conjecture. If I were working on a personal project, I may be more stringent on perfection than say, for a client’s application. This doesn’t mean to say the client’s application would be any worse, but rather it is a question of dotting-the-is and crossing-the-ts. It also depends on your perspective and what gains can be made by aiming for perfection.
  • (Hence) it’s okay to cut corners sometimes, only if you can do it right later. I rarely adhere to this! It makes sense to do it right the first time, since bodge-jobs often come back to haunt you and result in double the effort!
  • Don’t fight it; go with the flow. This is somewhat clichéd, but the essence behind this is try to avoid getting stressed out. This isn’t always easy to achieve, but taking a step back from a situation and avoiding politics is important.

I often strive for perfection, which isn’t an entirely clever pursuit since it is almost impossible to achieve. However, in a realm of imperfection, the principles above have helped me to achieve a modicum of decent code throughout the years. They may also resonate and provide inspiration for you.

ColdFusion is 13 years old. That make makes it the daddy of the web world! It does not make it any less hip or useful than the relatively new kids on the block.

Take this scenario. A company I once worked for had what can be described as a business directory built upon a licensed, yet bastardised, version of a popular ColdFusion-based CMS. It didn’t work that well! The decision was made to redevelop the application in Java. It took two years to reach the same level of functionality! What happened next? Ruby-on-Rails is what! The rest is history and beyond the topic of this post.

So, in effect, the application almost went full-circle in its development paradigm — both ColdFusion and Ruby-on-Rails can be considered Rapid Application Development environments, Java, certainly not. Why did the decision makers not stick with ColdFusion and put time aside to actually build it properly in the first place? To put it simply, they lost faith in ColdFusion; it was largely mis-understood.

The weakness of every programming language does not lie with the language itself per se — albeit it can have an important influencing factor — but rather with the ability, or indeed inability, of the developer to leverage the language in the most efficient and optimal way.

ColdFusion, like every other programming language has had and I’m sure still does have its fair share of poor developers; those people simply working with it as a means-to-an-end, rather than those passionate about the language, those people programming without understanding the fundamentals of programming or the implications of their poorly written code. This is apparent from .NET to Java, ColdFusion to Ruby, JavaScript to ActionScript.

Let’s not dilly-dally, bicker or insult one another about which is best, which one is dying and which one is not worth the computer it is compiled on. What is important is to understand the merits of each language and decide which one best suits the application, not only in technical terms, but also in terms of time-to-market, cost of development, availability of a skilled workforce etc.

ColdFusion, whether rightly or wrongly in some people’s opinion, can sit proudly amongst its peers and provide a truly compelling alternative.

Here’s how (in no particular order):

  1. Low Total Cost of Ownership – frequently, ColdFusion is described as expensive, it simply isn’t especially if you consider the natively supported functions. But to put it bluntly, if your company cannot afford the cost of ColdFusion standard, or indeed ColdFusion hosting, you have bigger things to worry about regarding the profitability of the company; you won’t be able to afford much of anything! The problem becomes not the product. ColdFusion applications are quicker to develop and developers are vastly cheaper to employ than their peers in Java or Ruby, just look at ITJobsWatch for examples.
  2. Rapid Application Development – ColdFusion vastly simplifies tasks. What would take other languages numerous lines of code to produce is efficiently encapsulated either in a tag or function or as a setting in the administrator. This is a simplistic yet indicative example: where else can you connected to a database simply with one line of code or indeed simply by name? ColdFusion changed the idea of specifying development time in terms of months and years to weeks and months or small features a matter of hours and days. Simplicity is not the mother or all evil. To be pragmatic, simplification reduces costs.
  3. Rich Internet Applications – ColdFusion may or may not have pioneered the RIA paradigm, but it has played a significant supporting role to Flash and now Flex. ColdFusion natively supports Flash remoting, providing the all important data access tier.
  4. Platform Maturity – ColdFusion 8 is built upon the latest version of Java (1.6). Along with internal improvements to the ColdFusion application, this has afforded ColdFusion unprecedented speed improvements and stability.
  5. Language Maturity – with each major release of ColdFusion comes many language enhancements added to the core. This means that previous addons, for example image manipulation, which came at a premium are now standard. Adobe and other companies that produce CFML engines are now participating in a CFML advisory committee, which aims to set standards for the core language. This is not only a sign of maturity but a letter of intent by the industry that will mean your application will work on any engine, assuming no proprietary functionality is used.
  6. The Ultimate Middleware – ColdFusion sits comfortably between any backend and front end system. Be it interfacing with a host of databases, Java, .NET, COM, Corba or connecting to classic HTML or rich Flash, Flex and AJAX frontends with little or no configuration.
  7. Feature Rich – what other web technology natively supports PDF generation, charting, enterprise-level search, AJAX, image manipulation, Atom and RSS creation, Zip and JAR file manipulation, a server monitor, Flex integration, encryption libraries, all important database connectors, webservice creation, XML manipulation, inbuilt reporting application (similar to Crystal Reports), email, FTP to name but a few? I hazard a guess at none, unless you’re happy to pay a premium.
  8. Platform Independent – since ColdFusion 6, when Macromedia redeveloped the entire application in Java, ColdFusion has been platform independent. You can install it on practically any machine.
  9. OpenSource Alternatives – BlueDragon and Railo are both significant alternatives to Adobe ColdFusion and both have opensource alternatives, the latter of the two having recently joined the JBoss community. Adobe are also considering providing a free edition to academic institutions.
  10. The Future – many commentators have mentioned Hibernate as a significant addition to the next release of ColdFusion, version 9. But having seen the prerelease notes, that is not all that will be added. Alas I’m under NDA, but rest assured, there is going to be a significant intake of breath when developers get hold of the next release. ColdFusion 8 was firmly geared towards middle management with fuzzy additions, ColdFusion 9 is set to re-address the balance with compelling language and functionality enhancements.

ColdFusion evangelism needs to step up a gear! Adobe certainly doesn’t afford much marketing budget to the product, prefering The Community do the hard work. It is not always easy convincing the decision makers that ColdFusion is a good product of choice, without Adobe’s unnerving support, but we have to work hard, break down those barriers, encroach on events outside the comfortable sphere of the ColdFusion world and demonstrate ColdFusion’s match-winning ability.

ColdFusion isn’t dying, it’s simply niche. Every niche has its place.

UPDATE: If you would like to view the ensuing debate regarding ColdFusion prompted by Aral Balkan, feel free to do so. This post should serve as a positive reminder of ColdFusion’s virtues, alongside the need for a balanced and polite debate.

It’s Always Six O’Clock

Two Italians, Eva and Franco Mattes internationally known as 0100101110101101.org and self-styled net art pranksters and hacktivists have been besieging the art world with their clever hacks and elusive digital role-plays for more than ten years.

The two European con-artists use non-conventional communication tactics to obtain the largest visibility with minimal effort. Past works have included staging a hoax involving a completely made up artist, to ripping off the Holy See and spreading a computer virus!

In It’s Always Six O’Clock, the avatar portraits in their series Annoying Japanese Child Dinosaur are attacked by an army of toys, not the digital representations but the real deal this time. From Nintendo and Disney characters to G.I. Joe and Manga, and from medieval knights to Winnie the Pooh, they’re all performing in the theatre of pop culture. Somehow cute yet ruthlessly aggressive at times — Winnie the Pooh appears to be having his head split open — they dominate the exhibition space. In the process, fantasy and collective imagination are fusing into a dramatically charged form of ready-made sculpture.

(Click on the images to see a larger view)

You can see more of their work on their website, 0100101110101101.org.

The Final Wooden House by Sou Fujimoto must be the epitome of good environmental design, but at the same time it is amazingly impractical unless you’re a Hobbit and live in The Shire!

Japanese architect Sou Fujimoto designed the wooden bungalow to be small and primitive. The design is meant to highlight the versatility of lumber.

In an ordinary wooden architecture, lumber is effectively differentiated according to functions in various localities precisely because it is so versatile. Columns, beams, foundations, exterior walls, interior walls, ceilings, floorings, insulations, furnishings, stairs, window frames, meaning all, says Fujimoto. However, I thought if lumber is indeed so versatile then why not create architecture by one rule that fulfills all of these functions. I envisioned the creation of new spatiality that preserves primitive conditions of a harmonious entity before various functions and roles differentiated.

Using large beams of 350 mm square profile cedar and piled on top of one another, Fujimoto created the walls, ceiling, floors and built in nooks. This leaves no definitive lines between each of the structure’s components, thus blending the entire interior of the space together. The function of the small home is defined by how the user adapts to the wood structure. The house is meant to bring a kind of harmony between the built environment and the way the human body behaves within the space.

I thought of making an ultimate wooden architecture. It was conceived by just mindlessly stacking 350mm square.

(Click on the images to see a larger view)

Fujimoto continues, There are no separations of floor, wall, and ceiling here. A place that one thought was a floor becomes a chair, a ceiling, a wall from various positions. The floor levels are relative and spatiality is perceived differently according to one’s position. Here, people are distributed three-dimensionally in the space. This is a place like an amorphous landscape with a new experience of various senses of distances. Inhabitants discover, rather than being prescribed, various functionalities in these convolutions.

 

Architects: Sou Fujimoto Architects
Location: Kumamoto, Japan
Photographer: Iwan Baan

The BMW GINA Light Visionary Model

What do we need the skin of a car for? What’s its purpose? Does it need to be made of metal? In reality we don’t. Wouldn’t it be great if we could have a car with a human like skin that covered all the essential mechanical and structural components of the vehicle. These questions were addressed by the BMW Group design team behind the GINA project.

The key to affecting the development of tomorrow’s mobility lies in our readiness to challenge what is established and in the ability to present new options.

The design team was not just interested in answering the question of how the car of the future will look but primarily wished to explore the creative freedom that it has to offer. Both of these aspects are affected by the requirements that future cars are expected to meet. All ideas that the GINA presents were therefore derived from the needs and demands of customers concerning the aesthetic and functional characteristics of their car and their desire to express individuality and lifestyle. The GINA has an almost seamless outer skin, a flexible textile cover that stretches across a moveable substructure. Individual functions are only revealed if and when they are needed.

(Click on the images to see a larger view)

GINA produces dramatically different solutions that affect the design and functionality of future cars. The GINA Light Visionary Model is an optical expression of selective, future-oriented concepts which provide an example of the manner and extent of this transformation.

You can see more of the GINA on BMW’s web-tv website.

If you’re looking for a stunningly-designed, futuristic-looking, eco-friendly motor vehicle, you need not look any further than the Aptera Typ-1. Forget the pioneering, yet disastrous, General Motors EV1 or the ‘celebrities favourite’, the Toyota Prius, this car has all the looks and innovative technology to match.

The Aptera Typ-1 is a 2-seat, three wheeled passenger vehicle. It is available in both all-electric and series hybrid configurations, at around £20,000/$30,000. Aerodynamic optimisation using computer-based simulations and light-weight composite construction yields a vehicle which consumes only 80 Wh/mi at 55 mph, about half the energy needed to propel the General Motors EV1. On the battery electric model, this means a 120 mile range on 10 kWh of electricity, or around 340 mpg price equivalent. On the hybrid vehicle, it leads to projections of 130 mpg on gasoline alone, or 300 mpg if plugged in every 120 miles.

Aptera Motors emphasizes that safety was not traded off for efficiency, citing crash test simulations and more recently component crush testing as indicating excellent survivability–on par with more conventional vehicles. However, real-world crash test results are forthcoming.

The Aptera Typ-1 features roof-mounted solar panels, always-on climate control, and keyless ignition and entry. High-drag side mirrors are replaced with rear-view cameras, and an in-car touch screen PC serves as entertainment, navigation, and communication system.

(Click on the images to see a larger view)

Take a look at the Aptera Typ-1 Promo Video.

The official website can be found at http://www.aptera.com.

Big City, Little People

They’re Not Pets, Susan, says a stern father who has just shot a bumblebee, its wings sparkling in the evening sunlight; a lone office worker, less than an inch high, looks out over the river in his lunch break, Dreaming of Packing it all In; and a tiny couple share a Last Kiss against the soft neon lights of the city at midnight. Mixing sharp humour with a delicious edge of melancholy, Little People in the City brings together the collected photographs of Slinkachu, a street-artist who for several years has been leaving little hand-painted people in the bustling city to fend for themselves, waiting to be discovered.

Oddly enough, even when you know they are just hand-painted figurines, you can’t help but feel that their plights convey something of our own fears about being lost and vulnerable in a big, bad city.

The Times.

(Click on the images to see a larger view)

 

Slinkachu has a website and a blog.

The book titled Little People in the City: The Street Art of Slinkachu with many more great miniture scenes can be bought from Amazon.

« Older entries