En el nuevo corporativo tengo asignadas dos cuentas de correo. Una personal y otra para pruebas, debido a que mi aplicativo va a estar enviando correos con xml y txt a los clientes.

Normalmente bajo todo de la empresa por webmail, y lo mio propio lo hago desde outlook express. El dominio de la empresa tiene el correo bajo Network Solutions.

Estuve haciendo pruebas y uno de los ejemplos, que me mandaron suelto, llego mal una Ñ. Revisaron el origen y estaba bien, el problema que encontré necesitaba seguimiento.

Tengo cuentas de correo desconocidas en gmail, yahoo y hotmail. No para usarlas sino para estas pruebas.

Pedir que me enviaran el ejemplo y en todas se ve bien.

Extraño.

Al hacer que me mandaran exactamente el mismo ejemplo pude descartar la fuente. De entrada en gmail se descarga bien con el mismo navegador, o sea que la opción de descarga del webmail de Network Solutions , mete un doble uuencode, y por eso la ñ me lelgaba con doble codificación.

Lo que deberé hacer es probar despues ver desde el imap de network solutions y con eso veo si lo descarto también o no.

que lata.

La semana pasada entre el nuevo trabajo y demás estuve ocupadísimo. No doy detalles por la secta templo de la serpiente emplumada, o Kinam.

Me tocó viajar bastantes kilómetros de ida y vuelta por el país: Casi 7000 kms en vueltas y vueltas. Fue uno de los viajes mas productivos por varias razones.

Desde mediados del 2004 tuve una idea que iba a llevarse a cabo según mis cálculos por el 2010; el proyecto se retrasó por todo el acoso de la secta hacia la madre de mis hijos, y tener que hacer los planes de cero después de que los cimientos estaban comprometidos por los cambios en la situación del país.

La semana pasada aproveché para realizar varias cosas pendientes, y así como la tormenta perfecta es el resultado de sumar situaciones inofensivas que causan un gran problema, mi decisión del lunes pasado que parecía redundante, trajo un gran bien.

Las reuniones del Martes y miércoles que hice en el interior del país con algo relacionado con las Pymes me resultó bien, si bien no pude descansar hasta el jueves, la suerte estaba echada.

El jueves me confirmaron que la idea del miércoles en la noche funcionó y ayer lo pagué.

Caminar por la calle en Galerías insurgentes ayer me parecía todavía extraño como todo se conjuntó. La decisión del lunes abrió camino a algo mayor. Ayer realicé los preparativos.

Y ayer se abrieron otras cosas. Si todo sale bien, que no veo porque no, la razón social para marcas está establecida a mediados de junio; una tercera empresa me pagará además por modificarles código GPL que estan usando (aunque GPL va en decadencia), a finales del año que entra terminan las asociaciones del 2009 con dos inmuebles, y de pilón me pagan por poner tarjetas con GPU a las dos pc.

Que a su vez, por el requisito previo, son parte de lo que se quería para mediados del 2014 (considerando el retraso de 4 años del 2010). Asi que pueden obtenerse para finales de este año las metas del 2014, sin tomar en cuenta el trabajo actual ni los proyectos de Oaxaca.

Tengo que volver a ir a Guadalajara ( julio / agosto ), porque el certificado de no antecedentes penales del estado lo quieren con fecha de
después de las elecciones. Aprovecharé para cerrar otros pendientes extras.

Me espera una semana de bastante trabajo cerrando cabos sueltos, y si todo sale como espero, para el 2014 se cumplieron los objetivos que tenía para el 2021, o por lo menos se encontrarán ya encarrerados.

Dos buenas decisiones me han permitido recuperar cinco años del proyecto a largo plazo.

Mientras escribo estoy probando una idea extraña, una máquina virtual con windows 2000 para revisar dos códigos de Visual Basic que hice hace años, solo que como los triggers los creaba sobre la marcha, necesito que la base de datos funcione.

