Es la idea, pero aún no la mejor interfaz
Cuando Augmented Reality se llamaba SixthSense Technology…
Real Time Augmented Reality, esto es el futuro:
Saludos,
Gorka
P.D. - esta plática es vieja así que puede ser que ya haya mejorado el proyecto…
Cuando Augmented Reality se llamaba SixthSense Technology…
Real Time Augmented Reality, esto es el futuro:
Saludos,
Gorka
P.D. - esta plática es vieja así que puede ser que ya haya mejorado el proyecto…
Voy a tratar de explicar un poco ciertos conceptos con los que he jugado ultimamente dada mi entrada al mundo de los negocios en Internet:
Content is king
Esta es la primera regla, ésta es la regla a la que Google (y todos los buscadores Web en general) le dan más peso. ¿Por qué? Simple, se responde con una sola pregunta:
¿qué ofrece mi negocio que no ofrezca alguien más?
Y NO ES UNA SOLA RESPUESTA, son todas las respuestas que se me puedan ocurrir desde hoy (que conocezco la pregunta) hasta siempre. Cada vez que tenga una respuesta a esta pregunta lo mejor que puedo hacer es desarrollar tal idea y publicarla como parte del contenido de mi página web (obviamente se puede analizar cada respuesta para incluirla como parte de un plan de negocio completo).
Las páginas web, websites, portales, etc. (como cada quien le quiera llamar) son más que un anuncio fijo en un periódico o revista. Hay que considerarlas como una publicación, mejor como un ente en sí, vivo. Hay que alimentar a este ente y el mejor alimento que puede recibir es material creativo, único e innovador.
Es através de este contenido que los buscadores web (google hace MUCHO enfásis en este punto) distinguen los buenos negocios/servicios de los típicos copiones (todos los hemos visto, son las típicas páginas con millones de links a otras páginas que no me resuelven/ofrecen nada por sí solas - y lo peor es que siguen pensando que pueden cobrar por tales links, hahaha, la sección amarilla dejo de funcionar cuando llegó el Internet chicos, el modelo de negocio YA lo repitieron MILLONES antes que ustedes, así que no crean que van a encontrar el hilo negro).
Además y MUY importante (lo digo primero por Google porque tengo más conocimiento de lo que ellos hacen, pero no dudo que todos los demás Buscadores Web tengan reglas similares), mientras más contenido se va publicando, Google entra más seguido a tú página para ver que nuevo contenido tienes, ES DECIR, si dos páginas publican algo nuevo al mismo tiempo, adivinen a quien le van a dar los créditos de ese “nuevo hallazgo” (pues sí, a la página a la que entre primero Google).
Distribution is King Cong
Sencillo: no todas las personas van a encontrar o buscar tus servicios a través de los buscadores Web, pero si existen una gran cantidad de herramientas de distribución (y para nada estoy hablando de páginas donde pagas para poner links, eso es estúpido) de contenidos. La idea es que cada quien pide el helado del sabor que le gusta: web directamente en la página de tu negocio, email si tienes boletines donde avises de nuevos contenidos, rss para los que ya se aburrieron de los newsletters y (por fin) redes sociales - todas estas son herramientas de distribución.
La última herramienta es tan importante en esta regla como en la siguiente: si a las personas les gusta ver que escriben otros en facebook o twitter o en orkut o en youtube o en flickr o en last.fm o en ……. (miles y millones de redes sociales, algunas de contenido y otras multimedia):
¿por qué no compartir los contenidos de mi negocio usando las páginas con las cuales millones ya se sienten agusto?
¿Quiere decir que ahora tengo que publicar diez mil millones de veces mi contenido en todas y cada una de las redes sociales para que si llego a tener un seguidor en cada una ese pobre diablo esté al tanto de lo nuevo que publico? - en una sola palabra: SÍ
¿Cómo le hago? - Este es para otro post pero yo tengo un sistema con el cual centralizas la publicación de contenidos y se distribuye a todas las herramientas de distribución en automático (y además es multi-lenguaje). Así yo publico en mi web y sea donde sea que a las personas les interese lo que yo digo, lo van a poder ver.
Communication is Omnipotent
Y la tercera y más importante regla: el diálogo. Las herramientas de distribución son un arma doble (y de doble filo, ahora lo platicamos…) con la cual puedo generar un diálogo con todas aquellas personas que se interesan por mi negocio/servicios.
Dudas, comentarios, servicios específicos, crónicas, relatos, etc. la idea es que cada quien decidirá interactuar conmigo a través de su herramienta de distribución favorita (formas de contacto, email, formas de comentarios en mi página web, formas de comentario en redes sociales, retweets, etc) y lo que hay que lograr es que ese mecanismo central de distribución de contenidos pueda también recibir información a la cual se le pueda contestar y con eso generar más respuestas y más contestaciones, etc.
¿Por que? - porque así una duda que me viene en twitter (ejemplo nada más se puede hacer para cualquiera), la podré contestar directamente en todas y cada una de las demas herramientas de distribución. Así podrán conocer la duda y la respuesta a la duda en todos lados.
¿Para qué? - primero, para no tener que responder dos veces la misma pregunta y segundo, para que esto genere más dudas o más comentarios, o más relatos o más lo que sea, todo para lograr interacción con todas aquellas personas que se interesan por mi negocio/servicios y esa interacción se reflejará como un sólo concepto: COMUNICACIÓN.
Ahora hemos creado nuestra propia red (web) de distribución y diálogo con todos aquellos a los que realmente les interesa lo que ofrece nuestro negocio.
El lado oscuro: no siempre los comentarios van a ser positivos. Pero, en una sola idea: siempre se deben aprovechar cualquier tipo de interacciones como retroalimentación con la cual se podrá mejorar mi negocio/servicios.
El lado bueno (o genial): todo este diálogo, se transforma eventualmente en NUEVO CONTENIDO y puff!! mágicamente estamos ahora generando nuevo contenido que se está distribuyendo y con el cual se está interactuando constantemente.
Las tres reglas se convirtieron en ciclo y un ciclo que lleva al exito.
Saludos,
Gorka
Empecemos por lo fácil: Un tag cloud es una representación gráfica de keywords que resalta algunos aspectos de la lista total. Desde popularidad, hasta eficiencia (referente a ciertos aspectos también, ejemplo Bounce Rate, etc) o el más conocido que es el porcentaje de aparición de palabras en una página o portal. En general los elementos en un tag cloud son links que refieren a links donde se usan/definen tales keywords.
La biblioteca pública de Nueva York en su página de Laboratorio (wow! a ver si eso alguna vez llega a México. Tendrá la Biblioteca Pública página propia?) están aprovechando el nuevo Google Analytics API (otra vez con manzanas: Google Analytics es el mejor programa gratuito para llevar estadísticas de un sitio web y esto lo digo por todo el agregado de estadísticas que se pueden lograr. El API es sólo un set de herramientas para que se puedan usar los datos sin tener que entrar a su página, es decir se pueden manipular en una aplicación/página propias) para entender diferentes aspectos del uso de la página de la Biblioteca Pública.
Entre estos usos decidieron hacer tag clouds con lo que los usuarios buscan y luego se dieron cuenta que pueden diferenciar y crear las listas para tales tag clouds basados en el lugar donde están los usuarios, es decir que alguien en New Jersey vería un tag cloud diferente a alguien en California.
De ahí entraron a debate de que tanto esto es válido (legal y moralmente) pues es una manera de controlar lo que las personas hacen, si ya saben que un tema es popular en una región es más probable que eso genere clicks de gente de esa región si les enseñan los links.
Ellos dicen que al usar el agregado de los datos no hacen esto de manera personal, aunque cualquiera que sepa un poco de estadísticas se daría cuenta que si una sola búsqueda se hace en una región y esa misma persona vuelve a usar la aplicación estaría viendo datos que el mismo genera, es decir TOTALMENTE personalizados.
Bueno, esto es exactamente lo que yo quiero hacer para TrotaMexico: quiero llevar un perfil por usuarios (más que por regiones) de popularidad, eficiencia, uso y desuso, etc. (y no sólo para el portal, sino también para mails! Esto si que sería algo nunca antes visto). De manera que las diferentes imágenes, links y hasta contenidos sean DIFERENTES para cada persona que entra al portal y sean preferentes para que esa persona siga haciendo click o se mantenga en el sitio.
¿Por qué? ¿Cómo? - El cómo aún no lo tengo pero ya lo estoy trabajando, el por qué pues es casi obvio (y también maquiavélico) si yo logro conocer a mis usuarios al punto que sé donde hacen click, cuando se quedan, qué los intriga, qué los demanda, qué los invita puedo ofrecer mis servicios de manera ESPECÍFICA buscando una eficiencia del 100% (no se asusten yo no tengo que hacer millones de calculos al minuto, eso lo hace el sistema). Y esto la verdad no es tan raro, Google Adsense ya lo está haciendo con su programa de Interest Based Ads.
La época de las páginas estáticas está por llegar a su fin y es hora de empezar a crear páginas cuyo contenido es dinámico y no me refiero a canalizar contenidos según un catálogo sino a crear páginas vivas que se visten y generen según lo que el usuario pide, según lo que ha enseñado que quiere y según lo que su región demuestra más popular.
Saludos,
Gorka
Nota.- Aún no encuentro otro nombre para este tipo de desarrollos.
En el mero principio del principio,
Dios creó los cielos y la tierra. Pero, quién
sabe por qué, la tierra estaba desordenada y vacía,
y las tinieblas estaban sobre la faz del abismo, que sepa
Dios de donde había salido. Y el Espíritu de Dios se
movia sobre la faz de las aguas, o sea que las aguas eran
medio oscuras y las tinieblas no se diga.
Y dijo Diosito: haya luz, porque con esta oscuridad
no se ve nada y va a salir todo medio desordenado.
Y vio Dios que la luz era buena, de corriente alterna, y ya
con luz pudo separar el día de la noche, con un intermedio
que llamó tarde, antes que se hiciera de noche.
Luego dijo: haya expansión enmedio de las aguas, de modo
y manera que las aguas que estaban sobre la expansión
quedaron separadas de las otras, las que estaban debajo de
la expansión esa. Bueno ustedes me entienden…
Y a la expansión la llamó expansión, pues de momento
no se le ocurrió otro nombre. Y asi fue.
Mas al ratito llamó la expansión cielos. ¿Cielos?
¡Santo Dios, si ya había hecho al principio los cielos!!
No, definitivamente no era su día. No resultaba tan fácil
hacer una Creación, de modo que la Expansión se siguió
llamando expansión, y que los teólogos e intérpretes se
hicieran bolas. Y así fue el día segundo.
Y dijo Dios: juntense para la foto las aguas que
están debajo de los cielos, en un lugar mojado, y
descúbrase lo seco. Así quedaron separadas las partes
secas del agua de las mojadas de la tierra.
¿Pero acaso no había ya creado al principio del
principio la Tierra? ¡Qué lío! Era necesario poner un
poco de orden antes de seguir creando cosas.
Vio así Dios que no era bueno como estaba, y dijo:
Deshágase todo para volver a empezar, antes que haya
testigos de mis divinas equivocaciones.
Y así fue borrón y cuenta nueva…
rius
Saludos,
Gorka
No creo estar buscando nada pero tampoco hago esto sólo por hacerlo. No busquen algo que tal vez no esté aquí, sólo son unas notas que iba haciendo y que tal vez luego ordene (o no).
Las 7 puertas lógicas:
Existe una octava? Kaos? GoD?
a 8ava implica b
a 8ava implica ~b
Dos resultados a una misma entrada? Sin importar los estados anteriores ni futuros. Completamente atemporal?
¿Qué pasa si generamos un algoritmo que mezcla todas las 7 puertas contra todas (estilo round robin)?
Y a cada permutación le damos dos entradas (0 y 1).
Cómo se ven las tablas de verdad? Son simétricas? Generan algún patrón? Generan Kaos? Algún sentido?
Que pasa si con el tiempo el sistema cambia las reglas? Que pasa si las cambia según lo que va pasando/aprendiendo? Es un sistema experto cuyas posibilidades no se conocen.
Otra vez sistema experto… será por ahi?
Un sistema que aprende a ser caótico tal vez?
Lo que están buscando en el mundo al hacer un chip caótico es lograr un chip que no tenga nada harcodeado sino que pueda ser lo que necesite ser en el momento que se lo piden. Es dos (o tres o cuatro o infinitas) cosas al mismo tiempo -> gato de Shröedinger definitivamente.
Parece ser que la definición de Caos va más hacía la posibilidad de ser todo ante la improbabilidad de ser una sola cosa específica.
Retomando más arriba:
a 8ava implica b
a 8ava implica ~b
pero lo más importante aquí para lograr esto es el contexto <- definir contexto.
Es decir no tiene nada escrito, no existe nada hasta que se le pide algo, pero la respuesta va directmente relacionada a lo que se le pide (contexto?) Te suena a GoD?
Básicamente el chip caótico es todas las puertas lógicas al mismo tiempo y se reacomoda según la salida o más bien reacomoda la manera de interactuar de sus piezas internas para generar la salida que se le pide?
PARÉNTESIS: Algo así ya se hace
SDR - software defined radios: componentes que antes usaban hardware ahora se hacen en software; hence virtuales (ejemplo ecualizadores, amplificadores).
FIN PARÉNTESIS
¿Cómo puede cambiar tan rápido? Es fácil imagina un sistema estilo butterfly effect, el mínimo cambio reajusta todo. Un solo cambio de voltaje reajusta el siguiente paso, algo así como el cerebro la descarga inicial en una neurona pone todo en movimiento, pero en el cerebro hay memoria no? Aunque técnicamente dónde está la memoria, los recuerdos?
Qué pasa si son virtuales? Es decir no están hardcodeados eso permite un sistema caótico? Algo hardcoded virtual, en memoria RAM, en cache? Es esa la solución?
Caos es algo que es por el tiempo en el que tiene que ser? Y después no es!?!
MPI (me parece importante, no confundir con npi) - Un S.E. que es el que decide que sacar según lo que se le pide, está adivinando? Es por gustos? Tiene gustos el S.E.? Hay algo más que le impulsa a tomar una decisión?
Lo importante de los sistemas caóticos no es su impredictabilidad (unpredictable - que sean impredecibles ya en español de verdad, hahaha) sino que son MUY sensitivos al cambio, es decir, generan respuestas diferentes a cambios muy sencillos en las entradas (lo más importante es que se empiezan a considerar elementos que antes no importaban para el funcionamiento):
Ya no es:
a 8ava implica b
Sino a,c implica b aunque en términos caóticos debe ser algo así como: a,c,infinito de todo implica b o algo aún más chido (este es mío) a,c,d,e, ~b (es decir NO b, siempre estuvo ahí pero nunca se vio) implica b (!!! Claro !!! No suena obvio??!!) Es como si la entrada ya fuera pidiendo la salida (hahaha, ya deja de meter GoD).
De hecho crear un software que responda a tal flexibilidad no es nada dificil, es decir, se puede crear a nivel de máquina, lo que lo vuelve infinitamente sencillo y rápido (de hecho lo están creando a nivel de hardware, lo que ya es milliones de veces más increible).
Caos va vinculado a sistemas dinámicos - es decir sistemas cuyos estados cambian con el tiempo (definitivamente un S.E. que controla su propio código fuente) con una gran sensibilidad (que mariposos)
…result of this sensitivity, which manifests itself as an exponential growth of perturbations in the initial conditions, the behavior of chaotic systems appears to be random
CON TODO Y QUE ESTOS SISTEMAS SON DETERMINÍSTICOS. Ahí está el catch, no son caóticos, sólo no se han mapeado todas las permutaciones posibles: se les llama sistemas caoticos determinísticos o simplemente caos. (QUE???)
La definición de Caos va más de la mano de lo impredecible como la antítesis de Cosmos (orden o sistema armoníco). En griego no viene de desorden sino del vacío original del espacio. La palabra griega para desorden no se puede escribir aquí (hahaha no porque el mundo va a explotar, sino porque está en carácteres griegos, pero búsquenla).
Entonces? Se puede crear un sistema Caótico Real? Un sistema justo (esta es sólo porque acabo de ver Batman II)?
Kaos es caótico porque tiene todas las posibilidades? GoD es caótico porque lo que se le pide es lo que da, es decir si cambia la entrada en lo más mínimo también cambia la salida; supersensibilidad exponencial al cambio?
O más bien tengo que buscar otro experimento que realmente sea un sistema caótico (no como la definición lo dice, sino como nosotros lo queremos (ahhh, bueno… como yo lo quiero).
Saludos,
Gorka
Lasting
Interaction
Foments
Existence
Premisa: Usando de ejemplo una página de Internet, se define como la “vida” de la página de Internet todo el tiempo que transcurre mientras una persona entra a ésta y hace click y sigue navegando en la misma página sin importar el tiempo que transcurre entre cada click (a veces puede ser un segundo, a veces días - aunque eso es un caso raro). Y se define como “muerte” para la página de Internet cuando la persona a) cierra el navegador, b) hace click en un link que lo lleva a otra pagina que no sea del mismo dominio (a otra página totalmente diferente) o c) cualquier evento externo que evite que el usuario siga interactuando con la página. Las páginas de Internet poco a poco han ido mejorando en el sentido de hacer sentir bienvenido a la persona que las visita, desde un simple Bienvenido con el nombre de la persona, hasta recomendaciones de música, amigos u otros definidos por la actividad que genera la persona en tales páginas. Sería lógico pensar que eventualmente las páginas tienen que desplegar contenido completamente diferente a cada persona que las visite si quisieran lograr “personalizar” al grado máximo. Aunque lógico, ésto no es tan intuitivo, pero sería algo así: cada vez que yo entro a una página de noticias sólo se me enseñan las noticias que realmente leería, pues no hace falta enseñarme encabezados (digamos Financieros) con los cuales nunca he interactuado (digamos que siempre veo Deportes). Aunque para ese ejemplo la estrategia seguida ha sido que el mismo usuario sea el que define su “página de Encabezados” o su “Starter Page” o los “Feeds” que lee frecuentemente, es ilustrativo. Un mejor ejemplo sería así: cuando yo busco en Google algo, recibo ciertos resultados, cuando tú buscas en Google lo mismo, recibes diferentes resultados! Y muchas veces aunque sean resultados similares aparecen en diferente orden1.
¿Qué pasa entonces? Pues que los desarrolladores de las páginas de Internet ya no escriben “contenido” sino que tienen que escribir páginas (scripts o programas) que sean las que “escriban” el contenido según quien lo esté pidiendo.
Ahora sí, al experimento (para todos los que llegaron hasta aquí):
Se propone un programa de computadora que funcione en Internet (como interfaz una página Web) y que sea capaz de crear dinámicamente contenido de tal manera que el usuario SIEMPRE continue interactuando con el sistema. El programa buscará combinar diseño con contenido de manera que el usuario no deje de interactuar con la página através de link y/o redirecciones automáticas. Para esto el programa debe ser capaz de reconocer a la persona que lo esté usando y definir su perfil de usuario (probablemente cada persona necesite diferentes combinaciones de diseño/contenido/interactividad para no dejar “morir” al programa)2.
Si el programa lograra definir con exactitud el perfil de cada persona que lo use, será capaz de evitar que la persona deje de leer/escribir/interactuar con el contenido que este despliegue. De esta manera el sistema se mantendrá en “vida” hasta que sea un evento externo lo que termine tal interacción (un terremoto, falla de luz, la muerte del usuario, etc).
Sin realmente ser “conciente” de sí mismo el sistema será capaz de recopilar y usar información que le permitan seguir “viviendo”.
Saludos,
Gorka
La verdad es que la idea de búsquedas personalizadas a mi me caga, siento que se pierde toda la objetividad y se le quita el poder al usuario de decidir realemente “que es lo que le funciona”, sin embargo tiene sus ventajas, tal vez en otro post describa ambos escenarios. Además que el hecho es que para lograr algo así tienen que saber exactamente quien es el usuario, lo cual quita la privacidad, pues todo el tiempo estamos siendo vigilados para lograr definir bien nuestro “perfil”. ↩
Hoy en día, esto ya existe, así que no se asusten. A los que saben como hacerlo, Internet en un medio donde ya no existe la privacidad. ↩
¿Qué es?
Básicamente sirven para poder obtener información para enseñarla en una página Web sin tener que recargar toda la página. Dado que las páginas muchas veces tienen información que siempre es la misma (menús, banners, footers, headers, sidebars, etc) es más rápido sólo recargar el contenido en sí.
¿Que diferencia hay?
Multiprocesamiento. Lo cual permite que todo sea más rápido.
Tecnologías
HTML es un lenguaje orientado a eventos (click o no click), es completamente síncrono, no pueden existir dos eventos al mismo tiempo. Es decir, un solo proceso de forma secuencial.
Flash y AJAX son tecnologías que pueden usar eventos asíncronos. Pueden existir tantos eventos simultáneos como el PC pueda llevar a cabo y pueden ser de muchos tipos diferentes (interacción con todos los periféricos de la PC). Es decir “N” número de procesos en forma totalmente descontrolada (pero controlada por event Handlers).
Aunque AJAX surgió mucho después de Flash, pronto se volvió muy popular (eso dicen unos amigos que tengo, hahaha, que nerd) porque se basa en Javascript y este lenguaje no le pertenece a nadie. En cambio Actionscript es de Macromedia (hoy en día de Adobe).
Todo este post es para presentar un tipo de recargas asíncronas que no requiere de ninguna de esas dos tecnologías y funciona de la siguiente manera:
En un HTML se carga un IFRAME invisible (este va a ser el espacio donde se va a cargar continuamente la información), y los necesarios DIV’s (pueden ser otros tags, pero estos funcionan bien) como contenedores. La idea es que los links cargan la información en el IFRAME, luego se le saca el innerHTML y se manda al DIV correspondiente. Si todo está bien planeado y bien organizado no hace falta tener wrappers extras como XML para transportar datos sino que directo en el IFRAME se puede cargar la info tal cual se vaya a desplegar y punto. Recargas asíncronas sin necesidad de aprender Actionscript (LoadVars o XML) ni AJAX (HTTPRequest).
Saludos,
Gorka