Pack de Github para estudiantes

Hoy Github, el famoso servicio de social coding, ha comenzado a distribuir un pack de todos sus productos para los estudiantes, ofreciendo una licencia por un año. Yo, que todavía conservo la cuenta de la universidad tengo acceso a ellos, por lo que voy a tener la oportunidad de poder probar algunos de sus servicios de los que, muy probablemente, haga una review en las próximas entradas. Continue reading →

Comparativa de Frameworks Javascript

 

Es necesario entender que un framework es una abstracción de código común que provee funcionalidades genéricas que pueden ser utilizadas para desarrollar aplicaciones de manera rápidafácilmodular y sencillaahorrando tiempo y esfuerzo. Entonces, un framework es concreto y también “incompleto”. Concreto porque es, desde un punto de vista simple, un conjunto de componentes; incompleto, porque por sí­ mismos no pueden ser utilizados, ya que guí­an a la solución de problemas de programación recurrentes, pero, por lo general, no son la solución específica completa.

En su mayorí­a, los frameworks javascript proveen componentes para:

  • Compatibilidad. Agregan la posibilidad de escribir código javascript totalmente compatible con todos lo navegadores y motores Javascript más utilizados. Esto aumenta la portabilidad y eliminan el “gran dolor de cabeza” de incompatibilidad entre navegadores y sus motores intérpretes javascript.
  • Comunicación asíncrona (Ajax). Usando este acercamiento, es fácil utilizar XMLHttpRequest para manejar y manipular los datos en los elementos de un sitio bien, aumentando la interactividad y experiencia del usuario.
  • DOM. Maximizan la capacidad de agregar, editar, cambiar, eliminar elementos de manera dinámica agregando librerías que facilitan usar DOM.
  • Validación de Formularios. Permiten de una manera relativamente fácil validar campos dentro de uno o varios formularios. Esto, desde el punto de vista del desarrollador, simplifica y reduce el código para procesar dichos formularios, ya que los datos llegan previamente validados, reduciendo los errores de tipos de datos.
  • Efectos visuales. Utilizando la manipulación de los elementos, se pueden crear efectos visuales y animaciones. Entre los efectos se encuentran: Aparecer y Desaparecer, Redimensionamiento, Move, Aparecer y Desaparecer, y más.
  • Almacenamiento Client-side. En adición provee funciones para leer y escribir cookies. También proveen una abstracción de almacenamiento que permite a las aplicaciones web guardar datos del lado del cliente, persistente y de manera segura.
  • Manejo JSON. Incrementa al máximo el manejo de datos, que pueden ser utilizados para presentar informaciones de manera dinámica y en tiempo de ejecución.
  • Manejo de Eventos. Esta caracteréstica agregada, permite reaccionar de una manera u otra dependiendo de las acciones del usuario.
  • Recibidores de Datos. Permiten utilizar diferentes formatos de datos como XML, HTML, Texto, JSON, ATOM, entre otros.
  • Arrastra y Suelta“. Mejor conocido como Drag and Drop. Es una funcionalidad que brinda la posibilidad de arrastrar elementos dentro de una misma página que interactúe con el resto de los elementos.

Voy a hablar de los 3 frameworks que creo que mas auge tienen a día de hoy: Continue reading →

Como habilitar Nvidia en Ubuntu para los nuevos procesadores

Con la nueva generación de procesadores de Intel, la mayoría de los ordenadores suelen venir equipados con 2 tarjetas gráficas, una integrada en el procesador, Intel graphics HD 3000,  y otra para procesamiento de gráficos 3D de alto rendimiento, como puede ser una Nvidia. Este sistema nos permite tener un gran ahorro de energía, ya que no necesariamente desde que iniciamos el sistema operativo necesitamos una gráfica potente como la nvidia, y, por otro lado, la gráfica de Intel viene integrada en el chip del procesador, y la de Nvidia tener un bus punto a punto para que el procesador pueda enviar datos, por lo que podríamos usar las 2 tarjetas a la vez.

En Windows la vida es muy facil, simplemente accediendo al panel de control de la Nvidia podríamos configurar que programas queremos que nos procese la gráfica de alto rendimiento, el resto del sistema lo manejará la integrada.

En Ubuntu la vida no es tan fácil, la última versión de Ubuntu la 12.04 al cargar los drivers de la integrada, del panel de control de Nvidia pasa olímpicamente, por lo que voy a explicar una serie de pasos bien detallados para poder configurar la Nvidia y ejecutar programar con las 2 gráficas. Continue reading →

Git y Github

Hoy me gustaría hablar sobre los sistemas de control de versiones, visto que tengo que entregar proyectos en la carrera, he estado probando varios sistemas para facilitarme el manejo de los archivos y la actualización de los mismos.Para ello utilizo Git.

Se llama control de versiones a la gestión de los diversos cambios que se realizan sobre los elementos de algún producto o una configuración del mismo. Los sistemas de control de versiones facilitan la administración de las distintas versiones de cada producto desarrollado, así como las posibles especializaciones realizadas.

¿Por qué Git? Continue reading →