Mi disco de herramientas “viejas” tenía el SP3a de Sql 2000. y aunque parezca increible no tenía el sp4. No quiero tener el error de 538 y 539 por versiones de respaldos, así que estoy descargando el sp4 en la virtual, que reconoció a la primera la red (windows xp y ubuntu no). Sigo pensando que algo está mal desde windows xp en adelante. El windows 2000 tiene problemas de drivers normalmente, pero usando los guest additions del virtual box, manejó solito el de video.

En el corporativo los de nómina ya cobraron, supongo que me hicieron ya la transferencia electrónica. Desde hace unos años que no veía que dieran vales de despensa. Prestación decente. Ni soñarlo en el corporativo anterior. Incluso la posibilidad les daría un infarto =P

Por otra parte Ubuntu me está dando problemas con la 11.04 en la LGX 110, así que voy a probar Debris 2.0

Durante finales de los 90s, hasta principios del 2000, no era raro encontrar empresas mas o menos serias que creían que podían agarrar becarios o similares para hacer un programa en partes sin pagar su valor completo, metiendo en medio a uno que otro desarrollador con experiencia, pensando que las personas son intercambiables, y que el proyecto empezado por un profesional podía ser terminado por otro. Otros cuantos tenían la idea de no pagar, en realidad.

Por lo general se disfrazaba por el cliente como “terminar el proyecto” al que solo le faltabn uno o dos “detallitos”, o que “haz esto y luego vemos”. Nunca hice ninguna de las dos cosas. Siempre he manejado proyectos con especificaciones funcionales , o entregables definidos para evaluar de manera objetiva el cumplimento, y en alguna etapa me tocaron clientes que se trataron de pasar de listos. Lo común era no pagar al 100% y dar largas. Aunque este problema se evitaba con contratos mas o menos claros, de confidencialidad o de consultoría de sistemas por proyecto, esta es la solución que me funcionó, aunque solamente la uso en sistemas por proyecto.

“Para evitar mala fe de las partes, y por cuestiones de calidad en la documentación de los entregables, ambas partes acuerdan que el software se considera software de prueba hasta haber recibido el 80% del importe convenido, y el código fuente, en caso de aplicar su entrega y/o propiedad, solamente podrá entregarse en versiones finales y no de prueba, mediante el medio (cd/diskette) personalizado con la imagen corporativa del consultor, por lo que la transmisión de propiedad si aplica será al haberse cobrado efectivamente un mínimo del 95% del importe convenido, previa firma de recibido”

Desde el 2004 a la fecha solamente me he encontrado una empresa lo suficientemente madura para no necesitar usar la cláusula, que cuando contrató a una de mis PYME, tenía ya su contrato DURISIMO de confidencialidad. Sin embargo ese convenio era mas BLANDO que el asumido voluntariamente por mi desde el 98. Llamemos X a la que me contrató y W a la propia. Una de las cláusulas de ese convenio era no relativa a confidencialidad, y era mas o menos, “La empresa X es dueña del software, creado por la empresa W, una vez se haya hecho el pago al 100% del estimado original, o una vez que el sistema está en operación y por ninguna causa la empresa X retrasará pagos a empresa W si se está cumpliendo el plan previsto en el anexo A”.

Esa cláusula me evitó tener que poner la cláusula, aunque como dije solo la uso en sistemas por proyecto. Normalmente sirve para evitar mala fe, sumado a un temporizador que deshabilita las versiones prevas caducadas. Lo importante es lo subrayado.

“Para evitar mala fe de las partes, y por cuestiones de calidad en la documentación de los entregables, ambas partes acuerdan que el software se considera software de prueba hasta haber recibido el 80% del importe convenido, y el código fuente, en caso de aplicar su entrega y/o propiedad, solamente podrá entregarse en versiones finales y no de prueba, mediante el medio (cd/diskette) personalizado con la imagen corporativa del consultor, por lo que la transmisión de propiedad si aplica será al haberse cobrado efectivamente un mínimo del 95% del importe convenido, previa firma de recibido”

El truco consiste en dos cosas :
a ) Manejar un total de 4 pagos, de 25 a 30% . Esto hace que la única forma de haber pagado el 80% sea habiendo pagado el 100%.
b ) El código se entrega igual al estar pagado al 100%, con firma de recibido.

