u42151496992730910318fm23gp0

No pretendo avivar los supuestos conflictos entre cargos, hasta que hoy leí un artículo así. Sí, es un artículo sobre los monos programadores y los leones del diseño. El origen es el siguiente: un usuario planteó una pregunta en cierta comunidad:

El desarrollador se niega a reproducir el diseño según las anotaciones de la UI. ¿Cómo hacerle entender la importancia de una reproducción precisa para que modifique el código?

Cuando un ingeniero de desarrollo pregunta repetidamente «¿qué sentido tiene moverme 1 píxel aquí? ¿Por qué tengo que perder el tiempo en esto?» y se niega a modificar, ¿cómo lograr que este desarrollador entienda y reconozca la importancia del cambio?

¿Por qué muchos diseñadores visuales en China tienen que perseguir a los ingenieros para que modifiquen esos detalles que, aunque parecen muy menores, e incluso insignificantes —pero que para el diseñador son muy importantes—, enumerando los problemas uno a uno, y aun así no obtienen una respuesta positiva del ingeniero? Por ejemplo, he oído a colegas decir que los ingenieros de Frog, para no afectar el trabajo de los diseñadores visuales, desarrollaron ellos mismos un software para comprobar la fidelidad del diseño y hacer revisiones y correcciones.

¿Qué razones hay detrás de que la implementación del diseño de un producto sea tan difícil? ¿Es porque los diseñadores no entienden de código? ¿La conciencia estética de parte del personal técnico? ¿La mentalidad de las grandes empresas u otras razones? ¿Cómo se resuelve esta situación? ¿Hasta qué época u oportunidad se podrá resolver?

Bueno, como era de esperar, la respuesta más votada fue esta.

Por limitaciones de espacio, por favor copien el enlace en el navegador para ver el texto completo. El enlace es: http://zhi.hu/8lyF

A lo largo del artículo, el autor no escatima esfuerzos para difamar y burlarse de los diseñadores, incluso desvía el tema. En el texto se escribe:

Para el desarrollo de software, el trabajo del programador es imprescindible. El trabajo del diseñador es opcional.

Si nadie hace diseño, el software también se puede usar. De hecho, hoy en día con la tendencia al diseño plano, muchos desarrollos, como iOS, aunque sus plantillas por defecto no son bonitas, tampoco son una casa sin terminar. Pero si nadie escribe código, entonces no hay ni mierda.

La importancia del trabajo determina quién escucha a quién. Así de simple.

Bueno, después de leerlo, lo único que siente Jingdian es: ¿esto es la mafia o un exceso de autoconfianza? Si la base de usuarios determina la calidad de las respuestas, no lo dudo en absoluto. Además de expresar un ligero rechazo hacia esta comunidad, Jingdian también quiere escribir algunas reflexiones y experiencias propias sobre la relación entre diseñadores y desarrolladores en la realidad.

Primero, dejo clara mi postura: Jingdian es diseñador y entiende algo de código y de producto.

Todo comenzó por 1 píxel, ¿se cambia o no?

Como diseñador responsable, ¿es importante un píxel para ellos? Si se dice que no es importante, entonces Jingdian considera que no es un diseñador cualificado, porque es el trabajo propio del diseñador.

Si se dice que es importante, algunos dirán: en este mundo no hay nada perfecto; tranquilo, tranquilo, no cambiarlo no es gran cosa, ¡no le des más vueltas!

Cuando acuden al desarrollador para pedirle que corrija el problema, el desarrollador puede decir que cambiarlo supone mucho trabajo y tiempo; además, es solo un problema de un píxel, no tiene gran impacto, no lo cambies.

El product manager dice: nuestro objetivo final es garantizar una iteración rápida del producto; basta con asegurar que las funciones principales funcionan. No hace falta ajustar 1 píxel, es perder el tiempo~

¡No le des más vueltas, no le des más vueltas, no le des más vueltas!

En ese momento, un diseñador que sepa tomarse las cosas con filosofía probablemente abandonará esa obstinación. Aunque no esté conforme, no tendrá más remedio y pensará: si no se cambia, no se cambia; todas las cosas son imperfectas.

Con el paso del tiempo, los problemas de 1 píxel van aumentando. Finalmente, cuando cientos de estos problemas se acumulan, un buen día el usuario dice: «¿Por qué este software (o página web) es tan feo? ¿Cómo habéis hecho el diseño? ¿Es que no tenéis capacidad?»

Todos los que rodean al diseñador: «Esto es un problema de tu diseño. ¿No puedes diseñar bien? ¡Tu nivel es un problema! ¡Tu actitud es un problema!»

Diseñador: «…»

Creo que esto ocurre a nuestro alrededor. Al final, un software (o página web) descuidado sale a producción. En cuanto a la acogida del mercado, ya sabes…

Seguro que en ese momento al diseñador le corren diez mil alpacas por dentro.

Un mal producto nace de innumerables concesiones y desalineaciones de un píxel. En la actualidad, con una homogeneización tan severa de los productos, es natural que los usuarios elijan productos con interfaces bonitas y fáciles de usar.

¿Si nadie hace diseño, el software también se puede usar?

Pues sí, se puede usar. Sin diseño, el software se puede usar absolutamente, solo que es un dolor de cabeza usarlo. Por ejemplo, cuando la humanidad estaba en la era primitiva, todos comían carne cruda y nadie lo veía mal. Después, un idiota al que le gustaba inventarse líos (disculpas por usar esa palabra, perdón a todos) dijo: «Oye, en realidad la carne asada con fuego está más rica». Calculo que muchos le dijeron: «¿De qué estás hablando? La carne cruda está rica; con comer carne cruda basta. ¡Asarla es un lío!». Pero al final la carne cocinada venció a la cruda, y el resultado es que después nadie comía carne cruda. Lo que Jingdian quiere decir es que arreglárselas no es imposible, pero arreglárselas ya no puede satisfacer las necesidades estéticas, cada vez más altas, de la gente de hoy. La gente no solo necesita comer, sino comer hasta llenarse, y además comer bien.

El valor de la existencia del diseño es el mismo. En cuanto a las palabras de alguien en Zhihu, diciendo que el programa es obligatorio y el diseño opcional, Jingdian, además de «jeje», también quiere soltar una habilidad de provocación: «En realidad el programa tampoco es opcional, porque comer es lo opcional, vivir es lo opcional, ¡y todo lo demás que se vaya al diablo! Amigo, ¿no crees?»

Cuando los diseñadores empiezan a escribir código y los programadores a probar diseño, ¿qué estás haciendo tú?

En realidad, el problema del 1 píxel no es ningún problema. Cuando el diseñador completa el diseño, con un diseño meticuloso y anotaciones claras, los desarrolladores que siguen el diseño consiguen una fidelidad muy alta, básicamente del 80 % al 90 %. En cuanto a esos pequeños detalles, Jingdian recomienda a los diseñadores que se comuniquen y coordinen activamente con los desarrolladores para resolverlos. Creo que la mayoría de los desarrolladores están muy dispuestos a ayudarnos a resolverlos. Por otro lado, en el proceso de comunicación, los diseñadores también deben entender, a través de la cooperación con los desarrolladores, cómo reproduce el desarrollador el diseño, cómo se escribe el código, cómo hacer que el layout sea razonable, qué puntos se pueden evitar y en cuáles se puede pensar junto con el desarrollador para encontrar una solución.

Durante el proceso de desarrollo de apps de Jingdian, en el ordenador está instalado el mismo entorno de ejecución que el de los desarrolladores (Xcode), y usa git para mantener el código sincronizado con el de ellos. Esto ayuda a entender el proceso de creación del software; cuando es necesario, de paso podemos aprender algunos trucos de ajustes de estilo. Para el diseñador, esto aporta más conocimientos que ayudan a materializar el diseño; para el desarrollador, sin duda le encantará que hagas esto, porque tiene cerca a alguien que también sabe escribir algo de código, que le ayuda a resolver problemas en lugar de lanzarle preguntas y desentenderse. Así nacen los grandes colegas.

En este proceso está ocurriendo un fenómeno muy bueno: gracias a la mejora de vuestra relación, como diseñador, cuando el programador se encuentre con problemas de selección de color o con algunos problemas simples de imágenes, puedes ayudarle muy fácilmente; incluso puedes instalarle Photoshop y enseñarle poco a poco a hacer algún procesamiento gráfico sencillo.

Así se genera la colaboración mutua y una comunicación armoniosa. En ese momento, ¿qué estás haciendo tú? ¿Escribir en Zhihu un manifiesto lleno de acidez, o quejarte sin parar de la otra parte?

Diseñadores y desarrolladores excelentes: comunicación y comprensión mutua

