Administra tu Blog

¡Crea tu Blog Ya! Fácil y Gratis

Meth Blog

Categoría: programación web

24/08/2007 GMT -5

JQuery 1.1.4

meth @ 09:49

No me gusta escribir artículos sobre nuevas versiones de cosas, pero es que JQuery se merece el honor de hablar de él. Han publicado la versión 1.1.4, la última de la rama 1.1.X, así que la siguiente que no espera es la 1.2. Según comentan han resuelto muchos bugs, y han mejorado la velocidad de ejecución, como ejemplo el ejecutar $(”#id”) en Firefox ha mejorado en un 4919%, por lo que ahora nuestras aplicaciones correrán mejor, y el tamaño apenas ha aumentado 4kbs, y esto para poder incluir varias versiones de JQuery al mismo tiempo en nuestra aplicación, aunque no le veo mucho sentido, y para poder agregar JQuery a diversas librerás JavaScript, además de incluir nuevos selectores.

Así que cualquier desarrollador web debería bajarse y utilizar esta nueva versión desde jquery.com.

07/08/2007 GMT -5

Nuevo servicio para softlibre-es.com

meth @ 18:22

Acabo de programar un nuevo servicio para Softlibre-es.com, se trata de un generador de contraseñas, un servicio muy útil, o al menos para mi. Cada vez que necesito generar una contraseña aleatoria y segura tengo que ponerme a pensar o mirar en Google algún generador de contraseñas, que no siempre suele salirme el mismo resultado, así que decidí crear el mio propio. El diseño es diferente al de resto de servicios de Softlibre-es.com, pero no está feo, bueno la dirección donde puedes encontrar este servicio es http://generador.softlibre-es.com.

Por supuesto usa Ajax para no tener que recargar la página al generar la contraseña, y te da varias opciones que puedes incluir o no en tu contraseña generada, para ponerle más seguridad, como son: largo de la contraseña, incluir signos de puntuación, etc...

El desarrollo ha sido sencillo, he utilizado código que ya tenía realizado en otros proyectos, así como el archiconocido JQuery, que tanto facilita el trabajo de programación. Me ha tomado una hora realizarlo, y como 20 minutos de esa hora se me fueron en ponerle el diseño. Ya está finalizado y espero que sea útil, si alguien tiene alguna duda pues a los comentarios.

24/07/2007 GMT -5

Comprimiendo CSS y JavaScript

meth @ 17:54

Con el surgimiento de la Web 2.0, y resurgimiento de la programación JavaScript, gracias a la aparición del tan famoso XMLHttpRequest, cada día los usuarios de Internet tienen que bajar páginas más pesadas, ya que vienen acompañadas de mucho JavaScript, que añaden mucho dinamismo a las páginas, constituyendo las llamadas RIA.

Esto ha hecho que aparezcan unos frameworks dedicados a JavaScript, para poder facilitar la programación de estas RIAs. Hace tiempo, cuando aún estabamos en la Web 1.5, durante el primer boom del .com, en la que el DHTML era el rey, también el uso de JavaScript era intensivo, pero los usuarios sabían que las páginas le iban a tardar en cargar un buen rato, pero hoy en día con las conexiones de banda ancha, los usuarios esperan que la página cargue rápido, y esto es difícil cuando realizas 5 llamadas al servidor para enviar 5 archivos .js, que entre ellos suman unos 120kbs (en el mejor de los casos), además de sumar las llamadas a los archivos .css, que con la vuelta al diseño basado en capas, porque en el principio de los tiempos (o al menos mis principios en el diseño web) no se usaban tablas, sólo cuando eran estrictamente necesarias, este tipo de archivos se ha vuelto más importante para posicionar todas las capas, y darle un diseño a todos los aspectos de la web.

La solución al problema es reducir todos los .js a un único archivo, al igual que los .css. Esto es difícil cuando estás desarrollando, tener que unirlo todo en un archivo donde el caos seguro que reinará y será difícil hacer un pequeño cambio, por lo que es necesario tener varios archivos y ¿luego?. Luego hay dos opciones, o los unes tu solito en uno, o utilizas un PHP que los una, yo opté por la segunda.

Navegando por la red me encontré un fantástico archivo llamado combine.php, al que le pasas todos los .css y .js que tengas y así envias un único archivo para JavaScript y otro para CSS. El uso sería combine.php?type=css&files=mi_primer.css,mi_segundo.css,.... o combine.php?type=javascript&files=mi_primer.js,mi_segundo.js,.... con esto nos ahorramos realizar varias llamadas al servidor, por lo que la página carga más rápido, cada llamada supone una nueva conexión al servidor además de la actual para descargar el HTML. Esto también ayuda mucho al servidor al no tener que atender muchas llamadas. Otra cosa que se agradece a este script, es que tiene un directorio cache/ para guardar los archivos generados y no tener que ejecutar el script por cada visitante.

Este script (combine.php), también nos comprime mediante Gzip el archivo generado, por lo que nos ahorrará unos cuantos Kbs.

Pero esto no es suficiente (o al menos pienso yo), por lo que me puse a buscar como comprimir más mis .css y .js. Navengando nuevamente me encontré con CSSTidy, que nos permite comprimir nuestros archivos CSS aún más, yo tenía un archivo CSS que ocupaba 4kbs, tras pasar por CSSTidy se quedó en 2.8kbs que comprimidos con Gzip se me quedaban en apenas 1kb (redondeando), así que calcula me ahorré 3kbs en un archivo con unas 70 líneas de CSS, si tienes un archivo mayor o varios archivos el ahorro es mayor.

En lo referente a JavaScript tuve que buscar y buscar, hasta que al final encontré JavaScript Packer, una maravilla que comprime los archivos .js hasta donde jamás habrías imaginado, además de ofuscar el código, cosa que no me agrada demasiado, pero que es necesaria para poder tener un código lo más ligero posible. Como ejemplo está el ya mencionado JQuery, que de 61kbs que ocupa la versión completa, tras pasar por JavaScript Packer se queda en unos pauperrimos 20kbs, que una vez comprimidos con Gzip puede llegar a ocupar unos 8kbs, así que imagina de 61kbs hemos llegado a enviar unos 8kbs al usuario, 53kbs de ahorro en un archivo .js, algo que yo creo que es como para pensárselo seriamente. Para poder tener todas las bondades de estas herramientas tuve que modificar el archivo combine.php, que puedes ver en Google Docs.

Espero esto sea de utilidad a todos los desarrolladores Web que lean mi blog, y si resulta útil pues las gracias, que mis semanas de investigación en la red he tenido para poder hacer esto.

PD: Por cierto David, el jsquicktags.js lo dejé en tan sólo 3kbs así que te aconseje lo adoptes en tus desarrollos. Un saludo.

22/07/2007 GMT -5

Jquery y Xajax

meth @ 23:27

Desde hace un año más o menos estoy utilizando Xajax como mi librería para implementar Ajax utilizando PHP. También hace tiempo conocí JQuery, una librería para trabajar con JavaScript más cómodamente,y que pesa 16kbs en su versión reducida, pero si la mandas mediante Gzip ocupa únicamente 4kbs.

Hasta hace unos días no se me ocurrió usar juntos estos dos recursos, y premio, el resultado es muy bueno, ahorro muchas líneas de codigo JavaScript, y utilizando los plugins que me trae JQuery ahorro mucho código, ya que fácilmente en una sola línea puedes hacer lo que hacías en 4 ó 5 líneas.

JQuery por si solito sólo realiza manipulación del DOM, eventos, manipulación de CSS (incluyendo algunos efectos), pero esto unido a Xajax para trabajar Ajax de manera más segura, rápida y cómoda es lo que me gustó de unirlos. Aunque JQuery tiene su plugin para trabajar Ajax, prefiero utilizar una librería ya más que probada, que además me permite manipulación del DOM, y no escribir más de 2 ó 3 líneas de JavaScript, ya que si usara el plugin de JQuery para Ajax tendría que desarrollar más JavaScript. Encima Xajax dispone de un plugin para utilizar JQuery de una manera más comoda.

En fin el matrimonio perfecto para desarrollar aplicaciones web.

06/07/2007 GMT -5

Go PHP5

meth @ 10:06

Hoy me encuentro con la noticia de que un consorcio de desarrolladores de aplicaciones open source, han decidido dar un fuerte impulso al fin a PHP5, se trata de proyectos tales como phpMyAdmin, Drupal, Symfoni, etc... y algunos más que se están uniendo. Como cualquier otra campaña que se precie tienen sus banners y todo.

Support GoPHP5.org

Una gran noticia, porque ya estoy cansado de ver como PHP5 continúa su desarrollo pero los servidores usan PHP4. Mi servidor utiliza PHP5 desde noviembre del año pasado. Únete tu también como desarrollador a esta iniciativa y deja de desarrollar para PHP4.

Por cierto una nota para Nireblog, a ver si empiezas a usar PHP5 David :P, sólo quedan 213 días para que estos proyectos funcionen unicamente bajo PHP5.

11/06/2007 GMT -5

Varios navegadores

meth @ 13:11

Me encuentro realizando un proyecto donde el uso de Ajax es algo importante, por lo que utilizo mucho JavaScript y me presento ante el eterno problema, no funciona igual en todos los navegadores, y lo peor de todo es IE, tras 4 días usando Firefox, Opera, e IE; he llegado a las siguientes conclusiones:
- Cualquier JavaScript que funcione en Firefox también lo hace en Opera y de igual forma, no así en IE, por lo que hay que modificar los scripts para que funcionen en IE, incluso llegando en ciertos momentos a hacer dos scripts uno para IE y otro para los demás navegadores, ya que no se comporta igual IE5 que IE6, aún no he podido probar IE7, porque como no tengo Window$ no he podido instalarlo en Ubuntu.
- IE es el más lento y con diferencia, estoy trabajando en modo local y las páginas cargan rápido, pero resulta que en IE tengo que esperar un rato hasta que veo la página, mientras que en Firefox y en Opera cargan rápido, un poco más rápido en Firefox que en Opera.
- Opera ejecuta los scripts más rápido y sin ningún problema que los otros navegadores mencionados, pero bastante más rápido, se nota mucho la diferencia con respecto a los otros.

Moraleja: IE debería respetar los estándares marcados y que Firefox y Opera si respetan, por eso son más rápidos y ejecutan los scripts sin problemas.

Segunda Moraleja: A todos los que lean estos con IE, les aconsejo probar alguno de los otros dos navegadores de los que hablo, en cuanto vean la diferencia de velocidad creo que se cambiarán.

PD: Varias horas después de escribir este artículo me entero que los señores de Apple han sacado Safari para Window$, voy a probarlo en Ubuntu a ver si funcionara con wine, otro más se otro más se suma a la guerra de navegadores

PPD: No he podido instalar Safari en Window$ utilizando Wine, no hay manera al menos con la versión actual de Wine.

09/06/2007 GMT -5

Diseños libres para utilizar

meth @ 21:12

He encontrado este fantástico artículo, donde proporciona una lista de sitios donde poder conseguir diseños libres para nuestras webs, todos basados en CSS, y yo pues copio parte de ese artículo y lo traduzco:

Open Web Design
Open Web Design ofrece busqueda avanzada para restringir el tipo de validación (varias versiones de HTML/XHTML strict, transitional), contraste (oscuro sobre claro, claro sobre oscuro), colores primarios y secundarios, y categorías.
Open Web Design

Open Design Community
Open Design Community es un grupo de diseñadores de Webs Open Source. Ofrecen búsqueda avanzada para restringir el tipo de validación (XHTML strict, transitional), licencia (Public Domain, GPL, Creative Commons), contraste (oscuro sobre claro, claro sobre oscuro), ancho (fijo, fluido), número de columnas, colores, diseñadores y términos de búsqueda libres.
Open Design Community

CSS Design Templates
CSS Design Templates tiene una sección para diseños genéricos, temas de Wordpress, de Joomla, y de Blogger.
CSS Design Templates

Free CSS Templates
Free CSS Templates actualmente ofrece un pequeño número de diseños genéricos y para Joomla. Además tienen secciones donde enlazan a tutoriales y técnicas de diseño con CSS.
Free CSS Templates

Free CSS Templates
Otro lugar cuyo nombre es Free CSS Templates. Actualmente no ofrecen búsqueda por lo que tienes que usar Google. En estos momentos tienen 192 diseños basados en CSS para descargar.
Free CSS Templates

Open Source Web Design
Open Source Web Design actualmente ofrece más de 2000 diseños libres para descargar y con vista previa. Usando la búsqueda avanzada puedes filtrar por tipo de validación (XHTML strict, transitional), así como el uso de imágenes y CSS, contraste (oscuro sobre claro, claro sobre oscuro), número de columnas, y colores.
Open Source Web Design

Solucija
Solucija es un sitio dedicado a informar sobre arquitecturas, estándar web y diseño web. Ofrecen algunos diseños muy profesionales para descargar.
Solucija

Open Source Templates
Open Source Templates ofrece descarga y vista previa de diseños Open Source. Los usuarios registrados pueden votar por diseños. Los diseños más votados aparecen en la página principal.
Open Source Templates

Diseños para CMS

themesBase
themesBase ofrece diseños y temas para algunos de los manejadores de contenido más populares, blogs, y sistemas de foros, cada uno de los cuales tiene su propia sección.
themesBase

OSSkins
OSSkins diseños para Joomla, Drupal y Wordpresss para descargar y con vista previa. Cada uno de estos 3 sistemas tiene su propia sección dedicada en este sitio.
OSSkins

Drupal Theme Garden
Drupal Theme Garden es un lugar donde encontrar temas disponibles para Drupal 4.7.X y Drupal 5.X. Los temas pueden ser vistos en Theme Garden y descargados desde la página del proyecto Drupal.
Drupal Theme Garden

Wordpress Theme Viewer
Wordpress Theme Viewer ofrece vista previa y descargas de temas para Wordpress. Puedes filtrar por número de columnas, colores, esquinas redondeadas, incluso plugins requeridos y widgets que pueden ser usados.
Wordpress Theme Viewer

06/06/2007 GMT -5

gotAPI

meth @ 13:45

gotAPI.com es una página que descubrí hace poco, y que merece un lugar de honor entre nuestras páginas favoritas, cualquier programador desea tener algo como gotAPI.com, un buscador para lenguajes de programación, Frameworks, etc... pero no es un simple buscador porque gotAPI.com es capaz de buscar en varios sitios y sin salir de la página, es decir puedes buscar algo sobre CSS, mientras que al mismo tiempo en otra pestaña buscas por alguna función PHP o Python o Java o Ruby, o de cualquiera de los lenguajes que tiene, ya que todos los organiza por pestañas, además de tener autocompletado con Ajax, un sitio muy muy recomendable, mejor es verlo que explicarlo con palabras, gotAPI.com.

31/05/2007 GMT -5

Google aumenta su "poder"

meth @ 09:58

El otro día leí que Google (el todopoderoso buscador) adquiría Feedburner, un servicio de estadísticas para feeds RSS, por lo que se rumorea que la aparición de anuncios de AdSense en los feeds que usan este servicio está próxima. Ayer adquiría Green Border, una compañía que trabaja temas de seguridad, y hoy me levanto y veo que ha adquirido la comunidad de Panoramio, un fantástico servicio de geolocalización de fotografías, por lo que el gigante californiano cada día se hace con una compañía nueva, ¿cuál será mañana la nueva adquisición?.

Aunque no todo acaba ahí, me encuentro que hoy es el Google Developers Day, y que han publicado Google Gears, un nuevo mini-servidor para poder utilizar aplicaciones web sin conexión a la red, que cuenta con una base de datos SQLite, y un servidor local, algo muy interesante para empezar a integrar en el navegador las aplicaciones de escritorio, y en lugar de tener muchos programas tener uno sólo, en el que se integrarían los demás, esta es buena noticia para los desarrolladores web :D

18/05/2007 GMT -5

Nueva versión del Planeta

meth @ 17:36

Pues como estoy desarrollando un framework adaptado a mis necesidades, para poder programar más rápido, y es así porque ayer reprogramé por completo el planeta en tan sólo dos horas, la nueva versión está en http://planeta.softlibre-es.com, que aunque algunos no lo visitan (Taran te he descubierto).

Las mejoras: carga más rápida ya que se realiza un limpiado tanto de HTML, CSS y JavaScript, además de enviarlo comprimido con gzencode; aumentado el tiempo para leer los RSS de los blogs, de los 5 segundos ha pasado a los 15 segundos, porque algunos daban error; ahora posee un buscador para realizar busquedas entre los artículos registrados de todos los blogs; posibilidad de ver un sólo artículo de todo el planeta; mejoradas las urls amigables.

Eso fueron básicamente las mejoras, internamente pues se mejoró el código bastante sobre todo en el script de actualización.

En unos días publicaré el código, pero esta vez creo que será en la web.

Contactar con la autora o autor | Archivo | ¡Crea tu Blog Ya! Fácil y Gratis