Que algo falló ? Se considera versión de prueba. Que no te pagaron completo por desorden, quiebra o mala fe del que encargó el proyecto ? El sistema es de prueba y no tienes porqué darle mantenimiento ni entregar código.

Una práctica común (60% de las veces) era pagarte al 75% de un proyecto y luego darte largas. Ok, no hay problema para uno. Pasabas a otra cosa y no tratabas de cobrar lo faltante. Era tu código y es juego limpio.

Además de los problemas del típico “el que puede firmar no ha venido” y del “contratamos a alguien mas barato” me tocó un ejemplo de juego sucio.

En la época de windows 3.11, Una empresa me dió un cheque que yo no sabía estaba bloqueado (no liberado al banco) por el 25% restante. En la ventanilla me dijeron que el cheque era real, pero no estaba autorizado. Pedí que me sellaran el cheque como rechazado. Cuando regresé (dejando el cheque en mi casa) me dijeron los de la empresa “Te chamaqueamos ” (algo así como, te fregaste).

Mi respuesta : El contrato menciona del medio personalizado, así que me han pagado 75% del software. Al no haber recibido el pago final, el software es de mi propiedad. (Nunca lo actualicé para XP ni para Windows 2000)

A partir de este incidente trato en los encargos por proyecto que los dos últimos pagos sean al 75% y 95% (manejando el 5% por capacitación ).

No es mala idea meter con las propias palabras en el convenio por proyecto, que cada versión de prueba tiene vigencia durante esa etapa del proyecto, y que puede ser reemplazada por versiones mejoradas o finales.

En lo personal manejo un CURL por palabra viva para deshabilitar proyectos que no pagan mas allá del 75% o pasado el tiempo razonable.

En este momento tengo en varios lugares establecidos sistemas de tickets, programados por mí, para pendientes de clientes. Algunos en python, uno en ruby, lo demás en PHP bajo GPL o LGPL.

Sugerí varios en el trabajo anterior, y los tenía implantados en el 2010 antes de la reestructuración, pero en una junta de junio del 2011 (la que fue de todo el día ) se hizo una presentación de 10 minutos que no decía nada, y decidieron usar un software propietario, sin licencia y muy pesado para una implantación PARCIAL y no metódica. La excusa que dijeron después era la opción para reaccionar/recibir correos de clientes. Dos de mis softwares lo hacían por IMAP.

Ahora me encuentro en una opción parecida. Resulta que el proyecto del mes por la empresa principal de las que contrataron a la PYME debo convertir unos xml/txt a otro formato. Algo muy parecido era el trabajo «inicial» de los «analistas» del trabajo anterior Lo que ellos hacían era adaptar un php a cada cliente.

Tengo que hacer algo similar, pero para un solo cliente corporativo. Solo que en este caso además que el código era confuso y las bases de datos no estaban optimizadas, no puedo por copyright reutilizar ese código, e inclusive ya lo borré de mis respaldos. Así que lo que hice fue buscar algo similar en internet (encontrado en 3 minutos con código libre en una revista española de hace varios años), y elaboré desde cero la validación de los XML que regresan los SCADA. Ya se guarda en una base de datos mysql el resultado de importar los XML de los scada, y me falta generar el sitio web con sus catálogos, pero tengo ya los ingredientes como los descuentos de burbuja .

Lo que está criminal es lo que noté desde entonces : falta de limpieza y enfoque en lo que estaban haciendo.

No es posible que en menos de 4 horas yo tenga funcionando adecuadamente un sistema de PROCESADO Y FILTRADO en base de datos de un xml de scada, mientras que ellos no quisieron jamás poner los servicios estadísticos que sugerí en el 2010.

Y aqui ya está la base de los servicios estadísticos, porque los datos exportados/explotados ya están en la base de datos, y se pueden filtrar.

Alla no.

Y tenian dos/tres personas dedicadas de tiemplo completo a hacer cambio a ese script personalizado, cuando podía hacerse por una sola persona (un programador real con el sueldo adecuado, ni siquiera se necesita alguien con mi experiencia y sueldo para eso), y así gastaban tres medios sueldos en algo que una sola persona pudo hacer. Esas personas, analistas, no analizaban. (quizá un dia explique lo que para el director de corporativo era un analista y que era un programador pero el concepto era una de las versiones mas enredadas que he escuchado)

Por mas que lo veo, las piezas del rompecabezas de lo que ofrecí en el 2010 eran evidentes. Aquí es un servicio añadido de lo que voy a hacer este MES, y en donde estaba antes, la mitad de eso, era el trabajo de tres personas durante mas de dos años.

Que horror.

A veces al hacer algo de cero por cuestiones de copyright (o por código basura), puedes hacer bastante Reingeniería y hacer algo evidente.

Las siguientes etapas me hacen creer que el demo está el viernes, por lo menos parcial. Dejaré las bases de datos al ultimo porque estaré corriendo sobre WAMPServer en lo que me definen servidor.

De momento tengo una fecha de entrega para este viernes, lo que es muy manejable. Sin embargo, al empezar a anotar los pendientes, me encuentro con un problema. Aqui usan MSSQL server, asi que si quiero usar un control de pendientes propio ligado a base de datos o lo pongo en mis propios dominios, o hago algo desde cero para MSSQL.

Creo que lo mas practico es de momento baja tecnología:

Google y gmail.

Tiene su propial ista de pendientes. Pro lo visto voy a tener que reacomodar varias cosas que queria hacer hasta dentro de dos semanas y hacerlo en esta.

Hace unos meses me llaman a una junta de soporte. En esa junta no tengo porque ir. Se supone que es el área de soporte a clientes, y les estan haciendo exactamente lo mismo que meses atrás. Asignándoles nuevos «clientes» a cargo. No es que sean mas clientes o empleados, o que esten haciendo una redistribución, simplemente están barajando clientes en lugar de revolver papeles.

Esa junta implica básicamente que tres personas a las que llaman «analistas» , y que ganan menos que la mitad que yo, son los que van a adecuar un formato de impresión para los clientes pero ahora de un cliente diferente. Se pierde el know how y la relación con el cliente.

El 70% del trabajo de estas personas consiste en eso.

En la reunión se encuentran dos «gerentes». Uno de ellos se supone que es mi jefe inmediato pero ha evitado todo tipo de contacto o responsabilidades. Se supone que las juntas son para informar necesidades o informar avances. Con esa persona no han habido juntas, porque no sabe expresar necesidades, y evidentemente no hay avances que informar porque son otras áreas las que me piden lo que necesitan. Las juntas son evitadas por esa persona desde que demostré que los servidores estan llamando al desastre y que la operación de la unidad de negocio penden de un hilo.

Por lo general no hay nada que informar. Que el servidor siga con vida es un milagro, y depende de mí.

Pasan unos temas que no vienen al caso. Se me dice que van a usar tres de mis sistemas para hacer que la empresa despegue… porque nadie de la competencia lo ofrece.

Lo se perfectamente. Una de mis obligaciones autoimpuestas es checar el producto de la competencia. Lo reviso desde hace mas de un año, diariamente. Puedo dar el porcentaje y fechas de problemas en los servers de la competencia con una aproximación a 98% en horarios laborales.

Que necesitan?

Pregunto.

La respuesta es dimelo tu.

Me siento igual que Galt, en la parte final de la rebelión de Atlas. Donde le dicen «necesito que me diga usted, Galt, que hacer».

No puedo sacar algo de la nada, no puedo saber cual de los tres proyectos quieren primero, y tampoco puedo saber por el titulo de que se trata o a que se refieren con términos ambiguos. Si no podemos definir la medida de éxito en base a un objetivo, menos vamos a tener los recursos para realizarlo.

Asi que me encuentro en ese momento en una situación donde me dicen que resuelva tres problemas, que genere tres proyectos, que salve la empresa (en realidad).

El asunto se complica por la falta de estándares y documentación. También de recursos. Las nóminas se pagan puntualmente, pero no se ha repuesto mi equipo propio quemado, ni me dan los recursos de servidores indispensables.

