Bajando Visual Studio 11 Express Beta

 Estoy descargando el Beta del nuevo Visual Studio Express, que permitirá desarrollar Apps estilo Metro. La verdad creo, a diferencia de muchos dogmáticos, que Microsoft se viene con muchas sorpresas que harán la vida más fácil a los desarrolladores. En ese sentido, Microsoft siempre ha sido fuerte y es el punto por el cuál puede recuperar el terreno perdido, ya que, aunque me discutan muchos. Son los desarrolladores quienes alimentan al sistema con sus aplicaciones que gustan a los usuarios. Y si a ellos les ponen trabas y restricciones, eso los aleja y por lo tanto, eso evita que salgan buenas aplicaciones.

Espero que esto también de las facilidades de Kinect para PC, integración con Skydrive, entre otras cosas. Además de permitir una integración más simple.

Al menos, Windows 8 Consume Preview corre mucho más rápido que Windows 7. Eso demuestra que hay un esfuerzo por hacer las cosas mejores.

 

 

 

 

Compartir:
  • Print
  • Digg
  • StumbleUpon
  • del.icio.us
  • Facebook
  • Yahoo! Buzz
  • Twitter
  • Google Bookmarks

Tiempo hay, disposición es la que falta

Siempre hay tiempo por hacer las cosas, que ese tiempo sea poco, es verdad, pero existe y está en nuestras manos el saber aprovecharlo.

Por ejemplo, este es un artículo súper improvisado y escrito en unos pocos minutos con la idea de mantener activo el blog y no quedarme estancando ni que este muera.

En fin, aprovechen el tiempo, no solo para hacer el trabajo de otros, sino también para el propio.

Compartir:
  • Print
  • Digg
  • StumbleUpon
  • del.icio.us
  • Facebook
  • Yahoo! Buzz
  • Twitter
  • Google Bookmarks

La orientación al usuario

Es muy importante la orientación al usuario. Yo creía entenderlo, pensaba que era acercarse al usuario, hacerle algunas preguntas, tomar requerimientos, elaborar un tedioso documento de requerimientos para comenzar a diseñar e implementar el sistema… ¡que inocente era!. Como muchos informáticos, estaba cerrado a las normas. Estaba más preocupado del CMM, ITIL, ISO en vez de preocuparme de lo que realmente necesitaba el usuario.

Gracias a dios, he tenido la oportunidad de trabajar en unidades usuarias. Eso me ha ayudado ver que quieren realmente los usuarios. Sobretodo al darme cuenta que el usuario por lo que general requiere soluciones simples y no mega aplicaciones del tipo “World Class” o “Enterprise” que tratan de vender la mayoría de gerencias TI.

Para muestra un botón. Había un usuario que quería efectuar un cálculo que involucraba reglas de negocio. En la gerencia TI pensaron inmediatamente… ¡compremos una herramienta Business Intelligence! Lo cual puede ser interesante, y probablemente resolvería el problema, pero despues de largos procesos de levantamiento de requerimientos, adquisición y adaptación de la herramienta al usuario.

¿Qué fue lo que hice en ese entonces? Me acerqué a la persona, y no le pregunté que quería. Sino que le pedí que me mostrara que es lo que hacía el en el día a día. Resulta que el cálculo era super simple, y lo único clave era poder obtener datos de un repositorio de datos para el efectuar operaciones que quedaban principalmente para el mismo. Por otra parte, mi colega (me carga el termino cliente o usuario, si somos de la misma organización) independiente de que herramienta estuvieran los datos. Tenía que ponerlos al final igual en una planilla Excel… O sea, su interfaz de usuario mas cómoda para el, era el Excel y era lo ideal para el evitar cambios en ese sentido.

. Así que ¡manos a la obra!. Le propuse lo siguiente, una planilla Excel donde pudiera definir los parámetros específicos para su cálculo, en el Excel el presionaba un botón para ejecutar el cálculo, el cual por debajo llamaba a un programa desarrollado en .NET que llamaba al servidor haciendo el cálculo. El programa recibía la respuesta y la escribía en un archivo .csv que lo leía el Excel y…. ¡voilá! ¡Los datos llegaban a su planilla! Para el usuario era magia, el solo definía un par de parámetros en el Excel hacía clic y le llegaban los datos. Una solución siimple y elegante, donde nos ahorramos horas de consulta, capacitación con empresas externas, además de la incomodidad que se genera al usuario de decirle que hay que sacarlo de su entorno familiar para pasar a una herramienta muy desconocida… En resumen, una solución más cercana al usuario que cumplía en forma práctica y eficiente con lo que el esperaba.

No critico a las herramientas BI, son buenas si son usadas apropiadamente. El problema son las unidades TI muy orientadas a solucionar todo poniendo herramientas. Sin estudiar realmente el contexto de negocio de la organización y su necesidad real. Se apoyan en nombres y marcas, sin analizar si es lo que hay que comprar, o desarrollar.

Debemos eliminar ese complejo del ingeniero de buscar la “mejor solución” respecto a un producto de una empresa. La mayoría de las veces, da lo mismo si usas la línea Oracle/Java o la linea Microsoft (.NET, SQL Server… etc), eso al usuario no le interesa y nunca le va a interesar. Entiendo a las unidades TI que el usuario puede ser odioso y muy cargante en casi la mayoría de las ocasiones. Pero es nuestra responsabilidad como Ingenieros de Software idear y crear la forma de solucionar sus problemas en forma práctica y eficiente.

¿Y tú? ¿Cuál ha sido tu experiencia respecto a la orientación al usuario? Te invito a que agregues tus comentarios:

Compartir:
  • Print
  • Digg
  • StumbleUpon
  • del.icio.us
  • Facebook
  • Yahoo! Buzz
  • Twitter
  • Google Bookmarks

Jugando con RavenDB, WCF y creando Add-Ins de Excel

Últimamente me he puesto a experimentar con RavenDB, una base de datos NoSQL Documental, la inspiración me vino luego de que muchos problemas que me he enfrentado últimamente no tiene que ver con las transacciones de Bases de Datos, sino que con las consultas a los datos que hacen los usuarios, que por cierto, son muy creativos.

Lo genial es que usa la sintaxis de JSON, y permite crear índices y aplicar el algoritmo MapReduce. Lo bueno es que es compatible con las bibliotecas de .NET y con Linq-To-SQL, por lo que puedo crear una especie de “cache” de datos para las consultas más pesadas y así no hacer pebre al SQL Server.

Uno de los experimentos que estoy haciendo, es crear un Excel Add-in para consultar algunos datos. Para ello creé un servicio WCF que recibe las consultas desde Excel (a través del Add-In) y hace el traspaso de estas solicitudes al servidor Raven. La gracia de crear un servicio, es que con ello puedo crear aplicaciones Helper que usen el mismo servicio.

En una primera etapa hice funciones específicas, y he podido rescatar datos. Me queda por experimentar muchas cosas. Sobretodo los índices, que es lo más potente.

Ahora, ¿dónde entrará el SQL Server en todo esto?. En realidad, no es solo SQL Server, sino cualquier sistema relacional ya armado y normalizado no ayuda a facilitar las búsqueda, obligando a desnormalizar estas bases, eliminando así sus propiedades ACID. No creo que eliminar las relacionales sea la solución, soy de la línea de que NoSQL = Not only SQL. Pero tampoco me parece tratar de andar haciendo jugarretas con el modelo relacional para lograr mayor rendimiento. Ahí es donde entran las bases no relacionales.

Finalmente. Algunos datos:

- Cuando subí el servico WCF por primera vez. Se me olvido definir los contratos y estaba en un namespace distinto. Eso mareó al cliente de mi aplicación cuando cambié el namespace. Solución: Reiniciar IIS.

- Lamentablemente, los add-in de Excel son orientados a la versión de Office específica. Por lo tanto, hay que crear tantos add-in para versiones de Excel. La solución es más que nada preguntar cual es el más usado y luego apuntar a la versión de Office que venga después.

- Lo increible, es que todo este invento lo hice hoy de un paraguazo. Obviamente, solo entrega datos primitivos, pero el ciclo de las capas de presentación (Excel en mi caso) a servicios, negocios y datos está hecho. Debo agregar seguridad.

Si han tenido experiencia con estas herramientas o tienen otra que me puedan recomendar. No duden poner comentarios sobre ellas. Y si tienen ideas para algun proyecto mejor.

Compartir:
  • Print
  • Digg
  • StumbleUpon
  • del.icio.us
  • Facebook
  • Yahoo! Buzz
  • Twitter
  • Google Bookmarks

“Debí hacerlo” y otras expresiones

“Debí hacerlo” es una pésima expresión. Es llorar sobre la leche derramada.

“Quiero hacer esto” es meramente un deseo, lo cual puede motivar  a hacer algo. Pero no es suficiente.

“Haré esto” es como la publicidad, mientras realmente no se haga, esta expresión no tiene sentido.

Lo único que importa es hacer las cosas y tener resultados. Eso implica salir de la zona de comodidad, donde está el real crecimiento.

El mundo exige resultados; no les cuentes a otros tus dolores de parto. Muéstrales al niño. – Indhira Gandhi

 

Compartir:
  • Print
  • Digg
  • StumbleUpon
  • del.icio.us
  • Facebook
  • Yahoo! Buzz
  • Twitter
  • Google Bookmarks

De las encuestas y algunos pensamientos…

El porcentaje de apoyo a la clase política ha bajado cada vez más, al igual al porcentaje de apoyo al presidente. Esto da para pensar muchas cosas:

NOTA: Primero, no voy a hablar del cliché de que el modelo económico que los ricos y los pobres y bla bla bla. Estoy aburrido de tanto extremista (de izquierda y derecha) que cree que la solución es para pasarse al otro lado, obviamente todo sistema tiene sus defectos, pero prefiero diablo conocido que diablo por conocer.

 

  1. A mi me da a pensar que hay un gran crecimiento de la clase media y que el nivel de la masa se informa un poco más que antes. Si la gente fuera simplemente pobre, no tendrían los recursos para acceder a Internet y por lo tanto a Facebook, Twitter, que es donde la mayoría de la gente obtiene información: Comentarios de amigos, links y videos compartidos.
  2. Aún así, la masa todavía no ha madurado en el aspecto civil. Somos como ogros con tecnología, ya que aún así todavía no aprendemos cosas tan simple como dar el asiento a los de 3a edad y embarazadas, botar las basuras en los basureros, no rayar en las paredes y respetar el patrimonio.
  3. De lo anterior, nos informamos más, pero la masa le falta la capacidad de análisis, de ver la otra vereda y comparar puntos de vista. Seguimos siendo chaqueteros ya que nos enfocamos en los errores sin mirar los avances que se han hecho. ¿Hubiesen esperado que un gobierno de derecha, el gobierno de los empresarios, se lanzaría contra la Polar, la colusión de los Pollos, etc.?
  4. La gente parece que olvida muy rápido. No entiendo como una irresponsable con cero capacidad de liderazgo que tiene sangre en sus manos cuando ocurrió al terremoto, sí, me refiero a la ex-presidente Bachelet, que sea lider. Puedo entender que no apoyen al presidente, pero parece que la gente olvida en que periodo se implementó el Transantiago, que cuando hubo la revolución Pingüina ella simplemente dilató el movimiento en vez de canalizarlo, siendo ella socialista. Somos nosotros los ciudadanos quienes orientamos a los políticos, y si la Bachelet es un modelo para la masa, no creo que estemos tomando un camino muy próspero que digamos.
  5. La gente parece que no ha cambiado en cosas básicas, todavía el líder es el que grita más fuerte y se hace choro, en vez de la persona realmente informada, con excelentes capacidades de negociación, orientada a los resultados y con capacidad de lograr acuerdos. Sinceramente, no entiendo como Camila Vallejo puede ser nombrada un ejemplo de liderazgo, lo considero un retroceso. Ya que un año no es tiempo suficiente para determinar las capacidades de un líder.
Bueno. Esas son opiniones que quería decir hace tiempo. Por favor, traten de analizar un poco más, no basta con lo que alguien te diga, eres tú el que tiene que investigar, averiguar y sacar tús propias conclusiones. No dejes que otras personas piensen por ti.
Compartir:
  • Print
  • Digg
  • StumbleUpon
  • del.icio.us
  • Facebook
  • Yahoo! Buzz
  • Twitter
  • Google Bookmarks

De NoSQL, OO y la evolución de los paradigmas tecnológicos

Mirando la charla sobre el Tao de NoSQL, pueden verla acá, me puse a pensar sobre lo interesante de los cambios de paradigmas. Así como se ha pasado de lo procedural a orientación a objetos (y aspectos, programación funcional, etc), las bases de datos pasan por evoluciones parecidas, clave-valor, jerárquicas, relacionales y el movimiento NoSQL.

Algo interesante que deduje de NoSQL que más que una protesta contra las bases de datos relacionales, se explica que no todos los problemas relacionados con la gestión de datos son resolubles en forma simple vía lo relacional. En este sentido son complementarios. Tal como se menciona en la charla, unos tipos de Microsoft Research lograron mostrar, con buenos argumentos teóricos, que hay una relación complementaria entre lo NoSQL y lo relacional. Eso se asemeja a lo que ocurre con los lenguajes procedurales estructurados o también los orientados a objetos con los lenguajes inductivos como Prolog.

Esto significa que al final de cuentas, uno nunca puede quedarse estancado con las tecnologías o conceptos actuales. Hay evoluciones tras evoluciones. Y no significa que lo anterior no vale. No porque existe la construcción en hormigón, la construcción en madera se debe deshechar. A veces la madera es más cálida.

Compartir:
  • Print
  • Digg
  • StumbleUpon
  • del.icio.us
  • Facebook
  • Yahoo! Buzz
  • Twitter
  • Google Bookmarks

Mis últimos Tweets de la semana 2011-11-27

  • Mucho calor. Menos mal que viajo a Conce #mejoraire #
  • "@RevistaCity: Alumnos de Ingeniería presentarán emprendimiento en Silicon Valley http://t.co/pcWyJx3y #novedades quot; verdadero futuro de Chile #
  • "@Paoficial_: Ay Camilita… me haces tanto reír http://t.co/29ES4pnE" doble estándar de los "demócratas". Al final son solo luchas de poder #
  • Antes de invertir en educación universitaria. Deberíamos invertir a full en aprender a vivir como ciudadanos #
  • Twitter ha reemplazado a mi Google Reader #

Powered by Twitter Tools

Compartir:
  • Print
  • Digg
  • StumbleUpon
  • del.icio.us
  • Facebook
  • Yahoo! Buzz
  • Twitter
  • Google Bookmarks

Mis últimos Tweets de la semana 2011-11-27

  • Mucho calor. Menos mal que viajo a Conce #mejoraire #
  • "@RevistaCity: Alumnos de Ingeniería presentarán emprendimiento en Silicon Valley http://t.co/pcWyJx3y #novedades quot; verdadero futuro de Chile #
  • "@Paoficial_: Ay Camilita… me haces tanto reír http://t.co/29ES4pnE" doble estándar de los "demócratas". Al final son solo luchas de poder #
  • Antes de invertir en educación universitaria. Deberíamos invertir a full en aprender a vivir como ciudadanos #
  • Twitter ha reemplazado a mi Google Reader #

Powered by Twitter Tools

Compartir:
  • Print
  • Digg
  • StumbleUpon
  • del.icio.us
  • Facebook
  • Yahoo! Buzz
  • Twitter
  • Google Bookmarks