Saltar al contenido

Artículos, tutoriales, trucos, curiosidades, reflexiones y links sobre programación web ASP.NET Core, MVC, Blazor, SignalR, Entity Framework, C#, Azure, Javascript... y lo que venga ;)

17 años online

el blog de José M. Aguilar

Inicio El autor Contactar

Artículos, tutoriales, trucos, curiosidades, reflexiones y links sobre programación web
ASP.NET Core, MVC, Blazor, SignalR, Entity Framework, C#, Azure, Javascript...

¡Microsoft MVP!
Mostrando entradas con la etiqueta autobombo. Mostrar todas las entradas
Mostrando entradas con la etiqueta autobombo. Mostrar todas las entradas
lunes, 17 de enero de 2011
A finales de la semana pasada, coincidiendo con el lanzamiento del producto, se ha publicado mi curso de ASP.NET MVC 3 en CampusMVP. Todo un récord, teniendo en cuenta el ritmo que llevan los de Redmond ;-D

El material es una revisión del curso de MVC 2, que tanto éxito de crítica y público ha tenido durante el pasado año, adaptado por completo a las novedades presentes en la nueva versión del marco de trabajo:
  • Introducción a ASP.NET MVC, donde realizamos un primer acercamiento al framework MVC, y sentamos las bases sobre las que continuar el aprendizaje.
  • El siguiente módulo, la  primera aplicación ASP.NET MVC, crearemos nuestra primera aplicación partiendo de las plantillas por defecto de Visual Studio, que nos será de utilidad para comprender la estructura de este tipo de proyectos y el funcionamiento del marco de trabajo.
  • Continuaremos añadiendo funcionalidades a esta aplicación, donde introduciremos nuevas características partiendo desde cero, aprovechando la ocasión para profundizar en la creación de modelos, vistas y controladores.
  • Seguidamente estudiaremos la capa Modelo a fondo, viendo distintas formas de implementar sus componentes.
  • A continuación, nos sumergimos en la capa Controlador, detallando minuciosamente la creación de controladores, las posibilidades que nos ofrecen, y el conjunto de herramientas que nos facilita el framework para ellos, como el sistema de routing, el binding, filtros, o resultados de acciones.
  • También trataremos con gran detalle la creación de la capa Vista, donde describiremos sus tipos, implementación y mecanismos del marco de trabajo que nos facilitan la tarea, como los helpers estándar, plantillas, validadores, o los nuevos helpers de Webpages, entre otros, utilizando los motores de vistas Webforms (ASPX) y el nuevo Razor.
  • En Ajax con ASP.NET MVC realizaremos un recorrido por las distintas alternativas para la introducción de Ajax en nuestros sistemas, y mostraremos la solución a escenarios comunes.
  • También trataremos cómo organizar los proyectos en Áreas, y los cambios que implican en cuanto a la estructura y funcionamiento de las aplicaciones.
  • Y por último, dedicaremos un capítulo a temas adicionales, básicamente para tratar otros aspectos no incluidos en los módulos anteriores, como la realización de pruebas unitarias y las nuevas facilidades para la resolución de dependencias, internacionalización, el despliegue de aplicaciones, o el gestor de paquetes NuGet.
El temario está salpicado por más de dos horas de vídeos demostrativos, aplicaciones de ejemplo, recursos adicionales, y consejos del día a día, que seguro harán de MVC vuestro marco de trabajo favorito ;-)

El curso se imparte totalmente online, a través de la plataforma CampusMVP, sin horarios y a vuestro propio ritmo. La duración total del curso está estimada en 12 semanas (con una dedicación media de 5 o 6 horas por semana, dependiendo del nivel de partida), y durante las cuales, dado que soy el tutor, contaréis con mi asistencia para resolver vuestras dudas e inquietudes, y ayudaros a lo largo del proceso formativo.

Si estáis interesados, sólo tenéis que ir a la tienda online de CampusMVP y apuntaros directamente. Tened en cuenta que si trabajáis en España los cursos pueden salirle gratis a la empresa gracias a la formación bonificada.

¡Espero veros por allí! ;-)

Y recordad:

Curso de ASP.NET MVC 3

Publicado en: Variable not found.
miércoles, 14 de julio de 2010
Variable not found es un blog cuyos lectores son en su mayoría esporádicos y proceden de motores de búsqueda: aterrizan, miran lo que les interesa, se van, y la mayoría de ellos no vuelven. Obviamente estos usuarios son bienvenidos y alegra saber que cada día los posts de VNF llegan a más gente.