Noto en esa junta, antes de otra cosa, que no se dan cuenta que una responsabilidad lleva una autoridad y viceversa. Se refieren a esos tres proyectos como mis proyectos… y en base a eso me quieren asignar solucionar un problema. Mi respuesta inmediata : Okey, son mis proyectos. Si tengo una responsabilidad sobre ellos, también necesito una autoridad sobre ellos. Que ni SAEM ni XFBP les metan mano. Uno no corrigió algo que se comprometió a hacer en noviembre tres y ya estamos en febrero, y el otro borró un código por error.

Es que …

Responsabilidad sin autoridad no funciona. Pienso. Lo digo. Repito: No puedo hacerme responsable de algo que estan metiendo mano varias personas, y si no me dices que quieres, va a estar dificil que pueda cumplirlo.

Me tocan varias semanas en que trato de que esos dos gerentes, de los que no se hace uno, traten de decirme tiempo, alcances (definir objetivos que definan cada proyecto), prioridades de orden.

En otra mini junta me dicen… eso es lo que queremos que nos digas tu, cual de los tres proyectos es primero para la empresa.

??

Les respondo: No estoy enterado de los planes de la unidad de negocio: El modelo no me parece sustentable, no estoy enterado de los presupuestos de ventas, de los costos que tenemos y el margen de utilidad que deseamos. Sin esa información no puedo decidir cual de los tres es mas importante, y menos si no se que quieren que se haga en esos tres proyectos, y para cuando.

Es para dentro de un mes y además hay que cambiar el sitio web y atender tal otra cosa.

Ok, pregunto, entonces queieren que cambi el sitio web, que no hice yo, que hizo uno de los socios. Gracias por darme la autoridad de rehacer ciertas cosas.

Por cual de las cinco cosas empiezo? Pregunto.

Eso lo tienes que decidir tu.

Pienso otra vez Basicamente lo que me piden es que haga curitas y las ponga donde crea necesario, pero sin personal, sin servidores y sin cambiar lo que está provocando las lesiones en la empresa.

Unas semanas después , habiendo recibido varias ofertas de trabajo en la comida de cumpleaños que me hicieron varios conocidos, llegamos a una de esas situaciones absurdas: Este proyecto lo usan el 90% de nuestros clientes. Ya checamos con el 1%, esdecir 2 de ellos y ellos no usan tales opciones, destruyelo.

Ok, ponganlo por esctito. Me estan pidiendo que quite el histórico cuando nuestro producto es conservar el histórico.

pero porque? me preguntan.

Integridad referencial.

Queremos que el sistema no sea sólido. Que sea una máquina de escribir.

(si se lo dijeran a los clientes les da el infarto, pienso).

Cuando se niegan a firmar los cambios de esa junta, después de ver a mi jefe a punto de llorar diciendo que tiene mucho trabajo y que necesita mi ayuda, y al dia siguiente poniendose agresivo en publico diciendo que no manejo la tecnología que el maneja…

¿?

Supongo que no se da cuenta que no voy a resolver todo con un desarmador, y que ninguno de los tres proyectos que se manejan, son adecuados para meter ordenes jquery, y que cambiar a un metodo de tabs un formulario gigantesco de maestro detalle es imposible cuando todos los campos son necesarios, obligatorios y pertenecen al mismo renglón.

Me siento igual que Galt, en la parte final de la rebelión de Atlas. Donde le dicen «necesito que me diga usted, Galt, que hacer».

Cuando le dices a alguien que va directo al precipicio y que debe cambiar de rumbo, es su decisión si lo hace o no.

El dia de ayer vi el proyecto del mes en el nuevo trabajo, tiempos, prioridades, fechas de entrega me son pedidos, tengo la responsabilidad ,pero la autoridad de un sueldo mayor y la autoridad de elegir prioridades.

Se acepta mi orden.

la diferencia es que aqui no es Galt contra políticos que se les cae el país a puños, sino una fábrica que produce.

Un lugar de hacedores, no de vendedores o de parásitos.

Me encuentro en la oficina, en modo offline en lo que ocurre un formateo de pc.

Ayer me enteré que de un equipo de trabajo que conocí, con dos 50 añeros y unos seis o siete de 20 a 35. Varios estan muertos. Una de mi edad dejó su carrera y trabajo como jefa de cobranza y se fué con su esposo a Cuba. Una programadora decente de hace años ahora es capturista.

De fondo se oye música de los 80s.

Es semana santa, veo por la ventana los arboles que llegan hasta el cuatro piso; cundo no hay música de fondo se oye perfecto su trino. Estos días me han tocad oir comentarios de personas de la empresa que porque me dieron a mi est PC, es la AIO 026 de la que escribí hace unas semanas.

Pues…

Explico: Soy externo, consultor de otra empresa, y me la da mi empresa.

El entorno de trabajo es diferente : Sigo siendo el primero en llegar. Aquí la seguridad es real, puertas enrejadas que abre una persona detrás de un mostrador; el lugar es mas agradable que el loft anterior. La música es ambiental por zonas de la oficina, y por lo visto tienen los mismso gustos, aunque a veces me sorprendo con cosas que no oía dese hace años, como Kenny y Los eléctricos (Tengo roto el corazón) y cosas mas extrañas, aunque no es propiamente mi estilo que pongan de fondo la mazurca moderna de Serrat es mucho mejor que tener que soportar a gerentes que ganaban menos que yo y ponían a paquita la del barrio, o a becarias que cantaban juan gabriel con audífonos. No hay problema con los gustos en música, pero si con la imposición.

Hacen lo que hacen porque son lo que son.

De momento veo varios ajustes a hacer las proximas semanas; el servidor de sql 2000 está a punto y el primero de los desarrollos debe salir a finales de mes, se supone, pero creo que le prototipo lo tengo el martes y el próximo viernes una versión funcional casi completa.

A veces me pregunto que les pasa a tantas personas que se dicen de sistemas. Por ejemplo, en el trabajo anterior manejé tres subsistemas mas la versión prime, original, del nucleo del negocio. En las gaseras tuve en un momento dado 22 sistemas en operación en las plantas del grupo.

Creo que es el mismo fenómeno de entonces. Recuerdo que a finales del 97 tuve una plática con alguien sobre que era idiota que yo tuviera que decirles, a dos personas de mi rango, que era lo que estaba haciendo y que sistemas estaban en operación cada dos o tres meses. Era estúpido primero por el porcentaje de bateo: Estas personas jamás hicieron un programa que funcionara, y lo normal hubiese sido manejar un repositorio de información, aunque el tratar de concentrar ciertas cosas en GUPTA fue un error. Nada de trabajo organizado, un hombre remolcando un área.

22 desarrollos en el 97. Eran 29 en el 2000, cuando por codicia tiraron SU avance de varios años a la basura.

Ahora que lo pienso, entiendo porque de aquellas dos personas una se dice consultora independiente y por lo que se esta buscando trabajo de RH aunque es de sistemas, y el otro esta muerto por problemas de ulcera, y era menor que yo.

Por coincidencia, me encontré aqui a cinco o seis personas que conozco de hace varios años. La mayor parte de ellos son empleados de este corporativo. Por lo que parece en un momento dado uno de los directores del lugar común que tuvimos se convirtió en asesor de esta empresa.

Nada mal. Si mis calculos no fallan, el director de este corporativo debe ganar el equivalente de toda la nómina de mi lugar anterior.

Y se lo merece.

No puedo imaginar a esa persona permitiendo algo menor a eso.

Que diferencia de planes de trabajo. Seguramente planteará alcances, tiempos y recursos, además de prioridades.

Hice bien en aceptar esta oferta.

Ya terminó el formateo, escribiré despues unas notas que me vienen a la mente, sobre el «decir que hacer»

En el año 1997 tomé mis primeros cursos de sql server. En el 2000 me tocó ver como autorizaron la licencia a un sistema inútil, mientras que yo debía usar dbfs.

Poco después me tocó la implantación y cambios en Lucent a un sistema que estaba pensado para trabajar en SQL Server 6,5 y se migró a 7. Recuerdo esas noches hasta altas horas de la madrugada, alterando el código ajeno que se conectaba por DAO y visual basic a nivel internacional, esas jornadas maravillosas mientras mis manos cambiaban, por si las dudas, no solo enlaces por ADO bajo MSDE 2.6 o 2.8, sino la sintaxis de los campos ajenos para usar mayúsculas, y no tener problemas si en el cambio se perdía el valor que hacía intercambiables como finalmente sucedió.

