sábado, junio 30, 2012

Y un repositorio de código para el 2012? GIT

Hará cosa de dos meses que vengo penando cual debería ser el repo de código corporativo del Instituto que actualmente viene usando el SVN. Esto me lleva al 2003, cuando tuve que tomar un puesto de liderazgo muy importante para un proyecto grande en IBM en su cuenta Telefonica, en esa época CVS dominaba el mercado y una de las cosas que hice fue migrar a SVN, pese a las puteadas del pulgin de Eclipse, lo pudimos hacern y en pocas semanas. Pero al terminar me dejo lan mala señal que era mas de lo mismo aunque la gente estaba muy contenta, usaba el VC de moda pero en números, no funcionaba los lockeos, los merges eran súper complejos, lo que ganamos automatizando el build lo perdí haciendo los merges, la mentira del rename, etc, etc.
Volviendo al 2012, si planifico una estrategia uniforme, tengo que tener cuenta las tendencias actuales, grupos que trabajan en diferentes locaciones, diferentes segmentos de red, lan, wan, internet, el avance de cloud y soluciones hosteadas fuera del datacenter, estado del arte actual de los VC y su integración con las nuevas plataformas de desarrollo e infraestructura (virtualizacion, continuos integration, puppet, etc). Pensando en todas esos temas, hay tres drivers fundamentales:
  1. El VC indiscutido es GIT, hay otras cosas buenas en el mercado como el de Jazz (RTC) o TFS (de MS) pero por el momento considero que IBM Argentina no esta maduro para colaborar con una implementación de RTC ni TFS esta lo suficientemente maduro para soportar las plataformas que quiero soportar. Obviamente están los Otros como peforce o mercurial, pero acá el Open Source lidera.
  2. Ubicuidad, considero que es fundamental que el código este disponible (de manera segura) y pueda ser accedido desde diferentes dispositivos y plataformas. El equipo de desarrollo de software de elite que tiene el instituto tiene que poder accederlo fácilmente sin problema.
  3. Lo necesito rápido, y posibilidad de ir escalandolo sin grandes complejidades ni costos de administración de los operadores aprendiendo un nuevo servicio de TI.

Teniendo en cuenta todo esto, comencé un piloto con Github el cloud de GIT mas utilizado por la comunidad open Source que tiene muy buena latencia, soporta varios protocolos y se puede utilizar desde adentro del instituto como de afuera y tiene features fantásticos como el pull requesón y revisión de código entre pares.

Vamos a ver que sucede con el correr del tiempo, toda decisión tiene sus desafíos, aquí intento enumerarlos:
  • Resistencia al cambio por utilización de GIT. Yo lo uso y puede resultar complejo sin una GUI, a mi me resulta cómodo la consola por ser usuario de Linux o MAC, pero es algo que estoy planificando. No tengo duda que GIT es la plataforma, no va a ser fácil la transición.
  • Integración con el IDM del Instituto, si bien lo mas parecido a IDM que tenemos es AD por el momento la solución de GITHub no tiene ninguna integración pensada o que yo haya visto, están las APIs disponibles que con unas horitas de programación ruby lo integro con mucho gusto.
  • Como mantener la historia del SVN en el GIT, entiendo que se puede, hay comandos de rebase entre ambos repos pero nunca lo hice y no quiero llegar a la solución de dejar un repo SVN en modo lectura.

Y me estoy ganando muchos enemigos? Puede ser, pero lo veo muy claro si quiero dar un servicios de excelencia no puedo darme el lujo de trabajar con tecnologías legacy que me frenen mas adelante... Se viene el CI en la nube con Cloudbeed?

Todo comentario o sugerencia será mas que bienvenida, alguien ya lo hizo?

domingo, junio 17, 2012

Mis primeros 6 meses en el Pami (INSSJP)

Alrededor de estos días voy a estar cumpliendo mis primeros 6 meses en la gerencia de TICs del Pami. Puedo asegurar que ya parece que pasaron 6 años, es más, con todo lo que vivi diría que ya ni recuerdo haber trabajado en Worklow, IBM ni Red Hat.
Las primeras conclusiones que se me vienen a la cabeza (y puedo contar) es que el puesto tiene realmente los desafíos que me plantearon durante el vibrante proceso de selección, y puedo asegurar que más tambien, uno no deja de sorprenderse. Por otro lado, cuento con un equipo técnico de base muy bueno que realmente va a permitir lucirme y dar lo mejor para la salud de los pensionados y el país.
Los primeros 4 meses fueron más bien de transición, donde me aseguré de entender la organización, sus objetivos, referentes y situación actual de TICs, obviamente hubo muchos temas urgentes que tuve que atender hasta incluso ver código fuente e ingresar a los servidores para resolver problemas, no puedo con mi genio de nerd :)
En algún momento escribiré un poco más sobre la experiencia de los primeros 100 días como gerente de TICs, pero en pocas palabras fue algo así:
  1. Primer mes, me tocó conocer la Gerencia, sus referentes, Subgerentes y algunos Jefes de Departamento , como así tambien entender la organización, su historia y como se relaciona con el resto de los organismos y stakeholders principales. Proyectos en ejecución.
  2. En el segundo mes, el objetivo fue conocer a los Gerentes con mayor interacción con la Gerencia dentro del instituto, entender sus necesidades, problemas que han tenido, relevar sus prioridades del año. Otro punto importante fue el de conocer a todos los Jefes de Departamentos de la Gerencia, entrando en un nivel más de detalle para saber el día a día junto con los problemas.
  3. El tercer més, me entrevisté con los proveedores en los cuales el Instituto más depende, conocí a cada uno de ellos y entre en los detalles de los contratos actuales, como así tambien saber cada una de su visión.También tuve algunas entrevistas con organismos con problemáticas similares a la del Instituto, ya sea por dispersión geográfica, o por temas tecnológicos y también de Industria.
  4. En último mes de la transición, se comunicaron los resultados, se delinió un plan para los primeros cambios en la Gerencia, ya sean de Estructura como de Procesos, como así también delinie el boceto de los objetivos de los primeros 12 meses de trabajo (plan).
Así es lindo contarlo, pero en paralelo, hubo muchos eventos e hitos importantes por lo que tuve que pasar que junto con la pasión que me caracteriza tuve que afrontar y me hicieron dedicarle 16 horas de trabajo por día, sobre todo en el verano que estuve solo en BA.
Algunas particularidades técnicas que me gustaron del Instituto:
  • Tecnología muy uniforme y homogenea, lo cual hace la operatoria mucho más sencilla
  • Un equipo de desarrollo sobresaliente, considero que es el mejor de la Argentina.
  • Mucho open source (eso me gusta) los lenguajes de programación, los sistemas operativos son dominados por el código abierto.
  • Un datacenter de primera generación se está termnando (Tier 3)
  • La red de datos con más nodos en el país.
  • Por lo que vi, uno de los pocos organismos con un plan para tener un disarter recovery site real.
  • Servidores Intel únicamente, nada de Mainframe ni Power o sea que no es esclavo de nadie.
  • Está claro que no voy a decir las debilidades no? Jejeje. Ya las voy a decir, cuando las resuelva, no son pocas para mi... pero debe ser por que soy un enfermo.
Actualmente ya me encuentro algo más estabilizado, en la parte final de muchos proyectos que van a dejar al Instituto en lo que es TI, en un nivel que estoy seguro ningún otro organismo o empresa de la salud va a estar por mucho tiempo en la Argentina, pero al mismo tiempo delineando el Plan Estratégico de TI para los próximos 4 años, realmente esto va a ser de excelencia.
Hacía mucho que no escribía, habrán entendido el por que, esto viene muy en serio y necesito estar muy concentrado en cada paso, y considero que el Instituto está muy bien en terminos de TI, y que con mi capacidad y visión en TI y gestión vamos a estar excelente (N veces mejor que lo actual), de eso no dudo.
Tenemos desafiós muy grande que estoy feliz de afrontar y estoy rodeado de gente brillante que lidera este Instituto, y más que feliz de que hayan elegido un profesional técnico y joven para conducir esto.