Link del día: Framework HTML5 Mobile

Muchas buzzwords en el título, pero no deja de ser verdad. Hace un tiempito ya anda dando vueltas The-M-Project, bajo el título de “HTML5 JavaScript Framework, escribe aplicaciones móviles multi-plataforma”. Si eso no es prometedor, no sé qué lo es.

El proyecto aún está en estado alpha, y nos instancian a que le hagamos las modificaciones que nos plazca en GitHub para luego integrarlo al proyecto principal, si es que son buenas modificaciones, claro.

Hay una aplicación demo que tienen llamada Todo2, que es básicamente una lista de tareas, o Twitter Sample, una aplicación de búsqueda de Tweets, o mejor que nada, el Kitchen Sink, para ver un poco de todo.

Soy un zorrinito web.

(Read more →)

Link del día: debugCSS

Como todo elemento del desarrollo web, los CSS también pueden tener errores, y nuestra forma de utilizarlo puede no ser la óptima. Hay muchas herramientas que nos permiten ver cómo podríamos mejorarlo, pero hasta ahora no había visto ninguna que se enfocara directamente en corregir las buenas prácticas (junto con los errores, claro).

Entonces me crucé on debugCSS, un proyecto en forma de bookmarklet que nos da feedback sobre la página que estamos viendo. Al ser un bookmarklet, no toma más que un click y una arrastrada para instalarlo, y lo podemos usar tanto en páginas web como locales. Estuve probando varias páginas y de verdad que aunque no tenga errores graves, siempre estará dando sugerencias de como hacer el CSS y el HTML, más acorde, y no mancharlo con JavaScript inline.

En fin, otra de las herramientas útiles al momento de hacer desarrollo web.

Soy un zorrinito criticón.

(Read more →)

Link del día: Qué debería saber todo programador JavaScript

Aquellos que están en el mundo web, y más que nada en el mundo de las RIA (Rich Internet Applications), no dudarán en decirme que JavaScript es sin duda una de las herramientas más potentes que tenemos disponibles. Otros sabrán de muchas de las mejoras que se vienen en este área, pero no es lo que quería comentar hoy.

Lo que quería contar es sobre una pregunta en StackOverflow llamada What should every JavaScript programmer know?, con puntos muy interesantes, referencias muy completas y hasta un quiz, y yo creía que sabía y no respondí correctamente ni la mitad de las preguntas.

Leer esas respuestas llaman la atención y sacan a la luz muchos puntos curiosos que quizá no habíamos considerado.

Soy un zorrinito JavaScript.

(Read more →)

Link del día: Programando con el sombrero rosa

La gente de Babcock y Jenkins escribió un artículo sobre una actividad que ellos denominan “Coybow coding”, que como lo pueden imaginar, tiene que ver con la codificación temeraria. En este caso, se trata sobre la programación o remediación de defectos directa en servidores de producción. Su artículo se titula Cowboy Coding and the Pink Sombrero.

La metodología de ellos es realmente hacer llamar la atención a alguien cuando se están haciendo cambios en producción. Es muy común que ciertas empresas muestren un mensaje cuando se accede a un servidor de producción, o que muchas acciones estén restringidas, o que se necesite usar passwords a cada rato. En defnitiva, es la importancia de recordarle al programador / administrador de sistemas que se encuentra trabajando en un sistema que está en vivo.

Ahora, otra forma de lograr este efecto es “haciendo pensar” al programador si realmente se justifica estar haciendo estos cambios en producción, y para eso, nada más llamativo de la atención que un sombrero rosa. Lo llamativo del sombrero hace que todos sepan que hay alguien trabajando en producción, y cuando se acercan a preguntar, la persona haciendo los cambios comienza a dudar si realmente lo mejor era hacer eso.

Buena técnica, curiosa implementación. Me gusta como se juega con la psicología para que de a poco se vayan castigando estos comportamientos. Sin embargo, creo que si alguien debe de hacer un cambio en producción, dudo que el ambiente sea tan animado como para andar poniéndose sombreros.

Soy un zorrinito sin sombrero.

(Read more →)

Link del día: BuiltWith

BuiltWith es un servicio web que nos proporciona información sobre las tecnologías que soportan un determinado sitio. Más allá de sólo describir los módulos básicos de Apache y el tipo de servidor sobre el que se encuentre dicho sitio, nos comenta sobre varios tipos de utilización de contenido, como CDN, codificación, qué tipo de frameworks se están utilizando, qué tipo de CMS si se puede reconocer, librerías JavaScript, información sobre HTML si se encuentra disponible, y un poco más.

Nos dejan investigar también sobre otros sitios que usen la misma tecnología, pero no lo veo realmente útil a menos que queramos comparar determinados sitios que usen plataformas algo raras. Por ejempo, una búsqueda entre qué sitios usan Wordpress no aportará nada interesante, una búsqueda entre qué sitios utilizan codificación UTF8 creo que no sirve de mucho. De todos modos, este tipo de reportes son pagos, pero la información general no lo es.

Soy un zorrinito curioso.

(Read more →)

Link del día: Notificon

La gente de Github no me deja de sorprender, parece que siempre tuvieran algo nuevo. En este caso, me crucé con algo que no es demasiado funcional, pero sí muy interesante para lograr buenas interfaces de usuario.

Han notado cómo GMail utiliza el título de la página/tab para avisarnos de cuando tenemos un mail nuevo, incluso si estamos en otro tab? Bueno, algo muy parecido se puede hacer con los favicons, cambiandolos para dar una notificación al usuario. Algo parecido hace Google Calendar, poniendo un favicon distinto cada día con la fecha actual.

El código fuente de este proyecto se puede encontrar en este sitio de Github: Notificon.

Recuerdo haber leído unas pruebas cross-browser del soporte de favicons y su posible utilización. El único caso en donde no funcionaban era en Safari, ya que en lugar de mostrarse los iconos, se mostraba un ícono propio de Safari, y dependiendo de la cantidad de tabs, directamente no se mostraba nada. Desafortunadamente, olvidé en dónde leí eso (y mis búsquedas no dieron resultados). El estudio concluía que Safari debería ponerse al tanto con el resto de los navegadores.

Soy un zorrinito visible.

(Read more →)

Link del día: Documentación jQuery extra-oficial

Me encontré con dos fuentes de documentación extra-oficial de jQuery, con lo cual, por supuesto, pueden estar desactualizados y hasta incorrectos. Pero lo interesante de ellos es que nos ofrecen una navegación un poco distinta que la que la documentación original nos ofrece.

Es el caso, por ejemplo, de Visual jQuery (actualmente en 1.2.6), que nos permite navegar la documentación de forma jerárquica, sin perder el nivel de dónde estábamos. Además, encontré que es muy orientado a ejemplos, con lo que es fácil llegar al punto de lo que hace cada cosa y cómo se utiliza.

jQAPI es un caso parecido, y parecería que la navegación es aún más fácil en este caso, incluyendo búsqueda HTML5 y todo. Me pareció que este tiene explicaciones más detalladas y ejemplos más completos.

Soy un zorrinito javascript.

(Read more →)

Link del día: Aprendan estadística o los mato a todos

Este link que me llegó del nuevo Delicious trata de un rant de Zed Shaw titulado Programmers need to learn statistics or I will kill them all. Trata de las frustraciones que él encuentra al momento de discutir resultados de tests y generalizaciones con determinados programadores con los que ha trabajado.

Si bien no deja de ser un rant y por eso no es realmente informativo, es un buen punto de partida para entender por qué el conocimiento básico que tenemos de estadística (si no todos, probablemente una gran mayoría). Creo que muchos hemos pecado de cometer las mismas acciones que él cuenta en su artículo, como dar un número grande de pruebas, sacar un promedio y entender que ese es el promedio de los casos, cuando hay muchos otros factores que afectan y muchos otros datos que aportan información y nunca se tienen en cuenta. Para sacar una frasecita de su artículo: “El punto es que si ustedes dan un promedio sin mostrar la desviación estándar, perdieron completamente el punto de siquiera intentar medir algo”.

Soy un zorrinito promedio.

(Read more →)

Link del día: Sinfonías algorítmicas

Me crucé de casualidad (y ya ni recuerdo cómo) con un artículo de un blog llamado Algoritmic symphonies from one line of code – how and why?, en donde el autor mostraba un viejo experimento que había hecho: hacer iterar una variable sobre valores incrementales, y que una función de esa variable fuera enviada a la salida de audio.

Resulta que experimentando con distintas fórmulas pudo crear sonidos y hasta “canciones” bastante avanzados. Por supuesto, no podremos compararlos con obras musicales actuales (excepto que hablemos de dubstep o industrial experimental – encajarían bien ahí), pero aún así es increíble la complejidad que estos pueden adquirir con esas simples pruebas. Allí es en donde el autor encuentra esa belleza escondida de las fórmulas.

Por si fuera poco, alguien hizo una versión en JavaScript, que pueden probar y divertirse creando música (o ruido) desde fórmulas, y hasta estéreo (acompañamiento!).

Soy un zorrinito musical.

(Read more →)

Link del día: Lineamientos de seguridad

Desde los geniales posts que nuestro amigo Alan Pasho ha escrito para el blog de CommonSense, en la serie de Is Your Website or App Secure? (recomiendo la lectura de todos ellos), me encontré ayer con los lieamientos que Mozilla impone a sus desarrolladores como medidas de seguridad al momento de desarrollar aplicaciones.

Cabe destacar que estos lineamientos, WebAppSec/Secure Coding Guidelines, no son nada cortos, pero sí detallados, y se cubren tópicos desde manejo de sesiones a (lo más básico) validación y autenticación. Si alguien está pensando en armar un checklist, este es muy buen comienzo, y si alguien quiere una guía completa de qué cubrir, puede leer esto o, por supueto, todo el contenido de OWASP y los libros relacionados.

Sabemos que la seguridad es todo un mundo, pero cuando se trata de hacer verificaciones o checkeos, siempre necesitamos una lista rápida,y tanto los posts de Alan como la guía de Mozilla son un buen lugar para hacer esa checklist de items.

Soy un zorrinito asegurado.

(Read more →)