Esas mañanas al ver el sistema funcionando bajo 7.0, el levantar en pocos días el sistema de jueces, la sobriedad de unas ordenes de consola acariciadas por el nuevo Service Pack….

Mas adelante la labor en la empresa de alimentos, habiendo sido contratado para programar, y dedicando los siguientes tres años a mantener vivo un servidor agonizante por problemas de antiguos proveedores el as 400 apagado, y cada mañana, de manera clara, durante un mes y medio, levantando de la nada el sql2000 con sus service packs y los soportes AWE, para unos minutos después, con tristeza, ver como la bestia de 4 terabytes de disco duro y 16 gb de ram, en el 2006, caía de rodillas bajo el influjo de ese software basura llamado Dynaware.

Esa experiencia de levantar el servidor cada mañana durante semanas; un trabajo coordinado de tres hombres, y al filo de las siete de la mañana, mientras sabíamos que se aproximaba a su muerte por ese día, el humilde servidor sql 7, levantado por milagro, para enfrentarse a la decadencia de un software basura, dynaware, por solamente el esfuerzo de un hombre.

Y la victoria, cuando conseguí a través de la ciega suerte, que otro proveedor nos ayudara , de maner gratuita, a migrar su software de recursos humanos, que si funcionaba, a otra computadora mas poderosa.
y el ver a la pc que mantuve viva por varios años, y el nuevo servidor
normal, enfrentarse al coloso que caía de rodillas por la estupidez de
un software que usaba ODBC para mas de 32 usuarios.

El triunfo.

Salir de ese lugar , sabiendo que las computadoras se anulan entre sí y que importa mas el hombre, me vi obligado a alejarme por un tiempo de sql server 2000, olvidando la dulzura de procedimientos almacenados, integridad referencial y respaldos gigantescos a través de los mdf y ldfs…

Después el ver en otros lugares los problemas de progress, los pininos de mysql, y luego, otra vez, como un huracán, el sistema de control de cotizaciones, ordenes de compra, autorizaciones y el poder de una cadena de insumos encadenado a una base de datos SQL 2000… para descubrir que quien encargó el sistema no sabía que en realidad todo lo demás de la empresa corrían con sql 7, y que se habían invertido dos años( en parte mios) para hacer que el active directory hiciera lo deseado….. Mas noches revisando los respaldos, y decidiendo como hacer que coexistieran ambos servidores sql en una de las redes mas infames que el mundo haya visto, y la decisión haciéndose lógica:

Crear los usuarios al vuelo desde Visual Basic y después PHP. Olvidar los SA y la clave maestra: el trazado a través de triggers específicos que ligaban a la bitácora incluso las modificaciones desde consola, ver nacer y morir los usuarios de sql por el producto de mis manos…..

Mañanas de ver como el sistema ordenaba el viaje por avión, calculando
la disponibilidad, las pantallas lanzandose al vuelo del director general, para que autorizara la ganadora de tres cotizaciones, el poder de aceptar una partida de cada una, mientras en la lejanía el rugido del sistema y la planta , producto de la mente de un hombre, recordaba el poder de un ser humano; ser de aquellos hombres que hacían moverse los sistemas SCADA, decidir que se apagaba por si solo, viendo a los obreros, sin producto de su mente, pero a diferencia de las sectas destructivas, dispuestos a trabajar en algo real, y ver como, al nivel de su capacidad, esos obreros anónimos daban lo que podían dar en el mundo real, sabiendo que yo ganaba lo de 20 obreros, a pesar que los alimentos de la fábica eran los mismos; obreros: personas simples pero dispuestas al trabajo, ajenos a las fantasías de mentes enfermas, mismos que través de los ajustes manuales al producto de las redes SCADA que yo controlaba, eran personas productivas mientras que el clamor de una mente depuraba los puertos seriales RS435 y sus limitaciones.

