Estaré en el próximo Tech-Ed 2013 de Madrid
Como muchos sabréis, los próximos días 25, 26, 27 y 28 se celebra en Madrid la
edición europea del segundo evento más importante para desarrolladores (después
de BUILD) que Microsoft organiza cada año, y que, por primera vez, tiene
lugar en nuestra capital. Como siempre, hay un montón de especulaciones acerca
de lo que se va a "cocer" así como de las novedades que se presentarán, aunque
casi todo el mundo está seguro de que tendremos acceso a la preview de la nueva
versión de Windows 8 (Windows Blue, o Windows 8.1), entre otras novedades.
Por mi parte, y como suele ser mi costrumbre, aprovecharé para pulsar opiniones
de primera mano con los protagonistas (Speakers, Program Managers
y/o algún que otro gurú que siempre se deja caer por estos eventos), para publicarlo
posteriormente en revistas y en este sitio Web. Como decía el reportero aquel,
"seguiremos informando". Para más datos, y una primera información sobre contenidos
se puede visitar su sitio oficial.
El nacimiento de AJAX: la historia contada por un protagonista
El proyecto más interesante que abordó Alex Hopmann durante su etapa
en Microsoft, fue sin duda la creación de XMLHTTP, (AJAX para los amigos),
que más tarde (muy poco después) fue adoptada por Google en varias aplicaciones
y llegaría a formar parte de todas las plataformas y aplicaciones web
importantes.
Alex Hopmann, Thomas Riardon y Jean Paoli
Cuenta Alex que "Al poco de llegar a la empresa, Thomas Riardon un día me
arrastró por el pasillo para presentarme a un tipo llamado Jean Paoli
que acababa de unirse a la compañía. Jean estaba trabajando en esta nueva cosa
llamada XML que algunas personas sospechaban que sería muy grande en el futuro
(por alguna razón poco clara en ese momento). Esto me llevó a involucrarme
con algunos equipos de Microsoft que estaban trabajando en el estándar WebDAV y
a hice un gran esfuerzo para mover WebDAV y usar XML como modelo para la
comunicación de datos. Poco después me uní al equipo de Exchange que estaba
implementando Exchange 2000 para dirigir el desarrollo de los servidores WebDAV
de Microsoft (que se utilizaron en IIS normal en el sistema de archivos DAVFS y
también en el intercambio de datos en DAVEX).
Había dos implementaciones iniciales de estos modelos, una basada en servir
las páginas web planas tan eficientemente como fuera posible con HTML puro, y otra
que empezó a jugar con la interfaz de usuario nueva que se podría construir con DHTML.
El paso siguiente fue llamar a Shawn Bracewell, uno de los desarrolladores
del equipo de Outlook Web Access para que se hiciera cargo de la idea. Al ser un tipo
inteligente, rápidamente tiró todo mi código y lo volvió a escribir de una manera más
sólida, con soporte asíncrono, manejo de errores y mucho más.
Aunque Shawn trabajó con Chris Lovett en el equipo de XML para integrar esto con
su biblioteca (MXSML), estábamos a dos semanas de la salida de IE5 (que fue la primera
versión de cualquier navegador que incorporó AJAX). Simplemente, funcionaba, áunque
todavía no nos habíamos planteado seriamente un tratamiento de problemas alternativos
como la seguridad.
Finalmente, en cuanto al porqué Ajax no despegó en 1997, cree Alex que las conexiones
de red eran demasiado lentas. Y JavaScript era demasiado lento (recuérdese que las
máquinas típicas eran de 200 MHz). Las primeras versiones de DHTML en IE4 tenían
algún...ejem...bug (hay más de una razón por la que OWA requería las últimas versiones
del navegador). Pero lo más importante es que no creo que la comunidad de desarrollo
haga cambios radicales en una nueva tecnología tan rápidamente. Estas cosas llevan 3-5
años, así que no es sorprendente que lo que se ha desarrollado gradualmente entre 1996
y 1998 en realidad no comenzase a tener efecto hasta el período 2000-2002 y explotase
realmente hasta 2005-2006.
El Premio Turing 2011, Judea Perl, habla en la Keynote de Microsoft Research
El título de su presentación en inglés:
"Keynote: The Mathematics of Causal Inference: with Reflections on Machine Learning",
trata acerca de cómo el desarrollo de modelos gráficos tiene una influencia decisiva en
la forma en que los científicos abordan los problemas que implican relaciones
causa-efecto.
Asi, problemas prácticos que requieren información causal, que durante mucho tiempo fueron
mirados como metafísica o considerados inmanejables, ahora puede ser resueltos utilizando
matemáticas elementales. Por otra parte, otros problemas que se asumía eran puramente
estadísticos, empiezan a beneficiarse al analizar sus raíces causales.
Para más referencias sobre su obra y los motivos por los que se le concedió el Premio Turing,
ver mi página: "Biografías: Premios Turing".
Nota: El navegador FireFox NO soporta el formato estándar MP4. Puede visualizarlo en
cualquier otro navegador moderno: IE9, IE10, Chrome, Safari u Opera.
Sobre jQuery 2.0, ventajas e implicaciones
Como sabrá el lector, la última versión de jQuery (2.0)
ya está disponible, y supone un salto cualitativo, -y lo de
cualitativo es intencionado-, en cuanto a la
cantidad de novedades que aporta. Con el nivel de implantación creciente
de esta librería, me ha parecido oportuno comentar aquí algunos aspectos
interesantes que tienen que ver con su uso en el desarrollo y su
puesta en producción.
En el primer apartado, creo que lo más destacable es que tendremos que
evaluar cuidadosamente si queremos prescindir del soporte de IE6, IE7 e IE8
que implica esta versión. Quizá la primera no es tan importante, pero
-especialmente la tercera- puede hacernos reflexionar, porque supone que
dejaremos atrás Windows XP, y este tipo de decisiones debieran formar parte
fundamental del ciclo de desarrollo (lo que se llamaba análisis, antes de que
"sabios modernos" dijeran que estaba obsoleto (no cito nombres).
Pero es que esta decisión puede incluso afectar a las versiones posteriores
de IE si se ejecutan en modo compatibilidad (Quirks Mode). Como es
sabido, esto puede evitarse mediante la llamada "Definición de Compatibilidad
de Documento", que Microsoft explica en detalle en su
artículo del mismo nombre, y que en la práctica se reduce
a usar la etiqueta
<meta http-equiv="X-UA-Compatible">
que previene este comportamiento y garantiza que cualquier versión de IE
intentará utilizar el modo estándar hasta donde le sea posible hacerlo (más
o menos).
Otro aspecto interesante consiste en una nueva vuelta de tuerca al concepto
de modularidad: ahora es posible configurar exactamente qué partes de jQuery
se requieren en un desarrollo y utilizar solo lo necesario. Existe una
zona
en Github, que explica cómo configurarlo hasta quedarnos con una librería de
poco más de 10k una vez comprimida y minimizada.
Desde el punto de vista de la compatibilidad, parece que todos los cambios
realizados para la versión 1.9 están implementados en esta versión, por
lo que se nos garantiza la compatibilidad completa. A este respecto, y para
aquellos que estuviesen utilizando versiones anteriores a la 1.9, se recomienda
utilizar el complemento
jQuery Migrate Plug-in.
Otros aspectos relacionados con la puesta en producción, tienen que ver
con el soporte de la versión anterior. El sitio oficial anuncia que seguirán
con una rama de trabajo sobre las versiones 1.x, de forma que anticipa la
próxima puesta en RTW de una versión 1.10 para dentro de un par de meses.
Las actualizaciones funcionarán en paralelo, cada una por su rama de
desarrollo.
Finalmente, la lista completa de cambios y arreglos, está disponible en el
Blog de jQuery, junto al resto de detalles, y otros aspectos menores no
comentados aquí.
Mis vídeos de trucos con CSS3, en el apartado "Vídeos de Trucos" (Sección CODIGO)
Recojo aquí los trucos hechos por mí, que de momento, incluyen 4 vídeos
sobre opciones de presentación y lógica de la Interfaz de Usuario
utilizando CSS 3, y Visual Studio como herramienta.
La campaña de Microsoft "I App You" cambia sus objetivos: solo Windows 8
Como posiblemente conocerá el lector, I App You es una propuesta de
Microsoft a los desarrolladores para crear y publicar aplicaciones
Windows 8 y Windows Phone, cuyos participantes entran en un sorteo
semanal de 2 XBOX 360.
La novedad es que -a partir del próximo 22 de abril, la campaña solo
será válida para las Apps que se publiquen en la plataforma Windows 8
y no para las de Windows Phone como hasta ahora. Para más datos e
información de participación y premios, visitar el sitio Web de
I App You.
Eventos comunitarios sobre Office y SharePoint en Madrid, Barcelona y Valencia
Los grupos de usuarios de SharePoint de España (SUGES, SUG.CAT, MadPoint y LevaPoint)
colaboran, organizan y participan en la iniciativa Office & SharePoint 2013
Application Challenge de Microsoft Corporation. La iniciativa, que cuenta también con
el apoyo a nivel organizativo de los Centros de Innovación de Microsoft de España (CIIN
y CIP) y de Microsoft Ibérica, se traducirá en la realización de 3 hackatons de
desarrollo de aplicaciones qué tendrán lugar de forma simultánea en Madrid, Barcelona
y Valencia los días 26 y 27 de abril.
Tutoriales cortos en video en el nuevo canal de YouTube de TrainingBubbles
El canal Training Bubbles es una iniciativa de formación gratuíta "on-line" que ya
se encuentra disponible en el sitio Web de TrainingBubbles y que presenta un conjunto creciente de vídeos cortos
destinados a explicar trucos y configuraciones concretas de desarrollo. De
momento, se pueden ver varios de ASP.NET MVC4, XAML, Web API, Mercurial y
los primeros de una serie que estoy haciendo llamada "Trucos con CSS3".
La serie está en constante crecimiento, (todavía no nos ha dado tiempo a subir
todos los contenidos de que disponemos), y se admiten colaboraciones exteriores
que estén dentro de los contenidos habituales de desarrollo y estándares de Internet.
Renovado como MVP: ahora en Internet Explorer
Agradezco desde aquí a Microsoft este reconocimiento, que tras 10 años vinculado
a .NET Framework y al lenguaje C#, cambia de modalidad, debido a que mi actividad
el año pasado se ha centrado sobre todo en tecnologías Web y especialmente en
HTML5, CSS3 y JavaScript, como los lenguajes de esta nueva "Web Open Platform",
que propone la W3C y cuyos avances e ido comentando aquí.
En el apartado de las herramientas, todo desarrollador sincero (o que haya probado
Visual Studio reconocerá su tremendo valor como soporte y herramienta de
productividad. Em mi caso he podido comprobarlo mientras escribía mi libro
"HTML5, CSS y JavaScript", que ha sido producido -desde el punto de vista del
código fuente- enteramente con Visual Studio 2012.
Shafrira Goldwasser y Silvio Micali, Premios Turing 2012
Ganadores "ex-aequo" del Premio Turing 2012, por su "contribución conjunta
a la ciencia de la Criptografía, sentando las bases de lo que hoy en día
es ya una ciencia formal, con principios bien establecidos". Ellos han sido pioneros
en materia de seguridad demostrable, que sentó las bases matemáticas que hicieron
posible la criptografía moderna. Al formalizar el concepto de seguridad criptográfica
computacional, crearon estructuras matemáticas que transformaron la
criptografía de un arte a una ciencia. Su trabajo aborda importantes problemas
prácticos como la protección de datos contra visualización o modificación, los
medios seguros de comunicaciones y las transacciones por Internet. Sus avances
condujeron a la noción de pruebas interactivas y probabilísticas y tuvieron un profundo
impacto en la complejidad computacional, un área que se centra en clasificar problemas
computacionales según su dificultad inherente.
Para ver más datos sobre ellos, ver la página "Premios Turing"
en la sección GENTE.
Otra renovación completa de este sitio Web
Mi sitio lo sabe y no se "enfada" conmigo por tanto cambio. Lo creé originalmente
para que me sirviera de apoyo a mi trabajo en formación y de escaparate a los libros
y artículos que escribo. Ahora, sigo profundizando en aspectos del diseño, del uso
de HTML 5 de forma más coherente y semántica, y de las infinitas posibilidades que
ofrece CSS3 para crear enseguida interfaces visuales más atractivas.
Además, ¿qué mejor ejemplo que tener las demos que vas a mostrar en un curso publicadas
en tu propio sitio? De esa forma, cualquier puede ver la funcionalidad, bajarse o
analizar el código fuente, o buscar información, demos, o sitios especializados para
ayudarse en los desarrollos diarios.
Los menús de la izquierda permiten navegar por otros contenidos paralelos y he incluido
una página que recoge todos las referencias a artículos de desarrollo que he publicado
en mi sitio de Twitter en los últimos 3 años. Y en el apartado de Libros "on-line" hay
enlaces a cientos de recursos bibliiográficos descargables gratuitamente.
Noticias - 1 de Abril de 2013
Increíble iniciativa de Google: World Wide Maze
Dentro de los experimentos de Google acaba de aparecer uno que ha llamado
poderosamente mi atención. Se trata de
World Wide Maze,
una página dedicada que es capaz de convertir un sitio Web en un juego de "ping-ball".
Como puede verse en el vídeo adjunto, (hecho sobre esta misma página Web) el proceso es
totalmente intuitivo, y en solo unos segundos uno puede utilizar cualquier sitio
como si fuera uno de los típicos juegos de "ping-ball" habituales, donde los elementos
de la página se habrán convertido en elementos de la mesa, y las separaciones entre
los elementos, configuran caminos posibles para el recorrido de la bola.
El vídeo adjunto (de 1':31") muestra rápidamente todo el proceso. (la bola se puede
controlar con el móvil o con las flechas del teclado). ¡Increíble y muy divertido!
Noticias - 12 de marzo de 2013
Nombrado Microsoft Active Professional 2013
Una vez más tengo que agradecer a Microsoft un reconocimiento profesional. En
este caso, el de "Microsoft Active Professional" del año 2013, junto a otro
grupo de personas, muchas de las cuales conozco bien por mis actividades
públicas y corporativas. La iniciativa se complementa con un grupo en el
sitio vinculado en LinkedIn, donde suele haber anotaciones y entradas
sobre las actividades profesionales de los miembros del grupo, así como
anuncios de actividades, noticias sobre desarrollo, notificaciones de eventos
y presentaciones, etc.
Para más información sobre el programa M.A.P. puede visitarse su
página oficial
dentro del sitio MSDN.
Noticias - 20 de febrero de 2013
Curso "on-line" sobre HTML5 desde el próximo día 4 de Marzo
Organizado por Danysoft,
se trata de un Curso orientado al conocimiento del nuevo estándar y modelo de
aplicaciones "Open Web Platform", que aporta HTML 5 y sus versiones asociadas
de CSS 3 y JavaScript 5 (ECMAScript 5), así como las API relacionadas, y el uso
de herramientas de desarrollo (diversas versiones de jQuery, Modernizr, el
depurador Fiddler, etc.). Todo el curso utiliza como entorno de trabajo principal
Visual Studio 2012, pudiendo usarse la versión Express o cualquiera de las
versiones profesionales.
Para más información sobre el contenido del curso, apuntarse al mismo, ver el
temario detallado, consultas personalizadas y más información sobre las labores
de formación "on-line" de Danysoft, puede visitarse su página dedicada:
"Desarrollo de sitios web basados en Javascript 5, html 5, y css 3".
Actualizada la sección de "Libros on-line" con cientos de enlaces
En el apartado de "Libros", sección "Disponibles "on-line", ahora,
además de contar con las referencias a librerías públicas y
universitarias y a catálogos de tesis y disertaciones, se incluye un
extenso apartado con referencias a manuales y libros de programación
en la mayor parte de los lenguajes populares, incluyendo, por supuesto,
los relacionados con .NET: C#, VB.NET, F# y los vinculados con Internet:
HTML5, CSS3 y Javascript.
Noticias - 21 de enero de 2013
Sobre la documentación de las aplicaciones

No hace mucho tiempo, cualquier software comercial se presentaba en una caja con cientos o miles de páginas
de introducción y material de referencia, a menudo en varios volúmenes (Estoy pensando en el contenido de la
caja de Borland C++ Builder). Con el tiempo, los manuales de papel empezaron a ser menos completos, dejando
sólo las piezas clave de la documentación en forma impresa, y el material de referencia como a ayuda en línea.
En muchos casos, el concepto de un manual se abandonó.
Naturalmente, esto es bueno para los bosques, y permite una política de actualización de la información sin
precedentes. Además, en esa documentación añadida, existen enlaces a videos externos, documentos y tutoriales.
Con lo que llegamos a lo que se ha convertido en la punta del iceberg de la documentación: la Guía de inicio
rápido. Probablemente, es lo único que un usuario leerá antes de usar Google, o de comenzar con las secuencias
de prueba y error.
Y aquí llegamos a la situación actual, donde hay veces que la guía de inicio rápido es incluso una pequeña
página Web dentro del sitio de la compañía distribuidora y eso es todo. La tendencia es el vídeo. Los vídeos
"How-to", especialmente. Una pequeña píldora donde aprendo por imitación (y supuesta comprensión de lo hecho
en el vídeo) qué es lo que se trae entre manos el protagonista. Luego va a depender mucho de cómo se exprese,
de lo claro de sus demostraciones y de lo acertado en la elección de qué elementos mostrar a los novatos en
la herramienta. Microsoft se dio cuenta de esto hace mucho, y es consciente que -especialmente entre los usuarios
para los que el inglés no es una traba- los vídeos de Channel 9 y similares se han convertido en la nueva forma
de aprender del autodidacta.
No tengo nada que objetar al respecto (yo los veo asíduamente), pero también creo que el lugar del libro no se
ha perdido y que su valor de guía razonada y consultable en cualquier momento sin necesidad de tecnologías
añadidas sigue estando intacto. Por vía del libro tenemos lo que nos traza el camino, el vídeo nos permite
apreciar el detalle.
Un español gana el desafío de Microsoft Research/IEEE Mobile Code Jam
La aplicación BlueWay, del español Joe Fernández, alumno de la Universidad Pontífica de Comillas,
ha logrado el primer premio del desafío organizado por Microsoft, un premio de 1.500 dólares y la
participación en IEEE CCNC 2013 - la conferencia internacional, "Consumer Communications and
Networking Conference", gracias a su App para Windows Phone.
La App española ganadora permite la navegación guiada en interiores, y se apoya en la tecnología
Bluetooth y los servicios en la nube de Project Hawaii – un SDK de Microsoft. Como se puede comprobar
en el vídeo, en su primera versión permite utilizar un terminal Windows Phone como asistente para
recorrer los pasillos del metro de Londres.
Los participantes han desarrollado sus proyectos utilizando Project Hawaii, el completo SDK para crear
aplicaciones móviles con mejor aprovechamiento de las tecnologías y servicios en la nube, como
Windows Azure, que proporciona almacenamiento y potencia de cálculo. El proyecto Elves and Arrows
(George Chen, Edward Lay y Hui Min Lee - Singapur) y el proyecto Lens of Reality (Muhammad Naveed,
Qamber Ali, Madiha Qamar y Farah Saher – Pakistán) han sido los premiados con el segundo y tercer puesto.
El evento "IEEE Consumer Communications and Networking Conference (CCNC)" es una conferencia
internacional patrocinada por la IEEE Communications Society y con la colaboración de importantes empresas
del sector tecnológico, como Microsoft. En ella se dan cita investigadores, desarrolladores y profesionales
de la industria relacionados con todas las áreas de redes y comunicación. Su objetivo es lograr avances
en el campo de las tecnologías de comunicación aplicadas a la electrónica de consumo.
Más información los siguentes enlaces:
Cómo usar el complemento JSON.NET en un contexto asíncrono
Bill Reiss, explica en su blog
"Making JSON Web Requests easier with async and await" cómo utilizar peticiones Web tipo JSON de forma
más fácil, mediante el uso de las estructuras async/await que ofrece C# 4.5. También explica la instalación
propósito y funcionamiento del complemento JSON.NET, disponible desde Visual Studio en el apartado
"Extensiones y Actulizaciones", que -además- es gratuito.
Noticias - 7 de enero de 2012
Curso sobre HTML5 en MSL Formación, el próximo día 15/Enero
Se trata de un Curso orientado al conocimiento del nuevo estándar y modelo de
aplicaciones "Open Web Platform", que aporta HTML 5 y sus versiones asociadas
de CSS 3 y JavaScript 5 (ECMAScript 5), así como las API relacionadas, y el uso
de herramientas de desarrollo (diversas versiones de jQuery, Modernizr, el
depurador Fiddler, etc.). Todo el curso utiliza como entorno de trabajo principal
Visual Studio 2012, pudiendo usarse la versión Express o cualquiera de las
versiones profesionales.
Para más información sobre el contenido del curso, puede descargarse su índice
detallado, y otros aspectos relacionados con él (incluida la inscripción) están
disponibles en la web de MSL en su página dedicada:
"Desarrollo Web con HTML5, CSS3 y JS 5 desde Visual Studio 2012".
Mi libro sobre HTML5, disponible en papel
Ya está disponible la versión en papel de mi libro "HTML5, CSS3 y JavaScript". En él, reviso el
estándar a la luz de las especificaciones oficiales más recientes publicadas por la W3C,
utilizando Visual Studio 2012 como herramienta fundamental de desarrollo. También se analiza
el soporte que ofrecen las herramientas de desarrollo de los distintos navegadores: IE9, IE10,
Chrome, FireFox, Safari y Opera, e incluyo las aportaciones que ofrecen herramientas como Fiddler
para la monitorización del tráfico de red.
Tras la revisión de todas las nuevas etiquetas y atributos (uno a uno), paso a comentar las novedades
del lenguaje de presentación CSS3, y concluyo con indicaciones y ejemplos de uso de las API de
JavaScript 5 que más popularidad están ganando entre la comunidad de desarrolladores.
Puede descargarse el primer capítulo gratuitamente desde este enlacedonde está disponible para compra
en ambos formatos (papel y digital) en el apartado de Libros del sitio Web de Netalia Ediciones:
Libros de Netalia
C#, mejor lenguaje del año en 2012 y otros aspectos del lenguaje
Según aparece en el
Popularity of Programming Languages (PYPL) index,
el lenguaje C# es el que más ha crecido durante el año anterior (un 2,3%), mientras Python se
encuentra en retroceso. El estudio se realiza basándose en el número de búsquedas relacionadas
con los lenguajes en Google Trends, que analiza las tendencias según categorías establecidas
para las consultas de los usuarios.
Además, el sitio Web Xamarin, especializado en desarrollo para dispositivos móviles,
explica en su artículo
"
Eight Reasons C# is the Best Language for Mobile Development", porqué
el lenguaje es idóneo para el desarrollo de aplicaciones para dispositivos móviles.