Venía más o menos bien, hasta que...
Veteran Unix admin trait No. 5: We prefer elegant solutions.
Bah, sí; y también la tenemos más grande, y somos James Bond.
El que escribió eso, está entre uno de dos casos:
1) Miente.
2) Jamás en su vida fue sysadmin.
De hecho, recuerdo cuando estaba en la sala de servidores, teníamos un compañero que amaba las soluciones elegantes. Era el que "resolvía" los problemas ya resueltos. El resto de nosotros era consciente de que las cosas debían arreglarse para ayer. Aunque sea con la elegancia de un elefante marino danzando ballet.
Y mientras escribo esto, recuerdo el
manual de los que odian a Unix, que todos deberíamos tener bien leído. Por cierto: hace un tiempo había empezado a traducirlo y me cansé; a lo mejor lo retomo un día de estos.
Por ejemplo, un capítulo de
Unix Hater's...: Consistencia inconsistente:
$: mv file1 -file2
$: mv -file2 file1usage: mv [-if] f1 f2 or mv [-if] f1 ... fn d1
(‘fn’ is a file or directory)
No, no hace falta que me expliquen por qué. Eso ya lo sé. Que es inconsistente, también debería ser obvio.
Otro capítulo: Sendmail. Gracias a
Unix Hater's descubrí esto, porque lo desconocía (no suelo leer muchos mails en inglés).
Resulta que, como Sendmail parsea el texto en busca de la ocurrencia "From" para determinar el destinatario, el mailer, si encuentra una línea que comienza con
From en el cuerpo del mensaje, debe modificarla a >From, para que el parser no se confunda. ¿Cuál es el problema? Bueno, que si uno envía ese carácter, por ejemplo, a Latex, se imprirá un signo de apertura de interrogación. ("¿"). Así es como uno de los autores pide que se revise un libro (no recuerdo cuál), que transcribe un mail de un investigador, comenzando con un "¿" totalmente fuera de contexto (más tratándose del inglés). ¡Cuánta elegancia!.
Ahora, ¿por qué ocurren estas cosas?. Simple, porque los sysadmins, y más los sysadmins Unix, tienen que sacar las papas del fuego cuando ya están a medio quemar. Las soluciones surgen rápido (es cuestión de práctica) ¿pero elegantes?
Si contara la de parches absurdos, totalmente ridículos que he escrito y visto escribir... y cuya única virtud era que funcionaban, pero que nadie publicaba por vergüenza...
Edit: me acordé de un ejemplo no pornográfico. Tenía que extraer texto de unos registros ISIS (programa de la Unesco para manejo de Bibliotecas). En principio no había problemas con el script, hecho en Perl. Enviaba el registro a un pila y luego lo desapilaba filtrando cada campo. Creí que me había salido perfecto, hasta que la encargada de la biblioteca me señaló que cuando una obra tenía varios tomos, aparecía (con mi trabajo) así: tomo 4, tomo 3, tomo 2, tomo 1. ¡La pila!. Ustedes estarán pensando esotéricas maneras de enviar una pila a otra, desapilar reordenando, recordar las lecciones de colas FIFO y LIFO... (son miles de registros en archivos individuales). Bueno, yo opté por esto: Un bucle for cuyo núcleo era:
tac registroviejo > registro nuevo .
