I’ve been thinking a little bit lately about learning some more about code. Doing a bit of skills development.
Don’t laugh, programmers.
As I see it, there are two schools of thought.
School A: Specialisation
I’m going to hand over to Jonathan Korman again to take us throught this school of thought:
The work done, and the skills needed to do [Information Architecture and Interaction Design], differ considerably between the two. Just as few people can fully master the skills of both graphic design and IA, few people will master the skills of both IA and IxD. It serves both organizations and practitioners for people to specialize.
In this school, you need a different person with specific expertise to take on each separate task in a project. Heaven’s knows where they draw the line between IA and IxD … does the IA just hand over a sitemap perhaps? (nice work if you can get it). Jonathan would tell me that I’m mad to even think about learning how to code my own templates. Jonathan would be too busy tell me off for doing IA and IxD.
School B: Multitasking
Whilst I’m sure that School A has lots more proponents than just Jonathan, School B sure has a whole lots of cool kids enrolled. Loudest kids in class are the guys over at 37 Signals. In their book, ‘Getting Real’ they said that 37 Signals would ‘never hire an Information Architect’ because their skillset is too narrow.
The whole ‘Getting Real’ methodology (which I’ve just finished reading and I’ll digest and post on shortly…. ew, that sounds a bit gross, doesn’t it!) … anyways, the methodology is based on keeping teams as small as possible and getting to code as quickly as possible.
There are lots of great things about this methodology in this day and age and I’m keen to find a way to embrace it in the way that I work. It seems for me that the best way for me to do that is to learn how to output my ‘wireframes’ as code… start building something that people can play with and (potentially) use for the project build. (Am I kidding myself?! Maybe).
At the moment, the closest I’d got to that is outputting Visio as HTML. That’s yukky for everyone and almost useless. How much more useful if I could output some nicely formed code that real people could play with? (And, also, how wickedly and geekily cool would I feel?! Very much, I think).
Eh. Even as I write this it feels like a fait accompli.
Garrett Dimon refers to people who have my would-be skillset as Front-End Architects. His required skillset for these people includes:
- XHTML
- CSS (1,2, and 3)
- Cross-Browser and Cross-Platform Compatibility
- DOM Scripting
- AJAX
- Flash
- Progressive Enhancement and Graceful Degradation
- Accessibility
- Usability
- Information Architecture
- Interface Design
- Visual Design
- Presentation Logic (ASPX, Rails Views, etc.)
- Business Rules & Logic
More from Garrett at Digital Web Magazine where he writes about HTML prototyping and agile development methodologies.
That’s a big ask I think. If I could do all of that I think I’d go back to the late 1990s and call myself a webmaster ;)
But seriously. I’m not trying to become a walking web agency… I just need whatever skills are best to articulate my IA and Interface Design into a front-end prototype that’s not Visio.
So, this is where I need your help.
What do I need to learn? And how do you think is the best way to do it?
I need acronyms and references people. Or a reality check, if you think I’m utterly insane.
Let me have it :)
Technorati Tags: agile, HTML+prototypes, getting+real, 37+Signals
Leisa
If you insist on turning to the dark side, and you are looking (i guess) for a more concrete visualisation of a proposed design/architecture, I’d stick with stuff that has some semblance of being standards-based (to help take care of the cross-browser/cross-platform compatibility) – XHTML, CSS, AJAX and Ruby on Rails (a 37 Signals forte).
I’d stay away from anything that only works in a single environment (most Microsoft stuff like ASP) even if that environment represents 95% of the world’s desktops! You might also be interested in looking at Mozilla’s XUL (XML User interface Language) – info at http://www.mozilla.org/projects/xul/ ; and from the intro:
“XUL (pronounced “zool”) is Mozilla’s XML-based User interface Language that lets you build feature-rich cross platform applications that can run connected or disconnected from the Internet”
BTW – you’re probably certifiable to want to do this, but that shouldn’t stop you – I find it’s a pre-requisite