[Evento] NoSQL, Eso de lo que todo el mundo habla últimamente

La comunidad ALT.NET Hispano realizará una VAN sobre NoSQL este sábado 22 de mayo de 2010 a la hora internacional 18:00 GMT (meridiano 0) con una duración aproximada de 2 horas, vía http://snipr.com/virtualaltnet.

Según la página de Wikipedia en español para este tópico, NoSQL “es un término usado en informática para agrupar una serie de almacenes de datos no relacionales que no proporcionan garantías ACID. Normalmente no tienen esquemas fijos de tablas ni sentencias “join” ”. Pueden encontrar mayor información y recursos relacionados en http://nosql-database.org/.

El caso es que últimamente se habla seriamente bastante sobre este tema y ya varios proyectos, tanto nuevos como existentes están adoptando NoSQL y muchos comentan de los excelentes beneficios que han encontrado o comprobado con este tipo de recursos; entonces es claro que no nació ayer ni se trata de un experimento, es una real alternativa para la persistencia y consulta de datos. Esto podría convertirse incluso en la corriente principal con el empuje que recibe del apoyo creciente de este movimiento (no solo son herramientas).

El ponente para esta VAN es nada más y nada menos el maestro Ángel “Java” López (@ajlopez), un gran especialista en diversos temas de desarrollo de software y promotor constante de la idea de compartir nuestro conocimiento, cosa que él hace muy bien generando regularmente, de hecho diariamente, contenido en su blog y apoyando o creando diferentes iniciativas tendientes a la mejora profesional de los desarrolladores de software.

El maestro Ángel “Java” López ha definido los temas a tratar en su exposición y lo que podremos esperar de ella, de la siguiente manera:

El movimiento NoSQL apareció promoviendo el uso de almacenes de datos no
relacionales. Surgió de varias fuentes y motivaciones, y tiene sus raíces
aún en implementaciones anteriores a la aparición del modelo relacional.

Pasaremos revista, un poco a la historia, un poco a las primeras grandes
implementaciones como BigTable de Google, o el Dynamo de Amazon. En los
últimos años a aparecido una plétora de implementaciones, y se ha generado
discusión sobre relacional vs NoSQL, cuándo, porqué.

Cómo cambia el diseño de una aplicación “normal” en NoSQL.
Queries, no más joins, denormalización.
No más esquemas.

Características deseables: cómo consiguen escalabilidad, alta
disponibilidad, alto rendimiento.

El teorema CAP

Distintas formas de implementación:
Distribuidas vs No Distribuidas
En memoria vs En Disco
Key-Value vs Document vs Graph vs Column
Eventual Consistency

Proyectos más conocidos: Voldemort, Cassandra, CouchDB, MongoDB, SimpleDB,
Memcached, BigTable, Dynamo, HBase…

Programaremos finalmente en .NET contra una de esas implementaciones,
posiblemente MongoDB.

Espero que al final de la charla, todos tengamos una idea general de NoSQL,
algunas características, código de ejemplo, disponible. Y entender, que al
final, es una herramienta más: habrá casos en los que es más aplicable y
otros en los que no.

ACID vs BASE, veremos esas siglas y comparación. Para mí, el tema es muy interesante. Esta es una charla de introducción, para quien esté interesado en el tema pero todavía no pudo dedicarle mucho tiempo a investigarlo. Es un tema amplio, pero espero poder transmitir el panorama más completo de lo que está pasando con NoSql.

También sugiere la lectura del contenido que tiene clasificado en http://delicious.com/ajlopez/nosql.

Tengan en cuenta que una VAN trata de seguir el modelo de Desconferencia, por lo que tienen cierto toque de informalidad, permitiendo diferentes formas de intervención a todos nuestros asistentes; estos no solo pueden participar con preguntas, sino que también pueden expresar sus opiniones, discutir y hasta exponer algún asunto; para ello permitimos y de hecho deseamos que nuestros asistentes habiliten y usen el micrófono para expresarse.

Como un beneficio adicional, en nuestras VAN obsequiamos algunos eBooks y licencias de productos de interés para nuestro auditorio. Si por alguna razón no pueden atender en línea la reunión virtual, no deben preocuparse, pues las grabaciones de estas “siempre” quedan publicadas en nuestra página wiki Historial de Reuniones. Sin embargo, recomendamos hacerlos el esfuerzo por asistir virtualmente en línea a nuestras VAN, pues se obtienen mayores beneficios.