Sin embargo, el dato que siempre he valorado más para hacerme una idea de la aceptación de un blog es el número de suscriptores a los feeds, puesto que implican una respuesta activa del lector hacia los contenidos. Se trata de personas que, voluntariamente, deciden en un momento u otro añadirte como fuente a su lector favorito, mostrando así de forma explícita su interés por tu trabajo.

Y aunque sé que Feedburner no es demasiado preciso, que este dato suele oscilar bastante y que probablemente en unas horas ya no será así, me váis a permitir que lo celebre un poco...

¡Hemos superado los mil suscriptores a los feeds en Variable not found! :-))

1029 suscriptores en Variable not found

¡Mil gracias a todos!

Publicado en: Variable not found
lunes, 10 de mayo de 2010
¡Cuatro años de variablenotfound.com!Mayo de 2006. Mucho ha llovido desde entonces (y sobre todo este año ;-)). Windows XP era el rey del escritorio, y a pesar de sus inconvenientes, navegábamos con el hoy denostado Internet Explorer 6; Visual Studio 2005 había aparecido recientemente, y comenzábamos a crear aplicaciones para .NET 2.0… ¡ah, qué tiempos!

El pasado 8 de mayo volvimos a celebrar el aniversario de la publicación del primer post en Variable Not Found, ese blog que comenzó tímidamente hace ya cuatro años, con una declaración de intenciones como la siguiente:
Pretendo firmemente, y suelo ser bastante tenaz en mis propósitos, que este diario recoja todo aquello que me llame la atención y mis reflexiones relativas a la tecnología en general, y al mundo del desarrollo de software en particular.
Con mayor o menor frecuencia dependiendo del tiempo libre disponible en cada momento, desde esa fecha he ido publicando por aquí todo aquello que he considerado que podía interesar a alguien más que a un servidor, probablemente unas veces con más acierto que otras, pero, en cualquier caso, siempre con el mismo entusiasmo que el primer día.

Como en otras ocasiones, aprovecho para resumir los distintos periodos por los que hemos ido pasando desde aquél momento.
  • Año 1: la travesía del desierto (mayo 2006 - mayo 2007), caracterizado principalmente por ser yo el único visitante (poco más o menos) al blog, por aquellos tiempos disponible a través de la dirección jmaguilar.blogspot.com y con la imagen de una de las plantillas de Blogger.
    La siguiente gráfica muestra los primeros meses de vida del blog, donde era extraño superar las tres visitas al día. Esos picos que se ven probablemente sería yo mismo haciendo pruebas:

    image

    También es curioso los primeros veinte días sin datos: era tan ignorante que ni siquiera se me ocurrió activar ningún sistema de seguimiento hasta 20 días después de la inauguración oficial de la bitácora :-D
    Aprovecho para introducir un mensaje de aliento para los que estéis en esta situación ahora, empezando un blog: no os desaniméis, ni aun viendo este desastre: con un poco de esfuerzo todo puede cambiar. El desierto también tiene su fin.
  • Año 2: el despegue (mayo 2007 - mayo 2008), durante el cual se produjeron múltiples novedades, como la adquisición del dominio variablenotfound.com, la difusión de feeds a través de Feedburner, la creación del diseño actual, y la inclusión en agregadores y comunidades como Planeta Código, Planet WebDev y Geeks.ms.

    Este segundo año lo acabamos con un incremento del 2.500% en el número de visitas (la verdad, tampoco lo tenía muy difícil al partir casi de cero ;-)), debido en gran parte a algunas avalanchas procedentes de Menéame.

    Pero lo que me parecía más increíble era algo a lo que, curiosamente, no había prestado demasiada atención y que, sin embargo ahora, es uno de los parámetros que más valoro: los suscriptores a los feeds. Acabábamos el año con unos increíbles 380 suscriptores.
     
  • Año 3: la consolidación (mayo 2008 – mayo 2009), periodo sin grandes cambios en el que Variablenotfound.com continuó creciendo, aunque no de forma tan espectacular como lo había hecho anteriormente.

    Se incrementaron en un 75% el número de visitas procedentes de buscadores, debido a que comenzaba a notarse la antigüedad del blog, el número de referencias externas y su posicionamiento en buscadores, compensando así la práctica ausencia de meneos y otro tipo de avalancha.
    Según el inestable inestimable feedburner, los suscriptores a feeds superaron los 600, lo que suponía un aumento casi del 100% respecto al periodo anterior. Impresionante.
Estudiemos ahora en profundidad el año que acaba de finalizar:

Año 4: la variable social (mayo 2009-mayo 2010)

Durante este último año el número de visitantes ha continuado en la misma línea de estabilidad ya lograda en el periodo anterior, sin grandes sobresaltos. Los principales indicadores son:
  • Rozamos en total los cien mil usuarios únicos absolutos al año, sumando los visitantes a Variablenotfound.com y a su eco en geeks.ms,  Aunque no sea un número altísimo comparado con otros blogs, el carácter vertical y altamente especializado de mis publicaciones hacen que este número sea, en mi humilde opinión, espectacular.
  • Sigue aumentando el porcentaje de visitantes procedentes de Google buscadores; y esto a pesar de que la indexación no es especialmente buena… mmm, algún día tendré que mejorar eso.
  • En términos absolutos, la mayor parte de lectores se conectan desde España. Sin embargo, el mayor incremento se ha producido desde países como México, Argentina, Colombia, Perú o Chile.
  • El número de suscriptores a los feeds se acerca al millar… ¡simplemente impresionante! Estas dimensiones eran absolutamente impensables hace unos años, cuando pensaba que un blog con 500 lectores era una auténtica barbaridad, y ni en mis más optimistas previsiones era capaz de imaginar acercarme a este número.
  • Como curiosidad, el navegador más utilizado para acceder a los contenidos desde http://www.variablenotfound.com/ es Firefox (47%), frente a Internet Explorer (36%). A través del eco en geeks.ms es al contrario, un 46% Internet Explorer y no llega al 40% Firefox. Otro aspecto algo sorprendente es que el 70% de los lectores del blog todavía utiliza Windows XP.
El gran cambio introducido durante este periodo ha sido la inclusión de la componente social, tan al alza en estos tiempos. El pasado mes de octubre creé Variable not found en Facebook, que cuenta ya con más de cien amigos, y que esperaba sirviera como canal bidireccional de  comunicación con el otro lado. Aunque en la práctica todavía no ha sido así, y muy pocos miembros participan activamente, sí que es cierto que ofrece más canales para la distribución de contenidos y, seguro que algún día, para la comunicación entre nosotros.

En la actualidad utilizo Facebook para registrar enlaces a artículos que encuentro cada día y que me parecen interesantes. Relación Facebook/Twitter/BlogDe hecho, también los publico en el blog en las entradas categorizadas “Enlaces” de cada semana.

Profundizando en la misma línea, me he introducido de lleno en Twitter, que puedo decir que ha supuesto todo un descubrimiento. Aunque todavía soy sólo un aspirante a twitteador de los de verdad, estoy cada vez más integrado e identificado con esta nueva vía de comunicación inmediata. A día de hoy, sigo a 38 personas, y 58 followers escuchan mis gorjeos a diario, lo que me permite conversar con gente estupenda y plasmar impresiones y sensaciones en directo, a la vez que retransmitir por esa vía los enlaces que publico en Facebook.

Por otra parte, durante este último año he tenido ocasión de encontrar los primeros patrocinadores para el blog, lo cual, una vez descartado hacerme millonario con los ingresos de Adsense ;-), suponen al menos la posibilidad de sufragar gastos y darme un caprichillo de vez en cuando.

También, gracias a la difusión conseguida, he tenido el privilegio de probar algunos productos (como NDepend, o BaseKit) cedidos directamente por sus creadores, o acceder a información temprana de algunos sistemas (como el Vodafone Business Place) a través de invitaciones a eventos e información suministrada por los fabricantes.

Pero, como ya he dicho en otras ocasiones, el principal beneficio que sigo obteniendo es intangible. La motivación viene con cada post publicado, que brinda una nueva oportunidad de ampliar conocimientos y compartirlos con objeto de aportar un diminuto granito de arena a la comunidad de desarrolladores.

Y es que no hay mejor recompensa que el hecho de que estéis ahí: cada visita, cada suscriptor al feed, cada seguidor, cada comentario o contacto a través de cualquier vía hacen que continuar trabajando en este proyecto valga la pena.

Muchas gracias a todos, y espero que sigáis por aquí, ayudándome a buscar la variable.

Publicado en: Variable not found.
miércoles, 14 de abril de 2010
CampusMVPHace un par de días, coincidiendo con el lanzamiento de Visual Studio 2010, se ha presentado oficialmente el curso de desarrollo de sistemas web con ASP.NET MVC 2 en el que he estado trabajando durante los últimos meses, y con el que me estreno como autor y tutor de CampusMVP, lo que supone para mí una auténtica satisfacción.

