Hardcodear o no hardcodear, that is the question

Hoy me pasé horas hurgando código. Resulta que quería cambiar un par de cosas de la home de uno de nuestros sitios, así que me puse a analizar cómo cambiar cada componente de los que arman la home.

El detalle es que el sitio está programado sobre Symfony, framework que no usé en mi vida. Por lo que estuve leyendo en los últimos tiempos, se ve muy bien, pero claro, si uno no lo maneja se le complica bastante agarrarle la mano a la primera.

Cuestión que me puse a rastrear todos los archivos que tenía que tocar para cambiar los componentes. Cuando los encontré, intenté entender el código. Me encontré con Propel, que tampoco lo había visto en mi vida -yo, en mi ignorancia, buscaba el SQL viejo y peludo… cosa que no iba a encontrar dentro de la symfonyada :)

Probé cambiar varias cosas, logré unas mínimas pero no me convencía… Lo que yo quería no lograba hacerlo. Rompí, volví para atrás, rompí de nuevo, volví una vez más, modifiqué, hice una gilada y rompí dos, y así hasta que me di cuenta de que el día se estaba acabando y yo seguía con la freaking home.

En ese momento pensé: “pero a ver, ¿cada cuánto voy a necesitar cambiar esto? Si igual no voy a hacer un ABM para manejarlo desde el backend, ¿qué sentido tiene armar un componente completo para algo que va a ser prácticamente estático?”

Y ahí apareció en mi mente el diablillo que me susurraba “hardcodealo y listo”.

No me pude resistir: lo hardcodeé. Lo que era un componente que traía todo dinámicamente, lo convertí en un componentito estático minúsculo, cerrado, hardcodeado y que renderea en media millonésima de segundo (dato inútil, si el otro también iba a las chapas :P ). Claro, es un código estático y nada elegante, pero no le hace mella a nada, muestra lo que debe mostrar y ya.

Me quedé pensando entonces: muchas veces uno se mata programando cosas que en realidad son innecesarias. El miedo a hardcodear de los programadores es el mismo miedo a usar tablas de los diseñadores. A veces, algo que hardcodeando se solucionaría en medio minuto causa tanto terror en un programador que termina haciendo código inútil. Como cuando un diseñador reinventa la rueda creando una tabla con divs, sólo porque no se atreve siquiera a tipear “table”.

Ahí están mis archivitos con componentitos estáticos. Hechos en medio minuto.

Y me duermo con la conciencia tranquila, sépanlo, porque no rompí la lógica de nada, no tiré el MVC a la basura ni generé incoherencias de ningún tipo. Sólo me dejé llevar por la tentación de no escribir código al divino botón.

A veces hardcodear sí que rinde. Lo único vital es saber cuándo.

Esta entrada fue publicada en Programación y clasificada en , , . Marcar Permalink. Dejar un comentario . Deja un trackback: URL del Trackback.

One comentarios

  1. Tana
    Publicado el 21/03/2010 en 3:36 | Permalink

    … O será que este es el consuelo de los que somos malos programadores :D

Deja tu comentario

Tu email no será publicado ni usado para spamearte Los campos requeridos tienen un *

*
*

Podés usar estas HTML tags y atributos: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong>

Subscribe without commenting