Archivo de la Categoría 'Internet'

Google Chrome: más cerca del lado oscuro.

Chrome

Empiezo este post a la defensiva, porque sé que más de uno no estará de acuerdo con la opinión que están por leer; pero que no se me malinterprete: yo admiro a Google, tanto como el geek de al lado, tanto como se puede evangelizar a la empresa que ha podido rivalizar seriamente a lo que alguna vez consideramos el lado oscuro: Microsoft. Sin embargo, hoy Google ha hecho una jugada que considero un poco egoísta, y déjenme explicarme por qué.

Google hoy lanza su nuevo navegador, llamado Google Chrome. Geeks alrededor del mundo se revuelcan de felicidad. Los mismos que defendieron Firefox a capa y espada por quitarle casi un 20% de market share a IE.

Ahora bien, un Google cuasi-todopoderoso como el de hoy en día dice: “yo quiero un pedacito en este juego”. Y yo me pregunto: ¿realmente es necesario otro navegador en el mercado? ¿A quién quiere beneficiar Google, a los usuarios o a sí mismo? ¿a los desarrolladores web quizá?. Exploremos estas preguntas con más detenimiento.

Los navegadores han evolucionado a un punto dónde me atrevo a decir que todos son igualmente buenos. Firefox en menos de 5 años ha logrado lo que Opera y Netscape no pudieron lograr: que Microsoft se dignara a mejorar aquél desastre llamado Internet Explorer 6 y lanzara un producto de calidad, competitivo y respetuoso a los estándares (me refiero, claro, a IE8 beta). El resultado es un mercado de navegadores excelentes, tanto Firefox, como Opera, Safari y el mismo IE7 son buenos productos, al punto que ya creo que no saben cómo dar el siguiente paso a un mejor navegador. Esto me hace pensar que hasta cierto punto Chrome es innecesario, ya que el mercado no está pidiendo un nuevo producto.

En las horas que llevo probándolo (estoy escribiendo este post dentro de Chrome para ser lo más objetivo posible), no he visto nada revolucionario. Chrome es lo que sale si metieras en una licuadora a Opera, Firefox (con una que otra extensión) y Safari: un poquito de cada uno. Por lo que me dice el “Acerca de”, están usando una versión modificada de Gecko y WebKit, suficientemente modificadas como para que algunas páginas no se rendericen igual. Chrome, en sí, no tiene nada revolucionario que ofrecer, al menos todavía.

Chrome About

Ahora bien, si utiliza los componentes abiertos de otros navegadores, y Google quiere llegar a algún lado con todo esto: ¿por qué no más bien aportar a alguno de estos proyectos? Estoy seguro que Opera, Firefox y la misma Apple estarían contentos de recibir los aportes de Google. Me atrevería a decir que si lo quisieran, podrían comprar Opera y hacer un producto más interesante. Ahora por el contrario Google les hace la competencia, y con el poder que hay detrás de la marca, estoy seguro que un buen daño harán.

Es por ello que ahora, en mi humilde opinión, fué absolutamente innecesario que hoy Google lance su navegador.

Este daño, para empeorar las cosas, será directamente contra los ya-saturados-de-opciones usuarios finales (léase mi papá, tu mamá, y los primos de todos nosotros) quienes si en algún momento llegasen a mirar a los lados cansados del IE que viene con Windows, probablemente pondrán su apuesta al nombre de Google, quién no necesariamente tiene un mejor navegador, pero simplemente porque es “Google” y no un cualquiera como la fundación Mozilla, de la misma manera que éste último no necesariamente tiene un mejor navegador que Opera. En otras palabras, el único que se beneficia aquí es Google, con el motivo de “porque sí”.

Finalmente, a los colegas desarrolladores web que viven el día a día de debuggear una aplicación en IE6, IE7, Opera, Safari y Firefox: ¿quieren uno más a la lista?

En fin. Bajo ningún motivo estoy implicando que Chrome sea un mal producto, y que quede eso por entendido. En el caso de [el OS para móviles ] Android, por ejemplo, veo con mucha ilusión el impacto positivo que podría causar en la industria, una industria llena de OS mediocres como Symbian y Windows Mobile.

En el mercado de los navegadores simplemente lo veo más como un capricho que una necesidad. Es muy temprano para sacar conclusiones, el tiempo lo dirá.

“Desbloqueo iPhones”: del porqué no somos nadie en tecnología.

Soy un ávido lector de la revista Wired, y eso se puede notar en las veces que he hecho (y haré) referencia a la misma. La edicion de Marzo vino con un interseante artículo llamado “La historia no contada: Cómo el iPhone cambió la industria de las telecomunicaciones” (Link en inglés), que relataba básicamente cómo Steve Jobs revolucionó la manera en que funcionaba la industria de las grandes empresas de telecomunicaciones diciéndole a éstos empresarios seniles un bonito y amable: “Fuck off” (jódanse). En sentido figurado, claro.

La cosa iba así: Las empresas de telecomunicaciones, entiéndase por ellas cualquier Verizon, Cingular, Movistar, Vodafone, etc., siendo dueñas de las redes, dictaban cómo se hacían los teléfonos celulares. Por ejemplo, lo que Cingular dijera, Motorola lo hacía. “¿Que Motorola quiere diseñar un teléfono pensado en el consumidor? No, que se jodan.”. Ahora, el Sr. Jobs quería entrar en ese mercado porque soñaba con que la gente pudiera hacer llamadas con el iPod. Y claro, con muchos millones de dólares más para su cuenta. Primer intento: alianza con Motorola. De ahí salió el horrible y fallido Rokr E1, plagado de limitaciones, horrible diseño, lento, etc. Steve-san obviamente no se iba a quedar con esa, y le planteó una alianza a los incrédulos viejos empresarios en AT&T, diciendoles: yo hago mi teléfono como me dé la gana, tengo la tecnología (lo cual era mentira para el momento - Apple no tenía NPI de cómo hacer una antena para móviles), tengo la gente y el mercado. Tu te quedas con los usuarios. El resto es historia.

Ahora, este post no se trata sobre el iPhone. Mientras leía el artículo yo sólo pensaba una cosa: este tipo es un genio (Steve Jobs). Claro, eso ya lo sabíamos, pero me queda aún más claro ahora. Me sentía inspirado por como una persona puede lograr girar una industria, una vez más. Mi siguiente pensamiento fué: “Y en mi país hay gente cree que se va a ganar la vida desbloqueando iPhones”.

Acto seguido entré en shock. Revisé mi lista de contactos en el MSN, y al menos 4 personas tienen “debloqueo iPhones”. Recordé la historia de un amigo que compró uno y le estaban cobrando 300mil Bs (aprox $140 USD) porque el tipo tenía experiencia con más de 1000 iPhones.

Lo que me molesta y entristece no es que los debloqueen y AT&T deje de ganar dinero. Eso realmente no me podría importar menos. Lo que me molesta y entristece es que en mi país (y estoy seguro que en toda latinoamérica) la gente tenga una mentalidad tan atrasada. La cuestión de debloquear iPhones se ha convertido en todo un negocio, y la gente neófita, dueños de su flamante nuevo iPhone, porsupuesto paga el dinero. Cuando resulta que hay un programita que los debloquea haciendo un solo click. Y el tipo que cobra $140 USD se jacta diciendo que “la experiencia cuesta dinero”. Lo lamento por mis amigos que desbloquean iPhones, pero además de que son unos oportunistas, tienen una mentalidad extremadamente cortoplacista.

Y es que mi país y supongo que toda latinoamérica está plagada del oportunismo, y eso es lo que nos tiene tan atrasados. En vez de estar haciendo algo más interesante (como desarrollar aplicaciones para el iPhone ahora que tiene un SDK libre, tratando de crear algo nuevo, romper paradigmas, etc.), esta gente cree que se resuelve la vida momentáneamente extorsionando a los demás por algo que toma 5min.

Yo no digo que haya que ser Bill Gates o Steve Jobs, porque no es fácil para una persona común llegar ahí. Se requiere mucha suerte y un ojo increíble para ver las oportunidades. ¿Pero cuántos latinos han hecho un nombre en el mundo de la tecnología? Existen Japoneses, Norteamericanos, Ingleses, Finlandeses, Rusos, etc… ¿y ningún latino? Miguel de Icaza es el único que me viene a la mente, mexicano creador de Gnome, uno de los 2 grandes ambientes gráficos en Linux. Y aún así, uno entre miles. Ahora finalmente entiendo por qué: nuestra mentalidad.

Y vamos a estar claros: para ser cualquier de ellos se necesitan sólo 2 cosas: una computadora y un buen cerebro. Apuesto incluso que muchos de estos tipos que desbloquean iPhones y ponen chips en las cónsolas de juegos de video, tienen los conocimientos necesarios para ser otro Linus Torvalds, Blake Ross, Sergey Brin y Larry Page, Shigeru Miyamoto, Jimmy Wales, Miguel de Icaza, Eric Chahi, etc., si tan sólo lo intentaran. Pero no, es más fácil desbloquear iPhones. Y es realmente triste.

Y admito abiertamente que yo tampoco he logrado hacer nada interesante. Pero me siento orgulloso que al menos hago el intento, que lo tengo siempre presente, que trabajo duro hoy en mi empresa para comer, y en un futuro para intentar lograr algo en la industria, y de que no vivo extorsionando a la gente desbloqueando iPhones.

Steve Jobs empezó junto a Wozniak vendiendo un aparatito que permitía hacer llamadas telefónicas ilegalmente (la Blue Box), pero al menos ellos las creaban con sus conocimientos. Ojalá esta gente dedique sus conocimientos a lo mismo algún día.

En fin.. éstos son sólo mis pensamientos en por qué mi país y latinoamérica en general está donde está, por qué nos llaman “países tercermundistas”. Mientras aún nos debatimos entre implantar modelos políticos fallidos y en guerras absurdas entre nuestras naciones, el resto del mundo avanza. Y nosotros hacemos un negocio del negocio de los demás, porque es más fácil.

Mis disculpas por generalizar, y el mayor de los éxitos para la gente que aunque no logre ser una gran figura, hace el intento. Desafortunadamente somos muy pocos.

¿Alguien que quiera aportar algo al tema o refutarme lo antes dicho? Me encantaría leer sus comentarios :)

Ruby on Rails: de aprendiz a experto (Día 2)

Rails Logo

El segundo día mi serie de posts sobre mi aprendizaje de Rails empezó con el Capítulo 4 del libro “Agile Web Development With Ruby on Rails: Second Edition“. Para este capítulo el libro prometía crear una aplicación sencilla de demostración llamada simplemente “demo”. De manera más puntual, estas fueron mis impresiones…

  • Creamos la aplicación a través de la línea de comando. Con simplemente escribir “rails nombre_aplicación” en la raíz del servidor, bastó para que Rails automágicamente generara el esqueleto de la aplicación, incluyendo estructura y archivos de configuración básicos. Buen comienzo que ahorra bastante tiempo en 1) crear cada uno de estos archivos manualmete y 2) pensar en la estructura de tus aplicaciones si no te has definido estándares (y aún así uno siempre busca mejorarlos cada vez que se empieza un proyecto nuevo)
  • A través del comando “ruby script/server” en la raíz de tu proyecto nuevo, inicias un servidor WEBrick, el cuál trae una cónsola que hace trazas completas a todo lo que se esté ejecutando en la aplicación, ¡perfecto para debuggear! No más problemas con SQL’s extraños. Siempre quise algo así con PHP…
  • Creamos nuestro primer controlador con el comando “ruby script/generate controller Nombre_Controlador“. Esto genera la estructura de carpetas y archivos necesarias para el funcionamiento del controlador. Lo interesante aquí es que Rails tiene su propia estandarización de nombre para todo, por ejemplo, si llamas a un controlador “Hola”, Rails automáticamente creará las clases HolaController que heredará las propiedades de la clase ApplicationController, las Vistas, los Helpers (métodos que ayudan a estandarizar funciones que generan HTML en las Vistas). Todo esto viene ya listo para simplemente crear nuestra lógica de negocios, sin preocuparnos por errores de nombramiento, herencias, enrutamientos, etc., en sus carpetas respectivas. Menos esfuerzo en determinar nombre y rutas de archivo = ahorro de tiempo = una maravilla.
  • Nos explican la manera de Rails de manejar los URL’s. Básicamente todo lo que venga luego de la raíz del servidor es un controlador, y lo que venga después del controlador es una acción, es decir: http://urlejemplo.com/controlador/accion. Ejemplo: http://tiendaejemplo.com/productos/mostrar. En este ejemplo el controlador sería Productos y Mostrar la acción (mostrar la lista de todos los productos). Un controlador puede tener muchas acciones, siguiendo este ejemplo, el controlador Productos puede tener las acciones Mostrar, Agregar (agrega al carrito de compras), Detalle (muestra el detalle de un producto en específico), etc. Esta es, a la final, la manera cómo el navegador (y el usuario final) hace peticiones al sistema: pide un controlador y una acción del mismo. Así que hay que empezar a pensar con esa mentalidad.
  • Creamos un controlador de ejemplo llamado “Say” (decir) con su acción “Hello” (hola) y nos pide entonces crear la Vista correspondiente para esa acción, que en pocas palabras será el HTML que muestre en el navegador todo aquello que queramos desplegar. La ruta predefinida de esa vista está en /app/views/say/hello.rhtml (noten que el archivo se debe llamar igual que la acción del controlador). Estos HTML pueden ser dinámicos, y para ello existen 2 técnicas: “Builder Templates”, para la cuál no entramos en detalles aún, y ERb, que es simplemente embebir código Ruby en los .rhtml, como se pueda hacer con PHP y JSP tradicional, entre los tags < %= %>. Es importante destacar que las Vistas heredan perfectamente las propiedades de los Controladores, de manera que si yo creo una variable en un Controlador, la puedo acceder en las Vistas correspondientes. Esto nos permitirá la gran ventaja de separar la capa de lógica de la presentación, y es imperativo mantenerlo siempre en cuenta, ya que de esto se trata el MVC y nos dará mayor flexibilidad al hacer actualizaciones futuras de código, especialmente si trabajamos el proyecto en un equipo. Todo tiene su lugar, es fácil de entender, debuggear y no hay necesidad de repetir el mismo código en distintas partes de nuestra aplicación.
  • Nos muestran la manera de hacer links entre páginas. Si bien podríamos hacer los links convencionales con la etiqueta HTML respectiva, Rails trae un helper llamado “link_to” que no rompería los links si por alguna razón decidimos cambiar la estructura de URL’s de un site (por ejemplo, meter toda la aplicación en una carpeta). Ejemplo de uso: < %= link_to "Hola!", :action => “hello” %>, dónde “Hola!” es lo que se mostrará en el enlace y :action => "hello" es la acción que ejecutará del controlador.

Esto fué todo para el capítulo 4. Aprendimos de manera muy básica como hacer las cosas en Rails, como estructurar archivos, carpetas y trabajar con controladores y vistas. Éste quizá sea el cambio de paradigma más grande que pueda tener alguien que venga de PHP o Java tradicional, y les aseguro con toda firmeza que es para mejor. La facilidad de trabajar los proyectos de esta manera no tiene precio. Hasta ahora Rails sólo me ha dado entender que hubo mucho trabajo de ingenio y mucha experiencia detrás del framework, para llegar a este punto. Se siente bastante pulido.

No hay que olvidar la belleza de un lenguaje como Ruby. Ejemplos: < % 3.times do %> repite una acción 3 veces, < % 3.downto(1) %> cuenta en reversa de 3 a 1, < % Time.now %> de la hora actual, y mi favorito hasta ahora: < % 1.hour.from_now %> te da la hora dentro de una hora. Y esto imagino que sólo es la punta del iceberg. ¡No puedo esperar aprender más!

El siguiente capítulo va directo al grano y nos enseñará a hacer una aplicación de la vida real. Haremos un carrito de compras, por supuesto incluyendo base de datos.

Keep on railing!

Ruby on Rails: de aprendiz a experto (Día 1)

Yo soy uno de esos que siempre llega tarde con las tendencias (y como “para muestra un botón”, ver las fechas de aquí y aquí).

Desde hace ya-no-se-cuanto-tiempo he seguido la noticia que rodea a Ruby on Rails, y por esa misma cantidad de tiempo lo he evitado. No porque nunca creí que fuera bueno, si no porque nunca tuve la necesidad de cambiar a mi querido PHP. A ver si me explico…

Mi Historia

Rails Logo

Como muchos desarrolladores, con la ayuda de un amigo me inventé mis propias librerías en PHP que me facilitaran la vida. Obviamente estaban hechas a mi medida y con millones de hacks y parches que sólo yo conocía, y las utilizaba para cualquier proyecto freelance que me saliera.

Luego entré a trabajar para otros. Obviamente ahí mis librerías no iban a funcionar, así que empecé a investigar más a fondo las bondades de Rails y cómo llevarlas a PHP. Me familiaricé entonces con el modelo MVC (el cual ya venía escuchando desde que investigué sobre Struts cuando trabajaba con Java) y me pareció una maravilla, pero aún me empeñaba en hacerlo en PHP. Encontré CakePHP, Symphony, Prado, QCodo y finalmente seguí con atención la evolución del Zend Framework desde su primer beta, cuyo objetivo primordial era llevar la filosofía de Rails a PHP. Ninguno me terminó de convencer, había algo en PHP que no lo hacía como la gente decía que era Rails. Sin embargo, no es el objetivo de este artículo comparar estos frameworks y es suficiente con decir que los probé casi todos y llegué a utilizar a fondo el Zend Framework.

He leído innumerable cantidad de veces debates sobre si este o aquél lenguaje de programación es mejor, si este o aquél framework es mejor, si este o aquél IDE es mejor. La verdad es que es irrelevante, como buen desarrollador uno debe saber hasta dónde arroparse con una tecnología. Existe un principio primordial en el desarrollo web, el cuál siempre he tenido en cuenta: hay que utilizar la herramienta adecuada para cada situación. Java es perfecto para cuando se necesite que una aplicación sea robusta, estable, confiable, etc., pero es un dolor de trasero desarrollar con él. PHP es versátil y se adapta a muchas situaciones, escala bien y es fácil de aprender. Y así podemos ir con ASP.Net, Python, Perl, Ruby, etc. Lo cierto es que no se trata de cuál tecnología es mejor, se trata de cual se adapta mejor a mi proyecto particular.

Hoy en día trabajo con varios desarrolladores en una empresa propia, con mayor libertad tecnológica pero con mayor presión en tiempos de respuesta a los clientes, y estamos frente a un proyecto de desarrollo de un sistema para una empresa. La necesidad de un framework versátil, poderoso y sencillo, es evidente. No nos preocupa mucho la escalabilidad, porque va a tener un número de usuarios limitados que nunca va a ser muy grande. Lo que nos preocupa es la simplicidad, las facilidad para debuggear y la posibilidad de hacer mucho en poco tiempo. Después de todo aquí el tiempo es dinero.

Finalmente es hora de darle a Ruby on Rails (RoR) esa oportunidad que se merece. RoR se vende como todo lo que necesito: versatilidad, simplicidad, hacer mucho en poco tiempo. Así que desempolvé los libros, los viejos links, y es hora de montarme en estos rieles.

A partir de este momento voy a hacer una serie de artículos documentando los pasos que he seguido para pasar de completo novato a, con suerte y esfuerzo, un experto en el asunto. Vamos a ver cómo me va con todo esto.

Día 1

  • He empezado por dónde se debe empezar: en la página oficial de RoR. Vi los screencasts y leí sobre los próximos pasos a seguir, como instalar, qué leer, qué usar.
  • De ahí pues, siguiendo las sugerencias, descargué InstantRails ya que estoy en Windows. Ahora, una nota aquí: he descargado la versión 1.7, que trae Rails v1.2.3. ¿Por qué si ya salió Rails v2.0.1? Sencillo: la mayor parte de la documentación, entiéndase por esto libros, tutoriales en internet, etc… están hechos para Rails 1.2. Rails 2.0 tiene un mes de antigüedad, y creo que lo más sano es empezar con algo que esté bien documentado.
  • InstantRails instalado sin problemas. Sólo descomprimí la carpetica a una ruta sin espacios, corrí el .exe y creé un proyecto nuevo en el menú de “Rails Applications” > “Manage Rails Applications”, y al aparecer la cónsola de Rails ejecuté el comando “rails nombre_proyecto”. Inicié el servicio con Mongrel, y listo! Apunté Firefox a http://localhost:3000 y tenía mi primera applicación corriendo sin problemas.
  • Ahora toca elegir un editor o un IDE. Tengo dos opciones identificadas: Radrails, basado en el monstruo que es Eclipse, o eTextEditor, un clon de TextMate. Ya he usado antes Eclipse y Aptana, no dudo que sea un excelente IDE para desarrollar, sin embargo me voy a quedar por ahora con eTextEditor. He escuchado maravillas de Textmate, así que lo más sano es buscar su parecido en Windows y mantener la filosofía de simplicidad que estos predican. Ya estoy un poco cansado de los IDE grandes, y quiero algo distinto y que me recuerde a Notepad++, el cual me gustó muchisimo una vez que lo utilicé cuando trabajaba con Zend Framework.
  • Aja, ¿y ahora?. Me debatí entre si seguir alguno de los múltiples tutoriales online que tengo como referencia, o leer el famoso libro “Agile Web Development with Rails: Second Edition“. Como en la página de Rails lo recomiendan, prefiero irme por ésta última opción así que… ¡a leer!
  • Leí hasta la página 43. Hasta ahora excelente. Me familiaricé con el modelo MVC, con Ruby como lenguaje, con el Active Record y el Action Pack del framework, con la linea de comando de Rails (ES UNA MARAVILLA!) y una explicación detallada de como instalar y configurar Rails con la base de datos de mi elección. ¡Dejo para mañana empezar con mi primera aplicación!

Hoy quedé maravillado con la línea de comandos. Estoy familiarizado con los ambientes Unix, con Linux en particular, y que con un solo comando puedas crear toda la estructura de un proyecto Rails, con otro comando actualices las versiones (a lo apt-get de Debian/Ubuntu/otros Linux), con otro comando iniciar un servidor WEBrick y con otro generar la estructura de las vistas/controladores… no tiene precio. Muy rápido todo realmente. Además, puedes debuggear una aplicación siguiendo los logs en tiempo real en la cónsola. No más “echo($sql)” ni “print_r($array)” de PHP. Thank God!

Poco a poco voy a ir siguiendo el libro, que hasta ahora me ha gustado su manera de explicar las cosas. El próximo artículo de esta serie hablará sobre mi primera aplicación.

Keep Riding the Rails!

Actualización:

Lista de editores (en el wiki oficial): http://wiki.rubyonrails.com/rails/pages/Editors

Alternative Reality Games (ARG): Tú eres el protagonista.

Increíble una de las historias que tienen en la última Wired (16.01). El artículo se llama “Secret Websites, Coded Messages: The New World of Immersive Games” (Websites Secretos, Mensajes Codificados: El Nuevo Mundo de los Juegos Inmersivos). Básicamente trata sobre todo un juego (medio macabro, vale acotar) que se lanzaron los NIN con el lanzamiento de su disco Year Zero, un álbum conceptual que critica las políticas actuales del gobierno de EEUU.

Cuenta el artículo que Trent Reznor, vocalista y escritor de la banda, buscaba la manera de poner en contexto a la audiencia para el disco. Para tal fin, Reznor recordó un tipo de juegos que involucra a miles de personas en cualquier parte del mundo haciendo uso de una mezcla distorsionada de internet con la realidad. Se llaman Alternate Reality Games o Juegos de Realidad Alterna (que a veces pueden ser confundidos con “Marketing Viral“, aunque no necesariamente se utilizan para mercadear un producto).

Básicamente la cosa consiste en crear una historia colectiva dónde se involucren en tiempo real cientos y miles de personas en cualquier parte del mundo, quienes se convertirán en los personajes principales de la trama, interactuando a través de websites, emails, llamadas telefónicas, reuniones, etc., con pistas que son dejadas por un “puppetmaster” (diseñador del juego), quien controla el desenvolvimiento de la narrativa a través de acertijos que las personas deben resolver y discutir.

