Como diseñadores, ¿han aprendido a codificar? Si es así, ¿cuál fue su motivación para hacerlo?

Estas son las razones por las que aprendí a codificar:

1) Capacidad para realizar diseños

Como diseñadores e ingenieros, también somos inventores. Nos gusta crear cosas nuevas. Pero a diferencia de los ingenieros, los diseñadores tradicionalmente no pueden ver una idea a través de un prototipo que funcione sin ayuda. Eso puede ser inmensamente frustrante. Quería poder tomar cualquier idea que se me ocurriera y construir un prototipo funcional. No necesitaba estar bien diseñado o ser eficiente. Solo tenía que funcionar.

2) Como parte de su proceso, debe poder interactuar con algo con lo que desea que otros interactúen

Si estoy creando algo para que la gente interactúe, necesito replicar esa experiencia para mí mientras estoy diseñando . Podría emparejarme estrechamente con un ingeniero (cediendo a su horario e interés), pero confiar en alguien más para una parte tan central del proceso de diseño es una solución alternativa en el mejor de los casos.

3) sumergirme en los materiales

Como cualquier buen artesano, es esencial conocer los materiales con los que está trabajando. Sería imposible diseñar una gran silla sin un conocimiento profundo de las diversas posibilidades y limitaciones de la madera / metal / plástico. Como diseñador, es su trabajo comprender todo lo que pueda sobre el problema. Eso incluye los materiales con los que está trabajando.

4) Deje que los ingenieros se concentren en lo que hacen mejor

Los ingenieros se utilizan mejor escribiendo código bien diseñado y de rendimiento. No están allí para explorar exhaustivamente los caprichos de un diseñador. Si puedo completar algunas iteraciones de diseño más con un código de calidad prototipo por mi cuenta, debería hacerlo.

5) Realmente disfruto programando

Los ciclos de retroalimentación de diseño pueden ser largos. Encuentro que los rápidos ciclos de retroalimentación de escribir y ejecutar código son muy satisfactorios y algo adictivos. Puedo perderme en el código por horas.

6) Reduzca las conversaciones ineficientes con colegas ingenieros

Con una comprensión técnica básica de lo que implica construir un producto de software, elimina toda una clase de discusiones superfluas y posibles conflictos de implementación con los ingenieros con los que está trabajando. Esto libera una gran cantidad de tiempo y energía que se puede dirigir a cosas más significativas. En mi opinión, tener este tipo de superposición es un factor crítico en la diferencia entre crear buenos productos y crear excelentes productos.


Si está interesado en aprender Ruby on Rails, no puedo recomendar este tutorial lo suficiente: Tutorial Ruby on Rails (3ª ed.)

Sí, he incursionado en Java, Python, Javascript, Processing y Arduino.
Lo bueno de la programación es que los conceptos de programación se transfieren a través de los idiomas. Una vez que aprende uno, ha aprendido los conceptos básicos del resto.

Hace apenas un año, estaba en la cerca. Pero ahora creo firmemente que los diseñadores deberían aprender a codificarlo y aceptarlo. La programación me hace un mejor diseñador, no le resta valor.

1. Aprendí a entender las limitaciones de ingeniería … y las posibilidades.
He escuchado inquietudes en las que un diseñador que también es responsable del código también podría pensar de manera menos creativa. Pero no estoy luchando por diseños creativos, estoy luchando por diseños utilizables, amigables y atractivos. La codificación abre mis ojos a muchas más posibilidades de las que limita. No tengo que especular sobre cómo podría funcionar; si algo funcionará y puedo evaluar lo fácil o difícil que podría ser.

2. Me preocupo menos por los detalles generales y me concentro en hacer que los detalles de las interacciones sean sorprendentes .
Si no tiene un gran flujo de trabajo para configurar símbolos y patrones en su software de diseño desde el principio, hacer pequeños cambios estilísticos en varias páginas puede ser una molestia. Con el código, esto suele ser tan simple como ajustar una variable. Me preocupa menos asegurarme de que mis simulacros sean consistentes y centrarme más en las transiciones, animaciones, gestos, definiendo umbrales de interacciones, todo lo que es fácil de olvidar en el contexto de simulacros 2D estáticos.

3. Puedo promover el arte del diseño.
Antes de codificar, los ingenieros enviaban productos que estaban ligeramente fuera de las especificaciones, pero no lo suficiente como para garantizar más tiempo de ingeniería para solucionarlo. Como diseñador que puede codificar, ahora puedo 1) definir mejores especificaciones y los estilos CSS para eliminar las conjeturas de la ingeniería; o 2) implementar los cambios de diseño yo mismo, liberando tiempo de ingeniería. Tampoco me siento culpable al solicitar cambios menores en el diseño de la interfaz de usuario.

4. Estoy preparando mi carrera para el futuro.
No puedo esperar que el diseño de UX en los próximos 5, 10, 15 años sea principalmente aplicaciones. El diseño puede ser en gran medida un proceso visual, en cuyo caso, quiero ser uno de los primeros en explorar ese espacio, no ponerme al día.

Mucho de lo que hablo aquí es en el contexto del diseño principalmente para productos basados ​​en la web, en cuyo caso, el umbral para el aprendizaje es lo suficientemente bajo como para que realmente no haya excusa para que un diseñador no se meta en él. Es un poco más complicado para dispositivos móviles y más allá, pero aún animo a los diseñadores de dispositivos móviles a aprender código por las mismas razones que las anteriores.