Crisis profesional

2010 Enero 25
por ixmael.arts

¿Por qué una carrera con una gran posibilidad de desarrollo se estanca en programar en PHP o Java o .NET? o ¿por qué la capacidad de análisis que se adquiere se ve mermado a usar Apache y MySQL para desarrollar sistemas? Y dirán que son muy usadas las herramientas, pero ¿usas una llave perico para destornillar?

Estas son de las pocas preguntas que me han surgido con alrededor de 3 años trabajando y eso de trabajar en internet 2.0 ya no tiene nada de nuevo y desafiante, sobre todo porque nunca hay tiempo de hacer las cosas, retroalimentarse y re-hacer la solución de manera más “eficiente” (en el sentido habitual de la palabra).

Por otra parte esta empezar un cambio en la burocracia de las empresas ¿cómo le haces saber a una persona que lleva trabajando 30 años de x manera que esta mal y que tu propuesta es lo de hoy? Esto fue muy notorio en mi primer trabajo, donde la burocracia misma no permitía nada nuevo (tanto así que aprendí a trabajar como se hacía en el 2001 y adiós a mis estándares web). Ahora en mi trabajo más reciente pues estamos en lo último con las tecnologías en web pero no salimos del LAMP y ni siquiera se permiten hacer análisis más adecuados para cada sitio (digo, youtube.com no usa Apache).

Y lo último es que la percepción de l@s empresari@s con los que me he topado es que todo es perder tiempo: que si vas por el desayuno, que si te distraes porque te has bloqueado, que si usas tecnologías de la web 2.0 (y lo raro es que trabajas ofreciendo un amplio conocimiento en esto), etc. ¿Por eso las personas se deben de poner la camiseta? Si ni siquiera la gestión/administración de esta se hace de manera justa ¿tenemos que dar más que lo que el contrato dice? Pues extrañamente las empresas ven solo gastos y gastos en poner herramientas adecuadas para el trabajo (computadoras, infraestructura de internet). Digo, yo no soy un empresario, pero creo que cosas tan básicas no se les deberían pasar a las personas emprendedoras…

Por eso ahora que tengo dos maestros en la UAM me estoy animando a regresar al ambito acádemico. No crean que sigo de inocente que todo es felicidad acá, pero de menos tienes más vida que en la industria, haces cosas más relevantes que si se valoraran en México pues tendríamos mejor industria ¿a poco creen que la web 2.0 nació en IBM o Microsoft?

Ahora bien ¿hacía donde voy? Es una pregunta difícil pues todo me maravilla: software empotrado, sistemas operativos en tiempo real, interfaces cerebro máquina, complejidad computacional, computación en paralelo, etc.

Entonces estoy frente a una gran dilema para dirigir mis esfuerzos para aprender, espero pronto poder decidir hacía donde voy, pero lo que es definitivo es que me voy de la industria privada.

Un cambio laboral

2010 Enero 10
etiquetas: ,
por ixmael.arts

El año pasado trabaje en Ingenia Group 30 hrs por semana.

Pero en diciembre del año pasado llego un nuevo director de operaciones, que para ser sincero pense que no iba a cambiar nada, pero resulta que este mes voy a empezar (a partir de mañana) a trabajar 4.5 hrs (medio tiempo de verdad) y a parte me van a subir el sueldo (solo 500 pesos, de menos para los boletos del metro). Esto no solo aplica para mi, sino para tod@s l@s estudiantes.

Pero no solo es el cambio, en teoría ya no habrá equipos a cargo de los Administradores de Proyectos, sino que l@s programadores funcionameros bajo el esquema de Fabrica de Software (yo trabajaba con FS en Bancomer) en el que l@s programadores/as vamos a proporcionar el servicio de desarrollo de software y en el cuál ya habrá una evaluación más concreta para poder determinar cierta promoción (y no dedazos).

Yo si estoy bastante emocionado por el cambio radical bajo el que empezaré a trabajar (ya que me parece más justo), un cambio en la forma de desarrollar, pues se desarrollará como equipo (cosa que las personas a veces hacemos, pero no por parte de la forma de trabajo).

Bueno, esto me permitirá avanzar de forma más rápida en la escuela, pues este trimestre tengo un hueco muy grande en el horario con las dos materias que tomaré.

LightBox desde cero

2010 Enero 7
por ixmael.arts

Resulta que hay muchas lightbox (de jQuery o Mootools o el framework javascript que se les ocurra), pero el problema de estos es que estos no permiten una fácil modificación (diseño) de la caja.

Este problema se me presento en el trabajo y pues a hacer un lightbox desde cero. De hecho no es difícil ya que solo se necesita hacer esto:

  1. Ocultar (o sobre poner algo en) el contenido de la página
  2. Mostrar la caja (con el diseño personalizado)
  3. Cerrar la caja y volver a mostrar el contenido

¿Fácil? Yo digo que sí, el problema de los plugins en los frameworks es que vienen mucho más poderosos que esta solución. El desarrollo anterior lo vamos a hacer sobre jQuery (porque con ese trabajo).

(X)HTML (en rojo la estructura del lightbox)

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>Test LightBox</title>
</head>

<body>
<div id="info">informacion
    <ul>
    <li><a href="#" id="startBL">abrir</a></li>
    </ul>
</div>

<div id="lbOverLay"></div>
<div id="wpLb">
    <a id="wpLbClose" href="#">cerrar</a>
    <div id="wpLbHd">informaciom</div>
</div>
</body>
</html>

CSS (del lightbox)

div#lbOverLay {
	background: #99CCFF;
	display: none;
	height: 700px;
	opacity: 0.6;
	position: absolute;
	top: 0;
	width: 100%;
	z-index: 3000;
}
/* No muestra la transparencia en IE6 */
* html div#lbOverLay {
	filter: alpha(opacity = 50);
}
div#wpLb {
	background: url(lb_bg.png) no-repeat center center;
	display: block;
	height: 550px;
	left: 50%;
	margin: 0 0 0 -225px;
	position: absolute;
	top: -550px;
	width: 450px;
	z-index: 3001;
}
div#wpLb a#wpLbClose {
	background: url(lb_close.png) no-repeat center center;
	height: 40px;
	position: absolute;
	right: 70px;
	text-indent: -999em;
	top: 65px;
	width: 40px;
}
div#wpLb div#wpLbHd {
	left: 50%;
	margin: 0 0 0 -160px;
	position: absolute;
	top: 140px;
}

jQuery

Primero algunas definiciones de variables:

//div que se va a sobreponer sobre el contenido
var wpLbOver = jQuery('div#lbOverLay');
//div que contendrá la información (diseño)
var wpLb = jQuery('div#wpLb');
//enlace para cerrar el lightbox
var lbClose = jQuery('a#wpLbClose');
//div que posiciona la información
var wpLBCt = jQuery('div#wpLbHd');

//enlace para abrir el lightbox
var lbOpen = jQuery('a#startBL');

//variable que maneja la posición donde aparecerá el lightbox (vertical)
var topStart = 0;

Ahora vamos a poner la funcionalidad, ocultar y mostrar el lightbox (1 y 2)

//abrir el lightbox
lbOpen.click(function() {
    //sobre poner una capa
    wpLbOver.css({
        'width': jQuery(window).width(),
        'height': jQuery(document).height(),
        'left': -(($(window).width() - $('body').width()) / 2)
    }).fadeIn(function() {
        //iniciar la posición de la caja
        wpLb.css({
            'display': 'block',
            'top': topStart - wpLb.height()
        });
        //animar su entrada
        wpLb.animate({'top': topStart - 20},500,function() {
            wpLb.animate({'top': topStart - 50},250,function() {
                wpLb.animate({'top': topStart - 20},250);
                //cargar contenido
                wpLBCt.load(lbOpen.attr('href'));
            });
        });
    });
});

Cerrar la ventana (3):

//cerrar el lightbox
lbClose.click(function() {
    //desaparecer el box
    wpLb.animate({'top': topStart - wpLb.height()},500,function() {
        wpLbOver.fadeOut();
        //ocultar la capa sobre puesta
        wpLb.css({'display': 'none','top': - wpLb.height()});
    });
    return false;
});

¿Y dónde lo puedo ver?

Por desgracia no tengo un lugar en la internet para ponerles el demo, pero les dejo el lightbox.zip con el demo de esto funcionando (y una imagen bastante mala de la caja).

TO DO

  1. Generar los div’s del lightbox de manera dinámica.
  2. Generar un plugin para jQuery, para poder usarlo como jQuery(’selector’).LightBox();
  3. Poder obtener de manera dinámica el tipo de contenido a mostrar (desde el enlace que abre el lightbox)
  4. Merjorar la animación, ya que si se quieren hacer cosas más elaboradas habría que escribir mucho código
  5. Revisar si para cualquier estructura/estilo (X)HTML funciona la sobreposición de la capa
  6. Arreglar la capa sobrepuesta en IE6 (no muestra la transparencia)
  7. Hacerlo con otros frameworks

Parte del problema

2010 Enero 2
por ixmael.arts

Las empresas se basan en lo que producen, pero ¿si no producen las cosas bien?

Se veran muy bien las cosas, pero como desarrollador reconozco que no se hacen adecuadamente las cosas en el back-end (mucha recarga de archivos, poca verificación de la seguridad y es lo que he hecho o visto) pero por otra parte de nada sirve que uno sepa estas cosas porque NUNCA HAY TIEMPO para hacer las cosas bien, uno como puede va tapando algunos hoyos por conciencia hacia el trabajo, no porque sea una practica de mejora.

En el trabajo hay un vidrio con frases y hay una que me encanta:

Lo urgente atenta contra lo necesario

y me gusta porque todos los proyectos en la empresa en la que trabajo son urgentes, y solo me causa gracia cuando ando apurado y veo que mi trabajo no se basa en lo necesario.

¿Qué es un lider?

¿Alguien que se desvela haciendo trabajo? ¿que le grita a sus empleados? ¿que te hace sentir menos? ¿te compara con l@s mejores?

Estas preguntas vienen porque ya me canse de que las personas que desarrollan sean el cuello de botella en el trabajo. Terminamos siendo las personas responsables de que salgan las cosas a tiempo, pero ¿en qué momento me preguntaron respecto a algo? solo dos veces, de las cuales la verdad me pase el doble de tiempo, pero tampoco se me dieron las especifíciones correctamente.

No es justificación, pero ¿por qué solo las personas de ventas hacen las cotizaciones preguntando a los projects manager y nunca preguntan a las personas que se van a ver involucradas con el desarrollo? Y no es que no sepan, pero nunca aterrizan las cosas y las personas que tenemos que lidiar con eso somos l@s personas que desarrollamos la página y si desde un principio no se nos revela como estará algo ¿por qué suponen que serán solo dos horas de poner un lightbox?

Si se sabe que así se hacen las cosas ¿por qué tienes que ser tan duro en tus juicios hacías las personas que desarrollan al punto de dar el ultimatum de ver la continuidad en el trabajo? Sí siempre andamos atrasados, y si no es porque varias personas se desvelaron y dejaron de prestarle atención a sus cuerpos (y luego andan siempre enferm@s).

¿por qué solo hay dos projects managers que vienen de la programación? A muchas personas no les llama la atención ser administradores de proyectos, pero tampoco es para que seamos guiados/regañados por personas que no tienen el feeling para la programación.

Las empresas

Por qué las actitudes de l@s trabajadores/as son inaceptables, pero SI SON ACEPTABLES LAS INJUSTICIAS DE LAS EMPRESAS.

Para que las personas se pongan la camiseta para la empresa, la empresa tiene que hacer lo mismo. Si después de x tiempo (acordado) no se resuelve algo ¿qué esperanzas tiene uno de que las cosas mejoren para uno?

Uno empieza de becario en x lugar para aprender y muestra que es adecuado para desarrollar trabajo (bueno o malo, depende de la empresa en la que se empiece a trabajar), pero si ves que la empresa no hace nada para mostrar que se te contratará o no ¿uno tiene que responsabilizarse al mismo nivel de las personas que guían lso equipos?

Las empresas en México son un hoyo negro que solo quieren engordar los bolsillos de las personas al frente de ellas y para nada hacer algo bueno para las personas que trabajan en ellas, ni modo, pero esa es la impresión que dan todas (por muy socialmente responsables que griten que son).

Como veran, en verdad estoy en contra de las injusticias.

2009 Recapitulación

2010 Enero 1
por ixmael.arts

El 2009 que ha sido en general bueno, sobre todo porque ha sido el inicio del avance que mi vida necesitaba y que siempre ponía mil y un pretextos. Aquí les hago un recuento en diferentes aspectos.

El trabajo

Deje de trabajar en ese hoyo negro llamado Bancomer (y Getronics). En primera su forma de trabajo no me gusto: sobre todo porque tecnologicamente su atraso en la banca en línea (en el front end) hacía muy difícil desarrollar las cosas, su falta de estandares de menos internamente (porque para que se les ocurra usar javascript, css y maquetación crossbrowser se veía más lejos), que un desarrollaba de la misma manera a como se hacía hace 8 años (más o menos), la falta de documentación, los servicios de banca en línea desarrolladas en forma de espaguettis (hasta daba miedo tener que hacer un cambio de un acento en una palabra). En segundo lugar la consultora Getronics no hacía un pago justo por las funciones que yo hacía.

Claro que la forma de renunciar a ese trabajo no fue de lo mejor, pero la verdad me canse de ser paciente para que me resolvieran cosas por parte de Getronics. La verdad no me arrepiento de haberlo hecho de esa manera porque simplemente esas instituciones solo estan para consumir a las personas (su vida) y no dar nada por ellas. Ni modo, no puedo ponerme con Zanzon a las patadas, pero si pienso que es injusto, muy injusto.

Como las vacaciones no son permantes, empece a trabajar en Ingenia Group, una empresa de diseño y desarrollo web aunado al diseño gráfico. El ambiente de trabajo es mejor que en mi anterior trabajo (no son tan aburrid@s) y pues hago otras cosas. He aprendido a maquetar mucho mejor (XHTML y CSS más rudo), no me gusta que se apegan a un CMS y sobre de este se tiene que hacer todo, también he empezado a interactuar con servicios como por ejemplo YouTube (siguen Twitter y Facebook).

No me parece que en Ingenia Group hagan las cosas justamente (para emplead@s), pero sí estoy mucho mejor.

El amor

Encontrarlo y en el lugar menos esperado. Eso fue lo divertido y lo malo por otra parte es que preste atención/tiempo a actividades que no debía, pero ya ven que las personas hacen muchas cosas para estar con esa persona especial.

Lo malo es que salio una parte mala mia, pero me permitio conocerme y establecer mis prioridades y saber que estoy dispuesto a amar de nuevo.

La escuela

Luego de dejar de trabajar en Bancomer, regrese a la escuela. En un principio me sentía raro regresando, pues ya no me sentía parte de ella, pero duro poco esa sensación. El regreso a la escuela se vio recompensado con pasar Álgebra (teoría de grupos) no sin sentir que de plano no podía con ella.

Llegue a lógica y empezaron las primeras muestras de lo que es Análisis de Algoritmos que es una de las materias que más me han llamado la atención y eso me emociono mucho.

Dadas las injusticias vividas en la Industria Privada me empiezo a aferrar a la idea de regresar a la escuela (maestría) y desarrollar una vida academica, que no niego que no sea frustrante algunas veces, pero que es mejor que la IP y se tratan de generar conocimientos (no solo de consumirlos).

Yo

Y una de las cosas más interesantes es que me empece a conocerme viviendo otras situaciones que no había pasado antes (o que las había vivido pero había dejado pasar sin interactuar). A veces no es divertido, al final de cuentas soy como pensaba que no era, pero el estar conciente de estas situaciones me ayuda mucho para poder seguir en la vida de una manera más feliz y plena.

Desde este blog les deseo que encuentren su camino en la vida, feliz 2010.

¿Por qué apoyo al SME?

2009 Noviembre 11
etiquetas: ,
por ixmael.arts

Voy a ser sincero: no he estado tan informado respecto a este acontecimiento.

El primer acercamiento con este movimiento fue cuando las autoridades federales interrumpieron en las instalaciones de Luz y Fuerza del Centro (LFC). Lo primero que me vino a la mente fue el libro de La fiesta del Chivo de Mario Vargas Llosa, dónde el Chivo logró tener una dictadura de más de 30 años y hacía cosas como la que le ocurrió a LFC.

Me he enterado de las movilizaciones, pero más para evitarlas que para ir, así como uno que otro movimiento de acción de no utilizar energía eléctrica a x hora (de hecho creo que en este momento debería de estar apagado todo).

No tengo familiares (que conozca) que hayan trabajado allí.

¿Cómo es que puedo decir que apoyo algo si no conozco mucho?

En primera, el Gobierno Federal de México uso el argumento de que LFC ya no era sostenible económicamente. Lo cual me lleva a pensar ¿la clase política de México es sostenible económicamente? Bajo el mismo argumento deberíamos liquidar a la clase política con una patada en el trasero.

Segunda. Se le ha dado una fuerte cobertura mediatica a este problema, pero por lo general es en contra de SME. Esto me hace recordar una frase de Jean Paul Sartre (bueno, yo se la atribuyo, pero en verdad no estoy tan seguro) que dice

fiate de las personas que tengan a los tontos en contra

y pues el SME tiene a Televisa y TV Azteca en contra ¿qué otros tontos se les unen?

Esto me hace ponerme del lado del SME, aunque sea de manera moral.

Algo, mientras acomodo esto

2009 Octubre 27
etiquetas: ,
por ixmael.arts

Jejeje, como notaran, he dejado esto un poco abandonado, pero mientras me pongo a trabajar para escribir (estoy sufriendo el sindrome del escritor) les dejo el video del nuevo single de Tokyo Ska Paradise Orchestra

Hola

2009 Octubre 27
etiquetas:
por ixmael.arts

Este post es para mi persona favorita que visita esto: je t’aime

Es una suerte haberte conocido.

Te quiero mil

Sí, ni modo, ando cursi

News!!!

2009 Septiembre 11
etiquetas:
por ixmael.arts

Bueno, la noticia del día de hoy es que he aprobado la materia de Álgebra en la escuela :P

Mi calificación fue un 6 (S en el sistema de la UAM), pero con eso basta para esta materia.

Experiencia maquetando

2009 Agosto 8
etiquetas: , , ,
por ixmael.arts

Bueno, resulta que en Ingenia no he desarrollado tanta tarea de programación y sí más maquetación con CSS y viendo el uso de jQuery (jeje, que hace bien fácil todo).

Con esto se han presentado problemas interesantes que se me ha ocurrido una solución, pero que no las he realizado (porque siempre hay que hacer las cosas corriendo porque se tienen que entregar ya), mientras les pongo los problemas (y las soluciones si encontre):

  • Poner una imagen de fondo que se ajuste a la resolución del navegador: el problema es que las imagenes de fondo no pueden cambiarse el tamaño (es lo que sé) pero una imagen sí (definiendo con CSS o en la etiqueta directa de la imagen) un tamaño diferente, entonces es generar una imagen con posición absoluta y poner el contenido en frente con la posición absoluta o relativa (eso depende de la maqueta) y redimensionar solo con javascript (o jQuery) la imagen de fondo.
  • Resulta que uno puede definir una imagen de fondo para una fila de una tabla (tr) con CSS sin problema y Firefox y Opera lo muestran sin problemas, pero Internet Explorer y Safari ponen para cada columna de la fila ese fondo. En IE encontre una solución (medio extraña) pero en Safari nada más no había solución (hasta donde investigue).

Y pues son solo dos que se me presentaron a mi en este tiempo que llevo y pronto pondre la solución en html de la primera (jejeje).