miércoles, febrero 25, 2009

DevLab: Webkit Inspector

En esta ocación en el videocast se muestra el uso de la herramienta WebKit Inspector, la cual es de gran ayuda tanto para los diseñadores web, así como para los programadores web.

La herramienta permite inspeccionar el código html de una pagina web, realizar cambios a la misma "en vivo", también es posible inspeccionar el CSS de la pagina y de igual forma realizar cambios al momento.

También cuenta con una opción para medir el tiempo de carga y tamaño de nuestra pagina, dandonos un detalle, de cuales son los elementos que tardan mas en descargarse o cuales son los mas "pesados" en términos de bytes.

Por último también se muestra la herramienta para depurar javascript e inspeccionar los valores de las variables del código que se este ejecutando, ademas de incorporar una herramienta de "profile" para analizar que partes de nuestros javascript son las más lentas en su ejecución.


DevLab: WebKit inspector from Mario A Chavez on Vimeo.


Como siempre comentarios o sugerencias para próximos videocasts son bienvenidos.

lunes, febrero 23, 2009

helper_method en Rails

Trabajando en una aplicación en Rails, me sugió la necesidad de hacer que un método que existe en la clase ApplicationController, estuviera disponible tambien para el ActionPack.

Lo primero que se me ocurrió fue duplicar el método en el helper de la vista donde lo requiero, pero eso no me pareció muy DRY (Don´t Repet Yourself); una búsqueda rápida en Google me dió la respuesta: helper_method

Con helper_method podemos declarar un método en nuestra ApplicationController, por ejemplo, y hacerlos disponible a nuestros controladores, pero al declarar nuestro método con helper_method, tambien lo hacemos disponible para nuestras vistas.

helper_method :hola_mundo

def hola_mundo
....
end

jueves, febrero 19, 2009

Web 2.0 CoffeCamp Tj


¿Te interesa el Web 2.0?, ¿haz escuchado hablar de él, pero no estas seguro que es?, ¿sabes de Web 2.0 y tienes algo que aportar?

Acompañanos este sábado 7 de Marzo en el D´Volada de Plaza Dorada en Otay, Tijuana; a partir de las 9 a.m., hasta que el cuerpo aguante o nos corran del lugar.


View Larger Map

Nos interesa tratar temas relacionado a negocios y la interacción social, además del aspecto tecnológico.

Si te interesa compartir algo, por favor agrega en los comentarios tu propuesta de tema.

Comparte una taza de café en una charla amena y agradable.

Pláticas confirmadas:
  • Frameworks para el desarrollo Web 2.0 - Mario A Chávez

Nota: Evento gratuito, solo se require consumo en el D'Volada !

miércoles, febrero 18, 2009

DevLab: GIT parte 2

Segunda parte del videocast sobre el sistema de control de codigo fuente Git. La primera parte se encuentra aquí.

En este video se tocan temas sobre, clonación de repositorios, manejo de etiquetas (tags), creación y manejo de ramas (branches) y se muestra la aplicación GitX para visualizar la bitácora de cambios y ver la gráfica de cambios en nuestro proyecto.

Adicional a los recursos para Git presentados en el primer videocast, aqui se presenta una hoja "acordeón" para Git (cheat sheet).


DevLab: GIT parte 2 from Mario A Chavez on Vimeo.

Como siempre comentarios, sugerencias son bienvenidos.

martes, febrero 17, 2009

México First, reunión informativa para Tijuana BC

A través de la Comunidad Tijuana.NET se logró el tener una reunion informativa con respecto a la iniciativa México First, por parte del Cluster TI@Baja y New Horizons.

Esta reunion esta programada para el 24 de Febrero, en las instalaciones del Cluster TI@Baja, en el 209 del edificio Salomon. La reunion comienza a las 6:00pm.

El post original en el sitio de la Comunidad Tijuana.NET es el siguiente:

Con el fin de presentar y resolver dudas acerca del programa México First te invitamos a esta reunión donde podremos conocer de primera mano los detalles de este programa para apoyo a capacitaciones y certificaciones.

* Apoyos para estudiantes y emprendedores (Microsoft vía LiveMeeting)
* Valor de Capacitaciones y Certificaciones (New Horizons)
* México First (IT@Baja)

Esperamos se unan a esta iniciativa de capacitación profesional y que aprovechen las facilidades económicas que nos están otorgando.



View Larger Map

lunes, febrero 16, 2009

Consejos para Startups por David Heinemeier Hansson

A través de twitter me encontré con este video de David Heinemeier Hansson, donde da consejos para Startups y toma como ejemplo su empresa 37 Signals. La charla es muy amena y sobre todo presenta ideas interesantes.

Pencil, "mockups" para interfaces gráficas

Cuando se desea compartir una idea sobre la interface gráfica de una aplicación a los desarrolladadores o diseñadores gráficos, quizás la forma mas rápida de hacerlo es dibujándola a mano sobre una "servilleta" o una hoja de papel, o quizás se utilice alguna herramienta costosa como Visio o algún software parecido.

Pencil es una herramienta gratuita Open Source, que se instala como un plugin de Firefox y que ayuda precisamente a expresar ideas de interface gráfica entre desarrolladores y diseñadores gráficos, de una manera fácil y rápida; con Pencil es posible realizar el "mockup" de una interface gráfica en cuestión de minutos.


Los diseños puedes hacerse en múltiples paginas y pueden ser compartidos en el formato original de Pencil o exportados a archivos de imagen png.



Mexico First, Continuación ...


En un post previo comenté acerca de la iniciativa México First del Gobierno Federal y la industria TI de México, bueno, por parte del Cluster TI@Baja y la Comunidad Tijuana.NET, aqui hay más información al respecto de los cursos y como poder acceder a la capacitación con descuentos de más del 50%.

De los puntos importantes que nos comparten son los siguientes, con respecto a los costos:
  • Proyectos de instutuciones académicas: 80% de subsidio.
  • Proyectos de organismos empresariales y clústers: 70% de subsidio.
  • Empresas individuales: 60% de subsidio (solo para proyectos en donde se capacite a mas de 100 personas).
A parte se requiere de un compromiso por escrito de realizar la capacitacion y aprobar la certificación, en caso de no ser así, se tiene que devolver el dinero aportado por parte del gobierno.

Los cursos que el Cluster TI@Baja está buscado llevar a cabo son:
  • Visual Studio .NET
  • SQL Server
  • Windows Server
  • Office
  • CompTIA Network+ Certification
  • CompTIA A+ Certification
  • Cisco: CCNA y CCNP
Así que si estas interesado en poder acceder a esta opción para alcazanzar una certificación, verifica si tu empresa esta afiliada a alguna organización como los Cluster de TI, si tu instutución académica tiene algún acuerdo con el Gobierno Federal, en relación a la iniciativa México First.

viernes, febrero 13, 2009

Numb3rs y las matemáticas

Numb3rs Numb3rs es una serie que se transmite por CBS en US los viernes por la noche, actualmente en su quinta temporada.

A simple vista parece ser una serie policiaca más, en donde el FBI trata de resolver casos de asesinato, robo, secuestro y terrorismo; pero las herramientas que se usan para resolverlos es lo que la hace un tanto diferente.

En Numb3rs el personaje Charlie Epps (David Krumholtz), reconocido genio matemático de la universidad CalTech de California, ayuda a su hermano Don Epps (Rob Morrow), agente del FBI, a resolver los casos con la ayuda de Matemáticas aplicada.

Numb3rs introduce los conceptos matemáticos de una forma fácil y sencilla, con analogías que son relativamente fácil de entender, sobre todo dejando ver que las matemáticas las utilizamos todos los días, aun en cuestiones que no nos imaginamos.

numb3rs charlieAunque en algunos episodios parece simplemente increíble la manera en que las matemáticas han sido aplicadas para resolver cierta situación, que mas bien parece una invención de algún escritor de Hollywood bajo los efectos de alguna droga, la verdad es que toda la matemática del show esta fundamentada y apoyada desde diferentes puntos.

Por ejemplo, algunos de los episodios se basan en eventos reales atendidos por el FBI - cuentan con asesoría del FBI -, en donde precisamente usaron a las matemáticas como herramienta para resolver los casos, de hecho existe un libro "The numbers behind Numb3rs: Solving crime with mathematics".

Por otro lado, los productores del show se acercaron a la "Mathematical Association of America" con la finalidad de tener asesoría y no presentar matemáticas falsa.

Ademas cuentan - o por lo menos al inicio de la serie - con la asesoría Gary Lordon, jefe del área de matemáticas de la universidad CalTech, así como otros matemáticos.

Los temas matemáticos en general que la seria ha tratado en este momento van:
  • Números primos y su factorizacion
  • Números Fibonacci
  • Hipótesis de Riemman - por cierto sobre esta hay un premio de 1 millón USD para quien la pueda comprobar -
  • Dinámica de fluidos
  • Teoría de conjuntos
  • Teoría del juego
  • Teoría de grafos
  • Probabilidad y estadística
  • Simulación de modelos matemáticos
  • Etc

En fin una gran cantidad de conceptos matemáticos, aplicados a eventos de física, computación y seguridad informática, economía, ciencias sociales, etc.