¿Como pude olvidar esas depuraciones ? Esas semanas de entender vistas
creadas por integridades referenciales de cuatro campos por tabla que a su vez eran llave, ese eliminar las vistas creadas por personas que pensaban que así escapaban de una red infame… y después, cayendo, una por una todas las vistas menos dos, mientras que el sistema de triggers era capaz de registrar en bitácora lo sucedido en la consola….

Mañanas y noches hermosas , mientras los hornos de las fábrica con su estruendo eran la música que superaba nuestras voces…

Y después… adiós !

Saber que las cadenas de conexión de ADO se dejaban de lado, me era
doloroso, a pesar que lo siguiente era usar mi software en PHP demostrando que lo que fallaba eran los protocolos de la red: Que tcp/ip era como un rayo, mientras que los protocolos establecidos por la disparidad de las pc que eran los clientes de los servidores, llevaban ese sistema a su conclusión.

Supongo que fue por esas fechas que empecé a recibir encargos de sistemas bajo mssql server y mysql al mismo tiempo, lo cual no es problema si se mantiene el modelo vista controlador, en lugar de un malentendido proceso por capas, en el que programadores noveles tratan de meter las reglas de negocio en una base de datos. Es decir, el poder de los procedimientos almacenados no debe usarse para casarse con una base de datos, sino para lo que es.

En cierto modo hacer sistemas portables entre distintos motores de bases de datos, me salvó cuando empezaron los problemas de compatibilidad de sql 2008 y windows vista; esas interfaces infames de sql 2005 en el cual la compresión de base de datos se hacía por scripts y no por opciones de menú no era lo mas sano, pero ese sacrilegio que hicieron las primeras versiones de sql 2008 con la importación de textos planos, y los problemas con los nulos, mas la carencia de interfaz, me llevaron una vez más a añorar el poder de la interfaz nativa de sql 2000.

Y entonces vino el momento. Decidir dejar si una topología de red, profanada se llevaba mi esfuerzo, migraba a un sql2008 con demasiados recursos y costo mas alto y con menos prestaciones, o pasar a algo mas duro: ORACLE y sus sinónimos.

Abandoné sql server 2005 en adelante.

Despues de todo, fueron tantas las versiones que instalé de servidores hp con cinco licencias gratuitas de sql 2000 incluidas, que pasar a 2005 era estupidez económica además de sacrilegio.

Y esas mañanas se fueron, los sueños con Store Procedures fueron cambiados por Grants y repman.

Ahora, años después de eso, veo frente a mi, a mi alcance, la posibilidad de un desarrollo adicional sobre sql 2000, así que en los próximos años, el regreso de trabajo real sobre sql 2000 en una base de datos que
crecerá de sus 10 gb actuales….

Es hermoso ver el futuro… sentir aproximarse los grants a través de php, y saber que los usuarios serán creados al vuelo, y que las bitácoras permitirán asegurarnos otra vez los controles HIPAA. (sabiendo que la falta de interfaz gráfica de sql 2005 para la compresión y detección de errores hace a sql2000 mucho mejor que el 2005)

Y entonces… en este nuevo lugar, sabiendo que la importación de csv hace suicida usar sql 2005 en adelante, me he acercado con temor al conmutador de teclados en el cuarto de servers, y bajo mis manos la orden @@version regresa el número 2039. Sql 2000 con los service pack instalados.

Que belleza !

Y ahora, sigue lo normal del producto de una mente, y de trabajo de una mente experimentada, sin interferencia de protocolos blasfemos, y teniendo las copias de seguridad iniciando por si solas, mientras el sistema de discos externos iomega de 160 gb, decretan por si solos el inicio y el fin de un nuevo día, como un moderno Dios.

Bienvenido SQL 2000 sp4, de regreso a mi vida: Ahora será bajo Php 5.3 y yo me encargaré de eliminar las vistas infames y crear de mis manos triggers y store procedures para en un futuro mandar SMS por nextel
cuando algo pase a los SCADA, haciendo portable con mysql y Oracle, mientras que los fines de semana estaré viendo el producto en mi mesa llena, con productos que ayudé a crear, alimentandome nuevamente , de manera plena, con el producto de una mente, pero ahora al servicio de una
PYME propia, y no como años atrás, bajo el comando de topologías
infames !