Actualización miércoles 25 de octubre: Agregué cita de Shaun Inman.
Paul Graham --un reconocido ensayista sobre tecnología-- menciona un punto interesante en sus 18 errores que matan a las start-ups: prácticamente no hay start-ups (empresas de tecnología recién nacidas) con un solo fundador.
Paul enlista algunas razones --enteramente sólidas-- por las que se da este fenómeno, pero si me lo permiten añadiré otra: no puedes diseñar, desarrollar, redactar o administrar simultáneamente.
El diseño guarda muchos paralelos con estas actividades, inclusive puedes ser bueno independientemente en las cuatro áreas, pero el llevar a cabo dos de ellas simultaneamente es un talento tan raro como escribir con las dos manos simultáneamente. Y en idiomas distintos.
Si te das una vuelta por las bolsas de trabajo en línea, es fácil notar que muchas empresas mexicanas (en otros países probablemente tengan más sentido común) solicitan programadores con nociones de diseño, bajo la premisa de que se pueden ahorrar al diseñador. Por lo general son empresas medianas sin un perfil tecnológico, que necesitan (o creen que necesitan) una solución web con un back-end en PHP y MySQL. Encima les quieren pagar una bagatela.
La gente con talento en diseño y desarrollo es extraordinariamente rara (aunque existe), la gente que hace las dos cosas al mismo tiempo es la mítica sirena del diseño web. Diseñar y desarrollar es como ser juez y parte, necesariamente vas a sacrificar uno por lo otro. Cuando diseñas pensando en el desarrollo, inconscientemente dejas fuera algunas características que sabes que son difíciles de programar; y cuando desarrollas pensando en el diseño dejas que el sistema te domine: haces una representación visual de tu modelo mental del desarrollo.
Uno de estos raros talentos ambidiestros es Shaun Iman, creador de Mint, un sistema de estadísitcas (tracking) para sitios de internet. Via email Inman explica el proceso de diseño y desarrollo de Mint:
Con Mint comencé con la información que quería ver acerca de mis visitantes, y luego diseñé la interfaz que presentara la información de la manera más útil posible. Sólo después de esto comencé a pensar cómo se guardarían los datos. La base de datos de Mint se influenció más por consideraciones de usabilidad y diseño que por nociones de mejores prácticas o normalización [de base de datos].
[Pregunta para los sistemólogos allá afuera: ¿diseñar una base de datos con consideraciones de usabilidad y diseño es malo?]
Este vicio se nota inclusive aunque estés escribiendo HTML y CSS en paralelo al diseño (porque el HTML y el CSS no se programa, se escribe). La mayor parte de los diseñadores web preferimos diseñar en papel o en Photoshop antes de empezar trasladarlo al markup language. Alguien ambidiestro en el diseño y el desarrollo necesariamente tiene que separar las dos actividades o el producto será un desastre. Inclusive es preferible tener a dos o más personas especializadas en su área, a fin de no viciar alguno de los dos aspectos. Lo mismo aplica para la redacción y la administración.
Sin embargo, sí conviene que cada elemento del equipo sea multi-talentoso. Es una característica invaluable en start-ups que practican las filosofías de desarrollo de moda como el Getting Real y el Extreme Programming, porque dejan de lado la documentación y la planeación para aventarse de lleno al desarrollo del producto. En mi experiencia, entre menos sepa el desarrollador de diseño, más será la documentación que hay que escribir. Un desarrollador que sepa de diseño sabrá qué fuente, tamaño, interlínea y color puse en el prototipo, así como la distancia entre cada elemento. Y el efecto es acumulativo: si sabe de usabilidad, redacción, traducción y demás, puedo dejar huecos cada vez más grandes en los prototipos por que el desarrollador los llena con conocimiento de las convenciones de cada disciplina.
Así que la ambidestreza, después de todo, no es talento desperdiciado.