9 oct 2011

Fecha y hora

Amigos/as!

Les dejo el link con la info sobre la charla que estaré dando en el Code Camp Buenos Aires 2011. Espero verlos allí!

30 sept 2011

Palpitando Code Camp 2011!!!


Amigos!

El 15 de octubre en la UAI sede Centro (ubicación) se lanza la edición anual del evento que organiza Microsoft con la idea de mostrar los nuevos avances sobre el desarrollo de software.

Me refiero a...


En esta edición se estarán presentando talleres y charlas sobre temas varios. Además estaré presentando una metodología orientada al diseño y modelado (basada en MDA) para desarrollar prototipos de videojuegos en múltiples plataformas.

¡Los esperamos!

Links de interés:


Lista tentativa de charlas y talleres:

  • Construyendo servicios web con WCF Web Apis - Por Pablo Mariano Cibraro
  • Introducción a Node.js - Por Pablo Mariano Cibraro
  • SQL Denali (El futuro aqui) - Por Maximiliano Accotto
  • Herramienta para desarrollo Juneau (el reemplazo de Visual Studio for Database) - Por Maximiliano Accotto
  • Tunning de base de datos - Por Maximiliano Accotto
  • Desarrollando Social Games en Azure - Por Angel J Lopez
  • Jugando con Kinect desde .NET - Por Nicolas Padula
  • Mangos y Ventanas - que hay de nuevo en WP7.1 - Por Jonas Stawski, Miguel Angel Saez
  • Windows 7+1 on the rocks - Por Miguel Angel Saez, Mariano Rempel
  • Clean Code - Por Eric Delahaye
  • Introducción a las Comunicaciones Unificadas - Por Pablo Vernocchi
  • Exchange 2010 - Hardware virtualizado vs Hardware físico - Por Pablo Vernocchi
  • Exchange 2010 High Availability y Site Resilience - Por Pablo Vernocchi
  • Además de tirar código - Por Martin Salías
  • Mono: .NET en todas partes - Por Martin Salías, Carlos Paez
  • Windows Phone 7 "Mango" y los sistemas empresariales - Por Carlos Alejandro Pérez
  • El regreso de SQL Server CE a los móviles - Por Carlos Alejandro Pérez
  • Introducción a SharePoint 2010 como Plataforma de Colaboración - Por Pablo Alejandro Fain
  • Implementación de SharePoint Server 2010 para humanos - Por Pablo Alejandro Fain
  • Entity Framework 4.1 - Code First desde las trincheras. - Por Mariano Sanchez
  • Knockout JS: simplificando el desarrollo de UIs dinámicas con javascript y ASP.NET MVC - Por Ruben Altman, Adrián Eidelman
  • Desarrollo y testeo modular de interfaces HTML5 / MVC - Por Santiago Bustelo
  • Automatizando el testing en .NET - Por Adrián Eidelman, Ruben Altman
  • Pasado, presente y futuro de C++ - Por Rodolfo Finochietti
  • Mobile Web Sites - Por Rodolfo Finochietti
  • Web Sites 100% en JavaScript - Por Rodolfo Finochietti
  • Una vuelta por la nueva plataforma de Desarrollo que se viene! - Por Johnny Halife
  • Juega con HTML5 - Por Matias Iacono, Patricio Santiago Marrone
  • Generación espontánea con T4 - Por Matias Iacono
  • Mirando el espejo - Por Matias Iacono, Boris Angonoa
  • Usando MongoDB desde C# - Por Ruben Altman, Román Gorojovsky Sánchez
  • Un entorno práctico de desarrollo ágil - Por Carlos Peix
  • Desarrollo de soluciones geo-espaciales con SQL - Por Andrés Aiello
  • Gestionando grandes volúmenes de datos con SQL 2011 - Por Pablo García
  • Creando aplicaciones a la velocidad de la luz: desarrollo con Visual Studio 2010 Lightswitch - Por Diego Fidel Ferreyra
  • Desarrollo de Videojuegos Movilizados - Por Sebastian Miserendino
  • El Escritorio del futuro - Por Augusto Alvarez, Alberto Ortega
  • FX para tu escritorio con Remote Desktop Services - Por Augusto Alvarez, German Lagomarsino
  • Estandarización de servidores Windows Server 2008 R2 + herramientas gratuitas - Por Augusto Alvarez, Alejandro Barrionuevo
  • ¡A mover el cuerpo con Kinect! - Por Diego Sisto, Fernando Kahan
  • Tu primer webpart en Sharepoint 2010 - Por Alan Scheinkman
  • Que no te ataquén!!! Desarrollando código seguro en SQL - Por Jose Mariano Alvarez, Andrés Aiello
  • Gestión de la configuración con NuGet y Git - Por Dario Seminara, Nicolas Paez
  • Todo sobre FileStream y FileTable (SQL Denali) - Por Maximiliano Accotto
  • De 0 a 100 con Windows Phone 7 - Por Federico Lois, Daniel Rodolfo Iglesias
  • NoSQL, Map-Reduce y otras yerbas! Programando con RavenDB. - Por Daniel Rodolfo Iglesias, Federico Lois
  • Configuración y Escenarios de Client Access Server en Entornos de Migración - Por Rodrigo de los Santos
  • Microsoft e IPV6 - Por Rodrigo de los Santos
  • Mitos y Leyendas de Windows Phone 7: Sacale el jugo a tu Smartphone - Por Brian Litwak, Ignacio Raffa, Federico Boerr
  • Seguridad en aplicaciones Web - Por Carlos Peix
  • TDDeando Aplicaciones JavaScript - Por José Fernando Romaniello
  • REST: Cómo ordenar café utilizando las nuevas WCF Web API? - Por José Fernando Romaniello
  • Realidad Aumentada: De qué se trata y, ¡manos a la obra! - Por Boris Angonoa, Matias Iacono
  • Windows Azure AppFabric o cómo desarrollar aplicaciones para la nube y conservar el pelo - Por Leandro Boffi
  • Implementando soluciones Sharepoint 2010 en el mundo real - Por Soledad Pano
  • Enamorándose de Knockout.js - Por Leandro Boffi
  • Haciendo WCF simple - Por Mauricio Gentile
  • Desarrollando buenas prácticas con NuGet - Por Mauricio Gentile
  • Conoce las mejores prácticas en el uso de la API de SharePoint - Por Santiago Giovannini
  • Consejos para organizar el contenido en tu aplicación de SharePoint siguiendo las mejores practicas - Por Santiago Giovannini
  • Paseando por Denali, la nueva versión de SQL Server - Por Adrian Gabriel Lopez
  • Haciendo BI rápido y flexible - Por Adrian Gabriel Lopez
  • Aplicaciones ricas en datos sacándole el jugo a SQL Server Denali - Por Adrian Gabriel Lopez
  • Sharepoint 2010, manual para programadores - Por Hernán Veiras
  • Dirigiendo la Orquesta con WF 4.0 - Por Hernán Veiras
  • Compilando en la UI con S# - Por Hernán Veiras
  • Mi primer juego XNA para WP7 y XBOX 360 - Por Pablo García
  • Extendiendo las fronteras de SharePoint 2010: Cómo Windows Phone 7 puede ser un perfecto aliado de SharePoint. - Por Nicolas Ibarra Salazar
  • Creando aplicaciones móviles para la nube: Windows Phone 7 + Windows Azure - Por Nicolas Ibarra Salazar
  • Desarrollando aplicaciones asincrónicas en .Net. - Por Silvio Massari
  • Integrando SharePoint 2010 con Windows Azure: Un nuevo mundo de posibilidades para soluciones empresariales - Por Nicolas Ibarra Salazar
  • MongoDB a todo pulmón - Por Silvio Massari
  • Patrones de diseño NoSql - Por Silvio Massari
  • Agile Automation Testing con BDD: un poco de Cucumber, Specflow, Watin y estamos! - Por Patricia Coronel
  • SharePoint 2010 en la nube: Introducción a Office 365 y desarrollo sobre SharePoint Online - Por Nicolas Ibarra Salazar
  • Mejor MVC – Movilizándote con jQuery Mobile - Por Ignacio Baumann Fonay, Fernando Antivero
  • Microsoft Media Platform Content Manager (open source) - Por Ignacio Jonas, Ezequiel Aranda
  • El futuro de Parallel Programming en Microsoft .NET Framework - Por Christian Carnero
  • A developer overview of Windows Phone 7.1 - Por Christian Carnero
  • Soy un desarrollador .NET pero tengo un IPhone - Por Christian Carnero
  • Como conseguir pareja en una tarde de sábado con HTML5 - Por Pablo Zaidenvoren, Mauro Gandelli, Maximiliano Garcia Rozado
  • Wordpress en Windows Azure - Por Alejandro Banzas
  • Integrando redes sociales en proyectos corporativos - Por David Balogh
  • Reactive Extensions en el Mundo Real - Por Gustavo Javier Machado
  • Introduccion a Windows Azure AppFabric Service Bus - Por Gustavo Javier Machado
  • REST Services "a la carta" - Por Gustavo Javier Machado
  • Una vuelta por F#, Un lenguaje funcional en .NET - Por Gustavo Javier Machado
  • MVC3 Tips y buenas prácticas para el mundo real - Por David Balogh
  • RavenDB, No solo una base de documentos para .NET - Por David Balogh
  • Ya sé, es solo NHibernate compilado, pero me gusta - Por David Balogh
  • Full text search en 60 minutos - Por David Balogh
  • Testeo, luego existo - TDD desde cero - Por David Balogh
  • Creando sitios de internet con SharePoint 2010 - Por Mariano Escurra, Soledad Pano
  • Mejores prácticas utilizando Javascript y JQuery en SharePoint 2010 - Por Soledad Pano, Mariano Escurra
  • Escalabilidad para sitios de alta demanda en Cloud Computing - Por David Balogh
  • Datos en la nube: colas, caché, topics y otras yerbas - Por Leandro Adrián Díaz Guerra
  • Explotando el verdadero potencial de IIS con Windows Server AppFabric - Por Leandro Adrián Díaz Guerra
  • Haciendo inteligencia en tiempo real con StreamInsight - Por Leandro Adrián Díaz Guerra
  • Una Web en pocos minutos con Nuget y Scaffolding - Por Moisés Rivas, Sebastián Henzenn
  • Comunicaciones Unificadas - Por Matías Alfaro
  • TRANSPHONERS te llevamos al futuro! - Por Guillermo Bellmann, Ivana Tilca

19 jun 2011

Death Tracks - Episodio 1: Definiendo el juego

Hace unos meses venía pensando en crear un video juego utilizando, en principio, la tecnología XNA de Microsoft (para luego pasar a varias plataformas más mediante Unity 3D). En principio decidí que el juego iba a ser de carreras 2D pero no encontraba la "inspiración" necesaria. Pero recordando mis días de Sega Genesis (en realidad el que tenia era un clon llamado Songa) ubiqué el siguiente juego: Combat Cars

El juego constaba de un conjunto de participantes que corrían en circuitos 2D en perspectiva top-down utilizando una seria de armas (especifica para cada coche). La carrera se ganaba cumpliendo la totalidad de las vueltas y saliendo al menos 3ero. Esto dentro de varios modos de carrera: 1 jugador, 2 jugadores (head-to-head) o un campeonato de 8 participantes.

Luego de ver algunos videos del juego y de hasta bajar la ROM para jugar un rato me decidí armar un "clonico" del mismo con algunas mejoras.

Actualmente me encuentro programando el modelo de dominio del juego: en principio me estoy enfocando en crear los circuitos y un editor para armarlos así es mucho más fácil extender el juego y el día de mañana permitirle a quienes lo jueguen poder crear sus propios tramos.

La idea es basar la generación y carga de los circuitos en archivos XML que contengan la metadata necesaria para que el motor de circuitos se encargue del "trabajo sucio" de fabricar los objetos si necesidad de recompilar el código frente a algún cambio de contenido de los mismos.

Cuando tenga esto terminado lo siguiente será encargarme del movimiento de un auto dentro del circuito y lograr que respete las leyes de la física (rozamiento, velocidad, aceleración) y reaccione correctamente.

Síganme en el blog para conocer el progreso del proyecto y conocer los problemas y soluciones que se van sucediendo en el desarrollo del mismo.

Hasta la próxima entrada!!

12 abr 2011

Un poco de menta en nuestras vidas...

Con la idea de aprender/extender/conocer nuevos elementos del mundo Linux decidí instalar la distribución Mint (http://www.linuxmint.com/) y ciertamente confirmé el slogan de esta distribución:


 LINUX MINT 10
"De la libertad viene la elegancia" 

Instalación (sobre Windows):
Para instalar esta distribución basta con bajar la versión Live para la implementación que se ajuste a sus necesidades (32 o 64 bits) y luego puede elegir booter desde un CD o utilizar alguna herramienta de unidad virtual para imagenes ISO y correr el setup que viene en la imagen.

Primeras Impresiones: 
En búsqueda de la elegancia prometida y por que no de un poquitito de funcionalidad. En principio debo comentarles que la distribución resulta muy fachera, viene con un escritorio configurado con Compiz y realmente se ajusta muy bien al hardware de aceleración de gráficos permitiendo una muy buena fluidez en los efectos de las ventanas y los menus.

La versión full trae de movida todos aquellos paquetes que son básicos y necesarios, a saber:

  • OpenOffice
  • Gestor de Torrents
  • Reproductor de musica
  • Visualizador de PDF, Fotos, etc.
  • Cliente de chat (compatible con muchos formatos como Hotmail, Google Talk). 
  • Firefox (version a actualizar)
  • Gestor de paquetes muy intuitivo
  • Y muchas cosas más... 

Para terminar les recomiendo que se bajen esta distro de Linux ya que es muy intresante, no tiene desperdicio (como la mayoria) pero además está totalmente apuntada a gente novata (me incluyo) en este ambiente. En otras entradas les estaré comentando más experiencias con este Linux. Saludos!

8 abr 2011

Grupo de investigación y desarrollo de XNA en la UAI

En esta oportunidad quiero comentarles que se esta gestando un grupo de investigación y desarrollo de videojuegos con XNA en la Universidad Abierta Interamericana. Actualmente estamos desarrollando un canal de Youtube donde iremos colgando diferentes videos con ejemplos, explicaciones, experiencias y códigos fuentes sobre el trabajo que vayamos realizando.

La idea del grupo es ir armando pequeños juegos funcionales utilizando diferentes técnicas tanto de programación como de lógica, graficos 2D/3D, uso de motores y física, de manera progresiva para ir acumulando conocimientos y experiencias e ir mejorando y aprendiendo más.

Actualmente estamos realizando un primer juego sencillo de "Perseguir y atrapar" que luego integraremos con un dispositivo Kinect que tenemos disponible en la facultad.

Próximamente contaremos con un espacio en la plataforma Chamilio para compartir todo el contenido con aquellos que estén interesados en participar del grupo. Les dejo los links para seguirnos:

Uaicel: grupo de facebook en donde se publican todos los encuentros y charlas que realiza la Universidad Abierta Interamericana (link)

UaiXna: canal de Youtube con videos e información sobre el desarrollo e investigación de videojuegos con XNA (link)

Suscribanse para mantenerse al tanto de las novedades.

Saludos a todos!

5 abr 2011

Lectura Recomendada: XNA 4.0 Game Development by Example: Beginner's Guide



Hasta hace unos días estuve muy entretenido leyendo el nuevo libro sobre XNA que pedí vía Amazon. El libro es el siguiente:



Debo comentarles que el libro resulto excelente!. Básicamente contiene una serie de juegos (5 en total para ser exactos) de diferente estilos a través de los cuales el autor nos va enseñando todas las posibilidades que tenes al alcance de nuestra mano utilizando el framework XNA para desarrollar juegos.

Para hacer honor a su titulo, el contenido de los capítulos y ejemplos esta distribuido de tal manera que permite su entendimiento al máximo: primero establece los objetivos del capitulo actual, luego escribe el código fuente completo de los elementos del juego correspondiente y finalmente hace una explicación muy completa sobre lo que "esta sucediendo" dentro de la porción de código escrita.

Verdaderamente el libro no tiene desperdicio y hasta estimula al lector a extender los juegos que se desarrollan en el transcurso de la lectura del mismo.

Les dejo el link de descarga:


Espero que lo disfruten tanto como yo.

Un saludo a todos!

7 feb 2011

Desde el panal...

Durante estos días estuve jugando muy a gusto con mi xperia x10 mini y su s.o. Android 2.1. Claramente la segunda revisión del sistema operativo de Google es mucho más ágil que la anterior (1.6).

En estos días Motorola anunció la salida de un nuevo producto que la impulsará al mercado en boga de las Tablet PC.

Video promocional de Motorola Xoom with Android 3.0 (Honeycomb)

En muchos videos de la web se puede ver como en Google han dedicado sus esfuerzos a realizar un sistema operativo construído exclusivamente para Tablet PCs. Para los que hemos visto otras tablets actuales con Android OS (como las APad, Coby, iRobot, etc.) esto representa un gran cambio, ya que las versiones 1.6 y 2.1 del sistema operativo fueron duramente adaptadas de teléfonos celulares a tablets de linea económica. Dicha adaptación, por lo tanto, no es del todo completa (por ejemplo: muchas de las opciones aparecen con la palabra "Telefono" dentro de los menú de configuración) y si bien cumplen su cometido (y creanme que con creces) todavía les faltaba "algo más".

En respuesta a esto Google decide sacar su nueva versión Android: Honeycomb (este es el video oficial del producto) y aquí otro video en una demo.

Seguramente muchos pensarán que este es el futuro de la computación, haciendo obsoletas hasta las mas modernas PCs de escritorio o laptops. Por mi parte creo que es un camino acertado.

Espero sus opiniones y cometarios al respecto.

Saludos!

JProfiler (o cómo rastrear y descubrir problemas de performance en aplicaciones Java)

El otro día charlando, con unos compañeros, salió el tema del performance de aplicaciones. Varios de nosotros comentamos nuestras experiencias con herramientas de base de datos (como el Tunning Advisor de SQL Server o el Enhancements que soporta Oracle), mejoras de diseño en las clases y patrones clásicos como el Lazy Load o DTO.

Una de las herramientas que nos entusiasmó a todos en común resulto ser JProfiler.

JProfiler se encarga de registrar cada uno de los eventos que se suceden en nuestra aplicación Java guardando información sobre cantidad de memoria utilizada, objetos referenciados y tiempos transcurridos (entre cosas cosas más). Dicha información es presentada en pantalla en forma de árbol jerárquico. También se pueden realizar búsquedas en tiempo real utilizando criterios como cantidad de memoria utilizada, tiempo de demora, etc.

Si bien es importante tener en cuenta cuestiones de diseño e infraestructura al momento de llevar a cabo nuestras aplicaciones, es necesario tener un set de herramientas que nos indiquen que estamos haciendo las cosas bien. Creo que JProfiler es una de esas herramientas "infaltables" al momento de analizar tanto comportamiento como tiempos de ejecución.

Actualmente me encuentro buscando alguna alternativa para lenguajes .NET. Si conocen alguna sientanse libres de comentarlo.

Espero les sea de utilidad como a nosotros!

Saludos.

Control F 2011!

Nuevamente comenzaremos con el ciclo de Becas Control F durante este año.

Para los que no conocen la iniciativa, Becas Control F es un programa promovido por el Ministerio de Trabajo, Empleo y Seguridad Social de la nación en conjunto con el CESSI y empresas de tecnología (IBM, CISCO, Microsoft, Oracle, SUN, entre otras) que ofrece cursos de manera gratuita para aquellas personas que se encuentren interesadas en el mundo informático.

Los cursos que generalmente se ofrecen son:

  • Programación con C# para principiantes (principios básicos, Windows Forms, ASP.NET) y avanzado (servicios remotos, WCF).
  • SQL Server.
Durante el curso se entregan materiales de forma gratuíta los cuales incluyen ejercicios, contenidos y ejemplos, los cuales se analizan en las clases dictadas durante el curso.

Para los interesados, dejo el link

Saludos!