Cuestión de velocidad…

Velocimetro

Creo que todos los desarrolladores, alguna vez hemos estado obsesionados con la velocidad, la velocidad es un tema importante, incide en prácticamente todas las facetas de la computación, realizar un programa veloz normalmente marcará el éxito o el fracaso de un desarrollo, Google es un claro ejemplo de esto. Si lo comparamos con la velocidad de un coche, la verdad es que no tiene mucho que ver, prácticamente todos los coches pueden viajar a 100-120 km/hora, lo suficiente para realizar cualquier viaje, por grande que sea.

En el ámbito de las conexiones de red comenzamos con velocidades de 50 bps que utilizaban los antiguos teletipos, en cambio ahora la mayoría de los canales de comunicaciones, desde una simple Ethernet con velocidades de  1000 Mbps full dúplex, hasta las Wifi que con la nueva norma n podrán llegar a los 300 Mbps. El avance es espectacular hemos pasado de 300 bps al descargarnos algún archivo de las primeras BBS a disponer de ADSL con velocidades de hasta 20 Mbs.

Me pregunto que pasara cuando la velocidad de internet, llegue a ofrecernos una velocidad suficiente para poder ejecutar cualquier tipo de servicio con fluidez, y como sucede hoy en día con las redes de fibra en la que ni los discos duros más veloces sean capaces de procesar. Existe hoy en dia algunos lugares, como Japón, donde se pueden conseguir velocidades de hasta 100 Mbps, lo suficiente como para hacer casi cualquier cosa, es cierto que para ello todas las infraestructuras de internet tendrán que readaptarse, pero a la velocidad que esto se mueve apenas notaremos el cambio.

Pese a que el incremento de la velocidad ha sido paulatina, las necesidades han ido aumentando quizás hasta más que la propia velocidad, pasamos de descárganos algún pequeño fichero de 15 Kb desde las antiguas BBS a varios Gygabytes de alguna aplicación, el video bajo demanda, las redes P2P, voz Ip y otros servicios han ido surgiendo a medida que la velocidad a permitido su funcionamiento. Los avances de velocidad en los procesadores, la utilización de múltiples núcleos, la incorporación de grandes procesadores en las tarjetas de video han permitido que en poco tiempo hayamos pasado de programas simples a modernas y complejas aplicaciones que nos permiten trabajar con objetos 3D, video, etc.

Sin embargo, después de tantos avances, algunos programas parecen cada vez más lentos, creo que todavía hoy en día el área del desarrollo en general no ha sido capaz de asumir la velocidad del hardware, el ejemplo más claro es que las aplicaciones de 64 bits todavía no han despegado. Actualmente se acaba de presentar la programación paralela destinada a aprovechar todos los núcleos de los procesadores que nos permitirá conseguir mejores ratios de rendimiento y aprovechar todas las ventajas de nuestro hardware, veremos cómo evoluciona y si le sacaremos el partido que merece.

Me pregunto, cuándo internet permita conseguir velocidades de 100 Mbps o más como en Japón, si la velocidad dejara de tener tanta relevancia como hoy en día, la mayoría de los programas en Internet, incluso ayudados de nuevas tecnologías como Ajax, Silverlight, Flex y otras, todavía no permiten una interacción muy fluida con los usuarios, si bien han mejorando mucho, pero en poco tiempo, creo que tal y como sucede con los coches esto dejara de tener tanta relevancia. Pienso que estará al alcance de todos obtener la mayoría de servicios de una forma fluida, desde tv bajo demanda con alta calidad, algo que hoy en día ya es una realidad con la mayoría de proveedores de Internet que ofrecen servicios de TV, manejar objetos 3D, acceder a recursos compartidos como si de una red Ethernet se tratase, utilizar servicios de voz IP sin interferencias y todo el conjunto de servicios que hoy en día utilizamos mejorados por las capacidades de la red.

En este supuesto, para el que creo, no queda mucho tiempo, pienso que las arquitecturas volverán de nuevo a reinventarse ya que la capacidad de comunicación, permitirá que cualquier programa tanto Web como de escritorio tenga una capacidad de comunicación prácticamente ilimitada similar a nuestras redes de trabajo locales.

Estoy convencido de que el Software as Services (SAAS) es el futuro, y la mayor parte de los programas que existen, pasaran tarde o temprano a alojarse en la red, este paso masivo de aplicaciones marcara un antes y un después en nuestra vida, ya que la mayoría de los servicios pasaran a administrarse por especialistas y el coste de su mantenimiento bajara progresivamente, esto permitirá que de algún modo nos podamos abstraer de las necesidades de hardware y software necesario (actualizaciones, copias de seguridad, gestión de errores e incidencias, mantenimiento, etc). Creo que estos servicios serán mucho más baratos que contar con una infraestructura propia y por ello serán utilizados de forma masiva.

Uno de mis sueños y creo que el de mucha gente es la de desarrollar un programa sin demasiado esfuerzo que sea multiplataforma y que funcione por cualquier canal de comunicación establecido. Espero que con el aumento de la velocidad y de la progresión del SAAS esto se convierta en una realidad muy pronto.

En España, como no podría ser de otra forma, seguimos por debajo de la media de los países Europeos en velocidad y precio del ADSL, increíble, nos gana hasta Portugal, espero que poco a poco nos vayamos poniendo al día, ya que la importancia de la velocidad en Internet va a ser un punto clave para que podamos evolucionar con todas estas tecnologías. Os dejo la tabla comparativa del 2008.

clip_image001

Pienso que el Grid Computing se vera tambien beneficiado por el aumento de velocidad, como sabeis el Grid Computing es una tecnología que permite acceder a una gran capacidad de proceso y otros recursos utilizando equipos distribuidos, tal y como realiza Google con sus búsquedas. Uno de los ejemplos más antiguos es el proyecto SETI para la búsqueda de vida extraterrestre que utiliza ordenadores personales de la gente que quiera participar en el proyecto, para procesar datos, creo que el aumento de velocidad hará que esta tecnología vaya asentándose cada vez más.

Parece que está de moda hablar de la Nube, y a mi juicio todo indica que Azure será el primer paso para asentar todas estas ideas que comenzaron hace algunos años cuando los Web Services empezaron a tomar mayor relevancia y que ahora debido sobre todo al aumento de la velocidad se pueden hacer realidad.

Todo indica que Internet continuara progresando de forma exponencial en los próximos años y su importancia será cada vez mayor, en pocos años, quizás, hasta cobre vida propia…, ya hay televisiones que permiten conectarse a internet, pienso que dentro de poco se conectaran desde los coches hasta las cafeteras y lavadoras, veremos lo que nos depara el futuro.

Aún con esto, sigo teniendo mis dudas:

¿Dejara de tener importancia la velocidad tal y como ha pasado con los coches o el aumento de los requisitos seguirá aumentando conjuntamente con la mejora de la velocidad como ha sucedido hasta ahora?

¿Se asentara definitivamente el Grid Computing y dejaran los grandes servidores de tener tanta importancia?

¿Dejaran de utilizarse masivamente los protocolos de comunicación soap y tecnologías como http y xml, para dejar paso a protocolos más avanzados en forma binaria?

¿Lograra el SASS comerle el terreno a las aplicaciones locales y se asentara definitivamente para convertirse en la plataforma más utilizada?

Espero vuestras opiniones…

Un saludo.

4 comentarios en “Cuestión de velocidad…”

  1. Yo creo que la velocidad en la automoción tiene un límite administrativo, pero hoy en día las infraestructuras y los vehiculos permiten viajar con seguridad a velocidades mayores de las permitidas y esto está asociado con el riesgo de las vidas humanas. En cambio en el software no existe ni esa limitación administrativa ni ese riesgo de accidente, por lo que creo que una conexión nunca será lo suficientemente rápida, y se nos ocurrirá a los desarrolladores maneras de aprovechar mejor esa velocidad… cambiar las políticas de cacheo, buffer, ajax, resolución de los datos a traer, etc… pensemos en algo sencillo como google maps, bing maps, google earth… creo que nunca va a haber conexión suficiente para dar servicio a los datos que se podrían mostrar en el cliente.

  2. Miguel, yo creo que la velocidad de internet dejara de tener la importancia que tiene hoy, tal y como ha pasado con la velocidad en MHz de los procesadores, sin bien los múltiples núcleos han suplido esta carencia, pero incluso hoy en día estamos lejos de sacar verdadero partido a nuestro hardware, ya hace varios años que salieron al mercado los procesadores de 64 bits y son muy pocas las aplicaciones que los aprovechan, disponemos de equipos con 8 o más procesadores y la mayoría del software actual es incapaz de utilizarlos, creo que en muchos casos, el desarrollo comienza a ir por detrás del hardware, solo algunos programas y juegos son capaces de aprovechar los recursos de los que disponemos, existen tantos avances en la tecnología Adsl que hablan ya de velocidades que superan ampliamente los 100 mbps, ni los discos duros son capaces de aprovechar la velocidad de una tarjeta gigabyte, así que creo que en un espacio relativamente corto, la mayor parte de las necesidades que tenemos incluyendo video bajo demanda, modelado en 3D y otros, podrán realizarse sin problema y la velocidad de acceso a internet dejara de tener tanta importancia como tiene hoy.

    Gracias por tus comentarios.

    Un saludo.

  3. Yo hasta ahora solamente he disfrutado de los 10 Mb que te da un ADSL pero necesito contratar fibra óptica, y llegar a los 100 Mb que prometen los operadores (que por otro lado, no estoy seguro de que sean reales). No se si en San Cugat puedo disponer ya de ese tipo de conexión ni quién lo ofrece. ¿Alguien lo sabe? Muchas gracias.

Deja un comentario

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *