Mostrando entradas con la etiqueta chrome. Mostrar todas las entradas
Mostrando entradas con la etiqueta chrome. Mostrar todas las entradas

martes, 22 de diciembre de 2009

Web Sockets: El TCP de la Web

Desde la versión 4.0.249.0 de Google Chrome tenemos disponible los Web Sockets. Los Web Sockets son la siguiente generación en la tecnología de comunicación bidireccional para las aplicaciones web que está siendo estandarizada como parte del documento Web Applications 1.0.

Hasta hace poco, la comunicación para las aplicaciones web era implementada por los desarrolladores usando XMLHttpRequest. La comunicación bidireccional usando esta tecnología, forzaba al programador a crear una complejidad innecesaria en el lado del servidor. Web Sockets nos proporciona una comunicación bidireccional real con el navegador, solucionando este problema ya que, una vez establecida la conexión, podemos enviar datos desde el navegador al servidor llamando al método send(), y recibir datos desde el servidor implementando el evento onmessage.


if ("WebSocket" in window) {
var ws = new WebSocket("ws://example.com/service");
ws.onopen = function() {
// Web Socket is connected.
// You can send data by send()
// method.ws.send("message to send"); ....
};
ws.onmessage = function (evt) {
var received_msg = evt.data;
};
ws.onclose = function() {
// websocket is closed.
};
}
else
{
// the browser doesn't support WebSocket.
}


Como parte de los Web Sockets, también se ha desarrollado un nuevo protocolo "Web Sockets Protocol", que el navegador usará para comunicarse con los servidores.

En el código de ejemplo, verás una URI diferente usada para utilizar el nuevo protocolo.

ws://example.com/service

Y te preguntarás, para qué otro protocolo de comunicación si podemos usar los más que probados TCP o HTTP. Pues sencillo, el protocolo no puede ser TCP porque necesitamos mantener el mismo modelo de seguridad proporcionado en el origen. Tampoco puede ser HTTP porque el tráfico manejado difiere del modelo petición-respuesta de éste. Además, el uso del nuevo protocolo también debería de proporcionar un menor uso del ancho de banda, ya que no es necesario el envío de cabeceras una vez establecida la conexión inicial.

Para poder usar la nueva API, el protocolo, hacer uso de un modelo de programación más sencillo y obtener un tráfico de red más eficiente, necesitamos una nueva implementación del servidor. Google ha desarrollado una extensión para Apache, llamada pywebsocket, que puede ejecutarse como módulo o incluso como servidor.

Desde Google nos piden ayuda para que reportemos cualquier sugerencia, ya que tanto la API como el protocolo siguen en diseño y en discusión en la IETF.

martes, 15 de diciembre de 2009

Herramientas para desarrolladores en Google Chrome

Si te dedicas al desarrollo o explotación de páginas web y aplicaciones online, debes probar las herramientas de desarrollo de Google Chrome. Son el complemento ideal para ayudarte en el diagnóstico y resolución de los problemas de carga, ejecución, presentación, y en general, todas las incidencias que suelen aparecer durante el desarrollo y puesta en producción de tus proyectos en internet.

La plataforma te proporciona un entorno integrado para depurar, optimizar y comprender realmente el comportamiento de tu página web o aplicación online. Las herramientas se han desarrollado parcialmente a través del proyecto de código abierto WebKit, donde éstas mismas herramientas se conocen como Web Inspector.

Si quieres disponer de la última versión de las herramientas de desarrollo, debes instalarte la versión de Google Chrome especial para desarrolladores que puedes encontrar en el canal del desarrollador. En dicho canal, puedes encontrar las tres versiones del navegador disponibles:
  • Estable: Es la versión estándar que utilizan la gran mayoría de los usuarios. Es la más sólida y probada. Dispone de algunas herramientas de desarrollo.
  • Beta: Es la versión que dispone de las últimas actualizaciones estables del producto. Se actualiza con más frecuencia que la estable. Dispone de herramientas avanzadas como la gestión de extensiones.
  • Desarrollo: Es la versión más avanzada, pero también la más inestable. Dispone de todas la herramientas de desarrollo. Aquí se prueban todas las opciones que llegarán a la versión estable después de estar un tiempo en la beta.
En el siguiente conjunto de vídeos, puedes ver algunas de las características de las herramientas disponibles:



Como has podido ver en los vídeos, las herramientas están organizadas alrededor de las tareas que puedes realizar con cada una de ellas, y puedes acceder a cada opción a través de los iconos que se encuentran en la parte superior de la ventana.

Cada icono de la barra de tareas te permite trabajar con un tipo especial de página o bloque de información de una aplicación, así como elementos DOM, recursos, bloques de código javascript, etc. También dispones de opciones de búsqueda dentro del panel para encontrar propiedades o valores entre todos los elementos.

Lo mejor es que empieces a probar todas ellas y nos cuentes tus impresiones sobre la utilidad de las mismas...

jueves, 10 de diciembre de 2009

Disponible Google Chrome (beta) para Mac y Linux


Si eres un usuario de Mac (OS X Intel) o Linux estás de enhorabuena. Google ha lanzado oficialmente la versión beta de su navegador Chrome para estos dos sistemas operativos. Ya puedes disfrutar del navegador más rápido y estable en estas dos plataformas, desde las que únicamente podíamos usarlo, hasta ahora, usando Chromium OS.

Google no se ha olvidado de los usuarios de Windows en este lanzamiento, y para ellos también existe un regalo, ya que el anuncio trae consigo además las esperadas extensiones. Aunque a los usuarios de Mac les tocará esperar de nuevo algo más, ya que el módulo para este sistema operativo está todavía en desarrollo.

Pero, ¿qué son las extensiones?

Cuando en Septiembre de 2008 lanzaron la primera versión de Google Chrome, los ingenieros ya sabían que deberían implementar una manera de personalizar el navegador, que fuera fácil de crear y de mantener, sin perjudicar la velocidad y estabilidad del navegador. Las extensiones vienen para cumplir con esas metas y con una de las solicitudes más reclamadas por la comunidad de internautas.

Si eres usuario de Windows o Linux, ¿a qué esperas para probar y comentarnos qué te parecen la más de 300 extensiones que ya están disponibles?

viernes, 20 de noviembre de 2009

Publicado Google Chrome OS


Tras meses de espera desde que Google anunciara que estaba trabajando en un sistema operativo para la web, llega por fin la presentación oficial de Google Chrome OS como proyecto de código abierto.

Un año antes de la salida como producto final para los usuarios, han decidido publicar el código fuente para que la comunidad de desarrolladores y socios tecnológicos puedan contribuir a su desarrollo, al igual que hicieron con el navegador web.

Vamos a intentar dar respuesta a dos cuestiones sobre el nuevo proyecto de Google: ¿qué tiene de innovador este sistema operativo? y ¿qué nos aporta como usuarios?

La principal novedad y la más importante que hace que este sistema operativo se diferencie del resto de soluciones mayoritarias en el mercado (Windows, Mac y Linux) es el cambio de concepto que desde Google han pensado para su proyecto, concepto que podemos resumirte en la siguiente frase: "todo está en la red".

Esta frase tan sencilla de escribir tiene implicaciones muy importantes en la forma en la que interactuamos actualmente con nuestros dispositivos:
  • Todas las aplicaciones son aplicaciones web y el navegador es el que proporciona la experiencia de uso, es decir, ya no existen las aplicaciones de escritorio convencionales. Esto significa que no tendremos que instalar ni mantener actualizados nuestras aplicaciones nunca más.
  • Como el navegador es el que proporciona el soporte para las aplicaciones, existen grandes beneficios con respecto a la seguridad. Chrome OS no confía en las aplicaciones que ejecutes, por eso, cada aplicación que arranques se encontrará aislada haciendo más difícil a virus y malware infectar la máquina. Así y todo, Chrome OS verifica su código en cada reinicio, para que en el caso de que el sistema haya sido comprometido Chrome OS pueda repararse así mismo.
  • Y cómo podría faltar en un producto de estas características una de las obsesiones de Google: la velocidad. Para conseguirlo, han quitado todos los procesos innecesarios, ejecutan en paralelo todo lo que sea posible con el único objetivo de arrancar el dispositivo y navegar en sólo segundos.
Todavía queda bastante trabajo que hacer y seguro que nos sorprenden con innovaciones impensables. Queda un año y un año en informática es un mundo.

Os dejamos con el vídeo de la presentación que se realizó en California y nos leemos en los comentarios.




lunes, 12 de enero de 2009

Preliminar de Google Chrome 2.0

La versión preliminar (alfa) de Google Chrome ha sido presentada hace una semana con nuevas e interesantes características.

Entre todas las novedades destacan el nuevo motor de Javascript V8 que incrementa la velocidad de ejecución y la estabilidad. También destaca el autocompletado de formularios (algo ya disponible en otros navegadores), un soporte de script que recuerda a la filosofía y funcionalidad de Greasemonkey y como colofón, el desarrollo desde cero de su propia pila de protocolo HTTP.

Resulta muy interesante que Google haya desarrollado su propia librería para la gestión del protocolo de red HTTP (hasta ahora usaban WinHTTP en Windows) ya que abre las puertas a un código común que estará disponible para otras plataformas como Linux y Mac.

También han aprovechado para corregir algunos errores, así como una mejora en los procesos de autenticación y una gestión más eficaz al tratar con servidores que no respetan el protocolo HTTP en sus respuestas. Todas estas mejoras ayudarán a mejorar la velocidad y seguridad en la gestión del protocolo de comunicación (sobre todo en conexiones seguras https) y en los sites que necesiten procesos de autenticación.

Otras características incluyen zoom completo de la página (no solo del texto, también de las imágenes), posibilidad de realizar un autoscroll de la pantalla y una interesante gestión de perfiles.

Con esta característica, se pueden definir perfiles para cada uno de los usuarios y poder gestionar para cada uno de ellos la configuración, historial de navegación, bookmarks, cookies, etc.

Si estás interesado en ir probando la nueva versión, puedes conseguirla a través del Google Chrome Developer Channel. Solo tienes que suscribirte (es gratis) y tener instalada alguna versión previa del navegador.

lunes, 20 de octubre de 2008

Google Chrome mas estable y seguro

Los desarrolladores del nuevo navegador Google Chrome han publicado la última versión para el canal de desarrolladores y beta testers. Google Chrome para testers está ahora en su versión 0.3.154.3. Esta actualización está principalmente centrada en corrección de bugs y actualizaciones de seguridad.

La versión 154.0 contenía algunos cuelgues del browser, incluyendo un cuelgue al arrancarlo en los tablet PC que ejecutan Windows Vista. Se han corregido los nuevos errores la nueva versión 154.3 debería ser mucho más estable y segura.

También hay actializaciones en el rendimiento de los plug-in, corrigiendo algunos errores en la reproducción de vídeos a partir del primer segundo de reproducción (r3123, Issue 115) y los errores que provocaban que el browser se quedara colgado (r3323).

La especificación r3228 cambia el comportamiento en la descarga de archivos que son capaces de ejecutar código (exe, dll, bat, etc.). Estos ficheros se descargan ahora como ficheros descargados y no confirmados con el formato (unconfirmed_*.download). Posteriormente, el navegador te preguntará si quieres aceptar la descarga como válida. Solo despues de que pulses en el botón Guardar, el fichero (unconfirmed_*.download) se convierte en un fichero real con su extensión y nombres originales. Las descargas de ficheros no confirmados, se borran al salir de Google Chrome.

domingo, 5 de octubre de 2008

Gears, Chrome y aplicaciones de escritorio

Hay un error generalizado sobre la nueva plataforma web de escritorio de Google, llamada Gears, sobre que solo tiene capacidades offline para aplicaciones web. La verdad del asunto es que las ambiciones de Google son mucho mayores, y la extensión de las capacidades del navegador son mucho más potentes de lo que sugiere su reputación. El uso que MySpace hace de la aplicación Gears, tiene poco que ver con la funcionalidad offline, y es un ejemplo perfecto de las capacidades que la plataforma puede ofrecer.

Gears está disponible desde hace más de un año, con la primera versión en mayo de 2007. Se puede ver todo el historial de versiones, pero esencialmente Gears consta de cuatro módulos, donde cada uno ha ido añadiendo gradualmente nuevas capacidades. El último fue liberado el pasado agosto, y el anterior a él, en junio.

El objetivo general de Gears es dotar a las aplicaciones web con gran parte de la misma funcionalidad de la que disponen las aplicaciones de escritorio. Lo hace a través de una extensión del navegador y que puede ser instalado por una amplia variedad de navegadores (Firefox, Safari, e Internet Explorer) en una amplia gama de sistemas operativos (Windows, Windows Mobile, Mac OS, and Linux). Con el lanzamiento del navegador Google Chrome, ya no es necesario instalar Gears ya que viene pre-cargado, haciendo a Chrome un super navegador desde el primer momento.

A largo plazo, la consecuencia de esta tecnología es clara: como los navegadores se vuelven más y más potentes con la ayuda de iniciativas como Gears, quedan cada vez menos excusas para instalar y ejecutar aplicaciones de escritorio (y, por tanto, derrochar en Windows y Office, por nombrar dos aplicaciones de Microsoft frecuentemente identificados como razas a extinguir).

Pero antes de que esto puede suceder, Gears y tecnologías similares necesitan permitir que realmente el navegador ofrezca la funcionalidad del escritorio.

¿ Dónde estamos hoy ?, actualmente Gears puede ser utilizado por los desarrolladores para mejorar las aplicaciones web en las siguientes áreas (tanto en ordenadores de sobremesa como en dispositivos móviles):

Almacenamiento de base de datos en el lado del cliente: la mayoría de sitios web interactivos dependen en gran medida de las bases de datos para recopilar, organizar y entregar la información aportada por los usuarios.

Tradicionalmente, estas bases de datos se han desplegado casi exclusivamente en el lado del servidor, que requiere que los equipos de los usuarios envíen solicitudes y esperen respuestas para realizar cualquier tarea no trivial en una web con acceso a datos.

Con la base de datos de Gears API, los sitios web ahora pueden crear bases de datos en el lado cliente (es decir, en su ordenador), permitiendo velocidades más rápidas del programa y algunas capacidades offline (para los casos en los que no disponemos de conexión para consultar bases de datos remotas).

En el lado del cliente, la página web con Gears puede transformar tu ordenador en un servidor de páginas web y otros archivos de datos planos para determinar servirlas cuando los servidores web no están disponibles.

El LocalServer API permite a los sitios web almacenar en su caché las páginas cuando están en línea y servirlas posteriormente cuando no se disponga de ella. También se puede utilizar para acelerar determinadas acciones a través de la caché aún cuando dispongamos de conexión.

Accesos directos en el escritorio, de forma que accedemos a aplicaiones web de la misma forma que a las aplicaciones de escritorio. Por lo tanto, Gears hace que sea más fácil para los desarrolladores colocar iconos de acceso directo en el escritorio que los usuarios pueden utilizar para abrir aplicaciones web con el estandar doble click.

Envío de múltiples archivos: normalmente, cuando quieres cargar una colección de archivos a un sitio web, tienes que seleccionar uno por uno (a menos que el sitio web que está utilizando ha decidido utilizar flash o algún cargador basado en Java). Con Gears, es posible para los usuarios seleccionar varios archivos a la vez y cargarlos por lotes, el ahorro de tiempo es apreciable.

Geolocalización: para los dispositivos móviles se puede determinar la ubicación actual del usuario, lo que hace de Gears una potente extensión para aplicaciones que se ejecuten de forma estándar en el navegador. El API de geolocalización se puede usar para identificar la posición del usuario o a lo largo del tiempo para determinar los movimientos del usuario. Se pide autorización al usuario para activar esta funcionalidad.

El equipo de Gears Google lanza capacidades a medida que detecta la demanda de ellas por parte de los desarrolladores y que irán apareciendo en las próximas versiones:

Barras de progreso: Ya sea porque estés cargando un archivo grande o varios pequeños, probablemente quieras saber cómo van las cosas. Tradicionalmente no hay manera de indicar la progresión en las aplicaciones web, a no ser por el cursor con el reloj de arena. Pero con Gears, puedes ver una barra de progreso real que le indica qué parte de los datos ha alcanzado ya el servidor.

Archivo: cuando se reanuda el envío de archivos grandes por cortes en la conexión, antes había que empezar otra vez de cero. Gears permite la posibilidad de reanudar las subidas, así puedes empezar donde lo dejaste.

Pantalla notificaciones: futuras versiones de Gears permitirán a cualquier sitio web activar notificaciones emergentes asociadas a eventos, tanto las que se ejecutan en el navegador como las que no.

A largo plazo, podremos ver complejos gráficos 3D para sacar el máximo provecho de tu tarjeta gráfica. También contemplaremos menús contextuales. Desencadenadores de eventos, interacción con aplicaciones del ordenador, y un largo grupo de funcionalidades que por ahora están vedadas a las aplicaciones web.

Fuente: Mark Hendrickson TechCrunch.com