En realidad, siempre hemos insistido en la comunicación. ¿Qué es comunicación? El intercambio entre ambas partes se llama comunicación; la explicación unilateral mientras la otra parte se muestra indiferente no es comunicación. Antes asumimos que diseñadores y desarrolladores son razonables y con caracteres no tan opuestos. Pero, ¿y si te topas con alguien con quien no congenias? ¿O si la otra parte simplemente no quiere cambiar ese 1 píxel? Puede deberse a:

  • 1. El diseño no es lo bastante cuidadoso y hay cambios frecuentes. Diseñadores, imagínense la situación de hacer algo para un cliente y tener que modificarlo hasta escupir sangre.
  • 2. Si el diseño es cuidadoso y las anotaciones completas, pero la fidelidad de la reproducción sigue siendo baja, tan baja que resulta insoportable, entonces, además de la comunicación, tienes ante ti un problema de competencia y actitud. Si es el primer trabajo conjunto, podemos intentar comunicarnos; con buena actitud por ambas partes, la otra parte generalmente estará dispuesta a ayudar. Hay otro caso, el que más preocupa a todos: que la otra parte se muestre extremadamente poco cooperativa. Entonces necesitamos recurrir al PM o a tu jefe como intermediario para coordinar y resolver el conflicto con éxito. Recuerda que en esa situación el diseñador no debe ponerse demasiado quisquilloso; de lo contrario, sería una confrontación de poder a poder en la que ambos acaban perdiendo.
  • 3. Cuando el diseñador ha hecho el esfuerzo de ser comprensivo y empático como se describe en el apartado 2, pero la otra parte sigue sin cooperar, causando al final problemas en el producto, entonces ya no es algo que el diseñador pueda resolver. Confía en que tus superiores o líderes tendrán una comprensión y un juicio más profundos de la situación. Lo único que debes hacer es cumplir con tu trabajo a la perfección, sin descuidos. Porque la calidad del producto final ya no está bajo tu control. Deja que fluya. Busca tu satisfacción personal por otras vías.
  • 4. No existe un mecanismo completo de reporte de bugs y control de calidad; los problemas se atribuyen a diferencias de percepción individual en lugar de a la estandarización de los procesos.
  • 5. Mala comunicación. Sé que usted, diseñador, está diciendo «cambia, cambia, cambia»; pero el desarrollador puede estar en «… (ni siquiera te hace caso)».

Para nuestros queridos desarrolladores

  • 1. Sabemos que estás muy ocupado, que cada día ves una cantidad infinita de código hasta que se te cansan los ojos y tienes innumerables bugs que corregir; pero tengo muchas ganas de aprender un poco de código para aliviar tu dolor.
  • 2. Sabemos que no eres un fanático del código de bajo nivel y sin gusto; en tu interior seguro que hay una búsqueda de la perfección.
  • 3. Por favor, comprende que la comunicación es bidireccional. Muchas veces necesitamos que le digas al diseñador, que no sabe nada de código, cómo hacerlo mejor.
  • 4. Sabemos que el código conciso, elegante y de alta eficiencia es tu búsqueda de toda la vida, pero trabajar junto con el diseñador para corregir un problema de un píxel quizá también sea divertido, ¿no?
  • 5. Nuestro objetivo final es el mismo: crear un producto que satisfaga a las personas. Confía en la profesionalidad del diseñador, aunque quizás tengas más talento que él.
  • 6. El diseñador está muy dispuesto a ayudarte a instalar en tu computadora algunas pequeñas herramientas que te faciliten el desarrollo de interfaces.
  • 7. Por favor, no vuelvas a decir cosas tan hirientes como: "Si el programador supiera usar Photoshop, ¿para qué necesitaríamos a los diseñadores?"

Para mí mismo: el diseñador que lucha por 1 píxel

  • 1. Exigirte estrictamente a ti mismo nunca está mal. Toma en serio cada uno de tus borradores de diseño y cada 1px.
  • 2. Si has sufrido el maltrato de clientes exigentes (la parte contratante), reflexiona: ahora que eres la parte contratante, ¿cómo tratas a la "parte contratada"?
  • 3. Si un píxel se puede ajustar una vez, no lo ajustes dos veces. Si has ajustado repetidamente muchas veces, mejor discúlpate con el desarrollador y luego aprende a ajustarlo tú mismo.
  • 4. Aprende código simple. En realidad no es tan difícil, incluso es bastante divertido. Pide ayuda a los ingenieros, pídeles que instalen un entorno de desarrollo en tu computadora; seguro que están encantados de ayudarte.
  • 5. Nuestro objetivo final es el mismo: crear un producto que satisfaga a las personas. Confía en la profesionalidad del desarrollador, aunque quizás tengas más talento que él.
  • 6. Cree que en el futuro la distinción entre profesiones será cada vez más difusa. Tú eres un diseñador increíble que sabe escribir código, o quizás un gerente de producto que entiende de diseño. ¡Que ellos te envidien!
  • 7. Intenta creer que cada desarrollador es encantador y bondadoso. Si no puedes creer lo anterior, por favor no dejes de buscar.

Por último, amo a cada diseñador e ingeniero de desarrollo que trabaja con seriedad y dedicación, que sabe esforzarse y tiene aspiraciones.