Hay que aclarar que no se requiere ningún tipo de registro, simplemente acudir el día y la hora indicados a la dirección Web http://snipr.com/virtualaltnet, eso sí, deberán tener instalado el programa cliente de Live Meeting; hay más instrucciones sobre cómo hacer esto y otras indicaciones en la página wiki Descripción de Reuniones. Adicionalmente les recomendamos comprobar la hora correspondiente para su localidad, esto lo pueden hacer con la ayuda de la página Historial de Reuniones y nuestro Calendario de Reuniones, al cual se pueden suscribir.

Finalmente, los invitamos y les agradecemos de antemano la difusión de este evento en sus lugares trabajo, estudio, comunidades y demás lugares con personas que pudieran beneficiarse como nosotros de estos importantes temas. Pueden suscribirse y hasta colaborar siguiéndonos a través de los siguientes medios:

[Evento] BDD – Desarrollo Basado en el Comportamiento

image

La comunidad ALT.NET Hispano realizará una VAN en donde se expondrá la técnica BDD (Behavior-Driven Development), en español Desarrollo Basado en el Comportamiento. Esto será el sábado 15 de mayo de 2010 a la hora internacional 18:00 GMT/UTC (Meridiano de Greenwich) con una duración aproximada de 2 horas, vía http://snipr.com/virtualaltnet.

BDD es una técnica de diseño que pretende ser la evolución o mejora de técnicas como TDD (Test-Driven Development) y ATDD (Acceptance Test Driven Development), tomando también algo de DDD (Domain-Driven Design), al respecto ya hemos tenido dos reuniones VAN, las grabaciones están publicadas en:

VAN – TDD – Diseño Basado en Ejemplos

VAN – Domain Driven Design

Para esta VAN, contaremos con la colaboración de Hernán García (@theprogrammer), desarrollador de software argentino radicado en Canadá, en donde participa en conferencias sobre temas relacionados con el de esta VAN, Hernán ha publicado el temario de la reunión en nuestra lista de correo, allí mismo pueden participar con inquietudes antes o luego de la VAN, según lo que comenta allí, veremos:

– Que es BDD?
– Que son las Historias de usuario y quien las escribe
– Introducción a Gherkin
– Que es Contexto / Especificación
– Que es GWT (Given, When, Then)
– Especificaciones ejecutables.
– BDD and unit testing.
– Ejemplos con: StoryQ, StorEvil and SpecFlow

Tengan en cuenta que una VAN trata de seguir el modelo de Desconferencia, por lo que tienen cierto toque de informalidad, permitiendo diferentes formas de intervención a todos nuestros asistentes; estos no solo pueden participar con preguntas, sino que también pueden expresar sus opiniones, discutir y hasta exponer algún asunto; para ello permitimos y de hecho deseamos que nuestros asistentes habiliten y usen el micrófono para expresarse.

Como un beneficio adicional, en nuestras VAN obsequiamos algunos eBooks y licencias de productos de interés para nuestro auditorio. Si por alguna razón no pueden atender en línea la reunión virtual, no deben preocuparse, pues las grabaciones de estas “siempre” quedan publicadas en nuestra página wiki Historial de Reuniones. Sin embargo, recomendamos hacerlos el esfuerzo por asistir virtualmente en línea a nuestras VAN, pues se obtienen mayores beneficios.

Hay que aclarar que no se requiere ningún tipo de registro, simplemente acudir el día y la hora indicados a la dirección Web http://snipr.com/virtualaltnet, eso sí, deberán tener instalado el programa cliente de Live Meeting; hay más instrucciones sobre cómo hacer esto y otras indicaciones en la página wiki Descripción de Reuniones. Adicionalmente les recomendamos comprobar la hora correspondiente para su localidad, esto lo pueden hacer con la ayuda de la página Historial de Reuniones y nuestro Calendario de Reuniones, al cual se pueden suscribir.

Finalmente, los invitamos y les agradecemos de antemano la difusión de este evento en sus lugares trabajo, estudio, comunidades y demás lugares con personas que pudieran beneficiarse como nosotros de estos importantes temas. Pueden suscribirse y hasta colaborar siguiéndonos a través de los siguientes medios:

Cómo Producir y Publicar un Evento Virtual

Para quienes estén interesados en saber cómo se puede editar, producir y publicar una grabación en vídeo del tipo Screencast o Webcast, estoy publicando el screencast que se incluye a continuación, aunque aclaro que está adaptado a las necesidades específicas de la comunidad ALT.NET Hispano.

En el screencast se muestra cómo se toman las carpetas y archivos generados en una grabación local de Microsoft Office Live Meeting, para luego convertirla a un único archivo de vídeo en formato .wmv, hacerle algunos ajustes y codificación mediante Camtasia y finalmente subir el resultado al servicio de hospedaje de vídeos en línea Viddler.

Para reproducir el vídeo, simplemente den clic sobre él y luego pueden maximizarlo pasando el puntero del ratón sobre la parte inferior del vídeo usar el botón en la esquina inferior derecha con figura de pantalla.

