(This post was imported from another site.. it's a few months old now)
My background in IT is not very conventional for a Linux Systems Administrator. Much of what I have learnt has been self-taught, with much time and space given to me by my employer. My 'academic' background is in 'psychology and business.' Unfortunately, I failed to get on the pure Psychology BA, therefore did a Joint Honours course in the above.
Having spent over a year now working in the FLOSS business world, there are a few things that I have noticed. In order to improve our own products, we must look to what the competitors are doing. Microsoft work by having tightly integrated products; their MS Outlook and Exchange Server are fantastic examples of this approach. Apple, on the other side, are much more focused on the Desktop and "play applications" such as their iTunes, and Quicktime products. Their focus is on the interface design of a computer, rather than attempting to imitate Microsoft. However, the DRM they use on their iPods is allowing iTunes to get quite a large market share off Windows Media Player.
Where can FLOSS improve?
FLOSS already has applications that are very advanced and stable, and the main issue that users will have is the transition from the 100% GUI (for the end-user) of Windows XP - and the steps Apple have taken to make the switch from MS to apple involve making the interface as easy to learn as possible. One of the things that really impressed me was their MIDI connection interface. You have the input on the left, the outputs on the right, and you drag and drop connection between devices to create loops - it's really intuitive, and beats any MIDI interface I've ever used on windows (not to say there isn't one - but apple's is OS level). Now, I have recently started playing with ubuntustudio = and the FLOSS program JACK does exactly the same thing (it may even be the backend for the apple one it's so similar) - however the interface does exactly the same, but you have to select the two devices then click connect. Whilst picking up on small things like this may seem quite pedantic - it's a solution that programmers can understand and use right away - but to musicians, apple's solution is much better.
Pet hates: -
I do have a couple of pet hates - my first is abuse of the term Web 2.0. To me, Web 2.0 is browser based applications. Should I need to be running a particular operating system, or particular browser to view the Web 2.0 software means, to me, that it's not Web 2.0.
Why is this important to interface design?
Whilst such pet hates may not appear to have an obvious implication for interface design, the lack of open standards and complex proprietary code (FLASH) mean that the experience is very different for users of different operating systems. If you take the software this site is built on (Drupal,) and view it in IE6, IE7, firefox and safari - there are more often than not likely to be differences - due to the way the different browsers interpret the less well documented standards. The advantage of open standards (HTML being probably the most popular) mean that so much more information is open to anyone, despite their OS.
The advantage of developing in FLOSS means that most of it can be used on other systems. Providing a platform agnostic approach is taken from the start - there is a likelihood that the software will be able to work on other Operating Systems. Interface design needs to be a precursor to development, and not so much an afterthought. the main barrier to this is cost - many open source developers simply can't pay to have an extra person on the team who is not directly contributing to code. Let's try and use the research that has been done in this area to develop better user interfaces. Beryl, & the 3D Desktop may be nice, but we need to look at which components actively add to the user experience, and which are simply eye candy. There is a clear differentiation between the two forms of interface - let's hope that FLOSS developers are able to harness the power of projects such as beryl and create a more streamlined - end user focused interface.