El blog de Artefacto

Archivo para la categoría ‘Desarrollo’

Armysoft – Tu tienda del airsoft

sin comentarios

Artefacto presenta su primera tienda online: Armysoft.es

Armysoft.es - Tu tienda de Airsoft

Escrito por David

El 12/07/2012 a las 11:39 am

Cargar JQuery desde la red de Google

sin comentarios

Cada vez más, los programadores web hacen que los sitios webs carguen algunas bibliotecas JavaScript desde la CDN (Content Delivery Network, red de entrega de contenidos) de Google, en lugar de hacerlo desde el propio servidor web donde está instalado el sitio o la aplicación.

Esto tiene algunas ventajas importantes, como que ahorra ancho de banda del servidor de la compañía y además hace que el propio sitio web cargue más rápido (ya que los navegadores hacen las peticiones a servidores distintos en paralelo). También optimiza el propio tráfico de Internet, porque si todo el mundo usa el mismo archivo del mismo servidor, la primera vez que el navegador lo solicita se guarda en caché, y en sucesivas peticiones no es necesario descargarlo.

A la hora de cargar bibliotecas podemos cargar la API de JavaScript de Google y desde ahí cargar mediante código JQuery (o la biblioteca que nos interese). Otra opción es cargar directamente el archivo desde el repositorio de Google:

<script src="http://ajax.googleapis.com/ajax/libs/jquery/1.4.2/jquery.min.js"></script>

Este enfoque es adecuado, pero tiene algunos problemas: ¿qué pasa si un día Google decide dejar de alojar el código? Esto no parece muy probable, pero ¿y si se cae un servidor de Google y nuestra página deja de funcionar? Vale que tampoco parece que vaya a ocurrir mañana. Pero hay una última posibilidad en la que no pensé en su día y que es bastante más posible que las anteriores: ¿y si un día le enseño el proyecto a un cliente en mi portátil (ejecutándolo en local) y no tengo conexión a Internet?

Y hay una opción que nos permite evitar este posible contratiempo. En el fondo, es tan sencillo como alojar la biblioteca en nuestro servidor y cargarla sólo si no se pudo cargar la de Google. Por ejemplo, así:

<script src="http://ajax.googleapis.com/ajax/libs/jquery/1.4.2/jquery.min.js"></script> <script type="text/javascript">// <![CDATA[
!window.jQuery && document.write('<script src="js/jquery-1.4.2.min.js" mce_src="js/jquery-1.4.2.min.js"><\/script>')
// ]]></script>

La primera línea se encarga de descargar el archivo de JQuery del servidor de Google. Y la segunda simplemente comprueba si se ha cargado correctamente, y si no, escribe en el documento el código necesario para que se cargue desde el servidor local.

Escrito por Pablo

El 25/01/2011 a las 9:08 am

Publicado en Desarrollo

Etiquetas: ,

Convierte (un poco) IE6 en IE8 con JavaScript

sin comentarios

Ya hemos hablado alguna vez por aquí de los problemas que nos causa a los desarrolladores de sitios web el Internet Explorer 6, otrora buque insignia de la entrada de Microsoft en Internet, y del grave perjuicio que sigue causando a la innovación en la web (hasta el punto de que Google tuvo que dejar de soportarlo en Google Docs).

Las cosas mejoraron bastante con Internet Explorer 7, aunque en muchas cosas este navegador sigue recordando a su versión anterior. Ha habido que esperar a la versión 8 para obtener algo equiparable a un navegador moderno. Lo peor de todo esto es que debido a la política de actualizaciones de Microsoft, empeñados en ofrecer las nuevas versiones sólo a los usuarios registrados y legales de Windows (supongo que con razón), ahora mismo coexisten muchas versiones distintas de Internet Explorer, cada una con un comportamiento distinto a las anteriores. En fin.

Escribo todo esto porque hay un proyecto en Google Code muy interesante, consistente en una biblioteca JavasScript que sirve para adaptar el comportamiento de las versiones antiguas de Internet Explorer, haciéndolo lo más parecido posible al de las versiones 8 y 9. Corrige algunos (no todos, ni de lejos) problemas con el CSS y con el código HTML, además de solucionar el tradicional problema de las transparencias de los PNG.

Para utilizarlo, basta incluir en la cabecera un enlace al archivo JavaScript en cuestión. Me parece una idea fantástica, no sólo por la idea en sí, sino por la sencillez de su planteamiento.

Escrito por Pablo

El 23/01/2011 a las 9:44 am

Ejecutar funciones de PHP on-line

sin comentarios

Functions on-line Hacía mucho que no hablábamos por aquí de programación, así que vamos con una breve reseña. Functions-online es una útil herramienta que permite navegar por el directorio de funciones de PHP y ejecutarlas directamente desde el navegador, dando los valores a los parámetros de entrada según corresponda.

Por ejemplo, si queremos ver cómo quedaría el resumen criptográfico MD5 de una cadena determinada (por ejemplo “artefacto”), no tenemos más que abrir la página de la función MD5 y escribir este valor bajo el cuadro “$String”. Tras pulsar “Run” el sistema nos devolverá el resultado: 824a75958a6afa279dba661813d00a05.

A favoritos :-)

Escrito por Pablo

El 5/12/2010 a las 11:28 pm

Publicado en Ayuda y trucos, Desarrollo

Etiquetas: ,

La web del Restaurante del Casino de Burgos

sin comentarios

No hemos dado señales de vida últimamente, pero estos meses están siendo de lo más productivos. De momento, toca dar la bienvenida a la familia Artefacto al Restaurante del Casino de Burgos, para quienes hemos desarrollado un proyecto que abarca desde el diseño de interiores y decoración del local hasta el diseño de su sitio web.

casino2

La web, programada en Flash, se apoya en nuestro sistema de gestión de contenidos, Artefacto Server, para permitir una configuración sencilla de algunas de sus secciones.

¡Bienvenidos a bordo!

Escrito por Pablo

El 27/07/2010 a las 10:33 am

Menús desplegables con JQuery

sin comentarios

Llevamos ya bastante tiempo trabajando en la nueva web de Artefacto, que sustituirá a nuestros venerables vagones de metro, y que estará lista, si todo marcha según lo previsto, a lo largo de estos últimos días del año.

Más adelante revelaremos más detalles sobre la web, por el momento sólo quiero escribir un pequeño apunte técnico relacionado con la navegación. Hemos decidido hacer un pequeño menú desplegable utilizando Javascript, para lo cual una opción muy interesante resultó ser Redux (ver ejemplo), un menú de tipo acordeón escrito en apenas 40 líneas de código gracias a JQuery. Es sencillo de configurar y además proporciona persistencia mediante cookies.

Sólo tiene –tenía– un pero. Y es que si se utiliza en páginas con enlaces semánticos, el script guarda una cookie distinta para cada ruta visitada, al interpretar la dirección como un camino de directorios. Al final, esto hace que cada página del sitio tenga una memoria del menú distinta. En fin, para volverse loco –puedo dar fe de ello–. Sin embargo, la solución –no tanto el diagnóstico– es bastante sencillo. Basta sustituir la línea:

$.cookie(parent, this.className);

Por esta otra:

$.cookie(parent, this.className, {path: '/'});

Que inserta la cookie asociada al directorio raíz del sitio. Lo cual de paso nos sirve como excusa para admirar dos cosas: la increíble potencia de JQuery y lo increíblemente práctico que es el plugin para la gestión de cookies de que dispone. Poesía pura :-)

Escrito por Pablo

El 21/12/2009 a las 2:36 pm

Publicado en Ayuda y trucos, Desarrollo

Etiquetas: ,

Un Mac Mini como servidor

sin comentarios

Justo cuando parecía que Apple empezaba a olvidarse del Mac Mini y muchos empezábamos a temernos su retirada, la compañía de la manzana nos sorprendió hace unos días con una actualización del hardware (acompañada de una rebaja en el precio) y con una novedad muy interesante: un Mac Mini especialmente diseñado para funcionar como servidor.

Este nuevo Mac Mini monta un Core 2 Duo a 2.53 GHz, 4 GB de memoria principal y dos discos duros de 500 GB (es decir, 1 TB en total), uno de los cuales va montado en lugar de la unidad de DVD. También incluye una copia de Mac OS X Server (Snow Leopard), todo por 929 €. Una opción verdaderamente interesante tanto para usuarios domésticos como para pequeñas empresas. Y teniendo en cuenta que la licencia de Snow Leopard Server cuesta 479 €, creo que realmente vale la pena tenerlo en cuenta.

Los sistemas operativos para servidores de Apple siempre han destacado por sus excelentes prestaciones y por su facilidad de uso. Además de las funciones típicas en un servidor, Snow Leopard Server permite compartir calendarios, agenda, wikis y dispone de un acceso telefónico que me parece realmente tentador :-)

Escrito por Pablo

El 30/10/2009 a las 1:51 am

Publicado en Actualidad, Desarrollo

Etiquetas: , , ,

La clase FlashLoader

sin comentarios

Hace un tiempo escribí un artículo sobre la biblioteca para Javascript SWFObject, dirigida a facilitar la integración y la accesibilidad del Flash incluido en las páginas web, que venimos utilizando desde hace bastante tiempo con resultados muy satisfactorios.

El hecho es que utilizar la biblioteca en cuestión requiere, evidentemente, de cierto código adicional, y cada vez que tenía que utilizar un archivo de Flash distinto y unas dimensiones diferentes me veía obligado a hacer más cambios de los que me parecían razonables. Así pues, decidí ponerme al lío y programar una pequeña clase en PHP que he llamado FlashLoader y que soluciona el problema.

Para utilizarla, hay que instanciar la clase FlashLoader indicando la ruta del archivo de Flash, la de la biblioteca SWFObject, el ancho, el alto y la versión. Luego, simplemente hay que ir llamando a métodos que devuelven las cabeceras para incluir el archivo de la biblioteca, la inicialización de la misma y el código del objeto Flash.

He preparado un ejemplo que consta de la clase (class.flashloader.php), un archivo de ejemplo con el Flash (flash.swf), la versión 2.1 de la biblioteca SWFObject (swfobject.js) y el archivo principal (index.php). Casi no hay comentarios porque creo que se entiende muy fácilmente.

Descargar FlashLoader 1.1 (ejemplo)

La clase puede distribuirse con arreglo a los términos de la licencia GPL. Las aportaciones, preguntas y demás serán bienvenidas :-)

Escrito por Pablo

El 30/06/2009 a las 9:15 pm

Publicado en Desarrollo

Etiquetas:

Presentamos la nueva iberdatos.com

sin comentarios

Aunque todavía está a falta de que nuestros clientes completen el contenido, ya está disponible la nueva web de Iberdatos, a la que hemos añadido una sección separada que permite a los visitantes contratar servicios legales con apenas dos clics (el de aceptar las condiciones y el de enviar el formulario :-P).

Esta nueva iniciativa permite tanto la contratación de servicios legales o proyectos de adecuación en materia de protección de datos como la realización de consultas sobre derecho de las nuevas tecnologías, todo de manera rápida, sencilla y eficaz.

Escrito por Pablo

El 15/06/2009 a las 10:17 am

No encontrado

sin comentarios

Smashing Magazine recogía el otro día una curiosa recopilación de páginas de error de recurso no encontrado (el error 404 del protocolo HTTP). Las hay verdaderamente elaboradas y curiosas, aunque si tuviera que quedarme con una, sin ninguna duda elegiría la siguiente:

Recientemente hemos añadido una página de error en la web de Artefacto Server, y próximamente extenderemos esta característica a los nuevos sitios que estamos desarrollando. Aunque el diseño es importante, una página de error de este tipo debería estar centrada en aportar información al usuario y ofrecerle alguna alternativa. Nosotros nos hemos inclinado por ofrecer un pequeño formulario de contacto que permita a los visitantes preguntarnos por la información que estaban buscando:

Hay otras opciones que pueden ser interesantes, como mostrar el mapa del sitio o utilizar la dirección escrita por el visitante para realizar una búsqueda en el sitio. Probablemente añadamos alguna de estas características tarde o temprano, en función de los datos que obtengamos a través de las estadísticas.

Escrito por Pablo

El 31/05/2009 a las 10:55 pm

Publicado en Artefacto, Desarrollo

Etiquetas: ,