Si tienen inquietudes al respecto de este tema, por favor coméntenlas y estaré gustoso de atenderlas.

[Evento] Control de Versiones con Mercurial (Hg)

http://www.selenic.com/hg-logo/logo-droplets-200.png

En ALT.NET Hispano Seguimos con la serie de reuniones VAN sobre DVCS (Distributed Version Control o Descentralized Version Control), esta vez será sobre Mercurial (Hg), el encuentro será este sábado 8 de mayo de 2010 a la hora internacional 18:00 GMT con una duración aproximada de 2 horas, vía http://snipr.com/virtualaltnet.

Como indiqué, antes, hace un mes, tuvimos una VAN sobre Git, en su momento escribí sobre esta VAN aquí y el vídeo de la VAN fue publicado aquí, en esa ocasión Mauricio Scheefer fue el encargado de exponer ese tema y la verdad es que nos dejó a todos antojados por aprender más sobre Git y DVCS, tanto que se pactó una segunda parte, que pronto anunciaremos.

Esa VAN sobre Git, también dejó preparado el terreno para ver Mercurial, un sistema de control de versiones similar, para esta ocasión Cristian Prieto, uno de los líderes de ALT.NET Hispano, será quien nos colabore con la exposición del tema. Cristian es Senior Software Developer, ha sido distinguido con la mención MVP de Microsoft y tiene una participación activa tanto en grupos de usuarios de su país como en comunidades virtuales. Sobre qué pueden esperar de la VAN e inquietudes que se contestarán en ella, Cristian comenta:

Como recordaran Mercurial es un sistema de control distribuido, caracterizado por su versatilidad y facilidad de uso al igual que su soporte multiplataforma. Mercurial es usado por proyectos de larga envergadura como lo son algunos módulos del kernel de Linux, Python, Mozilla (Firefox, Thunderbird, etc), Netbeans, Java/OpenJDK y muchos otros. Es también el sistema de versiones distribuido usado por repositorios públicos en Codeplex y Google Code.

A pesar de su versatilidad y fácil uso, Mercurial es bastante rápido y seguro, además de ofrecer excelente soporte para workflows mixtos de trabajo. En fin, Mercurial es el sistema de versiones distribuido del cual me enamoré hace ya varios años.

El contenido que espero abarcar con ustedes es el siguiente:

   – ¡La revolución de los sistemas distribuidos!
   – Porqué Mercurial
   – Mercurial, Git, SVN
   – Mercurial Básico
   – Merges, Heads
   – Compartiendo los cambios
   – Extensiones en Mercurial
   – Branches, Rebase, Forest
   – Mercurial y Visual Studio

Aunque hay herramientas gráficas creadas alrededor de Mecurial, haré énfasis
en el uso de este mediante la línea de comandos, de esta manera luego ante
una interface gráfica el usuario sabrá exactamente que esperar como
resultado.

Tengan en cuenta que una VAN trata de seguir el modelo de Desconferencia, por lo que tienen cierto toque de informalidad, permitiendo diferentes formas de intervención a todos nuestros asistentes; estos no solo pueden participar con preguntas, sino que también pueden expresar sus opiniones, discutir y hasta exponer algún asunto; para ello permitimos y de hecho deseamos que nuestros asistentes habiliten y usen el micrófono para expresarse.

Como un beneficio adicional, en nuestras VAN obsequiamos algunos eBooks, suscripciones y licencias de productos de interés para nuestro auditorio. Si por alguna razón no pueden atender en línea la reunión virtual, no deben preocuparse, pues las grabaciones de estas “siempre” quedan publicadas en nuestra página wiki Historial de Reuniones. Sin embargo, recomendamos hacer el esfuerzo por asistir virtualmente en línea a nuestras VAN, pues se obtienen mayores beneficios.

Hay que aclarar que no se requiere ningún tipo de registro, simplemente acudir el día y la hora indicados a la dirección Web http://snipr.com/virtualaltnet, eso sí, deberán tener instalado el programa cliente de Live Meeting; hay más instrucciones sobre cómo hacer esto y otras indicaciones en la página wiki Descripción de Reuniones. Adicionalmente les recomendamos comprobar la hora correspondiente para su localidad, esto lo pueden hacer con la ayuda de la página Historial de Reuniones y nuestro Calendario de Reuniones, al cual se pueden suscribir.

Finalmente, los invitamos y les agradecemos de antemano la difusión de este evento en sus lugares trabajo, estudio, comunidades y demás lugares con personas que pudieran beneficiarse como nosotros de estos importantes temas. Pueden suscribirse y hasta colaborar siguiéndonos a través de los siguientes medios: