Estética al diseñar software

Diseñar software, como muchas otras actividades interesantes, conlleva tanto ciencia como arte [Knuth74]. La actividad, por tanto, tiene aspectos objetivos y subjetivos. Lo objetivo y lo subjetivo tiene cada uno su debida preeminencia. La objetividad predomina en ciencias mientras que en las artes predomina el cultivo de la subjetividad. Cultivar la subjetividad implica investigarla, tanto la propia como la de otros involucrados en la actividad. La subjetividad de quienes entran en contacto con el software, ya sean usuarios finales, personal de operaciones u otros diseñadores, es un aspecto importante que un diseñador profesional de software debe investigar —como ya lo han dicho muchos maestros diseñadores y que se refleja en aquel proverbial mantra: involucra a tus usuarios al hacer tus diseños. La pertinencia de tal investigación suele ser evidente al interpretar aquello que es crítico para el éxito en software de una manera más amplia y profunda que lo usual, por ejemplo la usabilidad.

El ejercicio estético en diseño de software puede estar presente en todas las tareas asociadas. Desde la incepción del concepto arquitectónico, la eclosión de las estructuras internas, las aserciones lógicas vitales, etcétera; y, por supuesto, el balance de forma, color y contraste en la interfaz visible para el usuario final. La búsqueda del buen gusto estético es una dimensión del acto de diseñar, es un modo de interpretar la realidad del software. Modo que el diseñador invoca por demanda para asistirle al tomar decisiones de diseño. Puede llamársele «el campo estético» en analogía con la investigación en ciencia física, donde el concepto de «campo» sirve para identificar una magnitud distribuida en todo espacio y mediante el cual ocurren acciones a distancia, v.g., campo eléctrico, campo gravitatorio, campo de Higgs en física de partículas elementales.

El campo estético en software podría ser atendido por un solo diseñador, pero es poco frecuente encontrarse con un Picasso o un van Gogh del diseño de software. Por lo que, de nuevo, la cooperación entre varios profesionales en términos de igualdad es requerida. En tal caso no se trata de un “yo sé cómo hacerlo, mira y repítelo indefinidamente” sino más bien como una invitación a indagar, primero, qué es estética y luego a aproximarse al cultivo de las condiciones para el goce estético. Es, en otras palabras, una invitación a la reflexión estética. ¿Por qué esta invitación es relevante? Pues, en parte, porque las situaciones de diseño poseen un contexto específico cuyo aspecto subjetivo tiene escasa probabilidad de ser transferible a un contexto diferente. De ahí que sea recomendable ejercer destreza para lograr juicios estéticos en cada situación particular de diseño.

Maestros diseñadores de software, como Peter Coad, hace ya tiempo que identificaron este ejercicio de calidad que en Japón llaman «miroyokutakihinshitsu» —literalmente: «las cosas han ido bien». La idea se relaciona con la experiencia de usar software que no sólo funciona correctamente, sino que conlleva un evento fascinante, atractivo, encantador, que produce satisfacción emocional.

La estética reflexiona sobre la relación entre objeto y sujeto desde el punto de vista del impacto que los atributos del objeto tienen sobre los sentidos del sujeto, y sobre el efecto de dicho impacto. Por ejemplo, el efecto emocional al lograr una tarea o al obstaculizarla.

La estética no sólo trata de los impactos positivos en la sensibilidad del sujeto —eso sería muy superficial o sesgado— sino también de los negativos. Un caso donde el objeto estético es una experiencia personal, de hechos sensibles innegables, es el repentino mensaje de Visual Studio 2012 cuando estoy usando el editor e indica “Waiting for a background operation...”. Mensaje que permanece por más de treinta segundos sin que como usuario pueda hacer nada, y luego esa instancia de Visual Studio termina y se reinicia otra. Ocurrencia en la que he perdido algo de trabajo y tiempo, pero principalmente concentración. Sin duda hubo decisiones de diseño explícitas para dichas ocasiones por parte de los diseñadores del producto. ¿Qué tipo de emociones ocurren como resultado de esas decisiones de diseño? ¿Qué efecto tienen en mi concentración?, pues la experiencia es como estar ejecutando un juego malabar con cinco objetos simultáneos y provocar que todos caigan al piso abruptamente. Recuperarse de tal situación implica retomar otra vez los objetos, uno por uno. ¿Cómo impacta eso en mi productividad? Por otro lado, con referencia a Daniel Goleman, la intensidad de la frustración acarrea tal fuerza emocional que me sirve como combustible para empujar algo en mis intereses: desear con mayor vehemencia aprender a diseñar software con calidad.

En suma, y a manera de conclusiones provisionales, (1) la reflexión estética en diseño de software necesita ser parte de una reflexión autocrítica más amplia que abarque la totalidad de la creación de soluciones basadas en software. (2) Como corolario de tal reflexión, un regreso personal a los básicos estará más que justificado; por ejemplo, a la auto-reeducación estética.

Referencias

[Knuth74] Donald E. Knuth: Computer Programming as an Art. CACM, December 1974

[blog-050216] Software Pioneers in general, a software quality view in particular

[blog-070113] Do you amass nasty feelings about your designs?