Entradas etiquetadas ‘Google

Comprimir y ofuscar archivos Javascript

23 de agosto de 2008

en: Sin categoría


El uso de Javascript ha aumentado mucho en estos últimos años, esto provoca que cada vez haya más sitios con grandes cantidades de código Javascript, los archivos Javascript los descarga el navegador de manera que es visible para cualquier persona, por lo tanto con la compresión y ofuscación de nuestros archivos javascript conseguiremos solucionar varios problemas: ahorrar ancho de banda (minimizando el código), ocultar el contenido (ofuscando el código) y agilizar la carga en el cliente (minimizando el código y usando gZip).

Por lo tanto estas técnicas se centran en cuestiones como la seguridad del código y el tamaño de los archivos Javascript.

Minimizar código

En esta técnica es importante diferenciar bien los archivos de producción y desarrollo ya que es casi imposible trabajar sobre código minimizado, básicamente de lo que se trata es de eliminar comentarios, tabulaciones y espacio consiguiendo una importante disminución del tamaño final del archivo Javascript.

No se modifica en nada el funcionamiento del código Javascript y no requiere de ninguna herramienta adicional para leer el código ya que este se mantiene intacto.

Ofuscar código

Esta técnica primero minimiza el código y luego cambia algunas partes de código buscando principalemente seguridad y optimización (cambiando nombres de variables y funciones).

Obviamente estos cambios de código pueden traer ciertos problemas ya que algunas de sus funcionaes pueden dejar de funcionar.

Hay numerosas herramientas para desempeñar está técnica, estas son algunas de ellas: YUI Compressor, Packer, JSCruncher Pro, Dojo ShrinkSafe, JSMart, Minify JS.

Compresión de código

Con esta última téxnica conseguirimos comprimir código, ya sea un .js, un .css o .html, el navegador tendrá que descomprimir y ejecutar el código generado con la consiguiente carga que ello conlleva, sin embargo estaremos ahorrando ancho de banda.

Estadísticas de nuestra página con Timeplot

22 de julio de 2008

en: Sin categoría

Ayer escribíamos una entrada que comentaba lo útil que puede lleagr a ser Timeplot de SIMILE Project.

Cómo ya comentamos SIMILE se trata de un proyecto de MIT Libraries y MIT CSAIL que se centra en el desarrollo de robustas herramientas (Open Source) basadas en la Web Semántica.

En concreto Timeplot tiene a mi parecer un enorme potencial, en este caso vamos a ver como podríamos hacer una aplicación que nos sirva como lector y visualizador de estadísticas de páginas, el resultado como se puede ver en el ejemplo es extraordinario ya que conseguiremos generar una gráfica muy parecida a las ofrecidas por Google Analytics.

Visualizador de gráficas estadísticas con Timeplot

Crear gráficas personalizadas con Timeplot

Lo primero será leernos la documentación necesaria para crear un ejemplo de gráfica con Timeplot.

En estos enlaces puedes encontrar la documentación necesaria para crear un simple ejemplo con TimePlot:

Visualizador de gráficas con Timeplot

Para hacer un visualizador de gráficas necesitaremos una fuente de datos, en nuestro caso utilizamos las estadísticas obtenidas gracias a Statcounter de estos dos últimos años.

Archivo de texto con estadisticas
Visualizador de estadísticas con Timeplot

Como fuente de datos vale con que tengamos un fichero de datos que separe los campos por comas y el único requisito indespensable es que el primer campo sea el dato fecha.

2006-11-27,9572,7227,6487,2740
2006-11-28,5697,4527,4170,2357
2006-11-29,5070,3974,3643,2331
2006-11-30,5234,3907,3568,2339
2006-12-01,5011,3702,3399,2303
2006-12-02,4171,3263,3059,2204
2006-12-03,3754,3098,2931,2167
2006-12-04,13329,9757,7844,3913

Una vez tenemos los datos y como se puede ver en la documentación podremos cambiar bastante el aspecto de las gráficas.

Google Doctype

16 de mayo de 2008

en: Negocio|Programacion

Google Doctype es una buen noticia para los desarrolladores… ya que se trata de una enciclopedia abierta y una librería de referencia escrita por desarrolladores web para desarrolladores web.

Especialmente útil me parece este apartado en el que podemos encontrar la descripción de un gran número de propiedades de CSS.

Aquí puedes ver la lista de temas.

Encima todo este contenido está bajo licencia Creative Commons 3.0 Attribution por lo que podemos enlazar y citar la fuente sin problema alguno.

Firebug a fondo

8 de abril de 2008

en: Sin categoría

Firebug es una magnífica extensión para Mozilla Firefox que agradecerán sobre todo los que se dediquen al desarrollo de sitios web y que sin duda una vez la has utilizado se convierte en un complemento indespinsable.

Con ella podremos editar y depurar código, además de monitorizar el sitio sobre el que trabajemos.

Funcionalidades de Firebug

  • Edición de HTML en tiempo real
  • Edición online de hojas de estilos
  • Monitorea el tiempo de carga de las páginas
  • Depurador de Javascript
  • Gestor de errores en Javascript, CSS y XML
  • Explorador del DOM

Puedes utilizar Firebug para aprovecharte de alguna de estas funcionalidades pero si tuviéramos que destacar alguna la que se lo merece es el genial Depurador de Javascript.

Debido a sus grandes posibilidades para conseguir un buen dominio de la aplicación necesitaremos un buen periodo de aprendizaje.

Consola de Firebug

La consola de Firebug es la herramienta que necesita cualquier desarrollador web para hacer de su aplicación una aplicación de calidad, esto se debe a que gracias a ella podrás eliminar de tu aplicación los molestos alert().

La consola de Firebug tiene 6 apartados:

  1. Console
  2. HTML
  3. CSS
  4. Script
  5. DOM
  6. NET

Console

La consola es uno de sus puntos fuertes, muestra las peticiones AJAX (GET o POST) que realiza la página, headers, variables enviadas y la respuesta del servidor.

También nos muestra los errores Javascript que se producen en la página junto a un enlace dónde podemos ver la línea de código errónea.

Por último disponemos de una API muy interesante, Firebug añade una vaiable global llamada “console” a todas las webs cargadas en Firefox, este objeto contiene muchos métodos que nos permiten mostrar información en la consola de un modo transparente y sin necesidad de recurrir a los molestos “alert()”.

HTML

Editando HtmlMediante esta funcionalidad Firebug nos editar el html en tiempo real y encima nos da muchas facilidades para ello, especialmente interesante es el “Inspector de HTML” que nos permite detectar los elementos deseados únicamente pasando el ratón por encima, una vez tenemos localizado el elemento lo podremos editar en tiempo real.

  • Ver código fuente generado
  • Resaltar cambios
  • Editar HTML en tiempo real
  • Encontrar elementos con el ratón
  • Inspeccionar un elemento y recargarlo sin perderlo
  • Copiar el HTML

CSS

Editando HtmlEn esta pestaña podrás acceder fácilmente a la edición de estilos de la página, es muy intuitivo y tremendamente útil ya que todos los cambios se realizan en tiempo real.

A menudo los pequeños retoques de hojas de estilo se convierten en una tarea nada agradable para el desarrollador ya que su comportamiento en cada navegador es en numerosas ocasiones diferente, esta herramienta es ideal para principiantes que necesitan de muchas pruebas para encontrar los errores en su hoja de estilos, el famoso método de “Try & Error“.

  • Previsualizar colores e imágenes
  • Inspeccionar la hoja de estilos
  • Editar estilos y ver los cambios en tiempo real
  • Ayuda en línea y corrector de errores tipográficos

Script

Editando HtmlComo anteriormente hemos resaltado posee un potente debugger de Javascript que nos permite manejar a nuestro antojo la ejecución de los códigos javascript, con un poquito de paciencia se puede llegar a conseguir un buen aumento del rendimiento de nuestro código.

  • Encuentra cualquier Script fácilmente
  • Ejecución paso a paso
  • Detección de errores y puntos de ruptura
  • Ver el valor de las variables en tiempo real
  • Saltos fáciles a cualquier línea del código
  • Modo “Profile” que muestra un completo análisis de los tiempo de carga y ejecución que ha provocado tu navegación por la página.

DOM

Editando HtmlComo no Firebug también nos ayuda a encontrar los objetos DOM de una manera relativamente sencilla y editarlos al vuelo, para aquellos que anden un poco despistados con la traducción de DOM pordríamos decir que es algo así como el “Modelo en Objetos para la representación de Documentos” y por lo tanto se trata de la interfaz a través de la cual los programas y scripts pueden acceder y modificar dinámicamente el contenido, estructura y estilo de los documentos HTML.

  • Resumen de objetos
  • Muestra el árbol DOM de la página
  • Edición en tiempo real
  • Navegación por el código Javascript

NET

Editando Html¿Tu web va algo lenta?, la solución la puedes encontrar con esta útil herramienta puedes comprobar dónde se pierde el tiempo de la carga de tu web gracias a su genial línea de tiempo, entre sus características más destacadas está la diferenciación entre la carga de caché del servidor y la que no se encuentra cacheada.

  • Línea de tiempo
  • Filtros por tipos de archivos
  • Ver que datos se sirven en caché
  • Examina las cabeceras
  • Monitoriza el XMLHttpRequest

Proyecto de SIMILE, Timeplot

31 de marzo de 2008

en: Internet

Hace ya un tiempo escribíamos una entrada que comentaba algunos datos interesantes de SIMILE Project, y no hace demasiado también hablabamos de Timeplot.

Cómo ya comentamos SIMILE se trata de un proyecto de MIT Libraries y MIT CSAIL que se centra en el desarrollo de robustas herramientas (Open Source) basadas en la Web Semántica.

De la lista de proyectos que podeis encontrar en la página de SIMILE Project uno de los más nuevos es el de TimePlot que se trata de un estupendo sistema de gráficas y que permite sobreimpresionar los diferentes eventos utilizando los mismos formatos de datos que utilizaba TimeLine.

Este sistema tiene un enorme potencial y se me ocurren muchísimas aplicaciones a las que poder aplicar sus funcionalidades, como por ejemplo un lector y visualizador de estadísticas de páginas.

Documentación TimePlot

En estos enlaces puedes encontrar la documentación necesaria para crear un simple ejemplo con TimePlot:

Rotando letras con Javascript

30 de marzo de 2008

en: Sin categoría

Un curioso y divertido truco para rotar letras visto en este foro, se trata de una función Javascript que sustituye las letras dadas por los caracteres que más se le parecen al rotar las letras del texto 180º.

Girar Texto

Tras esta breve presentación de Unicode pasemos a ver el truco Javascript para rotar las letras de un texto. Para probarlo introduce una cadena de texto en el campo “Original” y pulsa el botón “Girar Texto“.

Original:


Texto rotado180º:

En la gran mayoria de los caracteres se utilizan caracteres unicode pero tambien hay algunos caso en los que para representar una letra del alfabeto invertida se utiliza otra letra del alfabeto para representarla:

b -> q
d -> p
g -> b
l -> 1
n -> u
o -> o
p -> d
s -> s
q -> b
x -> x
z -> z