Ha sido un trabajo duro, no es una tarea sencilla estructurar y desarrollar contenidos de cierto volumen partiendo de cero, pero creo que el resultado ha valido la pena. El temario, salpicado con más de dos horas de vídeos demostrativos, ejemplos, y recursos adicionales, es el siguiente:
  • Introducción a ASP.NET MVC, donde realizamos un primer acercamiento al framework MVC, y sentamos las bases sobre las que continuar el aprendizaje.
  • En la  primera aplicación ASP.NET MVC crearemos nuestra primera aplicación partiendo de las plantillas por defecto de Visual Studio, que nos será de utilidad para comprender la estructura de este tipo de proyectos y el funcionamiento del marco de trabajo.
  • Continuaremos añadiendo funcionalidades a esta aplicación, donde introduciremos nuevas características partiendo desde cero, aprovechando la ocasión para profundizar en la creación de modelos, vistas y controladores.
  • Seguidamente estudiaremos la capa Modelo a fondo, viendo distintas formas de implementar sus componentes.
  • A continuación, nos sumergimos en la capa Controlador, detallando minuciosamente la creación de controladores, las posibilidades que nos ofrecen, y el conjunto de herramientas que nos facilita el framework para ellos, como el sistema de routing, el binding, filtros, o resultados de acciones.
  • También trataremos con gran detalle la creación de la capa Vista, donde describiremos sus tipos, implementación y mecanismos del marco de trabajo que nos facilitan la tarea, como los helpers, plantillas, o validadores, entre otros.
  • En Ajax con ASP.NET MVC realizaremos un recorrido por las distintas alternativas para la introducción de Ajax en nuestros sistemas, y mostraremos la solución a escenarios comunes.
  • También trataremos cómo organizar los proyectos en Áreas, y los cambios que implican en cuanto a la estructura y funcionamiento de las aplicaciones.
  • Y por último, dedicaremos un capítulo a temas adicionales, básicamente para tratar otros aspectos no incluidos en los módulos anteriores, como la realización de pruebas unitarias, internacionalización, o el despliegue de aplicaciones.
La duración estimada total del curso es de 8 semanas y se imparte online a través de la plataforma de formación de CampusMVP, a vuestro propio ritmo y con el horario que más os convenga. Y dado que soy tutor del curso, estaré a vuestra disposición para asistiros resolviendo las dudas o inquietudes que os pudieran surgir durante el proceso formativo.

Si estáis interesados, sólo tenéis que ir a la tienda online de CampusMVP y apuntaros directamente. Tened en cuenta que si trabajáis en España los cursos pueden salirle gratis a la empresa gracias a la formación bonificada.

¡Os espero! ;-)

Enlaces:
Publicado en: Variable not found.
domingo, 10 de mayo de 2009

¡Ya van tres años! El pasado 8 de mayo, además de conmemorarse el nacimiento de la Coca-Cola, se cumplían tres años desde que publiqué el primer post en este blog. Y me sigue pareciendo que fue ayer, cómo pasa el tiempo…

Como en otras ocasiones, es un bonito momento para recapitular y comentar lo que ha ido ocurriendo por aquí desde entonces.

Durante la celebración del segundo cumpleaños hice una distinción de dos periodos en la historia de Variable not found, que os resumo:

  • Año 1: la travesía del desierto (mayo 2006 - mayo 2007), periodo caracterizado principalmente por la ausencia prácticamente total de visitantes al blog, por aquellos tiempos disponible a través de la dirección jmaguilar.blogspot.com. Y no exagero, observad el registro de visitas de los primeros meses, y tened en cuenta que yo mismo también visitaba la página:

    image 
    Aprovecho para introducir un mensaje de aliento para los que estéis en esta situación ahora, empezando un blog: no os desaniméis, ni aun viendo este desastre. Con un poco de esfuerzo todo puede cambiar. El desierto también tiene su fin.
     
  • Año 2: el despegue (mayo 2007 - mayo 2008), durante el cual se produjeron múltiples novedades, como la adquisición del dominio variablenotfound.com, la difusión de feeds a través de, el por aquél entonces magnífico, Feedburner, la creación del diseño actual, y la inclusión en agregadores y comunidades como Planeta Código, Planet WebDev y Geeks.ms.

    Este segundo año lo acabamos con un incremento del 2.500% en el número de visitas (la verdad, tampoco lo tenía muy difícil partiendo desde cero ;-)), y lo que me parecía más increíble, 380 suscriptores.

Y siguiendo esta línea, el año que hemos acabamos ahora podríamos describirlo como:

Año 3: la consolidación (mayo 2008 – mayo 2009)

Aunque ha sido un año sin grandes cambios, Variable not found ha seguido creciendo. Obviamente no en las proporciones anteriores, pero sí ha mostrado un aumento considerable tanto de visitantes como de suscriptores.