La cosa en este caso fué así: NIN contrata a una empresa para el desarrollo del juego. La narrativa habla sobre un mundo distópico al que llegaremos en un futuro cercano, resultado de las acciones del gobierno de EEUU actual. En un concierto en Lisboa se venden unas franelas que, ocultas como “errores de imprenta”, contienen pistas a websites y un número telefónico. Una persona se dá cuenta de esto y lo publica en algún foro en internet de fans de NIN. En el website hay más pistas relacionadas a una conspiración del gobierno para infectar al país con un virus. En otro concierto, una persona encuentra en el baño una memoria USB que contiene una canción inédita de NIN, y la postea en internet. Cuando la comunidad analiza el mp3, la metadata contiene pistas a otro website. En otro concierto aparece otra memoria USB que tiene un archivo de sonido que, al ser analizado por la comunidad, alguien la pasa por un espectrómetro y consigue que contiene información de un número teléfonico en Cleveland que al llamar, se puede escuchar un mensaje de una mujer que es perseguida y asesinada por gente infectada con el virus.

De esta manera se fué desenvolviendo la trama que terminó en una convocatoria (también a manera de pistas y aún dentro del contexto del disco) a un grupo selecto de participantes a un estacionamiento, de dónde salió un bus camuflajeado rumbo a un depósito abandonado, rodeado de grupos armados en actitudes sospechosas. Después de escuchar un discurso sobre la importancia de ser escuchados, se les llevó a través de una serie de pasillos a un lugar dónde estaba la banda esperándolos para dar un show privado, que terminó al poco tiempo con la interrupción de un grupo SWAT armado que desalojó el lugar.

Si me preguntan, todo esto me parece una de las ideas más geniales que hayan salido de integrar a la sociedad con internet. En algún punto se hace delgada la linea que separa la realidad de la ficción, y esto es lo más intereante del asunto. Lamentablemente no soy fan de NIN, pero me gustaría que alguna de mis bandas favoritas algún día hiciera algo similar. Estrategia de mercadeo o no, es interesante ver cómo se puede ir más allá de una simple carátula de un disco y hacer que tú y yo nos involucremos más allá del simple consumismo.

Todo esto de los Juegos de Realidad Alterna no es nada nuevo, realmente. Ya se ha hecho anteriormente en muchas ocasiones, incluyendo en la serie de TV favorita de todos, Heroes, con el website de la empresa Primatech. También se ha hecho con Lost, Microsoft lo hizo para promocionar Windows Vista y muy notablemente con Steven Spielberg para promocionar la película A.I., creando un juego llamado “The Beast“. También hay un blog por ahí rondando sobre el N95, que definitivamente es más una estrategia de marketing viral de Nokia que un ARG, y no la veo con muy buenos ojos. Sin embargo, este ejemplo de lo que hizo NIN me impactó. Mucho.

El artículo de Wired tiene a su vez un par de acertijos fáciles de resolver, que llevan a dos links para dos videos que fueron parte del juego de NIN. Para quien le dé fastidio resolverlo, aquí los links al video 1 y al video 2. Éste último documenta la parte final del juego, con lo del bus y el mini-show.

Link a “Alternate Reality Game” en Wikipedia (Inglés)

2do Congreso Nacional de Diseño Web: Reflexión sobre el desarrollo web en Venezuela.

Tarima 2do Congreso Nacional de Diseño Web

El fin de semana pasado, el sábado 15 y domingo 16 de Diciembre 2007, asistí al llamado 2º Congreso Nacional de Diseño Web en Caracas, Venezuela. Fuí con un grupo de amigos profesionales también en el área, cada quien con ciertas expectativas sobre el evento, pero esperando pasarla bien y traernos buenas experiencias enriquecedoras.

Ojalá pudiera afirmar lo mismo en este momento. Para ir directo al grano: me siento estafado, y permítame explicar por qué.

Premisas

Reflexionando hoy y buscando ser objetivo, entro en la página oficial del congreso, a ver si es que debí tener otras expectativas. Encuentro lo siguiente:

El 2do Congreso Nacional de Diseño Web tiene como objetivo reunir a desarrolladores web, profesionales enfocados al desarrollo gráfico, programadores, estudiantes de diseño y carreras afines así como al público general [...]. No será un congreso de tecnología o diseño, será un congreso con enfoque académico-cultural de DISEÑO WEB.

Ok, hasta ahí todo bien, me siento incluído. Yo soy programador y diseñador web profesional (léase: con un título y/o varios años de experiencia trabajandole a otros) y busco aprender más, porque para ser completamente sincero y objetivo, yo no me siento un ser extraordinario en el ámbito, ni me las sé todas, ni fuí el creador de Wikipedia o Facebook. Soy un desarrollador promedio que busca ganarse la vida con lo que le gusta y ser cada vez mejor. Seguimos:

¿QUIENES DEBEN ASISTIR A ESTE CONGRESO?
Este seminario está dirigido a diseñadores gráficos, programadores, animadores, ilustradores, publicistas, directores de arte, desarrolladores, webmasters, gerentes de tecnologías de información y comunicadores visuales en general que deseen seguir creando experiencias gráficas impactantes, y a los aspirantes a convertirse en profesionales competitivos en el área gráfica y de la comunicación visual en el ámbito web.

Ok, YO debo asitir! Tengo la experiencia, conozco lo suficiente porque vivo de eso y a su vez quiero seguir creciendo. Sigamos:

¿QUÉ APRENDERAS EN ESTE CONGRESO?
Técnicas, metodologías y experiencias de las empresas más importantes de desarrollo web en Venezuela y SurAmérica [...].

SATISFACCIÓN 100% GARANTIZADA
No es una presentación de productos ni portafolios, es un congreso de dos días de formación y actualización profesional el cual busca convertirse en el punto de encuentro anual de todos los profesionales dedicados al desarrollo web en Venezuela.

Ok, excelente. Estoy vendido. 1) Incluyen a gente que ya es profesional, 2) Me van a enseñar cosas nuevas, 3) No voy a pagar para que me vendan productos de las empresas que van a hablar y 4) Van muchos como yo.

Sin embargo: no era para mi.

Brochure Empresa ParticipanteEl problema aquí es de expectativas, no de ego. Cuando usan las palabras “CONGRESO NACIONAL”, creo que uno espera encontrarse con un evento dónde te actualicen en nuevas tecnologías, nuevas tendencias, nuevas técnicas de desarrollo y con invitados que, sin ánimos de desprestigiar a ninguno de los ponentes, formen parte de las mismas. Sin embargo, esto debió llamarse “Jornadas de actualización en Adobe CS3″, lo cual me causa mucha gracia porque en el site dicen claramente que “No es una presentación de productos ni portafolios”, sin contar con el Brochure que me entregaron de una de las empresas participantes (ver a la derecha las pruebas incriminatorias). Además le agregaría a ese título “con viejas tendencias de la web”.

El Setlist

A ver si me explico, y para ello voy a ir de ponencia en ponencia.

1. “Fotografía Digital. De cómo la internet y las imágenes digitales cambiaron el mundo”. Lo lamento mucho por el señor que se paró a hablar, pero la verdad la exposición no tenía pies ni cabeza. Empezó hablando de fotografía y terminó hablando de Facebook y sus bondades de integración con iTunes, porsupuesto promocionando su propio website de fotografías en la mitad. Nada nuevo que ver aquí, y el señor podría mejorar su TPO.

2. Charla Técnica: Adobe Illustrator CS3. Interesante lo nuevo que hace Illustrator CS3, pero… ¿eso no está en el “What’s New” del producto? No sentí que me estuvieran enseñando nada si no más bien vendiéndome las bondades del producto, con el apuro que tenía ese señor. Prueba de ello es que en repetidas ocasiones se escuchaba decir “… y esto es completamente nuevo para esta versión”.

3. “Comercio Electrónico: haciendo de la web un negocio rentable”. Lamentablemente todo lo que el señor aquí decia, yo lo vi en la universidad hace más de 2 o 3 años. ¿Qué es lo nuevo? ¿Cual es el “Killer App”, dónde está lo revolucionario, la tendencia futura a la que me tengo que adelantar HOY para ser rentable MAÑANA?

4. “Experiencia y evolución: click aquí”. Este señor lo único que hizo fué venderme su empresa. Su mensaje principal: “nosotros nos adaptamos a los cambios en la web”. ¿Que no es eso natural en CUALQUIER negocio? Señores, merecemos a alguien que nos diga como adelantarnos a los cambios, como ser el agente de cambio. De eso se trata un CONGRESO NACIONAL, de escuchar las experiencias de la gente que lo ha hecho! Les invito a leer un poco los ensayos de Paul Graham, para que vean a qué me refiero. De paso me habla de una metodología de desarrollo tan estándar que la cosa no tiene chiste.

5. Charla técnica: Adobe Photoshop CS3. Ver el punto 2, arriba.

6. “Web 2.0 for dummies: Hacia dónde se dirige el negocio web y cuán lejos estamos?”. Cuatro (4) años tarde. Este señor se puso a hablar de myspace, facebook, flickr, wikipedia, youtube, google, etc, mencionando repetidas veces “eso es {inserte -nombre-de-empresa-web2.0-aquí}, uds ya lo conocen”. Claro que lo conozco! ¿entonces para que me vienen a hablar de algo que ya sé? ¿No era el objetivo del congreso actualizarme?

7. “Sistema de educación a distancia de la UCV, una experiencia en diseño y gestión de servicios web para el área académica universitaria”. Básicamente me hablaron de e-learning, cosa que también se estudia en las universidades y cualquier profesional con un poco de experiencia conoce. ¿En un CONGRESO NACIONAL?

Eso concluyó el primer día. Obviamente tenía pocas ganas de volver al día siguiente, pero tenía que justificar mi dinero de alguna manera. Además, ya había pagado el hotel.

El segundo día empezó un poco mejor, para mi sorpresa. Sin embargo, lo único que aumentó fue la calidad de los ponentes, no del contenido.

8. Charla Técnica: Adobe Flash CS3. Excelente ponente, a pesar de que también demostró las cualidades nuevas en Flash CS3, el señor se salió de la caja y preparó una excelente ponencia que la gente recibió con notablemente muchos aplausos. A eso fuimos!

9. “Como ser bloguero en vez de tener un blog”. Una vez más, casi 8 años tarde. A este señor le guardo mucho respeto porque es un excelente ponente, sus láminas fueron muy buenas, buen humor y buen contenido. Lamentablemente es algo que cualquier persona que navegue un poco en internet conoce, y no es nada nuevo para un profesional en el área, que era el objetivo del congreso. Interesante hubiese sido escuchar sobre cómo posicionar mejor mi blog (a nivel técnico - léase: hacer url’s y html más search engine friendly - y conceptual), cómo escribir contenido que atraiga a las masas, cómo hackear wordpress, etc.

10. Charla Técnica: Introducción a ActionScript. Ver punto 5, arriba.

11. Charla Técnica: Adobe Dreamweaver CS3. Por el amor a Cristo, ¿diagramó un site CON TABLAS? ¿No utilizó la vista de código? I rest my case.

Para este momento me fuí del congreso. Mis compañeros con los que fuí se quedaban dormidos, teníamos que viajar de regreso a Valencia y no queriamos salir de noche, y además sentíamos que perdíamos nuestro tiempo.

No conformes con la pésima calidad del evento, no nos quisieron entregar los certificados, algo por lo que YO PAGUÉ y es mi derecho. ¿Y si uno tiene una emergencia y se tiene que ir, como hace?

Lo que debería ser un Congreso Nacional: mi opinión particular.

Mi sugerencia para un próximo evento: por favor, no me sigan intentando vender lo que será Adobe CS4. Como el mismo señor Giampiero lo dijo: son un monopolio. Yo uso las herramientas de la suite CS3, si, y son excelentes. Pero no quiero pagar para que me hablen de algo que está en el readme.txt. En general siento que todo fue una excusa para hacer dinero vendiéndonos sus productos: se pagaron y se dieron el vuelto.

Para no caer tan mal a quién le haya gustado el congreso o a alguna de sus empresas participantes, si es que alguno llegase a leer esto, me gustaría sugerir temas para el próximo congreso y asi demostrar definitivamente mi punto en cuánto a qué creo yo que debería contener un Congreso Nacional:

1) Herramientas y paquetes tecnológicos para la oficina virtual: cómo encontrar y aplicar el mejor software en una organización. (Artículo de Ejemplo)
2) Cómo ser más productivo y crear valor siendo profesional Web (Artículo Ejemplo)
3) Cómo construir un sitio web de alto tráfico (Artículo Ejemplo)
4) Comparativa entre frameworks de desarrollo web (CakePHP, RubyOnRails, etc…) y metodologías de desarrollo (MVC, Orientado a Eventos, etc…).
5) Conceptos avanzados de fotografía: dominando el modo manual de una DSLR. (Artículo Ejemplo)
6) Cómo romper con las tendencias de diseño web2.0 y crear sites originales (Articulo Ejemplo)
7) Alternativas Open Source para el diseño y desarrollo web (supongo que esto no le conviene a Adobe :P).
8) Optimizando el código de tu aplicación web. Tips y Trucos.
8) Cualquier cosa de mi del.icio.us (tags: inspiration, entepreneurship)

Conclusiones

Lamento si ofendo a alguien con todo lo que he dicho, pero lo mantengo. Es mi opinión particular, mi modo de ver las cosas. Siento que como desarrollador web venezolano, estamos estancados por congresos como este. No hay incentivo a crecer, a romper paradigmas, a crear nuestras propias Wikipedias, Flickrs, Myspaces, etc. Nuestra propia Web 2.5. Y eso es lo que más me duele de todo este evento tan comercial: seguimos estancados aprendiendo de cosas que ya debimos saber 4 años atrás.

Ojalá alguno de los organizadores del evento llegue a leer esto, creo que siempre es bueno cuando se reciben críticas constructivas. No pido que lo tomen en cuenta, pero que al menos consideren mi punto de vista y reflexionen sobre el mismo. Hablo por 6 personas que asistimos, 6 profesionales egresados de una universidad, que sin ser ni considerarnos mejor que nadie de los que estuvieron ahí por el hecho de tener un título, consideramos que se puede ser mucho mejor por el bien de todos. Por algo asistimos: teníamos las expectativas de crecer aún más con lo que ahí nos pudieran decir. Quedamos defraudados.

Aquí viene otra burbuja (Web 2.0)

Me causó mucha gracia este video, está estupendo (Inglés requerido).

“Won’t you blog about this song?”

Youtube en HD (High-Definition)

Técnicamente no es HD (Alta Definición), pero ciertamente es una gran mejora! Con mi ancho de banda (1Mbit) costó un poco cargar, pero eso ya es culpa mía de no tener una mejor conexión. Éste es el futuro del streaming de videos, y sólo puedo imaginar las consecuencias… Finalmente podré ver Heroes en streaming! (hasta ahora no lo hago por la calidad de los videos en youtube, que es muy por debajo de lo aceptable para este tipo de cosas).

Fuente: Gizmodo