Por otra parte los programas usados para la visualización y análisis, que se muestran en la serie no es simple flash con algo de photoshop, la gente de Wolfram, los creadores del software de matemáticas Mathemathica 7, ayudan con la visualización de la información, de hecho tienen un blog donde semana a semana toman la matemática de la serie y crean vídeos para visualizar la teoría detrás de esta.

Epps

Adicional a este análisis del blog de Wolfram, hay otro blog un profesor de matemáticas- no encontré su nombre - de la universidad Northeastern, donde analiza episodio por episodio la matemática del mismo, ademas de dar ejemplos y ligas para una investigación mas profunda.

En fin la serie esta interesante por el hecho de llevar las matemáticas aplicadas a un lenguaje o situaciones donde la mayoría las podamos entender, pero si te gustan las series policiacas, pues también la serie tiene algo que ofrecer, aunque como todas las series tiene sus altibajos en cuestión de la trama.

miércoles, febrero 11, 2009

DevLab: GIT parte 1

Este primer video vamos a realizar una introducción a el sistema de control de código fuente GIT, este videocast esta conformado por una primera parte (este video) y una segunda parte que se publicará próximamente.


DevLab Git from Mario A Chavez on Vimeo.

Recursos

DevLab Screencast de desarrollo de software

Ya el año pasada habia comenzado con esta iniciativa de crear Screencasts sobre temas de desarrollo de software, por diversas situaciones ya no pude continuar haciendolo.

Pero he decidido buscarme el tiempo para dedicarle a la creación de estos videos, esperando que sean de ayuda mutua, es decir que el contenido les aporte algo en su desempeño diario, y que támbien a través de la retro-alimentación me ayuden haciendome saber sus comentarios sobre el tema.

DevLab

La serie de Screencast se llama DevLab y la puden acceder desde esta liga o subscribirse a al feed a traves de feedburner.

El primer video esta práticamente listo y es sobre el Sistema de Control de Código Fuente GIT

ASP.NET MVC != Ruby On Rails

ASP.NET MVC desde que llego a los portales de noticias y se empezaron a publicar blogs sobre él, creo que ha estado bajo fuego enemigo como fuego amigo.

Y una buena parte de ese fuego, viene desde el "bando" de los programadores de WebForms, que no se hacen a la idea de desarrollar aplicaciones Web en esta herramienta tan "minimalista" y que no cuenta con ningún control UI que puedan "arrastrar y soltar" para componer su pagina, forzandolos a programar HTML.

Otra parte del fuego, viene de la misma gente .NET, que esperaban que ASP.NET MVC se parezca mas a Ruby On Rails y que están un tanto en desacuerdo con las decisiones técnicas que realizadas sobre el Framework.

Y por ultimo esta la gente que escucha el acrónimo MVC y espera que ASP.NET MVC sea un clon exacto de Ruby On Rails, y que al ver que no es así, simplemente desestima el Framework.

Desde mi punto de vista, ASP.NET MVC no debería de tener ningún compromiso de parecerse a Ruby On Rails, creo que debe de crecer por su cuenta, tomando las fortalezas de .NET así como sus debilidades también.

Pero volviendo al titulo de este post, ASP.NET MVC != Ruby On Rails y no se debe de esperar que lo sea por las siguientes razones:

Ruby On Rails es un framework super integrado desde la presentación Web hasta el acceso a la base de datos, esto nos ayuda a no preocuparnos sobre la "plomería" de nuestro proyecto y simplemente enfocarnos a lo importante, implementar la funcionalidad de negocio de nuestra aplicación.

Por su parte ASP.NET MVC es únicamente un Framework para desarrollar aplicaciones Web con el patrón MVC, pero no ofrece una guía sobre el acceso a base de datos, validación, ni ninguna otra cuestión de infraestructura. Aunque esto no es malo del todo; pero hay señales encontradas por parte del mundo .NET en este sentido, por ejemplo Microsoft empuja el uso de Entity Framework como capa de persistencia a datos, gente de la comunidad y empleados de Microsoft realizan sus demos con Linq2SQL y la gente mas independiente de Microsoft empuja NHibernate.

Esta situación donde no hay quien de una pauta, causa confusión en la gente que quiere aprender a desarrollar con ASP.NET MVC o los que vienen de frameworks como Ruby On Rails, que esperan llegar y desarrollar sin preocuparse de esas cuestiones, y que al final de cuentas se van decepcionados porque ASP.NET MVC no llena sus expectativas.

Hasta ahorita las únicas guías serias y con fundamento que he visto es la que promociona Headspring con su Arquitectura de la Cebolla y los proyectos CodeCampServer y MVCContrib, y la guía de SharpArchitecture, que de alguna manera es muy parecida a la Arquitectura de la Cebolla. Por lo menos ambas ayudan a olvidarse de los detalles de implementación y dedicarse a crear la funcionalidad de la aplicación.

Si a final de cuentas lo que buscamos son comparaciones, creo de ASP.NET MVC se parece mas al framework de Ruby Merb, el cual, al igual ASP.NET MVC es agnóstico a su capa de persistencia, presentación, etc.; tal y cual es el estado actual de ASP.NET MVC. Ambos frameworks tienen puntos extensibles que nos permiten reemplazar la funcionalidad original por nuestra la funcionalidad preferida.

Por lo tanto y para finalizar, quiero remarcarlo una vez mas, ASP.NET MVC != Ruby On Rails

martes, febrero 03, 2009

México First


México First es una iniciativa anunciada bajo el marco de Prosoft 2.0 a mediados del 2008. Esta iniciativa es impulsada por la Secretaria de Economía, con el apoyo de la Cámara Nacional de la Industria Electrónica, de Telecomunicaciones y Tecnologías de la Información (CANIETI) y la Asociación Nacional de Instituciones de Educación en Informática (ANIETI).

El objetivo de México First es lograr la certificación de profesionistas y graduados de instituciones académicas en áreas relacionadas con las IT y sus procesos, según los objetivos del programa se espera que para el 2012 existan algo así como 150,000 personas certificadas, aunque hay otras versiones donde indica que realmente esperan 65, 000 personas certificadas.

Como mencione, las áreas a certificar van Business Process Outsourcing (BPO) a certificaciones IT. En el lado de las certificaciones IT, me llama la atención que buscan certificar personal en metodología TSP (Team Software Process) y PSP (Personal Software Process).

Ambas metodología se enfocan en como las personas y equipos deben de trabajar en conjunto para desarrollar software, según - el articulo de Software Guru, en las ligas al final del post - TSP/PSP ayudan a que las empresas pequeñas se acerquen a marcos de trabajo complejos como CMMI, pero que no se supone que la norma Moprosoft tenia este mismo objetivo? acercar a la pymes de desarrollo de software a marcos como CMMI?

Ahh, Moprosoft tiene un hoyo grande, quizás deliberado, quizás no, no se enfoca en las personas, si no en los procesos de la empresa, pero si se pregonaba que las empresas de desarrollo de software que aplicaran Moprosoft iban a tener un mejor nivel de calidad en el desarrollo de software, porque meter ahora TSP/PSP, y si TSP/PSP es complemento de Moprosoft, porque no se promociono junto con Moprosoft, o será que Moprosoft no dio "el ancho" y ahora TSP/PSP es un "parche" para asegurar la calidad del software.

El caso es que como empresa desarrolladora de software, ahora hay que certificar a los empleados en TSP/PSP, para ahora si, poder alcanzar un nivel de madurez en el desarrollo de software. No estoy en contra de estos modelos de "calidad" de software, simplemente creo que hay que interponer a las personas sobre los procesos y herramientas, y que es mejor responder a los cambios de forma organizada, en lugar de solamente seguir un plan - Si 10 puntos para el que me diga donde vienen estas ideas -.

MexicoFirst BOPIT


Sobre las certificaciones técnicas, no estoy en contra de ellas, solamente creo que son una falsa sensación de seguridad, porque el contratar una persona certificada, a mi no me dice que va a tener un mejor o peor desempeño que alguien que no tiene certificaciones; pero en cuestiones de Curriculum y de mercadotecnia, pues una certificación no se ve nada mal.

Que al final de cuentas el objetivo de la SE con las certificaciones es el poder tener una mejor mercadotecnia para atraer inversión externa en BPO e IT a México, aunque al final el cliente no creo que se vaya con quien tengan mas certificaciones que otros, todos se va a reducir a el costo, quien lo pueda hacer mas barato.

Volviendo al punto de la iniciativa, el caso, es que el gobierno federal ha destinado fondos para apoyar a que las empresas certifiquen a sus empleados en la áreas mencionadas, estas certificaciones no serán gratuitas, pero tendrán un descuento de alrededor del 90%, por lo tanto si te interesan estas certificaciones y la empresa en la que trabajas esta afiliada a la CANIETI o algún Cluster TI, o estas estudiando la universidad, hay que investigar como poder obtener este beneficio.

Por el lado de la Comunidad Tijuana.NET también habrá información proximante de como se puede acceder a estos fondos para las certificaciones, tanto para profesionistas independientes, como miembros de la comunidad en general.