Respecto a las visitas a la web, hay que destacar los siguientes datos:

  • las visitas, en general, han aumentado cerca de un 40%, así como el número de usuarios únicos absolutos. Hay que tener en cuenta que durante este último año no se han producido meneos espectaculares como el año anterior, no han pasado de meneillos, por lo que la subida de visitas en global tiene bastante mérito.
  • También se han incrementado ligeramente el número de páginas vistas por visita, y el tiempo medio en la página.
  • El tráfico dirigido desde buscadores se han incrementado en un 75% desde el periodo anterior. Esto podría entenderse como que el blog está logrando un posicionamiento importante en estos motores, probablemente debido a la antigüedad, a las referencias externas y a los propios contenidos.
  • Curiosamente, ha disminuido el número de visitantes nuevos en proporción a los que repiten, lo que implica que aumenta el número de usuarios que han visitado el blog más de una vez.
  • Los comentarios, como manda la tradición, siguen siendo escasos: la media no llega a dos comentarios por cada post publicado. Nada que objetar en esto, soy el primero al que le cuesta la misma vida comentar algo en blogs ajenos que sigo con asiduidad. Es cierto que me gustaría obtener más feedback y opiniones de los lectores, pero entiendo que no sea así.

imageEn cuanto a las suscripciones, siguen siendo uno de los datos que más me están sorprendiendo, y muy gratamente. En estos momentos, a pesar de los cambios de humor de Feedburner, hemos llegado ya a alcanzar los 650 suscriptores.

Y sinceramente, este es uno de los datos que más valoro. La temática tan específica del blog hace que los destinatarios de los contenidos, principalmente desarrolladores, sean una minoría, y conseguir que un número tan alto de personas decidan voluntariamente añadirte de alguna forma a sus fuentes favoritas es todo un honor y, sin duda, motivo de orgullo.

¿Dormido o durmiendo?En el aspecto económico, sigo arrasando con los ingresos por AdSense. El mes pasado, junto con el cheque mensual me enviaron una caja de bombones, con una tarjeta de felicitación firmada por el mismísimo Sergey Brin

… vaya, parece que me había quedado dormido otra vez ;-D. Pues no, de momento sigo recaudando centimillos a un ritmo lamentable, pero bueno, ¿quién dijo que esto de bloguear se hacía por dinero?

Lo que considero mi recompensa es lo que estoy aprendiendo. Cada tema tratado, ejemplo, referencia, cada comentario, cada mensaje privado recibido, me aportan una nueva oportunidad para ampliar conocimientos. Si esto lo unimos al placer de comunicar y de compartir los descubrimientos, ya tenemos un buen conjunto de motivaciones que animan a seguir trabajando en el blog.

Pero aún falta algo, sin duda lo más importante: vosotros. Los que estáis ahí leyendo, enviando comentarios o mensajes, añadiendo valor a las entradas, los que le dais sentido a todo esto. Repito lo que ya comenté en el post en el que celebraba el primer aniversario:

Os puedo asegurar que he disfrutado escribiendo cada post, pero las alegrías han venido con cada comentario, con cada visita, con cada referencia.

Muchas gracias a todos, y espero que sigáis por aquí, ayudándome a buscar la variable.

Publicado en: Variable not found

martes, 6 de enero de 2009
Medalla olímpicaA lo largo de 2008 se han publicado en Variable not found un total de 90 posts, se dice pronto. Y como en botica, seguro que hay de todo: buenos, malos, divertidos, tostones insoportables, útiles, absurdos, prácticos, teóricos, frikadas...

A continuación enumero las entradas que más visitas han tenido durante 2008, lo cual probablemente es un parámetro objetivo del interés que han despertado y siguen despertando algunos temas. No todas ellas han sido redactadas en 2008, algunas vienen de atrás, pero su popularidad ha hecho que sigan recibiendo visitas a pesar de su antigüedad.

En primer y segundo lugar respectivamente, y con gran diferencia respecto a sus inmediatos seguidores, los posts "Otras 101 citas célebres del mundo de la informática" y "101 citas célebres del mundo de la informática" se llevan la palma. Ambas entradas han sido ampliamente referenciadas, meneadas, citadas, resumidas, e incluso copiadas y pegadas literalmente hasta la saciedad.

El tercer lugar lo ocupa "Bordes redondeados en webs sin esfuerzo con Nifty Corners Cube", un post de 2007 donde comentaba el uso de las librerías Nifty como vía para redondear elementos de páginas web sin luchar contra Photoshop. Gracias a esta continuada afluencia de visitantes escribí NiftyDotNet y algunos posts para presentarlo y comentar sus posibilidades.

A continuación, la cuarta posición la ocupa un breve tutorial sobre cómo "Llamar a métodos estáticos con ASP.NET Ajax", donde describía el uso de Pagemethods para el intercambio de información entre cliente y servidor en aplicaciones web. Como ya ocurrió el año pasado, Ajax sigue siendo una temática por la que muchos lectores se acercan a este rinconcillo de la red, y ha seguido así tras la entrada en escena de jQuery como producto oficial de las herramientas de desarrollo de Microsoft.

La quinta posición va para los "13 consejos para comentar tu código", un post de finales de 2007, que ha continuado atrayendo lectores. Como curiosidad, he de añadir que ha sido traducido al inglés, al chino y no sé si a algún otro más, y al menos en el primero de ellos ha tenido una difusión impresionante.

En el post Las 10 cosas que más fastidian a los programadores comentaba los resultados de una consulta realizada en Stackoverflow sobre factores de irritación frecuentes en los desarrolladores, ampliándola con otros puntos de propia experiencia.

La séptima posición la ocupa la entrada "Evitar el postback al pulsar un botón en ASP.Net", creado a partir del análisis de palabras clave por las que se llegaba a Variable not found, en las que se veía claramente que los problemas con el postback y, en general el modelo de eventos de ASP.NET, eran causas de dolor de cabeza para los desarrolladores. En el post detallaba algunos escenarios por los que podría interesarnos anular la vuelta al servidor de un formulario, describiendo distintos métodos para conseguirlo.

En el puesto número ocho, las "32 técnicas de producción de ideas", enumeraba un buen puñado de técnicas utilizadas para favorecer la creatividad y generar ideas.

Gente, mucha genteLe sigue en número de visitas todo un clásico, "10 razones por las que tu blog te ayuda a encontrar empleo", un post en el que meditaba sobre las ventajas que podría aportar un blog a la hora de buscar trabajo, en este competitivo mundo que estamos.

Por último, "20 desastres famosos relacionados con el software", una traducción autorizada de un post en inglés donde enumeraba problemas provocados, en mayor o menor medida, por el software.

Ya por debajo de estos se encuentran entradas también muy populares, pero no lo suficiente como para colarse en este Top Ten, como "Crea un traductor en tu web con Google AJAX Language API", "8 Curiosidades sobre los emoticonos", "a qué huele tu código", o los posts sobre ASP.NET MVC, que tímidamente van tomando posiciones en el ranking.

¡Ah, aprovecho para desearos a todos un feliz y próspero 2009! :-)

Publicado en: www.variablenotfound.com.
domingo, 18 de mayo de 2008
Dos añosEl año pasado, en un insólito derroche de precisión, fui capaz de publicar un post celebrando el primer año de Variable not found justo el mismo día de su cumpleaños. Lamentablemente no he podido repetir esta hazaña, y hoy me he dado cuenta de que hace diez días este blog cumplió su segundo aniversario.

Bueno, en cualquier caso, es buen momento para recapitular un poco y reflexionar sobre el camino recorrido desde mayo de 2006, cuando con cierto recato publicaba mi post inaugural en la dirección de Blogger jmaguilar.blogspot.com.

Hasta el momento podríamos hablar de dos periodos:
  • Antiguo diseño de variable not foundAño 1: la travesía del desierto (mayo 2006 - mayo 2007). Supongo que todos los que mantenéis un blog entenderéis esta expresión (bueno, quizás salvo los propiciados por las grandes productoras o personal especialmente mediático).

    La principal característica de este periodo fue la ausencia casi total de lectores. Salvo algún inexplicable pico puntual de visitas como el obtenido por el post sobre Google Image Labeler, durante nueve meses estuve prácticamente escribiendo para mí.

    Tampoco tenía demasiado tiempo para dedicarle, pero de vez en cuando lo daba de alta en buscadores y sitios de referencia para lograr una mayor difusión, aunque lo cierto es que estas acciones no resultaban demasiado efectivas.

    Fue a finales de marzo de 2007, casi cumpliendo ya el primer año, cuando el maestro Juanjo Navarro (¡gracias, Juanjo!) me incluyó en el agregador Planeta Código e hizo referencia en su blog Más que código a mi serie de posts sobre técnicas de spam, lo que supuso un fuerte empujón para dar a conocer el blog y difundir un poco sus contenidos.

  • Nuevo diseño de Variable not foundAño 2: el despegue (mayo 2007 - mayo 2008). Coincidiendo con un aumento de disponibilidad de tiempo libre, comenzamos el segundo año de vida adquiriendo el nombre de dominio variablenotfound.com y activando Feedburner para la gestión de feeds, pues hasta ese momento no había prestado demasiada atención a los suscriptores (!).

    Pero no quedaron ahí los cambios. A finales de 2007, por cortesía de Javier Cantos (¡gracias, Javi!), por fin pude dejar atrás el diseño basado en una plantilla estándar de Blogger y, tras encarnizada batalla, conseguí que el blog luciera así de bien.

    También resultó decisiva la inclusión del blog en otros agregadores como Planet WebDev (¡gracias, Héctor!) o crosspostear en Geeks.ms (¡gracias, Rodrigo!).

    Como consecuencia de todo esto, este año se ha producido un incremento brutal del número de visitas (es obvio, partía de cero ;-D)), rozando en la actualidad la cifra de 10.000 al mes, sólo a variablenotfound.com. Aunque no sé si es causa o consecuencia de lo anterior, durante este año he sufrido también varios meneos que bien podría calificar de terremotos, y muchos enlaces, algunos desde fuentes de gran relevancia como Microsiervos, Genbeta, o Error500.

    En cuanto a los suscriptores de feeds, la siguiente gráfica muestra el estado a día de hoy, y cómo nos vamos acercando a los 400, una cifra impensable ni en mis aspiraciones más optimistas, y a mi entender impresionante dada la temática tan específica del blog.

    Estadísticas de suscriptores de variablenotfound.com

Pero, ¿vale la pena esto? Haciendo un cálculo rápido y tirando muy por lo bajo, si hubiera necesitado sólo un par de horas por cada uno de los 158 posts que he publicado hasta el momento (os aseguro que la media es mucho más alta, sumando el tiempo de escribir, estudiar, maquetar, comprobar, buscar fuentes...), llevaría dedicadas al blog más de 300 horas; en el mundo laboral, supondría un par de meses a jornada completa. Fuerte, ¿eh?

Menos mal que desde el punto de vista económico el blog es todo un éxito. De hecho, acabo de cambiar de coche gracias a los ingresos generados por AdSense, y espero en breve adquirir un apartamentito en la playa a cargo los importantes beneficios que me reporta Amazon.

¿Dormido o durmiendo?.. mmm... ¡Despierta! Siendo realistas, cuando dentro de cinco años, según la tendencia actual, consiga reunir los 100 dólares mínimos necesarios para que me hagan un ingreso, probablemente no tendré ni para invitar a mi familia a comer un par de pizzas.

Obviamente a nadie le amarga un dulce, y ya que se dedica tiempo a ello no estaría mal rentabilizarlo un poco, pero está claro que si merece o no la pena seguir con Variable not found no depende de los ingresos económicos generados, sino de otros factores.

Durante este tiempo he aprendido como nunca lo había hecho. La escritura de un post con un contenido técnico medianamente complejo requiere una asimilación mucho más profunda de la que se consigue con una simple lectura; también la creación de ejemplos, comprobaciones, o la búsqueda de información, resulta muy enriquecedora. Si a esto, además, se une las aportaciones y retroalimentación de los lectores vía comentarios o contacto directo, os puedo asegurar que la experiencia es alucinante.

Y es precisamente en esto último donde se encuentra la mayor recompensa, en los cientos de lectores que visitan Variable not found cada día, vía web o lector RSS, y animan a continuar en la brecha.

Gracias a todos, y espero que sigáis por aquí, buscando la variable.

Publicado en: www.variablenotfound.com.
lunes, 7 de enero de 2008
Variable not foundEn un blog relativamente joven como este, donde el tráfico se ha incrementado de forma bastante considerable en los últimos meses, y cuyos lectores son mayoritariamente nuevos, es posible que éstos no hayan accedido a artículos anteriores a este periodo que pueden resultar interesantes dado el número de lecturas y repercusión conseguida por los mismos.

Me ha parecido interesante la idea de Martín, desde Pensamientos Ágiles, de recoger los posts más visitados de su blog durante el pasado 2007, así que, con su permiso, voy a tomarla prestada y aplicarla a Variable Not Found. ;-)

1. El indiscutible vencedor, "Entre 10 y 28 programadores por el precio de uno", publicado el pasado mes de julio, en el que comentaba un post de Phil Haack que hablaba de factores que influyen en la productividad de los desarrolladores. Este post fue muy difundido gracias a menéame y otros blogs que se hicieron eco de él.

2. En segundo puesto, "Bordes redondeados en webs (sin esfuerzo) con Nifty Corners Cube" puso de manifiesto el interés que despierta este asunto entre los desarrolladores de webs. De hecho, la gran difusión de este post superó todas las expectativas, y fue el causante de la creación de NiftyDotNet, mi primer componente de código abierto.

