March 2007 - Artículos - Jorge Serrano - MVP Visual Developer - Visual Basic

March 2007 - Artículos

Quizás muchos no lo sepan, tampoco es nada importante la verdad, pero soy desde hace años un aficionado a la fotografía (de los malos). De pequeño tuve una cámara fotográfica de carrete con la que jugueteaba, pero eso de ir a la tienda a revelar las fotos y demás, como que no, como que era un poco rollo (nunca mejor dicho).

De cámaras digitales sólo he tenido dos realmente, una Sony Mavica CD-1000 que compré hace unos 6 años y la cuál he reparado recientemente porque me hace unas fotografías increíbles, y una Canon 350D como cámara reflex-digital más moderna y con mayores posibilidades como la explotación del formato RAW (uno de los mejores avances de la fotografía bajo mi punto de vista). Para los que tengan una cámara Canon, les recomiendo visitar el sitio web de canonistas y sobre todo sus foros, dónde colaboré hace ya un par de años y aprendí muchísimas de las cosas que se. No obstante, lo que más me gusta de la fotografía es sacar paisajes, animales y objetos, me relaja mucho, y muchos de ellos los uso en mi sistema operativo como fondos de pantalla (también hacía alguno con 3D Studio, pero mucho mejor cuando son reales).

No obstante, hay muchos fondos de pantalla en la red, y no hace falta tener una cámara fotográfica para tener un fondo de pantalla, y más si hay personas que los cede gratuitamente. Basta con poner la palabra wallpaper en un buscador web para obtener muchos fondos de pantalla.

Pero si cuento todo esto, es porque quiero aprovechar para comentaros que recientemente Microsoft Singapore ha lanzado un concurso denominado PhotoVista. El concurso tiene por objetivo dar premios relacionados con las mejores fotografías de Singapore que serán utilizadas como fondos de pantalla. Este concurso duró desde Diciembre a Enero, y en 60 días hubo 2200 entradas... imaginaros si hay fondos de pantalla de Singapure que podemos usar para lo que sea. Estaría bien tener un pequeño repositorio a modo de postales de fotografías de lugares del mundo, sobre todo de usuarios de Geeks.ms, dónde hay usuarios de diferentes puntos cardinales y lugares muy alejados geográficamente a un lado y otro del charco.

Para más información:

Publicado por Jorge Serrano | 10 comment(s)
Archivado en:

Durante el pasado Summit, dónde nos reunimos la mayoría de MVPs del mundo junto a otras personas reconocidas mundialmente como los MVS o algunos invitados de excepción, tuvimos todos numerosas charlas cruzadas de pasillo dónde pudimos debatir no sólo de si un chuletón está mejor muy hecho o en su punto, si no de aspectos más precisos y relacionados con el propio desarrollo del Software y la informática en su más amplio espectro.

De hecho, recuerdo una conversación con Rodigo. La conversación fue muy general, apenas duró 1 minuto quizás, pero son de esas conversaciones que calan y que cuando acabas, te dices, debo escribir en geeks un comentario sobre esto. Y más aún después de leer el último mensaje de Rodrigo en su blog y una vez leídos los primeros comentarios, ya que indirectamente leo aspectos relacionados con lo que quiero tratar aquí.

La pregunta clave que debe hacerse todo informático independientemente de su rol, es... ¿a que dedicas tu tiempo cuando estás frente a un ordenador trabajando?. En el caso del desarrollo del Software, esta pregunta es aún más importante, porque el desarrollo del Software, es en mi opinión un trabajo creativo, algo en lo que coincidía en mi conversación con Rodrigo.

Es muy normal, que todo el mundo tenga hoy en día cien mil herramientas Software abiertas en su ordenador, y además muchas de ellas no son a lo mejor vitales para ejercer nuestro trabajo. Además, en un mundo tan interconectado como el nuestro, se suele tener muchas más herramientas cerca a las que se presta mucha atención y que no tienen porque estar directamente relacionadas con un ordenador o con nuestro trabajo diario. Pero no olvidemos también que hay aspectos generales del ambiente de trabajo, que pueden incidir positiva o negativamente al rendimiento diario de nuestro trabajo.

Expondré algún ejemplo sencillo para que se me entienda mejor: ¿cuántas personas tienen abierto el programa gestor de correo electrónico la mayor parte del tiempo cuando estamos trabajando?... levantad la mano y no tengáis vergüenza. Es normal que ocurra así en un mundo como el nuestro, cada vez más intercomunicado o interconectado. ¿Cuántas llamadas telefónicas recibes que nada tienen que ver con el trabajo diario?... puede que menos que el caso del correo electrónico, pero también contabiliza una buena cantidad de interrupciones.
Sirvan estos dos breves ejemplos, para incidir en un aspecto.
El desarrollo del Software es una tarea creativa, requiere una concentración y atención plena de lo que estamos haciendo. Interrupciones siempre las hay, pero cada interrupción, incide de forma muy directa en nuestra atención y por lo tanto en nuestro rendimiento.

En el desarrollo del Software, como comentamos en aquella ocasión en USA, se requieren procesos de atención continuada que forma una gráfica de una Distribución Normal continuada... lo que es una campana de Gauss unida a otra, y así consecutivamente. Cada campana compone una tarea, y es que cuando se desarrolla Software, lo normal es que uno preste especial atención a esa tarea y que cuando acabe, piense de nuevo en como ejecutar la siguiente, analice la situación nuevamente y comience el proceso de lo que es una nueva campana, así durante todo el proceso del desarrollo del Software.

En muchas ocasiones, cuando abordamos un proyecto de desarrollo del Software nos vemos inmersos en que según avanzamos en el desarrollo, nos acordamos de diferentes cosas o aspectos puntuales, ideas, que a lo mejor en ese punto no las apuntas, pero que aislados de todo lo que nos rodea, somos capaces de recordar. Esto entra dentro del propio proceso creativo del desarrollador.

El objetivo del desarrollo del Software, es conseguir el máximo rendimiento y provecho de todo nuestro trabajo. El rendimiento no obstante, tiene una relación muy estrecha con la motivación. ¿Quién no ha tenido un día pez o torpe de esos que no te sale nada de nada o que no te concentras lo suficiente?. Yo lo he tenido, y no me duele decirlo, yo por lo menos me considero un ser humano y no soy ninguna máquina (sería extremadamente aburrido sino). Como anécdota de esto último que comento, recuerdo incluso la ocasión en la que a una persona del equipo la dije que se fuera a su casa a descansar y a resolver sus problemas. Dicho así suena fuerte sí, y de hecho en un principio me miraba como si le hubiera menos preciado, pero tengo por costumbre explicar siempre el porqué de las cosas y de hecho en aquella ocasión, aproveché para explicar a esta persona que lo que quería es tenerle rindiendo contento, motivado, a gusto, y no pasando un día malo en el trabajo como el que va al campo a mirar los árboles y escuchar el canturrear de los pajaritos pensando únicamente en sus cosas, teniendo un problema rondándole en la cabeza y no rindiendo lo suficiente o no a como me tenía acostumbrado, no disfrutando del día a día, todos tenemos días malos como decía antes. El caso es que esta persona se fue a su casa o a donde fuera (tampoco me importaba la verdad), resolvió el problema que no le hacía estar al 100%, y al día siguiente estaba trabajando a un ritmo mucho mayor de ese 100% porque además se veía con la obligación moral de dar el do de pecho. Psicología o no, la motivación es necesaria, incluso para el jefe de proyecto, pero esto es otra cosa que da para otro mensaje más largo quizás porque no todo el mundo lo entiende, así que sigamos con lo que comentamos en este mensaje.

El problema de todo lo que os comento hasta aquí está en la productividad, la motivación y el rendimiento. Y el mayor enemigo de esto (el mayor, no el único) son las interrupciones, las paradas.
Las paradas e interrupciones, se pueden dar de muy diferentes formas. Aquí trato algunos de estos aspectos.

En la conversación que tuve con Rodrigo, hablábamos de que programas como los lectores RSS, los gestores de correo electrónico, los móviles personales no silenciados, etc., no sólo rompen el ritmo y la concentración del trabajo diario de una persona, sino que incluso a veces, rompe el ritmo de las personas que nos rodean.

En muchas ocasiones, tal y como ya esbozaba anteriormente, cuando desarrollas una aplicación tienes 3 ó 4 ideas que apuntar, pero estás inmerso en una de esas campanas de Gauss que comentaba, y piensas, cuando acabe esta tarea apunto esas ideas antes de que se me olviden, pero zás, llega una interrupción, pasan 5 ó 10 minutos sin que seas consciente del tiempo de interrupción, y luego ni te acuerdas de la mitad de las cosas que tenías para apuntar. A mí por eso, me gusta tener un papel cerca o un bloc de notas de Windows, dónde apuntar rápidamente con palabras muy generales esas ideas (3, 6 palabras por idea) y seguir desarrollando. Aunque reconozco que no siempre lo hago, porque a veces andas tan ocupado que casi no te da tiempo ni de hacerlo.

Me hace gracia ver que en muchos equipos de desarrollo del Software, se trata a las personas de determinados roles como máquinas, cachos de carne, gente o personas sin iniciativa, sin que puedan criticar o llevar la contraria en algo, o que crean estar en posesión de la verdad absoluta. También me hace gracia las personas que dicen admitir críticas, pero que luego por debajo te cruzan con una equis para el resto de tus días. O las personas que interrumpen constantemente las tareas de los desarrolladores preguntando como va tal tarea o como va tal proyecto, o que generan tensión en exceso, algo que se llega incluso a mascar en el ambiente. O bien aquellas personas que no entienden el desarrollo del Software como un trabajo creativo, el cuál obliga al desarrollador a pensar y ejecutar, pensar y ejecutar, y que para pensar, no debe estar necesariamente delante de un PC abriendo y cerrando la boca como un pez en una pecera, atado a la silla o leyendo la documentación y ejecutándola sin rechistar y sin opinar, pero tampoco es para que critique o cuestione todo y cada una de las cosas que se hace, que hay de todo en la viña del Señor.

Nadie dijo que el desarrollo del Software sea fácil o sencillo (esta frase creo que la digo cien mil millones de veces en mis mensajes en el blog), pero es que la gestión de los proyectos tampoco lo es, aunque mucha gente piense que habiendo hecho un postre, es capaz de hacer doscientos.

Cada proyecto es diferente. Sí es cierto que puede tener similitudes los unos con los otros, pero cada uno es independiente y diferente. Las variables que rodean a un proyecto son siempre nuevas, te pueden sonar o ser parecidas, pero son nuevas. La situación del equipo de desarrollo también lo es. Cada momento también, así como la tecnología a usar, y un enorme número de variantes que hacen que cada proyecto sea como decía, único y creativo. Es lo divertido y bonito de nuestra profesión y de nuestro trabajo.

El mayor enemigo no obstante, es o son siempre los mismos, la motivación, el rendimiento, la productividad y el ambiente de trabajo.
El programador debe tener iniciativa propia, es a mi modo de ver, fundamental... ¿a que todos hemos oído la palabra delegar?,... ¿cuántos realmente saben utilizarla?. La teoría es muy sencilla de contar, la práctica no lo es tanto.

De todo lo comentado hasta aquí y sin ánimo de extenderme más, expreso algunas de mis conclusiones que podéis criticar por supuesto (no os marcaré con ninguna equis):
  • El desarrollo del Software es un proceso creativo que requiere pensar y ejecutar una acción general de forma repetitiva, pero no sólo ejecutar como máquinas. Pensar es necesario.
  • Dejar que el programador o personas que forman parte del proceso de desarrollo del Software tenga iniciativa, no es malo, es justamente todo lo contrario, aunque es cierto que hay personas que piensan que eso está más cerca de cuestionar su autoridad de resposable de un proyecto que de otra cosa.
  • Las interrupciones y la motivación inciden de forma directa en nuestro rendimiento. No sólo hay que decir como hay que hacer las cosas, también hay que explicar porqué hay que hacerlas así. Las interrupciones deben estar medidas para incidir en el rendimiento lo menos posible.
  • Aceptar críticas no es signo de debilidad, sino todo lo contrario, demuestra apertura y ganas de mejorar. Todo el mundo puede aportar, y aportar es involucrarse en un proyecto, formar parte de él. El éxito de un proyecto está en que todas las personas que forman parte del mismo, se involucren sintiéndolo como propio.
  • Tener un teléfono móvil personal conectado todo el día, absorve buena parte de nuestra atención y de aquellos que nos rodean.
  • Si tienes que leer un mensaje de correo electrónico, no hace falta que tengas abierto el programa gestor de correo todo el día, basta que lo abras dos, tres o cuatro veces al día, a no ser que estés esperando un mensaje urgente o cosas parecidas.
  • Si tienes un lector de RSS y no lo vas a abrir hasta el final del día para leer sus noticias, ¿no crees que es más sensato abrirlo directamente al final de ese día o justo antes de ir a comer y no tenerlo abierto todo el rato?.
  • Programas como Skype o Messenger, nos facilitan la comunicación interna en muchas ocasiones, pero aunque es a veces indispensable para según que situaciones, su excesivo uso incide nuevamente o puede incidir en nuestro rendimiento.

Podría seguir enumerando aspectos como por ejemplo que cuando dentro de un proyecto se hace una promesa se ha de cumplir, u otras tantas cosas que deben tenerse en cuenta en el buen hacer del desarrollo del Software y que casi siempre es aplicable a casi todos los trabajos, pero me quedo con las conclusiones que he enumerado y que daría para más mensajes en el blog. Lo cierto es que como creo que verá la inmensa mayoría de personas, hay muchas tareas diarias que nos impiden avanzar de forma constante y normal en nuestros procesos.

Con todo esto, creo sinceramente que no estaría nada mal que en la carrera de informática, se diera una clase de psicología general (no se si se da hoy día, pero yo no la dí y no hace tantos años que terminé la carrera). Se que muchos me dirán que todo esto que decimos son aspectos de sentido común, pero la psicología en general obedece a aspectos del sentido común que en muchas ocasiones pasamos por alto.

Que conste que no trato de tomar mis comentarios como una ley de prohibiciones o mandatos de como se han de hacer las cosas, pero sí como para comentarlas, analizarlas, meditarlas, tenerlas en cuenta, hacerlas ver, y que cada uno debata y tome sus decisiones de acuerdo a sus responsabilidades.

¿Que opinas?. ¿A que dedicas tú el tiempo cuando desarrollas Software?. ¿Eres realmente productivo?. ¿Te consideras capaz de cambiar alguno de tus hábitos?.

Publicado por Jorge Serrano | 8 comment(s)
Archivado en:

Microsoft ha puesto a disposición de todos, un libro electrónico, conocido en el argot informático como ebook, que trata sobre Microsoft Atlas for AJAX.

En concreto, el libro recibe el título de Microsoft Atlas for AJAX Development. Se trata de un libro en formato PDF, que tiene un tamaño de 3.5 Mb y 147 páginas.

El libro, puede ser descargado de la siguiente dirección.

Publicado por Jorge Serrano | 6 comment(s)
Archivado en:

Este mes no he escrito ningún post. El motivo es que he estado sumergido en un interesantísimo proyecto con tecnologías recientes (SharePoint 2007, Microsoft .NET 3.0, etc) que me ha absorbido la inmensa mayoría de mi tiempo. Muy interesante la verdad. Pero la tecnología sigue avanzando y por eso, algunos MVPs hemos venido al evento internacional anual que organiza Microsoft cada uno o dos años. Y aquí estamos... en Seattle (USA).

Así que ahora me encuentro en Seattle escribiéndoos desde el hotel, en este evento para Microsoft MVPs, formándome, conociendo a gente que normalmente se conoce "virtualmente" vía e-mail o en los blogs, viendo a viejos amigos, compartiendo conocimientos y experiencias, aprendiendo más y más cosas sobre informática y tecnología, escuchando vivencias interesantísimas y sobre todo, participando.

Ayer empezamos el día tomándonoslo de relax, hoy empieza lo bueno, son las 7 y pico de la mañana. Sobre ese relax, quiero contaros algunas cosas, no con la idea de poneros los dientes largos, porque no se trata de eso, si no de compartir un poco como lo estamos pasando por aquí.

Ayer fuimos 10 personas con dos coches alquilados por algunas zonas de USA dentro del estado de Washington. La experiencia ha sido excelente.

En nuestras visitas, fuimos primero a la inmensa fábrica de Boeing. Ahí Rodrigo (PlainCompi), se dedicó a pensar como usar SCRUM en la fabricación de los aviones de esa famosa compañía. Lo cierto es que la precisión, planificación y trabajo en equipo son claramente, aspectos necesarios para el éxito de un proyecto de la envergadura como el que puede ser la fabricación de un avión para casi 300 personas, y todo pese a que el avión sea siempre el mismo modelo.

Me llamó poderosamente la atención, el panel gigante que indicaba electrónicamente, el estado del proyecto. Una forma de que todo el mundo vea en que estado está el proyecto, en que cosas se estaba trabajando, y cuanto tiempo faltaba para la entrega y finalización del proyecto. Siempre en mis proyectos he pensado que estas cosas son fundamentales, y lo he hecho con papel y boli, pero estos americanos son diferentes, y estas formas de hacer así las cosas me encantan.

Después fuimos de excursión, las tiendas para otra ocasión, y nos montamos en un ferry para que Iván (PlainCompi) cumpliese esa ilusión que tenía desde pequeño de viajar en uno. Nos chocó mucho observar que en la entrada al ferry, había unas señoras con carteles de no a la guerra, y al lado, otras personas con la frase support our troops. Cada persona estaría separada de 2 metros de distancia y alternadas según les daba la gana, pero todas en silencio y guardando un respeto pulcro. ¡Esto es Estados Unidos!.

Al otro lado del mar, cuando terminamos de pasar con el ferry, nos esperaba el restaurante más famoso de todo el estado de Washington (Fat Smitty's), dónde Miyo, más conocida como Mickey, nos deleitó con una hamburguesa tamaño BESTIAL denominada en nombre clave como Smitty, que hasta a Rodrigo le costó comérsela. Aquí, Jose intentó hacer un Pert para comer la hamburguesa utilizando las tradicionales herramientas tenedor y cuchillo, pero Mickey le echó la bronca en un inglés ajaponesado y le dijo que no hacía falta hacer un Pert para semejante proyecto, y que las manos era la mejor herramienta... Jose (PlainAmigo de muchos años) aceptó las instrucciones de la que era su manager en ese momento y terminó superando con éxito la prueba.

Un poco más adelante, fuimos a un parque natural, pero tuvimos un poquito de mala suerte, y es que como no para de llover, había riesgo de aludes y cerraron la carretera, así que media vuelta. Eso forma parte de los proyectos que no se acaban por causa de un agente externo no controlable, algo que está presente en casi todos los proyectos informáticos.

De vuelta, hicimos una paradita en un casino indio (Miguel, Rodrigo y Marco intentaron poner a prueba las matemáticas, pero faltaba Unai a quien desde aquí aprovechamos para enviarle un fuerte abrazo :-( ). Allí estuvimos viendo que la ludopatía es una triste enfermedad que no mira razas, religiones ni nacionalidades... ¡que mundo ese del juego!. Eso sí, me tomé una cerveza Budweisser cuyo sabor, nada tiene que ver con la de la cerveza de la misma marca que se vende en España. Sobre lo del juego, omito comentarios porque no me gusta jugar y me da mucha pena ver a la gente metida en ese sub-mundo.

De vuelta, una fiesta privada de MVPs, pero como llegamos casi al cierre, estuvimos allí apenas 30 minutos si es que llegaron, porque la cama nos llamaba a gritos, y hoy... empezamos a trabajar de verdad y a tope... aunque por la mañana tenemos pensado ir a desayunar al bar dónde se rodó Doctor en Alaska que está aquí al lado (no en Alaska).

El caso es que pese a parecer que estamos relajados, el cansancio es generalizado en todos nosotros, pero ya hemos podido habituarnos al cambio horario y a la vida aquí.

A partir de aquí, habrá cosas que no podamos contar porque estarán sujetas a NDA, pero bueno, desde aquí os enviamos un caluroso saludo a todos, y esperamos aprender mucho para poder seguir compartiendo con todos esos conocimientos.

Saludos.

Publicado por Jorge Serrano | 10 comment(s)
Archivado en: