domingo, 23 de octubre de 2011

Análisis de los sistemas operativos web (WebOS)

Web operating system o WebOS es un proyecto de investigación de computación que empezó en la Universidad de California (Berkeley) para desarrollar un programa para aplicaciones abstractas usadas en Internet. Las abstracciones que provee incluyen:
  • Un sistema de archivos que identifica la información mediante localizadores uniformes de recursos (URL).
  • Un sistema de nombramiento de recursos independiente de la localización.
  • Ejecución remota segura.
  • Acceso seguro a la información.
  • Transacciones libres de error.
La Universidad de Duke, la Universidad de Texas (Austin) y la Universidad de Washigton han continuado esta línea de investigación.
Generalmente, el término WebOS ha sido empleado para referirse a una plataforma que interactúa con el usuario a través del navegador web y no depende del sistema operativo. Tales predicciones datan desde mediados de los 90, cuando Marc Andreessen predijo que Microsoft Windows estaba destinado a ser un "pobre conjunto de drivers ejecutándose en Netscape Navigator.". Recientemente, esta tecnología ha suscitado un importante interés gracias a que Google está produciendo una nueva plataforma.
A pesar de la terminología empleada, es necesario destacar que WebOS no resulta consistente con la definición de sistema operativo.

Ahora, procederemos a analizar sus principales ventajas e inconvenientes.
Entre las ventajas podemos destacar:
  • Comodidad: Puedes tener tu escritorio personal en cualquier PC, puesto que funciona con su simple navegador.
  • Actualización: manténgase siempre actualizado, puesto que no requiere de mantenimiento de actuliazacion, siempre estará al día.
  • Otros: No requiere de un PC potente para desarrollar las aplicaciones.
Sin embargo, sus principales inconvenientes son:
  • Seguridad: debido a que su transporte es internet, eso conlleva una inseguridad de que cualquier hacker pueda acceder a tus datos, aunque la seguridad y la protección de datos es alta.
  • Conexión: para poder acceder necesita una conexión de banda ancha a fin de realizar las tareas con total comodidad.

EyeOS

EyeOS es un escritorio virtual multiplataforma, libre y gratuito, basado sobre el estilo del escritorio de un sistema operativo. El paquete básico de aplicaciones que vienen por defecto, incluye toda la estructura de un sistema operativo y algunas aplicaciones de tipo suite ofimática como un procesador de textos, un calendario, un gestor de archivos, un chat, un navegador, una calculadora y más. El paquete íntegro está autorizado bajo la licencia libre AGPL. Existe un sitio paralelo que proporciona aplicaciones externas para eyeOS, llamadas eyeApps.
Se trata de un nuevo concepto en almacenaje virtual, el cual se considera como revolucionario al ser un servicio clave para el Web 2.0 ya que dentro de una web que combina el poder del actual HTML, PHP, AJAX y JavaScript para crear un entorno gráfico de tipo escritorio.
La diferencia entre otros entornos escritorio al hacer posible iniciar el escritorio eyeOS y todas sus aplicaciones desde un navegador web. No se requiere instalar ningún software adicional, ya que solo se necesita un navegador que soporte AJAX, Java y Adobe Flash (dependiendo de las aplicaciones que se deseen ejecutar).


 YouOS

YouOs es una aplicación web escrita en lenguaje JavaScript que simula un sistema operativo. Funciona en casi cualquier navegador y permite realizar tareas como editar texto, leer correo, jugar, chatear, subir y administrar archivos, entre otras.
El entorno de trabajo que maneja YouOS es similar al de los sistemas Linux, Mac OS y Windows. Cuenta con un escritorio, una barra de tareas y un menú Inicio. Cada vez que se abre una aplicación, ya sea dando doble clic en un icono del escritorio, o seleccionando una opción el el menú Inicio, se abre una ventana con una barra de título, 3 botones de control (Minimizar ventana, Ajustar tamaño de ventana y Cerrar ventana), área de trabajo, marco y barras de desplazamiento. Las ventanas se pueden encoger, estirar, mover y colocar una tras otra.


DesktopTwo

Desktoptwo es un sistema operativo web. Desde su escritorio (como cualquier otro sistema operativo) puedes iniciar aplicaciones como agenda, buscador, reproductor de MP3, editor de páginas web, lector de RSS, mensajería instantánea (GTalk, MSN), lector de emails, etc. Y además ofrece 1GB de almacenamiento. Pero todo eso seguramente irá aumentando: más espacio de almacenamiento, más programas, más integración y mas rápidez de procesamiento. Todo el sistema está desarrollado con Adobe Flash.


Comparativa servicios de calendario on-line

Google Calendar

Es una agenda y calendario electrónico desarrollado por Google. Permite sincronizarlo con los contactos de Gmail de manera que podamos invitarlos y compartir eventos. Está disponible desde el 13 de abril de 2006 . Aunque los usuarios no están obligados a tener una cuenta de Gmail, sí deben disponer de un Google Account para poder usar el software.
Esta agenda on-line de Google se encuentra organizada por calendarios, de forma que puedes definir uno para el trabajo y otro para casa y ver las citas de ambos sobre la misma pantalla pero con distintos colores.

Los calendarios se pueden compartir para que otros usuarios vean (parte de) tus citas, invitaciones, etc. Es factible configurar el e-mail y el móvil para recibir avisos por correo y SMS; y, si proporcionamos nuestra localidad a la herramienta, nos informa de la previsión del tiempo. Para la función de contactos recurre a Gmail.

Anywr

Es una de las herramientas finalistas del concurso Startup 2.0 y que puede ser interesante para muchos usuarios. Sus funciones se centran en unificar todos nuestros contactos en un sólo lugar.

Estamos ante una libreta de direcciones y calendario on-line que tiene la particularidad de sincronizar los datos con el teléfono móvil, siempre que sea de una de las marcas y modelos con los que es compatible, que son muchos .Se puede utilizar como copia de seguridad del contenido del teléfono y, además, al sincronizarlo, conseguiremos que sea nuestro móvil el que nos avise de los eventos del calendario. Éste admite más o menos las mismas opciones que el de Google.

Agenda Yahoo!

Es un servicio gratuito que le permite crear una agenda en la que añadir, modificar y acceder a los eventos. Además, es muy compacto y fácil de usar. Su principal limitación es que sólo tiene un calendario, mientras que los demás permiten definir más de uno (para apuntar citas de trabajo, ocio, etc.), visualizarlos todos al tiempo en distintos colores y compartirlos.

Zyb

Es un sistema de backups de nuestra agenda de contactos y calendarios de nuestro teléfono móvil por el cual podemos realizar backups manuales desde nuestro teléfono, permitiendo la sincronización con el servicio Zyb, que nos permitirá alojar y manejar nuestra lista de contactos y nuestro calendario.

Este producto del que os hablamos ahora, parte de la misma idea que su competidor Anywr en cuanto al hecho de que permite sincronizar el móvil, manejar varios calendarios y gestionar una lista de contactos.

La tecnología para llevarlo a cabo es la misma que la de éste, por lo que ambas webs admiten los mismos modelos de teléfono. Adicionalmente, permite subir fotografías a Internet desde el PC o directamente desde el móvil, enviando un MMS a un número de teléfono asociado a la cuenta del usuario. Como en toda red social, las fotos, citas y contactos se pueden compartir. 


Google Calendar: el servicio de calendario de Google


Para poder trabajar con los servicios de Google, lo primero que hay que hacer es crearse una cuenta gratuita en Google (Google Acount). Si ya somos usuario registrados de Gmail y poseemos una cuenta de correo, podemos utilizar la herramienta Google Calendar.

Se trata del servicio de agenda y calendario que nos ofrece Google. Permite compartir y sincronizar eventos con nuestros contactos de Gmail. Al tratarse de una agenda on-line, podemos acceder desde cualquier sitio y, además, mantener los datos a salvo de posibles averías de nuestro ordenador.

Entre sus características principales, merecen destacarse:
  • Permite importar archivos de Outlook, Yahoo! Calendar, e iCalendar.
  • Permite usar múltiples calendarios.
  • Podemos compartir calendarios con diferentes contactos y niveles de permisos, incluidos nuestros grupos.
  • Permite importar calendarios públicos, de interés general.

Crear y compartir un calendario nuevo
 
1. Para crear un nuevo calendario, seleccionaremos  Crear en el menú. Se mostrará una ventana de configuración en la que debemos indicar los datos del calendario y las personas con quienes queramos compartirlo.

2. A continuación, especificamos los datos generales. En la parte superior de la ventana, indicaremos el nombre del calendario, la descripción, la ubicación y su zona horaria.

3. En la parte inferior de la ventana se muestran las opciones de privacidad, así como las que permiten compartir el calendario o no.



Crear un nuevo evento

La manera más sencilla consiste en hacer clic sobre el día o la hora donde desees agregarlo. En este caso, aparecerá una pequeña ventana de diálogo donde deberás introducir el nombre del evento. A continuación, haz clic en Crear evento.

Se pueden añadir algunos detalles, mediante la opción Editar detalles del Evento. Una vez creado el evento, puedes suprimirlo pinchando en él y seleccionando la opción Suprimir o bien editar los detalles.

 

Comparativa servicios de correo electrónico en internet

Hoy en día los internautas usamos varias cuentas de correo electrónico tanto para nuestro uso personal como para nuestro uso profesional. Como todo en la vida, cada proveedor tiene sus pros y sus contras.
Hemos realizado una comparación entre los 3 principales proveedores que solemos usar a la hora de manejar nuestros e-mails, tanto personales como corporativos, y hemos tomado como base de referencia los 3 servicios más populares: Gmail, Windows Live Hotmail y Yahoo Mail.
En la tabla comparativa de la imagen podemos observar que los 3 servicios ofrecen características muy similares, aunque Yahoo Mail es el único proveedor que ofrece espacio de almacenamiento ilimitado gratuito. Gmail ofrece ya 75 Gbytes y Windows Live Hotmail entre 5 a 25 gigas.

GMail Yahoo!Hotmail
Cantidad de Usuarios 151 millones de usuarios 250 millones de usuarios 157 millones de usuarios
Espacio ofrecido 75Gb y en aumento Ilimitado Varía según país entre 5Gb y 25Gb
Tamaño máximo de archivos adjuntos 25Mb 25Mb 10Mb
Pop Si No Solo con Outlook
Etiquetas Si Si Si
Filtros Si Si Si
Chat incorporado Si Si Si
Lista de tareas Si Si, con Yahoo Calendar No
Mails prioritarios Si No No
Mails destacados (o marcado) Si SI Si
Re-enviar mails a otra cuenta directamente Si Si Si
Calendario Si Si Si
Corrector de ortografía Si Si No
Insertar imagenes Si Si Si
Enviar mensaje como otra cuenta de correo electrónico Si Si Si
Respuestas prediseñadas Si Si No
Asignar contactos a un gupo Si Si Si
Establecer firma Si Si Si
Deshacer el envío de un mail Si No No
Enviar respuestas automáticas Si Si Si


Por otra parte Gmail es el único servicio de correo electrónico cuya cuenta no caduca después de un cierto tiempo de inactividad. Windows Live Hotmail caduca a los 270 días y Yahoo Mail 120 días, un tiempo que no está mal pero que obviamente obliga a los más despistados a tenerse que andar con ojo si disponen de alguna cuenta que no usen mucho y no quieran perder.
El trío coincide en ofrecer escaneador de virus, las mismas opciones de acceso, ads y límite de mensajes. Muchos usuarios, por otro lado, se inclinan por un proveedor u otro dependiendo de la interfaz y de las características extras que ofrezcan. En el caso de Gmail tenemos el Labs donde aparecen una gran cantidad de funciones extra que nos pueden servir a la hora de manejar nuestro correo. Windows Live Hotmail ofrece una bonita interfaz personalizable con el añadido de poder crear un perfil o un espacio a modo de red social.

Creación de una cuenta en Gmail y acceso al correo mediante Google Gadgets

Crear una cuenta de correo en Gmail

Para empezar crearemos una cuenta de correo en Gmail (servicio de correo electrónico de Google).

1. Nos dirigiremos a http://www.gmail.com e indicaremos que deseamos crear una cuenta


2. Rellenaremos el formulario de registro con los datos. Se pedirán diversos datos personales, así como un nombre de usuario y una contraseña. Primero, completaremos la información personal: nombre y apellidos, así como el nombre de usuario deseado (puede ser que debamos cambiarlo hasta que encontremos uno disponible).


3. A continuación, completaremos la información referente a la contraseña: la escribiremos y verificaremos.


4. También tendremos que seleccionar una pregunta de seguridad a la que deberemos responder en el caso de que olvidemos la contraseña.


5. Verificaremos la palabra captcha. Tendremos que escribir la palabra que se muestra distorsionada.


6. Aceptación de las condiciones del servicio y creación de la cuenta. Finalmente, leeremos y aceptaremos las condiciones del servicio Gmail y crearemos la cuenta.


Una vez ya registrados, podremos comenzar a utilizar la cuenta.

Google Gadgets

Los Google Gadgets nos permiten acceder a nuestras aplicaciones on-line de otra manera. Se trata de pequeñas aplicaciones de escritorio con las que abrir el correo, consultar el calendario, escribir en un bloc de notas o leer las previsiones meteorológicas, por ejemplo.

Se colocan en cualquier lugar del escritorio o en una barra lateral que puede esconderse o configurarse para que siempre esté visible. Basta con tener la aplicación Google Desktop que incluye además una herramienta que permite búsquedas en nuestro equipo con la tecnología de Google. Solamente hay que ir a http://desktop.google.com/ y descargarla.

Estándares HTML5 y DOM2


HTML5

HTML5 (HyperText Markup Language, versión 5) es la quinta revisión importante del lenguaje básico de la World Wide Web, HTML. HTML5 especifica dos variantes de sintaxis para HTML: un «clásico» HTML (text/html), la variante conocida como HTML5 y una variante XHTML conocida como sintaxis XHTML5 que deberá ser servida como XML (XHTML) (application/xhtml+xml). Esta es la primera vez que HTML y XHTML se han desarrollado en paralelo.
Todavía se encuentra en modo experimental, lo cual indica la misma W3C; aunque ya es usado por múltiples desarrolladores web por sus avances, mejoras y ventajas.
Al no ser reconocido en viejas versiones de navegadores por sus nuevas etiquetas, se le recomienda al usuario común actualizar a la versión más actual, para poder disfrutar de todo el potencial que trae HTML5.
El desarrollo de este código es regulado por el Consorcio W3C

Nuevos elementos

HTML5 establece una serie de nuevos elementos y atributos que reflejan el uso típico de los sitios web modernos. Algunos de ellos son técnicamente similares a las etiquetas <div> y <span>, pero tienen un significado semántico, como por ejemplo <nav> (bloque de navegación del sitio web) y <footer>. Otros elementos proporcionan nuevas funcionalidades a través de una interfaz estandarizada, como los elementos <audio> y <video>.
Mejoras en el elemento <canvas>, capaz de renderizar en algunos navegadores elementos 3D.
Algunos elementos de HTML 4.01 han quedado obsoletos, incluyendo elementos puramente de presentación, como <font> y <center>, cuyos efectos son manejados por el
CSS. También hay un renovado énfasis en la importancia del scripting DOM para el comportamiento de la web.

Novedades

  • Incorpora etiquetas (canvas 2D y 3D, audio, video) con codecs para mostrar los contenidos multimedia. Actualmente hay una lucha entre imponer codecs libres (WebM + VP8) o privativos (H.264/MPEG-4 AVC).
  • Etiquetas para manejar grandes conjuntos de datos: Datagrid, Details, Menu y Command. Permiten generar tablas dinámicas que pueden filtrar, ordenar y ocultar contenido en cliente.
  • Mejoras en los formularios. Nuevos tipos de datos (eMail, number, url, datetime …) y facilidades para validar el contenido sin Javascript.
  • Visores: MathML (fórmulas matemáticas) y SVG (gráficos vectoriales). En general se deja abierto a poder interpretar otros lenguajes XML.
  • Drag & Drop. Nueva funcionalidad para arrastrar objetos como imágenes.
  •  
DOM2

El Document Object Model o DOM ('Modelo de Objetos del Documento' o 'Modelo en Objetos para la representación de Documentos') es esencialmente una interfaz de programación de aplicaciones (API) que proporciona un conjunto estándar de objetos para representar documentos HTML y XML, un modelo estándar sobre cómo pueden combinarse dichos objetos, y una interfaz estándar para acceder a ellos y manipularlos. A través del DOM, los programas pueden acceder y modificar el contenido, estructura y estilo de los documentos HTML y XML, que es para lo que se diseñó principalmente.
El responsable del DOM es el World Wide Web Consortium (W3C).
En efecto, el DOM es una interfaz de programación de aplicaciones para acceder, añadir y cambiar dinámicamente contenido estructurado en documentos con lenguajes como ECMAScript (JavaScript).

Desarrollo del DOM

La primera vez que el DOM se utilizó, fue con el navegador Netscape Navigator en su versión 2.0. Este DOM se conoce también como «modelo básico», o «DOM nivel 0». Internet Explorer 3.0 fue el primer navegador de Microsoft que utilizó este nivel. Netscape 3.0 empezó a utilizar rollovers. Microsoft empezó a usar rollovers en Internet Explorer 4.0. Netscape 4.0 agregó la capacidad de detectar eventos ocurridos en el ratón y el teclado. Una característica de este navegador fue el uso de capas. Sin embargo, esta capacidad se ha eliminado en los navegadores creados posteriormente.
En Internet Explorer 4.0 todos los elementos de una página web se empezaron a considerar objetos computacionales con la capacidad de ser modificados. Debido a las diferencias en estos navegadores, el World Wide Web Consortium emitió una especificación denominada «DOM nivel 1» en el mes de octubre de 1998 en la cual se consideraron las características y manipulación de todos los elementos existentes en los archivos HTML y XML. En noviembre del año 2000 se emitió la especificación del «DOM nivel 2». En esta especificación se incluyó la manipulación de eventos en el navegador, la capacidad de interacción con CSS, y la manipulación de partes del texto en las páginas de la web. «DOM nivel 3» se emitió en abril de 2004; utiliza la definición de tipo de documento (DTD) y la validación de documentos.

Problemas de compatibilidad

La guerra entre navegadores que existió entre el Netscape Navigator y el Internet Explorer de Microsoft y otras compañías sigue creando graves problemas para los programadores de páginas web, ya que, aunque todos los navegadores utilizan Javascript como uno de los lenguajes de programación, los objetos no se comportan de la misma forma, lo que obliga con frecuencia a programar las páginas en más de una versión, una para el Netscape, o Mozilla Firefox, otra para Internet Explorer, otra para Safari, Opera, etc; en suma, no todas las versiones de un mismo navegador se comportan igual.
El World Wide Web Consortium (W3C), el consorcio encargado de definir los estándares de la web, decidió crear un modelo de objetos único, el DOM, para que todos los fabricantes pudieran adoptarlo, facilitando la compatibilidad plena entre ellos.
No obstante, Microsoft ha añadido su propia extensión al DOM, creando problemas de interoperabilidad para los navegadores web.
Como el navegador de Microsoft, Internet Explorer, hasta el año 2002 fue el navegador web más empleado, esto llevó a un problema real a los desarrolladores de navegadores más comprometidos con los estándares, como Mozilla. Si adoptan las extensiones de Microsoft al DOM, se arriesgan a perder credibilidad en sus llamadas a que los sitios web respeten el estándar, y si no lo hacen, se arriesgan a alinear a sus usuarios por la pérdida de compatibilidad con casi todos los sitios web que utilizan las extensiones de Microsoft. Los críticos han observado esta actitud como otro caso de aplicación de la táctica de Microsoft de «adoptar, extender y extinguir». Esto puede ser considerado irónico, debido a que tanto Microsoft como Netscape fueron responsables de proporcionar extensiones no estándares en la «carrera armamentística» por el control del estándar, y Mozilla surgió como una iniciativa de Netscape.
La opinión general parece indicar que esto cambiará sólo si nuevos navegadores que respeten los estándares ganan una cuota de mercado significativa en la Web, de forma que el uso de extensiones no estándares se convierta en un problema comercial para los autores de los sitios web que las usen. Esto ya está pasando con Mozilla Firefox, el cual desde hace varios años, viene incrementando su utilización en PC junto a la novedad de Google Chrome.

Mis 5 extensiones favoritas de Firefox


Como ya conocemos, todas estas extensiones se pueden agregar e instalar a nuestro navegador desde el Administrador de complementos, al que se accede a través de Herramientas y Complementos de la barra de Menús de Firefox o desde la web https://addons.mozilla.org/es-ES/firefox/extensions/

FoxyProxy Standard 3.2                      


FoxyProxy es una herramienta de administración de proxies avanzada, que reemplaza totalmente la limitada funcionalidad de proxies nativa de Firefox. Ofrece mas funciones que SwitchProxy, ProxyButton, QuickProxy, xyzproxy, ProxyTex, TorButton, etc.

Fire.fm 1.4.14                      
 
Fire.fm te da acceso a la extensa librería musical de Last.fm. Last.fm provee radio gratis a USA, Inglaterra y Alemania, y servicio de suscripción en el resto del mundo. Escucha to música favorita y descubre nuevos artistas y música en el proceso.

FlashGot 1.3.3                      
  
Descarga un enlace, los enlaces seleccionados o todos los enlaces de una página juntos a la máxima velocidad con un solo clic, usando los administradores de descargas externos más populares, ligeros y fiables.

WOT 20110704                      


Web of Trust le mantiene seguro mientras navega y compra en Internet. Los símbolos con código de color de WOT le ayudan a evitar timos en línea, robo de identidad, sitios de compra no fiables y amenazas de seguridad antes de que haga clic.

ImTranslator - Traductor 4.6                      


ImTranslator proporciona el acceso más conveniente a la traducción en línea para más de 50 idiomas. ImTranslator incluye traductor en línea, diccionario, texto a voz, teclado virtual, corrector ortográfico decodificador ruso, traducción inversa.

sábado, 22 de octubre de 2011

Los motores de renderizado de los navegadores web

¿Nunca te has preguntado porque los diferentes navegadores visualizan las mismas páginas de diferente manera?, esto es debido a los motores de renderizado.
¿Entoces que es un motor de renderizado?, pues es la parte de un navegador que toma el contenido marcado, (como XML o HTML), lo interpreta de manera visual y lo presenta visualmente a los usuarios. Todos los navegadores web incluyen algún motor de renderizado.
El termino motor de renderizado, (layout engine o rendering engine en inglés), se hizo popular cuanto Mozilla, desarrolló el suyo de manera libre y diferenciado del propio navegador, siendo posible de esta manera reutilizarlo para otros navegadores. Ahora veremos algunos de los motores más importantes.

Gecko

Gecko es un motor multiplataforma y libre originalmente desarrollado por Netscape. Actualmente su desarrollo es gestionado por la Fundación Mozilla.
Solía ser criticado por su enorme complejidad y uso de memoria. La mayor parte de estas debilidades se subsanaron en Firefox 3 con el nuevo motor Gecko 1.9 Con este motor se logró disminuir drásticamente el uso de memoria, incluso superando a Safari y Opera. Estos cambios permitieron a Gecko pasar el test Acid2 y soportar algunos elementos de CSS 3 (ya implementados en WebKit). Con la llegada de Firefox 3.1, se implementó Gecko 1.9.1 que incluía TraceMonkey, el nuevo intérprete JavaScript. Las futuras mejoras, harán que Gecko siga siendo una opción muy sólida frente a WebKit.

KHTML/WebCore

KHTML es el motor de renderizado HTML de código libre desarrollado para el navegador web de KDE: Konqueror. En el 2003 fue adoptado por Apple para su navegador Safari. KHTML se encuentra liberado bajo la licencia LGPL.

WebKit

WebKit es un motor de render HTML de código abierto, desarrollado por Apple sobre la base del código KHTML, para Konqueror. Se trata de un motor sumamente liviano, reconocido por tener un código compacto, simple, claro y riguroso por su respeto a los estándares HTML, además usar poca memoria para su funcionamiento.
Desde que Google Chrome también lo adaptó, WebKit está ganando popularidad a pasos agigantados. Y es justamente esta creciente popularidad la que, para algunos, comienza a poner en duda la relevancia de Mozilla Gecko como motor HTML.

Trident (también conocido como MSHTML)

El Motor de renderizado Trident de Microsoft es considerado por la mayoría de desarrolladores como el cáncer de Internet. Es el motor menos compatible con los estándares, lo que durante mucho tiempo ha supuesto que un gran número de páginas web no estén diseñadas para ser compatibles con los estándares, sino para ser compatibles con Explorer.
La versión 4.0 de Trident, que acompaña a Internet Explorer 8, fue la primera versión en pasar el test Acid2 ,(casi 5 años después que Safari), cuando todos los demás motores pasan sin problemas el test Acid3 .
Entonces la pregunta del millón es, si es tan malo, ¿por qué se empecina Microsoft en seguir desarrollándolo? . Lo más lógico es que no hayan querido romper con todas las webs diseñadas para su navegador, por aquello de no dejar en la estacada a sus clientes más fieles.

Presto

Es el motor de código cerrado desarrollado por Opera Software para el navegador Opera. Fue introducido en la versión 7.0 de este navegador reemplazando al motor Elektra que se usó para las versiones 4, 5 y 6 de este navegador.
La versión 2.2 de Presto fue el primer motor en lograr pasar las pruebas Acid3 Test al 100%. Esto hace que Opera sea probablemente en el navegador con mejor soporte para los estándares web.

Comparativa principales navegadores web


Hemos decidido hacer una comparativa entre las últimas versiones: veremos cuál se inicia más rápido, qué navegadores consumen más memoria, cuáles son los mejores interpretando JavaScript y cuáles soportan mejor los estándares.
Todas las pruebas se han hecho en un sistema Windows 7 de 32 bits recién instalado en una máquina virtual y con las últimas versiones de los navegadores: Internet Explorer 9.0.8, Firefox 7.0.1, Safari 5.1, Opera 11.51  y Google Chrome 14.0.8.
En cuanto a los tests usados, hemos tratado de tener más en cuenta aspectos que importan al usuario (tiempo de arranque, de carga de páginas, consumo) que tests de rendimiento que no nos dicen tanto, aunque en el análisis hay de los dos.

Velocidad de inicio: Opera, el más rápido

En el primer test he medido la velocidad de inicio de los navegadores. Para evitar cualquier error humano he usado un pequeño programa en Visual Basic que llamaba al navegador para que cargase una página en local. Se registran los tiempos (en milisegundos) de la llamada (a través del programa) y de la carga del navegador (con un script Javascript en la página). Restándolos obtenemos el tiempo de inicio.
Hemos medido tampo el tiempo de un inicio en frío (recién iniciada la sesión) como en caliente (cuando ya hemos abierto antes en la sesión el navegador).
En caliente, el navegador más rápido de todos es Opera, casi instantáneo con 803 ms. De cerca Internet Explorer con poco más de un segundo. Ninguno de ellos supera 1.5 segundos de media en el inicio, por lo que podemos decir que prácticamente no notaremos diferencia entre ellos al iniciar en caliente.
Ahora vamos con el inicio en frío. Esta es la parte que más suele afectarnos por dos causas: primero porque muchos abrimos el navegador una única vez y no lo volvemos a cerrar, y segundo, porque es cuando más tiempo tarda en iniciar el navegador. Aquí las distancias se notan más. Opera vuelve a ganar con 3.7 segundos de inicio, seguido de Safari (4.2) y Chrome (4.5). Más lejos encontramos a Firefox, con 6 segundos, y a Internet Explorer con 7.8.
Resumiendo: Opera es, según nuestros tests, el navegador más rápido del momento. Chrome y Safari también tienen muy buenos resultados, Firefox se aleja un poco más y, aunque Internet Explorer tiene un tiempo en caliente muy bueno (1 segundo) es el que más
tarda en frío, lo que le quita bastantes puntos.

Consumo de recursos: RAM y CPU

El siguiente test es de consumo de recursos. Para ello hemos abierto el navegador con cinco pestañas: un vídeo de YouTube en HD, Twitter, Genbeta, El País y Google; y hemos medido el consumo de RAM y de CPU medio (en caso de navegadores multiproceso el resultado es la suma de todos los subprocesos).
En CPU, los que menos consumen son IE y Chrome, con sólo un 20% de uso de procesador. Firefox y Opera están a la par en el 50% y Safari es el que peor rinde, con un 60%. En RAM, Firefox es el que menos consume (235 MB) y Chrome el más disparado, con 320 MB. Podríamos decir que, globalmente, Opera es el que más consume e Internet Explorer el que menos.
En este test, aunque Firefox no es un navegador multiproceso sí que separa el proceso del navegador del del plugin (plugin-container.exe), en este caso Flash. Los resultados que aparecen son la suma de ambos procesos.

Velocidad de carga o renderización: Chrome, el más rápido

Otro aspecto que hemos evaluado de los navegadores es el tiempo que tardan en cargar una página. Para medirlo hemos guardado en local una página web y hemos añadido un script que obtenía los tiempos al inicio y al final de la página. Restándolos y haciendo la media de varias mediciones obtuvimos que las diferencias son de milisegundos porque elegimos una página simple, aunque en sitios más complejos seguramente se amplifiquen. En este caso, Chrome es el ganador con 70 ms de carga, y Safari  el que peor rinde con 149 milisegundos.

Aceleración por hardware, Firefox es el mejor

También hemos evaluado cómo se comportan los navegadores ante una carga gráfica pesada. Como no he encontrado tests independientes, he usado dos, uno de Mozilla y otro de Microsoft. En ambos he medido el número de FPS (Frames por Segundo) máximos. En el caso del test de Mozilla sólo llegaba hasta 60 FPS.
Juntando resultados de ambos tests, Firefox es el que mejor soporta la carga gráfica. El que peor, Safari con unos miserables 2 y 3 FPS ya que no soporta la aceleración por GPU.

Tests SunSpider de JavaScript: Safari y Firefox salen mal parados

Vamos ahora con los tests de JavaScript. Usamos un test (relativamente) independiente, el de SunSpider, con unos resultados bastante igualados.
Chrome, Internet Explorer y Opera, por este orden, son los que mejor rinden diferenciándose en apenas 10 milisegundos. Safari y Firefox no salen demasiado bien parados, siendo Firefox el que peor rinde.

Respeto de estándares: Aprobado general

Para los test de estándares hemos usado la página HTML5Test.com, que nos da una puntuación según las características de HTML5 que soporte el navegador, y el archiconocido test Acid3.
En el Acid3 todos sacan matrícula (100/100), excepto Internet Explorer y Firefox que sólo llegan al sobresaliente con 95 y 97 puntos respectivamente. En el apartado de HTML5 no van tan bien (hay que tener en cuenta que todavía no es un estándar totalmente definido): Chrome es el que mejor soporta HTML5 con 293 puntos de 400, seguido por Firefox (240), Opera (234) y Safari (228). Internet Explorer suspende con sólo 130 puntos.

Conclusiones: no hay un claro ganador

No sabemos si a vosotros, pero  nos resulta muy difícil decir quién es el ganador. Todos tienen sus puntos fuertes y sus puntos flacos, y en general todos han rendido muy bien.
Si tuviésemos que decir cuál es el más rápido, yo diríamos que 2: Opera y Chrome, ambos muy ajustados y siempre en el primer o segundo puesto en los tests de velocidad. En cuanto a uso de recursos, Internet Explorer  y Firefox son los que mejor aprovechan los recursos del ordenador, con las mayores puntuaciones en aceleración gráfica y en menor consumo de RAM y CPU.
En el apartado estándares, Chrome es el más cosas soporta de HTML5, seguramente gracias al ciclo rápido de desarrollo que le permite probar e incluir estos nuevos elementos más rápidamente. De todas formas, de este apartado me quedo con las puntuaciones del Acid3, un test en el que por fin todos los navegadores tienen una puntuación excelente.
Globalmente, se comprueba que Safari es el que peores resultados ha obtenido, sin pasar de la mitad de la tabla en casi ningún test. Seguramente sea porque hemos estado probando en Windows y no en un Mac. Aun así, los resultados son demasiado bajos.
Como conclusión final, resaltaremos el buen trabajo de todos los navegadores. Los resultados son muy buenos, y en la mayoría de los casos las diferencias son mínimas, inapreciables para el usuario final. También hay que destacar la gran mejora de Internet Explorer y Firefox con respecto a versiones anteriores, aunque todavía les quedan aspectos donde mejorar (más a IE que a Firefox).
Y vosotros, ¿qué conclusiones sacáis de estos resultados?

AJAX

Ajax, acrónimo de Asynchronous JavaScript And XML (JavaScript asíncrono y XML), es una técnica de desarrollo web para crear aplicaciones interactivas o RIA (Rich Internet Applications). Estas aplicaciones se ejecutan en el cliente, es decir, en el navegador de los usuarios mientras se mantiene la comunicación asíncrona con el servidor en segundo plano. De esta forma es posible realizar cambios sobre las páginas sin necesidad de recargarlas, lo que significa aumentar la interactividad, velocidad y usabilidad en las aplicaciones.
Ajax es una tecnología asíncrona, en el sentido de que los datos adicionales se requieren al servidor y se cargan en segundo plano sin interferir con la visualización ni el comportamiento de la página. JavaScript es el lenguaje interpretado (scripting language) en el que normalmente se efectúan las funciones de llamada de Ajax mientras que el acceso a los datos se realiza mediante XMLHttpRequest, objeto disponible en los navegadores actuales. En cualquier caso, no es necesario que el contenido asíncrono esté formateado en XML.
Ajax es una técnica válida para múltiples plataformas y utilizable en muchos sistemas operativos y navegadores dado que está basado en estándares abiertos como JavaScript y Document Object Model (DOM).

Tecnologías incluidas en Ajax

Ajax es una combinación de cuatro tecnologías ya existentes:
  • XHTML (o HTML) y hojas de estilos en cascada (CSS) para el diseño que acompaña a la información.
  • Document Object Model (DOM) accedido con un lenguaje de scripting por parte del usuario, especialmente implementaciones ECMAScript como JavaScript y JScript, para mostrar e interactuar dinámicamente con la información presentada.
  • El objeto XMLHttpRequest para intercambiar datos de forma asíncrona con el servidor web. En algunos frameworks y en algunas situaciones concretas, se usa un objeto iframe en lugar del XMLHttpRequest para realizar dichos intercambios.
  • XML es el formato usado generalmente para la transferencia de datos solicitados al servidor, aunque cualquier formato puede funcionar, incluyendo HTML preformateado, texto plano, JSON y hasta EBML.
Como el DHTML, LAMP o SPA, Ajax no constituye una tecnología en sí, sino que es un término que engloba a un grupo de éstas que trabajan conjuntamente.

Problemas e Inconvenientes

  • Las páginas con AJAX son más difíciles de desarrollar que las páginas estáticas.
  • Las páginas creadas dinámicamente mediante peticiones sucesivas AJAX, no son registradas de forma automática en el historial del navegador, así que haciendo clic en el botón de "volver" del navegador, el usuario no será devuelto a un estado anterior de la página, en cambio puede volver a la última página que visitó. Soluciones incluyen el uso de IFrames invisible para desencadenar cambios en el historial del navegador y el cambio de la porción de anclaje de la dirección (después de un #).
  • Los motores de búsquedas no entienden JavaScript. La información en la página dinámica no se almacena en los registros del buscador.
  • Hay problemas usando Ajax entre nombres de dominios. Eso es una función de seguridad.
  • El sitio con Ajax usa más recursos en el servidor. Recomendación: sólo usar las peticiones necesarias en Ajax, no desarrollar todo el sitio en AJAX. Con esto garantizamos menos recursos del servidor.
  • Es posible que páginas con Ajax no puedan funcionar en teléfonos móviles, PDA u otros aparatos. Ajax no es compatible con todos los software para ciegos u otras discapacidades.

Navegadores que permiten Ajax

Ha de tenerse en cuenta que ésta es una lista general, y el soporte de las aplicaciones Ajax dependerá de las características que el navegador permita.
  • Navegadores basados en Gecko como Mozilla, Mozilla Firefox, SeaMonkey, Camino, K-Meleon, IceWeasel, Flock, Epiphany, Galeon y Netscape versión 7.1 y superiores
  • Navegadores basados en WebKit como Google Chrome de Google o Safari de Apple.
  • Microsoft Internet Explorer para Windows versión 5.0 y superiores, y los navegadores basados en él
  • Navegadores con el API KHTML versión 3.2 y superiores implementado, incluyendo Konqueror versión 3.2 y superiores y el Web Browser for S60 de Nokia tercera generación y posteriores
  • Opera versión 8.0 y superiores, incluyendo Opera Mobile Browser versión 8.0 y superiores

 


      jueves, 20 de octubre de 2011

      Glosario de términos (I)

      1. ASP.  Lenguaje de programación, desarrollado por Microsoft y orientado a la creación de páginas web dinámicas.
      2. CGI. Tecnología web que permite ejecutar aplicaciones en el servidor.
      3. HTML.  Lenguaje de marcas para la creación de páginas web.
      4. Java.  Tecnología de aplicaciones web de Sun Microsystem.
      5. PHP.  Lenguaje de programación orientado a la creación de páginas web dinámicas.
      6. XHTML. Lenguaje de marcas basado en XML, ideado para sustituir a HTML.
      7. CSS.  Documentos que definen la presentación de un documento HTML o XML.
      8. HTTP.  Protocolo de transferencia de hipertexto, mediante el cual se transmiten las páginas web.
      9. Javascript. Lenguaje de programación de scripts, orientado a objetos, utilizado para acceder a ellos en aplicaciones web.
      10. El motor de renderizado. Es la parte del navegador que se encarga de la representación visual de las páginas web. En función del motor que usemos, las páginas pueden aparecer con ligeras diferencias.
      11. JSP. Tecnología Java que permite la creación de páginas web dinámicas.
      12. Servlets. En la arquitectura web de Java, se trata de objetos que se ejecutan en el servidor, extendiendo su funcionalidad.
      13. DOM. Interfaz de programación de aplicaciones que permite acceder y modificar el contenido de una página web a través de un conjunto de objetos.
      14. ECMAScript. Especificación de un lenguaje de programación basado en JavaScript y Jscript.
      15. PNG. Formato de gráficos portátiles que surge como sustituto del formato gif.
      16. URL. Localizador Uniforme de Recursos. Cadena de caracteres utilizada para identificar un recurso en Internet.
      17. XML. Metalenguaje extensible de etiquetas que se propone como estándar para el intercambio y la organización de información estructurada en la web.
      18. ECMAScript. Especificación de un lenguaje de programación basado en JavaScript y Jscript.
      19. Metapaquete. Conjunto de enlaces y dependencias entre paquetes.
      20. SVG. Especificación para describir gráficos vectoriales en 2D.
      21. Captcha. Acrónimo de Comple- tely Automated Public Turing Test to tell Computers and Humans Apart. Se trata de una prueba que permite diferenciar entre humanos y robots, y evitar que estos últimos creen cuentas de correo.
      22. Gtalk (Google Talk). Cliente de mensajería instantánea y Voz sobre IP (VolP) desarrollado por Google, similar a Skype.