3. "Llamar a métodos estáticos con ASP.NET Ajax" forma parte de una serie de posts sobre el framework Ajax de Microsoft, donde he procurado explicar cómo usar esta tecnología, siempre de forma muy práctica y aplicada a casos concretos. De hecho, sumando las visitas de forma individual a cada una de las páginas de la serie ("Llamar a servicios web paso a paso", "Intercambio de entidades de datos", "Retornar DataSets desde PageMethods" y "Espía a tus visitantes con Ajax"), casi podríamos llegar al primer puesto, pues todas ellas están entre las quince más visitadas del blog.

4. Los comentarios en el código fuente... sí, eso que parece tener bastante poca importancia a la hora de desarrollar, ha escalado rápidamente en diciembre hasta conseguir la cuarta posición de la mano del post "13 Consejos para comentar tu código fuente", conclusión llevada a la práctica de un artículo anterior, "Problemas al comentar el código fuente". Obviamente, el tema interesa bastante más de lo que podría parecer en un principio.

5. El quinto puesto ha sido una sorpresa. Aunque con un cierto aire off-topic, alejado de la temática habitual del blog, "Escaneo de puertos con idle scan" muestra de forma detallada los entresijos de una interesante técnica de detección de puertos abiertos en equipos remotos, y parece ser que ha resultado interesante. Su continuación práctica, "Idle scan en la práctica", también ha sido seguido, aunque con menor afluencia, por muchos usuarios a la búsqueda de información sobre esta técnica.

6. El sexto puesto también ha resultado sorprendente, pues se trata de un post bastante antiguo y cuya temática normalmente no se trata demasiado por aquí. "Instalar OpenCms bajo Windows" recogía los pasos a seguir para poner en marcha este CMS bajo Windows, y supongo que por la ausencia de otros textos similares en castellano, ha sido ofrecido por Google como resultado a todos los usuarios que buscaban respuesta a sus cuestiones.

7. El séptimo puesto va para un post de opinión, "10 razones por las que tu blog te ayuda a encontrar empleo", en el que recogía reflexiones sobre por qué un blog podía ser una ayuda interesante para destacar y promocionarse para la búsqueda de empleo.

8. La expectación ante la llegada de Visual Studio 2008 hizo que el post "Diez cosas a saber sobre VS2008 y .Net Framework 3.5" subiera también hasta los "top ten" del blog. Cosas que pasan cuando citas a los grandes como Daniel Moth.

9. El post "Hábitos de personas altamente inovadoras", demostró el interés que despiertan las actitudes que facilitan la generación de ideas y la innovación.

10. En el décimo lugar se encuentra una reflexión sobre esta profesión. "¿Recomendarías a tu hijo que se dedicase al mundo del desarrollo de software?" lanzaba una pregunta al aire sobre la satisfacción de los que nos ganamos la vida con esto.

Más allá de décimo lugar también han despertado interés los posts acerca de características de C# como los generics, null coalescing operator, tipos anulables, las cadenas de texto largas (heredoc), o más generales como "TryParse vs. Parse", "Obtener Guids en .Net", o frikadas como "¿Incrementos, autoincrementos o sumas?". Y mención especial para la serie de doce posts técnicas de spam, un tema que también ha interesado bastante a los lectores.

Publicado en: http://www.variablenotfound.com/.
domingo, 2 de diciembre de 2007
Antiguo diseño de variable not found... ¡hasta nunca!Tras muchas horas de encarnizada batalla contra el sistema de plantillas de blogger, que tiene sus narices, Variable not found estrena imagen. Para mi gusto, un diseño mucho más moderno, limpio, y, sobre todo, alejado de la estética de plantilla estándar que estaba utilizando hasta el momento.

Acepto críticas (constructivas, eso sí ;-)), sugerencias y opiniones.

PD: ¡Gracias, Javi!

Publicado en: Variable Not Found.
martes, 16 de octubre de 2007
Desde este mismo momento, y gracias a la gentil invitación del amigo Rodrigo Corral, estoy publicando en Geeks.ms, una selecta comunidad de desarrolladores orientada a la programación con y para tecnologías de Microsoft. La compañía no puede ser mejor: un grupo de auténticos maestros, MVPs, MCP ó MCT como El Guille, Jorge Serrano, el mismo Rodrigo, Sergio Tarrillo, El Bruno, y un larguísimo etcétera (que no se ofenda nadie, en algún momento hay que acabar la lista ;-)).

Por mi parte, seguiré con lo mismo que vengo haciendo desde hace ya año y medio en Variable Not Found: escribir sobre lo que más me gusta, el mundo del desarrollo de software. La diferencia es que ahora llegará a más lectores. :-)

De momento, hasta que descubra otra forma más apropiada, realizaré crossposting artesano (vamos, copiar y pegar) de las entradas de VariableNotFound.com hacia mi dirección en Geeks, http://geeks.ms/blogs/jmaguilar.

Nos vemos también por allí.