junio 01, 2010

Google Gadgets


Recuerde que..
Este blog esta desarrollado en idioma español pero utilizando Google Traductor puede adecuarlo al lenguaje de su preferencia.. Favor utilice la opcion del recuadro superior derecho... y Bienvenido a Integracion Google.


En términos generales, Los gadgets de Google son objetos o aplicaciones en miniatura desarrollados para ofrecer contenidos dinámicos que pueden ser ubicados en cualquier lugar de cualquier página web. Los Gadgets pueden ser muy útiles para su uso en el trabajo (como lista de tareas, conversor de monedas, calendario), en la escuela (calculadora, Wikipedia, herramientas de traducción), o simplemente pasar el tiempo (noticias, blogs, juegos).

El término gadget (o widget), también se ha dado a una nueva categoría de mini aplicaciones, diseñadas para proveer de información o mejorar una aplicación o servicios de un ordenador o computadora, o bien cualquier tipo de interacción a través de Internet, por ejemplo una extensión de alguna aplicación de negocios, que nos provea información en tiempo real del estatus del negocio u organización.

Un ejemplo de gadgets en una computadora serían los gadgets del Dashboard de Apple sobre Mac OS X Leopard, o los de la barra lateral de Windows, que viene incluida en el nuevo sistema operativo de Microsoft: Windows 7 y Microsoft: Windows Vista; y por supuesto, los Gadgets de Google, que pueden ser instalados en iGoogle, Google Desktop o en cualquier pagina Web que desarrollemos.
(fuente: Wikipedia)

Los Gadgets de Google son en especifico aplicaciones desarrolladas en XML, HTML y JavaScript, en donde un archivo XML es el contenedor de la aplicación (y en el se describe datos estructurados que tanto los programadores y las computadoras podrán leer y ejecutar), y que soporta instrucciones HTML para dar formato al espacio de la pagina web utilizado por el gadget, y como ya conocemos en el estandard opensource, también permite que nuestro código HTML soporte Javascript, que es un lenguaje de comandos que utilizamos para añadir comportamientos dinámicos a nuestras paginas y desarrollos web.

En resumen entonces, desarrollar Gadgets es muy similar a desarrollar paginas web, y de hecho debe resultar mas sencillo, pues en este caso se trata de objetos o aplicaciones especificas que luego ubicaremos adecuadamente en nuestras paginas web... pero en el cual debemos poner especial cuidado en las sintaxis y opciones que nos proporciona el contenedor XML, el cual también podrá interactuar con nuestros códigos HTML y Javascript.

Como una practica de aprender a utilizar y desarrollar los gadgets de Google, recomedamos seguir paso por paso los avances del Tutorial de Seoish, el cual presenta las siguientes ventajas:
  • Nos alecciona para trabajar con iGoogle, y nos explica paso por paso como ir preparando la pagina inclusive para desarrollar y probar en ella misma nuestros Gadgets utilizando nuestra cuenta Google (y ya hemos reiterado que, con dicha cuenta podemos utilizar los múltiples servicios que Google nos brinda, como GMail, YouTube, Google Docs, App Engine, Albumnes de Picasa, Blogger, Google Maps, Google Earth, etc. entre los que podemos haber usado siguiendo los casos propuestos por nuestros códigos hasta la fecha).
  • Tambien nos explica al detalle como usar el Google Gadget Editor (GGE), e inclusive nos indica algunas peculiaridades del editor que debemos superar (lean con detalle los comentarios, asi como el manejo del caché de Google).
  • Asimismo, nos explica las partes del código Gadget (XML), y como se utilizan con un caso practico (Hello World e il Tiger).
  • Detalla como utilizar los tipos de contenidos actuales de XML para Gadgets: HTML y URL (ejemplo Big Brother 9 - Live Cams), y a ver a los Gadgets como mini-webs, así como a ver a todas las aplicaciones web como Gadgets.

Y continuando con nuestra secuencia de casos para utilizar Google Spreadsheets como fuente de datos, les alcanzo el código de un Gadgets para "consultar" utilizando visualizaciones Google, en un formato mas adecuado para los tamaño de algunos Gadgets (pero que debemos ajustar para casos específicos dependiendo como los presentemos en iGoogle o en nuestras webs)
):

IG_Productos.rar, que nos muestra una Visualización tipo Tabla de nuestro documento "Spreadsheet Productos": los productos y su fecha de venta.

IG_Clientes.xml, que nos muestra Visualizaciones tipo Tabla y PieChart de nuestro documento "Spreadsheet Productos": nuestros clientes, monto de venta, cantidad de productos vendidos y monto cobrado...



mayo 15, 2010

Web 2.0: Los negocios y las redes sociales.


Recuerde que..
Este blog esta desarrollado en idioma español pero utilizando Google Traductor puede adecuarlo al lenguaje de su preferencia.. Favor utilice la opcion del recuadro superior derecho... y Bienvenido a Integracion Google.

En este post vamos a comentar un poco sobre el concepto de Web2.0, y que representa el uso de las redes sociales para los negocios...

El termino Web 2.0 (vigente desde el año 2003) está comúnmente asociado con un fenómeno social, basado en la interacción que se logra a partir de diferentes aplicaciones web, que facilitan el compartir información, la interoperatividad, el diseño centrado en el usuario y la colaboración a través de Internet. Ejemplos de la Web 2.0 son las comunidades web, los servicios web, las aplicaciones Web, los servicios de red social, los servicios de alojamiento de videos, las wikis, blogs, mashups y folcsonomías. Un sitio Web 2.0 permite a sus usuarios interactuar con otros usuarios o cambiar contenido del sitio web, en contraste a sitios web no-interactivos donde los usuarios se limitan a la visualización pasiva de información que se les proporciona.
(fuente: wikipedia)

Bajo estos conceptos, una aplicación nativa del concepto de Web2.0 aplicada a los negocios serían las campañas de mercadeo y publicidad con la participación de los mismos "clientes" o "consumidores" de nuestros productos o servicios, pero debe considerarse que, también se le puede utilizar con bastante acierto dentro del campo motivacional, de instrucción y capacitación, y para el seguimiento de "casos" ó temas específicos, tanto en forma "pública" (toda la red), como a nivel "intranet", dentro de una organización, con los empleados y colaboradores de dicha organización o empresa, entre otras aplicaciones.

Ya centrándonos en lo que respecta los negocios, el principal empleo del concepto Web2.0 se orienta principalmente, como ya hemos indicado, en el campo de la publicidad y mercadeo, pero resulta conveniente considerar los siguientes aspectos:

primero, debe tenerse en cuenta el uso combinado en forma armoniosa de elementos tipo Blog (como Blogger, WordExpress o Ning por ejemplo), con herramientas ma "ligeras" pero de uso muy difundido y vigentes.. como Facebook y Twitter, así como de otras redes sociales que puedan tener importancia y aceptación en nuestro medio local como Yahoo, Sonico, Netlog, etc.; pues juntos van a constituir nuestra manera "corporativa" de penetración social a los mercados y "nichos" donde tengamos presencia ó queramos  incursionar, el cual ha de transformarse en nuestro "comunidad social". Cada uno de estos elementos que utilicemos tiene un objeto distinto: así podemos utilizar Blogger para contactar directamente a nuestros clientes y profundizar una idea, producto, concepto ó servicio con nuestros "usuarios consumidores"; ó Facebook para difundir lo mismo, pero de manera "global" (tratando de aprovechar su cartera de casi mil millones de usuarios), y todo ello de una manera sumamente atractiva y sugestiva; y por supuesto, utilizar Twitter para "perifonearlas" y causar el efecto "virulencia"; y prácticamente creo que, con todas estas herramientas, todas gratuitas en lo que concierne a su uso estándar (pues existen servicios de pago como son los Avisos de Facebook o Google Adwords); son más que suficientes para iniciar verdaderas campañas de mercadeo tanto para pequeñas y medianos negocios, pues considérese que las grandes compañías ya buen tiempo las vienen empleando... y revisando algunas experiencias al respecto, podemos observar que el "elegante" y muy vigente formato de Facebook, la facilidad de difusión de mensajes a través de Twitter y los contactos personales que podamos desarrollar a través de nuestros Blogs, bien podría hacer prácticamente innecesario el desarrollo de paginas web propias, excepto que por temas de seguridad se llegue al e-commerce o manejo de información que requiera discreción como manejo de pagos, claves de acceso, ó información técnica ó sensible de nuestros productos, servicios o del negocio.

segundo, debe tenerse presente que si consideramos utilizar un mercadeo social, pues este debe ser monitoreado de forma permanente manteniendo un adecuado nivel de comunicación y respuesta con nuestros usuarios, seguidores y clientes, pues si lo dejamos para "cuando tengamos tiempo", los usuarios y seguidores de nuestro servicio web rápidamente van a notarlo, y por supuesto, dejar de seguir nuestros "servicios sociales". Interesante la idea del empleado de mostrador que muchas veces dispone de mucho tiempo "no productivo" para nuestros negocios.. a quienes podríamos recurrir previa capacitación respecto a los objetivos de nuestro negocio, y de "modales sociales", pues debe mantenerse un estilo de comunicación y respuesta que pueda identificarnos; asimismo, debe tenerse presente los conceptos de Asistencia Virtual y tele-trabajo, mediante el cual podemos recurrir a servicios de terceros que podrían asesorarnos y ayudarnos a definir el perfil social de nuestro negocio, diseñar las formas de interrelación de las redes sociales que utilicemos, y además, dedicarse a revisar y responder las múltiples entradas y comentarios de nuestros usuarios, clientes y seguidores, e informar directamente a los encargados de la dirección del negocio respecto a los resultados tangibles de nuestra red de mercadeo social.

tercero, reiterar que si nuestra empresa o negocio va a utilizar bondades de los servicios Web2.0 resulta necesario definir y establecer un formato ó modelo "propio" conveniente para cada caso, pensando inclusive hasta en la posibilidad de empleo de múltiples idiomas, pagos "on line", y servicios de entregas directas a domicilio... dependiendo en cada caso y por supuesto, de nuestros productos y/o servicios ofertados, aunque esto signifique muchas veces incluso cambiar y/o adecuar nuestros canales vigentes de comercialización

Otro plano es el control y manejo administrativo, Internet ya prácticamente nos ha demostrado que es bastante estable y que soporta sin mayor problema millones y millones de datos y de usuarios, y con niveles bastante aceptables de seguridad (dependiendo de los navegadores, herramientas y modo de desarrollo que utilicemos), pero su empleo a nivel administrativo contable, prácticamente es bastante escaso ,y su empleo es aún mayoritariamente a nivel de mercadeo, y por eso termino esta entrada indicando que necesariamente va a existir Web3.0, que es cuando no solo las aplicaciones sociales de las organizaciones, empresas y personas estén en la red.. sino cuando inclusive los aplicativos de organización, gestión y control administrativo también lo estén, aunque esto ya tienen nombre y apellido: "Cloud Computing" y "Grid Computing" (los enlaces indicados están escritos en español, pero recomendamos su lectura usando las diferentes opciones de lenguaje de wikipedia ó haciendo uso de su traductor de idiomas preferido)


UN CASO PRACTICO

Para redondear mejor la idea presentemos un caso practico que ya hemos planteado durante el desarrollo de nuestros codelabs:

  • Como Manejar y Controlar un Negocio "retail" de venta de productos Cosméticos, de Belleza, y otros Articulos diversos para el Hogar.
Planteado el caso vale destacar que nos conviene recurrir a las redes sociales para difundir nuestro negocio.. mejor aún si es posible utilizar dicha plataforma para facilitar nuestro manejo y control del negocio, y el cual básicamente debe centrarse en las siguientes operaciones:
  • Registrar y Controlar los pedidos ó solicitudes de nuestros clientes y usuarios..
  • Registrar y Controlar nuestras Compras.. para que podamos tener idea de lo que tenemos en stock, lo podamos ofertar.. y atender los pedidos de nuestros usuarios.
  • Registrar y Controlar nuestras Ventas y Cobranzas.. para que podamos tener idea de lo que cuanto hemos vendido, cobrado.. y por supuesto cuando tenemos por cobrar y a quienes..
  • y por supuesto, aprovechar las ventajas de la Web 2.0 para difundir y afiliar mas clientes a nuestro negocio, y por supuesto, hacer mas "moderno", ameno y fácil  la interrelación con todos ellos... y por supuesto también, (porque no), pensar en eBusiness y eCommerce para facilitar el registro de pedidos, pagos, entre otras posibilidades..
Pues, todo lo descrito puede realizarse utilizando portales especializados (si desean recurrir por esta opción conviene  que revisen proyectos tipo Magento, que incluso tiene su opción opensource), donde por supuesto, había que adquirir nuestro propio dominio (nuestro nombre ó dirección personalizada en Internet como minegocio.com, minegocio.net, minombre.pe, otronombre.us, denuevo.la, etc..como estimemos conveniente y no olvidando considerar el alcance y las posibilidades de nuestra organización o negocio), y esto ahora ya no es caro, desde US$10 al año; pero también sería necesario adquirir un servicio de hosting (que tampoco ya no es caro: desde US$10-15 dolares mensuales dependiendo mucho del tiempo de contrato de 1 o mas años); y por supuesto, el costo de desarrollo y personalización del portal, que nos puede costar de US$1,000 a $10,000, dependiendo del desarrollador que contratemos, y donde el costo principalmente dependerá, del tipo de gestión administrativa asociado a nuestro proyecto: solo compras con pago on-line adelantado, que es el más convencional; con pagos contra-entrega, con opción de créditos y cobranzas, inclusión de flujo y cierre de caja, con todo lo anterior, etc.

Pero debemos tener presente que existen maneras de reducir los precios y tiempos de desarrollo de nuestros proyectos recurriendo a las mismas redes sociales "convencionales" que ahora conocemos, y a otros desarrollos que ya están empezando a mostrar sus bondades, y nos referimos principalmente al empleo de la plataforma blogger de Google y las "fanpages" de Facebook, las que incluso dependiendo del menor o mayor grado de especialización de nuestro negocio o servicio, pues podrían incluso trabajar juntos (consideramos que el uso de blogs es para poder explicar temas de manera mas detallada de lo que podríamos hacer en las entradas que ofrece Facebook).

El caso es que trabajando con la plataforma blogger de Google tenemos acceso a "entradas" y "páginas" que podemos desarrollar utilizando HTML, CSS y Javascript de la misma forma convencional con que se desarrolla cualquier pagina Web, y utilizando algunos servicios sociales disponibles para dicha plataforma, como "Google Friend Connect" y la API Opensocial, pues podríamos identificar a cada uno de nuestros usuarios (y por supuesto a los administradores del negocio), a través de una "ID" única, lo que constituye la base para poder iniciar cualquier tipo de "sistema de gestión" en la web.

Lo mismo ocurre si trabajamos con Facebook, donde empleando el SDK Javascript y otros que se nos provee (el SDK para PHP como back-end por ejemplo), pues también podríamos identificar a todos nuestros usuarios y clientes empleando la "UID" de cada uno de ellos..

Ambas plataformas son "gratuitas" (e indican que siempre lo seguirán siendo), pero vale preguntarnos como poder asociar a estos entornos de desarrollo la gestión y control de nuestros proyectos.. y como indique al inicio de esta entrada, podríamos recurrir a proyectos eCommerce ya consolidados, pero en este caso, estos proyectos principalmente se instalan sobre servicios de hostings convencionales bajo plataforma LAMP ó WAMP (de Linux ó Windows + servidor Apache + base de datos MySQL + lenguaje PHP), y con una estructura de desarrollo ya establecida (y tal vez bastante complicada para usuarios o programadores promedio).  ..vale entonces preguntarnos si sería posible comenzar con estos servicios sobre plataformas más "faciles", de uso más difundido y accesible para muchas personas, como son las "hojas de cálculo" ..y vale resaltar también, que esto es totalmente posible, utilizando los "formularios" y los servicios UI y GUI Builder de las App Script de Google, con la ventaja que su formatos nativo es "https", lo que le permite incluso ser incluidos dentro de las aplicaciones facebook como aplicaciones iframes externas, cuyo principal requisito desde octubre del 2011, es que los desarrollos que realicemos para ser incluidos dentro de Facebook, como URL ó servicios "canvas", deben contar una URL segura propia, por lo que si deseamos, que algunas páginas o desarrollos de nuestros servicios web alojados en un servicio de hosting externo, y bajo nuestro dominio, puedan ser "cargados" dentro de facebook, pues ese servicio de hosting debe proveernos URL seguras "https".. y no solo las convencionales "http".

Algo que vale también resaltar, es que la plataforma blogger de Google no provee URL seguras, por lo que no podríamos colocar "paginas" o desarrollos blogger dentro de Facebook.. pero tampoco es necesario recurrir a un servicio de hosting de "paga" que nos provea el servicio para poder incluir nuestros desarrollos dentro de Facebook.. pues por grata coincidencia y junto a todo el "enojoso" cambio de los estándares de programación de Facebook, y que desde el 01 de Junio del 2012 implica la deshabilitación definitiva del entorno de desarrollo FBML (de uso bastante popular y difundido actualmente en cientos de miles de "fanpages" en todo el mundo).. pues Facebook ahora también provee para el registro de sus aplicaciones, la opción de utilizar URL de hosting "gratuitos" (hasta cierta cuota bastante razonable).. y este es el caso de Heroku, que es una plataforma cloud para el desarrollo de aplicaciones basado en Git, que podemos utilizar en nuestras propias aplicaciones Facebook, que nos brinda la opción de selección de nuestro lenguaje de programación back-end favorito (Ruby, Python, NodeJS y PHP disponibles).. a lo que he podido probar que, PHP está bastante bueno, por cuanto, el SDK para PHPproveído por Facebook ya esta bastante probado, consolidado y estable.. y que incluso, al instalar nuestra propia aplicación "Heroku", se nos provee de una "plantilla de muestra" bastante entendible, que nos permite observar las posibilidades de desarrollo con el SDK del lenguaje que seleccionemos...


Y Aún cuando nuestro proyecto Integracion Google principalmente investiga y presenta codelabs y pruebas respecto a las herramientas y API de Google, no hemos resaltado las bondades de Google+ tanto como una plataforma social .2.0 sobria y elegante (que también permite la creación de paginas para instituciones, empresas, negocios, otros), y de mucho potencial especialmente por el manejo de streaming en lo que se conoce como Hangoust API, pero por el momento, aparte de sus plug-ins y REST API (para autenticación de cuentas Google desde sitios web externos), Google+ no provee aún de "canvas" donde podamos anexar desarrollos ó aplicaciones propias.. y que luego poder difundirla por la red social de Google+, lo que consideramos, constituye por el momento una clara ventaja de Facebook sobre el tema, pero que no dudamos que Google+, en plena evolución, y sobre todo, desarrollado sobre una plataforma más robusta, escalable y limpia que Facebook ..pues si será una opción muy interesante para el futuro.. no se, yo imagino que Google+ hasta podría asociar dominios propios a sus "fanpages" ó alguna otra sorpresa que no dudo será bastante importante en el mundo de las redes sociales..


CONCLUSIONES :

  • Podemos empezar con el desarrollo sobre "Hojas de Calculo" para gestionar y controlar pequeños y medianos negocios de manera menos compleja que desarrollando aplicaciones sobre bases de datos, y recurrir a los "formularios" e incluso a "Interface de Usuario" para facilitar el registro y el proceso de la data ingresada..
  • Podemos "insertar" esos desarrollos dentro plataformas Web 2.0 bastante populares como blogger o las "Fanpage" de Facebook, para facilitar el acceso de nuestros clientes y facilitar la gestión y administración de nuestros negocios (hasta pudiendo ingresar "data" desde equipos móviles), incluyendo el desarrollo de gadgets ó widgets de consulta de datos para facilitar nuestros procesos de ventas (para consultar nuestros stocks), y de cobranza (para consultar nuestros saldos por cobrar), y por supuesto finalmente consolidar y sumarizar la información disponible para monitorear los resultados de nuestra organización o negocio (utilidad, ratios, otros) los que por supuesto, también podríamos acceder incluso desde equipos móviles..
  • ..realmente me ha impresionado el potencial de las "App Scripts" (en pleno proceso de evolución), pero vale también resaltar que estas opciones tienen un limite, ahora de 10,000 lineas, hasta 256 columnas, y un máximo de 400,000 celdas por tabla; que es una cuota importante (debiéndose programar cortes anuales, semestrales ó mensuales según la carga de nuestro proyecto), y aún cuando esta cuota pueda incrementarse, la realidad, es que esta es una herramienta apropiada para pequeños y medianos negocios (como hay varios cientos de miles de estos negocios por aquí en Perú, y Latinoamérica en general), pero para las empresas medianas que tengan aspiraciones de crecer, por supuesto pueden utilizar estas herramientas para iniciarse ó en temas específicos y/o complementarios, pero considero que para la gestión total de estos negocio, necesariamente los responsables y dueños de estos negocios necesariamente deben empezar a presupuestar, dentro de sus costos de operación y funcionamiento, a personal de Desarrollo y Soporte TI permanente, para enfocar sus respectivos casos y sus respectivas soluciones informáticas bajo parámetros mas convencionales (empleo de Base de Datos, y considerar un adecuado diseño y departamentalización de la organización o negocio, con la correspondiente automatización de procesos de las área críticas (producción, ventas, cobranzas, contabilidad), todo por supuesto bajo un enfoque de sistemas, y tomando en consideración todas las herramientas y entornos cliente-servidor, "cloud ó grid computing", vigentes y disponibles en el ahora interesante e importante mercado del desarrollo de software.

..y para finalizar, les presentamos algunas imágenes del proyecto planteado sobre Facebook, para lo que hemos creado una "fanpage" de Facebook, y desarrollado una aplicación "canvas" utilizando Heroku, la que hemos adicionado a una pestaña de nuestra fanpage utilizando la interface de Dialogos también proporcionado por Facebook, y en la cual, para todos los usuarios de nuestro servicio, les damos acceso a nuestras aplicaciones de presentación, promoción y compra de nuestros productos (como pantallas informativas o eCommerce si es el caso), y sólo para los administradores, acceder a las opciones de registro y consulta de las operaciones de nuestro negocio... todo ello, solo utilizando nuestra cuenta Facebook (todas las herramientas empleadas son free).. a lo que se debe considerar por supuesto, el tiempo que demore nuestro desarrollo ... un buen reto!



Esta en una "fanpage" de Facebook a la que le hemos agregado nuestra aplicación "Intranet" desarrollada utilizando la plataforma Cloud de Heroku

Esta es la pantalla principal de nuestra aplicación "montada" dentro de Facebook como un iframe "canvas" 



Nuestra Aplicación e Registro de Datos desarrollada utilizando la GUI Builders de las App Scripts proporcionadas por las Hojas de Calculo de Google Docs


Esta es nuestro Registro de Egresos, una de las tablas de Google Docs que comprende el proyecto donde se graba lo registrado en la pantalla de Registro de Compras, Gastos y Otros Egresos anterior..



..y para la gestión de Ventas, Cobranzas y Otros Ingresos :





..como pueden observar en las imágenes mostradas, las "App Scripts" de Google nos permiten mantener nuestro de Registro de Información basica de nuestro negocio (Egresos e Ingresos), nuestro Flujo de Caja (en otra tabla de diseño adecuado), y el "Modelo" puede aun perfeccionarse incluyendo una manejo de Cuentas Corrientes (Cuentas por Cobrar, Cuentas por Pagar); vale decir, todos los requerimientos de nuestra organización ó negocio.






Para mayores detalles técnicos también pueden revisar nuestras entradas:

En las próximas entradas vamos a comentar mas respecto a estos conceptos que están muy asociados al mundo Google en general por cuanto, hacia ese concepto de desarrollo web de manejo total es hacia donde estamos apuntamdo...


NUESTRO PROYECTO: Community OAuth 2.0 & Business

Continuando con el desarrollo de nuestro caso practico, pero ampliado y considerando el uso del protocolo OAuth 2.0 empleado para la Autenticación y Autorización de acceso a los datos de los usuarios, protocolo que es utilizado ahora tanto por Google como en redes sociales muy difundidas como Facebook, Twitter, OpenID, otros.. y utilizando como describimos, hojas de Calculo y Apps Script de Google Docs (ahora Google Drive) ó de Google Apps, éste ultimo de uso ahora bastante difundido a nivel de instituciones, corporaciones y en especial a nivel académico-universitario; resulta que también es posible acceder a los principales datos de contacto de un usuario a objeto que dicha información quede grabada y disponible en nuestras propias base de datos a objeto de conformar "comunidades" con que podamos interactuar, ofertar nuestros productos o servicios, y hacer seguimiento detallado de su participación en nuestros proyectos.. eso quiere decir que, previa autorización de un usuario, podremos tener acceso a su "ID" utilizada dentro de la red social que utilicemos: su nombre, nickname.. y su correo electrónico principalmente, entre otros datos que se nos permita acceder (la URL de su imagen o perfil por ejemplo); y con dicha información, podríamos entonces de manera mas sencilla diseñar y entregar a nuestros usuarios, formularios para que actualicen sus datos de contacto (dirección, teléfono, otros); que registren sus preferencias respecto a nuestros servicio ó negocio, así como invitarlos a que hagan pedidos on-line de nuestros productos y servicios ofertados, pudiendo controlar sus pagos y saldos por cobrar, otorgarles regalos, ofrecerles promociones, más ofertas, etc.. el potencial es increíble.. y esto por supuesto, puede ser utilizado desde diferentes back-end (Java, PHP, Python, otros ..y utilizando base de datos MySQL, Postgres, otros, ó el datastore de Google App Engine).

Nuestro proyecto Community OAuth 2.0 and Business realiza todo ello, pero utilizando como bcak-end hojas de calculo de Google Docs y su servicio Apps Script, que permite el uso de javascript para interactuar con el datastore (las tablas de nuestras hojas de calculo en este caso) ..y consideramos que el potencial de este proyecto es bastante importante por cuanto:

  • las Hojas de Calculo de Google Docs son de uso libre hasta 5Gb (400,000 celdas por hoja de Calculo y hasta 200 hojas por cuenta Google), suficiente para el manejo de PYMES (pequeñas y medianas empresas)
  • Trabajar con las Apps Script es bastante sencillo y hay hasta 03 maneras de utilo izar la API: UI Service (que es la forma básica de emplear la API), utilizando GUI Builder (que permite diseñar nuestras "pagina" Web a desplegar utilizando un interface gráfico que nos facilita su construcción y desarrollo), y ahora desde Agosto 2012, utilizando el denominado HTML service, que significa que ahora incluso podemos construir nuestros desarrollos directamente desde una pagina HTML en blanco (utilizando todas las ventajas de uso de HTML, CSS y javascript por el front-side de nuestra pagina, incluyendo el empleo de frameworks como JQuery, JQueryUI, ExtJS, Sencha Touch u otro de nuestra preferencia en nuestros desarrollos.
  • ..y por el back-end, utilizamos también Javascript con todos los servicios que nos brinda las Apps Script, como los servicios de email, manejo del calendario, de los Mapas, de las Visualizaciones para hacer nuestros gráficos, API Contact otros.. e incluso de conexión a otras bases de datos vía "Jdbc" con lo que podríamos conectarnos y trasladar nuestra data a bases de datos más escalables como MySQL o el mismo datastore de Google App Engine.. y trabajar con la data de ambas plataformas (la de nuestras hojas de calculo.. y la "guardada" en nuestra base de datos corporativa).
  • y finalmente, para acceder al protocolo OAuth 2.0 utilizamos la Google API Javascript Client, y logramos con ello que nuestro proyecto finalmente solo utilice como lenguaje de programación Javascript.. al mismo modo que nodeJS !!

Nuestro proyecto como hemos indicado nos permite el manejo de todas esas opciones, y como podrán revisar y probar, se forma una "comunidad" en la cual haciendo click sobre las imágenes de las personas registradas se puede tener acceso a las paginas Google+ de los integrantes; y a diferencia de lo expuesto en nuestro CASO PRACTICO planteado, ahora si podemos remitir a nuestros "usuarios registrados" nuestras ofertas, promociones, novedades, etc. (como campañas de ventas), directamente a su mail ó mostrándolos en una página web para invitar a los usuarios no registrados todavía (sobre la plataforma Blogger en este caso); y lo que buscamos es que ellos puedan registrar on-line sus requerimientos (ordenes de compras).. interesante no?

Pueden revisar nuestro proyecto en el siguiente enlace:

http://communytyproject.blogspot.com/p/welcome.html

..ó también pueden dirigirse a la pagina Google+ que promociona nuestro proyecto en el GADC 2012 para que puedan comentar sus pruebas, opiniones y las posibilidades de este proyecto.. y al hacer click sobre la siguiente imagen mostrada accederemos a algunos screenshots.

El proyecto cuenta con su propio Mini-Manual y resumen técnico, pero al estar compitiendo en el Google Apps Developer Challenge GADC-2012, no tenemos disponible por el momento enlaces de descarga de las "fuentes" del modelo.. pero por supuesto, el tema es bastante amplio por lo que toda dicha información será proporcionada en un futuro próximo en una nueva entrada de éste nuestro proyecto Integracion Google.. por lo que estas lineas solo tienen carácter introductorio.


SIGUIENTES PASOS

Si ha llegado a revisar completamente esta entrada debe haberse convencido, o intuir con entusiasmo, que el potencial de todas estas herramientas mencionadas es realmente importante; y todo este desarrollo tiene un nombre: "Community Management" y "Social Media Management"; vale decir, todo el proceso descrito busca que nuestras organizaciones, negocios ó emprendimientos que estemos involucrados (propios ó de terceros), lleguen a conformar una "Comunidad" con la que podamos interactuar y fidelizar con nuestros productos, servicios, conceptos.. es el comienzo de lo que se también se conoce como "marketing digital", y reitero que es solo el comienzo por cuanto la labor de "Community Manager" va a convertirse poco a poco en un puesto de trabajo relevante y de importancia en toda organización o negocio.. como se indica, no solo es atender el blog, los anuncios, el chat.. sino establecer verdaderas campañas y estrategias.. y por supuesto cuantificar, monitorear, reportar y monetizar resultados.. todo ello acorde a las reales posibilidades y expectativas de la institución o negocio.. realmente todo un reto..

Conviene entonces den una revisión a los siguientes artículos:

y finalmente, vale destacar que a lo largo del desarrollo del tema nos hemos entusiasmado con respecto al empleo de las Apps Script y las Google spreadsheet especialmente en lo que concerniente a la gestión de micro y pequeñas empresas (que abundan en nuestra zona Latam, y por supuesto en todo el planeta.. y que en lo personal, también me interesa mucho para algunos proyectos personales), pero eso es también solo un comienzo.. la realidad concreta es que en el desarrollo de todo nuestro proyecto hemos logrado conseguir disponer de información de contacto de nuestros seguidores por el "front-side" ó lado del cliente (como variables javascript) las que hemos almacenado sobre hojas de calculo Google; pero dependiendo de la envergadura y del crecimiento de nuestros proyectos bien fácilmente podríamos "cambiar" nuestro Back-End por uno convencional PHP+MySQL, Java+MySQL (u otra base de datos como Postgress, Oracle, otros); e incluso utilizar servicios "escalables" y de "alta disponibilidad", como el servicio Amazon C3 ó el datastore de Google App Engine.. no existe limite para utilizar el "online storage web service" de nuestra preferencia de acuerdo a nuestros requerimientos, preferencias y presupuestos.. pero nuestro desarrollo del lado del cliente no tendría que variar sino en muy pocas líneas.. y en algunos casos no variar en lo absoluto, dependiendo de las técnicas de desarrollo por el lado del cliente que utilicemos en nuestro proyecto.. y hacia ello es que apunta todo el concepto de desarrollo de nuestro proyecto Integración Google.. en la que con un mismo "interface" (pero por supuesto con las respectivas adecuaciones según el Back-End que utilicemos), pues un mismo proyecto puede correr en las diferentes plataformas de desarrollo web vigentes.. tal vez en las futuras por desarrollarse.. y trabajando con PHP, Java, Python, nodeJS (Javascript), DART, GO u otro lenguaje del lado de servidor que dominemos, nos sea solicitado, o sea de nuestra preferencia.. y ésta si es una magnifica meta!.

Una muestra de ello es nuestro codelab Integration with Google (1st. part), que ahora utiliza el protocolo Oauth 2.0  para la autenticación y autorización de nuestros usuarios, desarrollo en que utilizamos el framework ExtJs, JQuery y otras herramientas "javascript" de geolocalización y disponer de una información básica de contacto con nuestros seguidores que utilicen nuestros "demos".. por supuesto, en el enlace indicado ponemos a disposición la descarga del código empleado con el cual podrá realizar sus propias pruebas en un servidor local convencional HTTP Apache (como Appserv por ejemplo) ..pero que en nuestro caso, como podrá observar, lo hemos podido desplegar sin mayores inconvenientes sobre la plataforma Google App Engine..

 now you can test our IntGoogle01-Oauth2.0 demo  (New!) .
the demo may prompt popup window (must enable it!)


Saludos
@Mlaynes




Let's talk about Twitter


Recuerde que..
Este blog esta desarrollado en idioma español pero utilizando Google Traductor puede adecuarlo al lenguaje de su preferencia.. Favor utilice la opcion del recuadro superior derecho... y Bienvenido a Integracion Google.

MUY BUENAS NOTICIAS... (nuestra experiencia con Twitter - 29/05/2010)

El equipo de Twitter, despues de meditar nuestros descargos remitidos durante casi 02 semanas, decidió levantar la suspensión de nuestra cuenta Twitter en Inglés que nos había impuesto, lo que habla muy bien de dicha red social, por cuanto, atendió nuestros argumentos, (el cual principalmente se centró en indicarles que nuestro proyecto trata de integrar a la comunidad GTUG mundial para formar una biblioteca de codigos, y que por tanto, resulta imprescindible tratar de comunicarnos con toda dicha comunidad, y por supuesto no somos spam..!); y bueno, Twitter trata de mantener un manejable rango de relación y control de los seguidores de su red que debemos destacar... y esto, unido a su pronunciamiento Twitter loves open source, (el cual compartimos en esta humilde comunidad), y el lanzamiento de @anywhere, y con el reconocimiento que Twitter es la principal red de microblogging vigente en el momento, pues en verdad nos alegra contar ahora con todas nuestras cuentas Twitter completamente operativas, en español, inglés y portugués... por lo que les detallamos a continuación nuestros tips respecto a nuestros avances al jugar con el API que Twitter nos proporciona...

REFERENCIA TECNICA (18/07/2010)

Como siempre, les indicamos las paginas oficiales de Twitter para que las revisemos continuamente y estemos atentos a los cambios y mejoras que nos brindan los servicios de esta red social (y que realmente nos conviene revisar para mantener al día y sin problemas nuestras aplicaciones).

Extras de Twitter, que nos proporciona diversos widgets y botones para emplear en nuestras paginas web, y en la que resaltamos el widget de perfil, que nos muestra en cualquier un listado de los tweets de la cuenta Twitter que indiquemos; pero debemos destacar que dependiendo de cada caso, bien podriamos utilizar los otros widgets tanto para nuestros sitios web como para Facebook, que Twitter nos proporciona... (solo basta ingresar los datos que nos indican y luego probar y observar el resultado, y al terminar y guardar el código, se nos proporciona el mismo para pegarlo en nuestros documentos HTML)

TWITTER ANYWHERE
IMPORTANTE: Twitter Anywhere dejo de funcionar desde el 01 de Marzo del 2013 !
Consulte este enlace: https://dev.twitter.com/blog/sunsetting-anywhere

A diferencias de los Extras, con Anywhere, Twitter busca que interactuemos directamente con nuestra cuenta Twitter en nuestras paginas web, sin ingresar directamente a Twitter, logrando así facilitar el uso de nuestras cuentas, incrementar el trafico de las mismas y su difusión.

Para ello, el APIde Twitter requiere como primer paso que registremos nuestra aplicación (debemos tener presente que si tenemos varias cuentas twitter siempre estemos conectados con la misma para que nuestros desarrollos se muestren agrupados, o que las asignemos a la cuenta Twitter de su respectiva aplicación, el caso es que para poder acceder a los datos de nuestra aplicación luego de creadas -especialmente a nuestro API Key, Consumer Key, Consumer Secret u otros datos que necesitemos-, basta con que ingresemos a la cuenta Twitter con la que accedimos al registrar nuestra aplicación e ingresar a nuestra cuenta de desarrollor utilizando la opción "Siqn", y luego ingresemos a los datos de nuestra aplicación usando la pestaña "Your Apps")

NOTA : Al registrar nuestra aplicación es importante que indiquemos en "Registered Callback URL" la dirección exacta de nuestra pagina web a partir de la cual se va a tener acceso a Anywhere, y asimismo, que indiquemos el "Default Acces Type" (read only o write & read, dependiendo si deseamos que solo se tenga acceso de lectura o se pueda escribir en la cuenta twitter que acceda a la aplicación... nosotros elegimos write&read)

Registrada nuestra aplicación, podemos utilizar en la pagina web que desarrollemos las diversas aplicaciones Anywhere que nos presenta la API, y entre las que destacamos las "Hovercards" (que a diferencia de las linkifyUsers, no solo nos direccionan a nuestras paginas Twitter, sino que nos permite mostrar el logo e información básica, y opción a seguirlas, y en un formato bastante apropiado, con solo pasar sobre el link el mouse), las "Twitter Box", que nos permiten escribir en el muro de la cuenta Twitter de nuestros usuarios, y "User login & SignUp", para controlar el acceso y salida de la cuenta Twitter de nuestro usuario.

Detallamos a continuación el codigo de nuestra aplicación Anywhere que hemos detallado en nuestra pagina "Ayudenos a difundir nuestra comunidad", la cual considera en forma conjunta la aplicación de las figuras de Anywhere que les hemos recomendado, y en la que debemos destacar los siguientes aspectos:

  • Utilizamos Anywhere sobre una misma pagina HTML, por lo que las instrucciones de conexion las colocamos en el mismo documento (a diferencia de utilizar el HEAD recomendado en la documentación de Twitter Anywhere), lo que es muy util cuando consideremos el desarrollo de widgets, gadgets o paginas independientes que utilizen Anywhere.
  • Utilizamos la conexion a la librería "jsapi" de Google para tener acceso al framework JQuery que ésta nos proporciona (necesario para hacer uso de los comandos JQuery que utilizamos)
  • y bueno, se requiere tener conocimientos basicos de JavaScript y JQuery, por lo que aprovecho la oportunidad para indicarles la direccion de un tutorial javascript para consultas rapidas; y en lo que respecta a JQuery, les indico una pagina de introducción bastante util.

Detalle de nuestro codigo :

<!-- loading ID de Aplicacion Twitter -->
<script charset='utf-8' src='http://platform.twitter.com/anywhere.js? id=nQjC8OfVtcUWjVjKW1ATlw&v=1' type='text/javascript'></script>
<script type="text/javascript">
twttr.anywhere(function (T) {
//T("##main-content").linkifyUsers();
T("#main-content").hovercards();
})
</script>
<!-- Twitter Hovercards div -->
<div id="main-content">
..and now, with Twitter @Anywhere you can connect directly with us: @IGCodelab_en
<span class="Apple-style-span" style="font-size: x-small;"><span class="Apple-style-span" style="font-family: Arial, Helvetica, sans-serif;">(Put the mouse on the links)</span></span></div>
<!-- Twitter Anywhere -->
<script src="http://www.google.com/jsapi?key=ABQIAAAA1XbMiDxx_BTCY2_FkPh06RRaGTYH6UMl8mADNa0YKuWNNa8VNxQEerTAUcfkyrr6OwBovxn7TDAH5Q">
</script>
<script type="text/javascript">
google.load("jquery", "1");
twttr.anywhere(function (T) {
var currentUser,
screenName,
profileImage,
profileImageTag;

T("#tbox").tweetBox({
height: 100,
width: 400,
label: 'Post on your Twitter Wall...',
defaultContent: "I like Integracion Google. Check out our fan page into http://tinyurl.com/35ac3on\nhelp us to disseminate our project..!"
});
T("#withus").tweetBox({
height: 100,
width: 400,
label: 'Tell us your thoughts ....',
defaultContent: "@IGCodelab_en ..."
});

function isConectado() {
$("#twitter-connect-placeholder").show();
$("#tbox").show();
$("#withus").show();
};
function noConectado() {
$("#twitter-connect-placeholder").hide();
$("#tbox").hide();
$("#withus").hide();
};
function myAvatar() {
document.getElementById('twitter-connect-placeholder').innerHTML="";
if (T.isConnected()) {
currentUser = T.currentUser;
screenName = currentUser.data('screen_name');
profileImage = currentUser.data('profile_image_url');
profileImageTag = "<img src='" + profileImage + "' style='cursor: hand; cursor: pointer; display: block; float: left; margin: 0px 10px 5px 0px; text-align: left;'/>";
$('#twitter-connect-placeholder').append('<p>' + profileImageTag + '<b>' + screenName + '</b> esta conectado..!</p>');
$("#twitter-connect-placeholder").append('<p><button id="signout" type="button">Sign out</button><p>');
$("#twitter-connect-placeholder").bind("click", function () {
twttr.anywhere.signOut();
});
};
};

if (T.isConnected()) {
myAvatar();
isConectado();
} else {
noConectado();
};

T("#connect").connectButton( {
authComplete: function(user) {
// alert("It's Connected");
myAvatar();
isConectado();
},
signOut: function() {
// alert("It's not Connected");
noConectado();
}
});
});
</script>
<span id="connect"></span>
<span id="twitter-connect-placeholder"></span>
<div id="tbox">
</div>
<div id="withus">
</div>


(Tenga cuidado con las instrucciones de inicio y fin de parrafo en html ( <p> y </p> ), pues el editor de Blogger usualmente corta la linea despues del primer <p> cuando editamos nuestras paginas, y eso debe corregirse antes de grabarlas, sino nuestras pruebas y desarrollos no funcionaran).

Con dicho código, y si accedemos a nuestra cuenta Twitter, se mostraría los Tweet Box en nuestra pagina como lo indicamos a continuación (si utiliza su propia pagina web, recuerde que debe ingresar el ID de su propia API KEY en el inicio del código):


Les indicamos asimismo, la pagina de la documentación general de la API (disponible en la pagina del desarrollador), en la cual, además de Twitter Anywhere, podremos revisar todas las opciones de desarrollo que nos presenta Twitter; así como la documentación de Twitter para Negocios, cuya lectura tambien nos debe interesar y debemos tener presente.

@Mlaynes

Hablemos sobre Twitter..



mayo 07, 2010

Let's talk about Facebook...


Recuerde que..
Este blog esta desarrollado en idioma español pero utilizando Google Traductor puede adecuarlo al lenguaje de su preferencia.. Favor utilice la opcion del recuadro superior derecho... y Bienvenido a Integracion Google.

Al estar haciendo las modificaciones a nuestro Blog, para adicionarles servicios sociales y propiciar la difusión de nuestra comunidad utilizando Facebook, twitter, Google Buzz, etc.; y leyendo diversos comentarios al respecto, realmente nos resultan muy impresionantes las cifras asociadas a Facebook: a inicios del 2010, mas de 400 millones de usuarios y mas de US$300 millones anuales de ingresos, y las cifras siguen en aumento... al mes de Julio 2010 reportan mas de 500 millones de usuarios...en Marzo del 2011 ya son 600 millones, y a Julio del 2011 se habla ya de 750 millones de usuarios y alrededor de US$ 2,000 millones de dolares de ingresos  ..

..por supuesto, nuestras felicitaciones a Facebook, es innegable que brilla con luz propia y lo convierte en un servicio con vigencia para bastante tiempo.. pero no todo lo referido a Facebook brilla... y también encontré por ahí este post, y se los presento para su consideración:


10 razones para no estar en Facebook
  1. Los términos del servicio de Facebook solamente benefician a Facebook.
  2. El CEO de Facebook (Mark Zuckerberg) tiene un historial documentado de comportamiento no ético.
  3. Facebook ha declarado la guerra contra la privacidad.
  4. Facebook constantemente está cambiando cual información se comparte y cual no sin tu consentimiento.
  5. Facebook no tiene buenas intenciones (..uy!)
  6. Toda tu información se comparte a través de las aplicaciones
  7. Facebook tiene muchos problemas técnicos (..uuy!)
  8. Es muy difícil eliminar tu cuenta de Facebook
  9. Facebook no soporta una Web abierta de verdad
  10. Facebook apesta (...que fuerte esto, no??)
y bueno, ...aunque no son necesarias las exageraciones, de todo esto algo hay de cierto, (pueden revisar informacion general, y sobre las políticas, criticas e impactos referidos a Facebook en wikipedia, la cual es un poco mas escueta pero también incisiva en su versión en español, siendo igual en las paginas para otros idiomas)

Facebook es una herramienta muy poderosa e importante, pero los últimos cambios efectuados durante el 2010, 2011 y los programados para el 2012, confirman la variación del estándar "Facebook" y la comprensible saturación de su plataforma de desarrollo ahora que se acerca a los mil millones de usuarios registrados; y aun cuando ahora recurren a conceptos "opensource", como el uso de un SDK Javascript (con soporte al estandard OAuth 2.0 para la autenticación, registro de usuarios y uso compartido de información), con soporte y manejo de "canvas" e iframes dentro de la red social, e incluso con soporte para otros entornos de desarrollo como Java, PHP, Python, entre otros.

Pero el gran cambio de Facebook va a ser resaltado a partir del 01 de Junio del este 2012, con la desactivacion de la aplicación Static FBML (en la que estan hechas miles y tal vez millones de "fanpages" de negocios, profesionales e instituciones de todo tipo que difunden sus actividades a través de la Red Social de Facebook.. Facebook requiere ahora que todas las aplicaciones que trabajen dentro de su red social utilizen los recursos de terceros (colgado sus widgets o servicios sociales a nuestras paginas webs), ó pegando como "canvas" nuestros desarrollos dentro de tabuladores de Facebook.

Ahora se requiere que todas nuestras paginas web en donde las utilicemos el SDK de Javascript de Facebook deban ser previamente "registradas" en Facebook Developers... y bueno, estas maneras no son propios de desarrollos abiertos sino 'propietarios' (tipo Microsoft para ser mas exactos), y aunque las principales criticas a Facebook van referidas a sus políticas de Privacidad y manejo de su ahora apetecible y gigantesca base de datos de "gustos" de sus usuarios, a nivel técnico, Facebook se muestra bastante errático y cambiante respecto a sus estándares de desarrollo, los que como ahora, puede continuar cambiando cuando así lo estimen.. aunque en estos ultimos 02 años realmente han habido ya muchos cambios.. así que debemos empezar a ponernos al día....

En resumen, como se indica, parece que Facebook solo piensa en Facebook, pero como consecuencia de su innegable éxito, y por los parámetros propios del negocio publicitario, es muy difícil que se convierta en un servicio por el que los usuarios tengamos que pagar..(así lo anuncian.!); aparte que su entorno para instituciones y empresas (las llamadas "fan pages"), es ahora realmente bastante sólido y eficiente, y deben ser considerados muy seriamente para su empleo en toda campaña publicitaria y de difusión a nivel local y/o global (por supuesto, siempre tomando nuestras respectivas precauciones respecto a temas de seguridad empresarial, institucional o personal principalmente en lo que respecta al manejo de información sensible o confidencial).

Considérese entonces que los comentarios presentados no deben significar que mantengamos una posición anti-Facebook, y reiteramos que e trata de una opción social muy eficiente y un innegable medio de mercadeo y difusión en plena vigencia y expansión... así que no dudemos en utilizar ese potencial para comunicar nuestros propios conceptos personales, empresariales o institucionales.. y así pensamos que debe hacerse... y por ello ahora también tenemos nuestra propia pagina Facebook, bajo el formato "fan page", que como hemos indicado, Facebook ha mejorado notablemente (y que creo, es uno de las grandes "olvidos" del recién lanzado Google+), y que ahora nos permite una captación ilimitada de seguidores, y hace que la interacción entre las entidades y sus seguidores sea mas fácil para opinar, sugerir, hacer difusión y seguimiento de enlaces, publicación y etiquetado de fotos con comentarios personales o institucionales, etc.), y que por supuesto, también incluye modificaciones en su entorno de programación para desarrolladores, temas que tocaremos a continuación...


REFERENCIAS TECNICAS

Para averiguar como agregar botones, enlaces y otros servicios sociales Facebook a nuestras paginas Web, existen múltiples foros y blogs dedicados al tema, pero manteniendo nuestro estilo de contribuir al estudio y la investigación, le pasamos los links "oficiales" de Facebook al respecto, y que en este caso toman particular relevancia, por cuanto, como indicamos en el principio de este post, FaceBook ha modificado bastante los parametros para desarrolladores desde mediados del año 2010 (..este 2011 ha continuado y en el futuro se espera mas modificaciones). Así que nos conviene revisar periódicamente los siguientes enlaces:
  • Facebook Developers, imprescindible revisar el segmento "Add Facebook to my site".
  • Crear una Pagina, para crear paginas FaceBook ("fan page"), para negocios, instituciones, de la comunidad, etc.,
  • de FaceBook a Twitter, para vincular nuestras paginas Facebook a Twitter, haciendo que lo publicado por los administradores de nuestra pagina en el Muro se repliquen en Twitter...
  • Insignias de Facebooks, una colección completa de widgets de insignias, botones y otros servicios sociales de Facebook, que podemos pegar en nuestras paginas Web personales e institucionales, siendo esta una manera directa y fácil para empezar a utilizarlos.
  • Pagina de Desarrollador Facebook, la cual en el nuevo concepto de desarrollo de aplicaciones cobra bastante importancia por cuanto en ella podremos registrar nuestras paginas Web en donde querramos correr las insignias y servicios "enriquecidos" de Facebooks utilizando iframes y el SDK< de Javascript, entre otros entornos los que podemos empezar a revisar en el siguiente link, y probar su funcionamiento en su sección "Tools".
  • Javascript Test Console, que en su link "examples" podemos seleccionar diversos ejercicios y ejemplos sencillos de aplicaciones del SDK Javascript de Facebook que podemos poner en nuestras websites o aplicaciones iFrames de nuestras fan pages.
  • Ya no existe Directorio de Aplicaciones, para acceder a las aplicaciones existentes basta con utilizar la opción Buscar digitando su nombre, o acceder a ellas a través de las invitaciones de nuestras amistades directamente desde las entradas de nuestro Muro.
Todas estos links, y otros que conviene revisar, están disponibles desde nuestra propia cuenta personal Facebook, allí observe y revise las opciones del pie de página. opción Desarrolladores.


Prepárate para tu página "optimizada" Facebook.


A partir del 23 de agosto del 2010, y continuando los cambios durante el presente año, Facebook simplificará sus páginas "para que sea más fácil navegar por ellas", confirmándose los siguientes cambios:
  • El menú de usuarios en la parte superior de nuestras entradas es ahora de manejo exclusivo para aplicaciones de Facebook, ya no se puede poner aplicaciones propias o de terceros en las pestañas o "tabs" de la parte superior del Perfil de usuarios (ahora las "pestañas" de nuestras aplicaciones o terceros se ubican en la lista de aplicaciones de la pantalla de Inicio, en la barra izquierda, y en algunos casos, si tenemos varias aplicaciones instaladas, hay que expandir la vista para que aparezcan.. es decir..nuestras pestañas pueden estar ahora bastante escondidas ..y no muy accesibles para nuestros seguidores sino tenemos en cuenta la capacidad de espacio otorgado, es por ello que ahora el desarrollo de aplicaciones bajo Facebook utiliza mas el concepto de Aplicaciones por invitación sobre publicaciones en nuestro Muro como ocurre con los Juegos u otros...
  • El espacio otorgado para la presentación de nuestros desarrollos se reducen ahora a 520 píxeles. Lo que debemos tener en cuenta al realizar nuestros desarrollos y realizar los ajustes necesarios en caso de anexar iframes, imagenes o cajas (las que debemos dimensionar al espacio disponible) ...
  • Se ha efectuado mejoras para el formato personal y "fan pages". Ahora es bastante mas atractiva la interacción como el etiquetado de fotos pues estas se mostrarán en una barra en la parte superior de nuestra pagina personal o institucional; y para el caso de paginas personales, se ha mejorado bastante los datos de perfil profesional y de trabajo (los que también se muestran en la parte superior de nuestra pagina; y en el caso de las "fan pages", ahora podemos mostrarnos como indica nuestro nick, e incluso hacer comentarios como "representantes" de nuestra pagina (y con la imagen de perfil que registremos), como si se tratase de un usuario "normal", aunque esto aun no se habilita completamente para los foros, donde las publicaciones de los "administradores" son etiquetados como de la "pagina", y no se pueda hacer comentarios en foros de terceros como "representantes".
  • Pero uno de los cambios principales para los desarrolladores es que a partir de Marzo 2011 Facebook ha desactivado las pestañas y aplicaciones FBML estático (que es una de las formas principales en que se adicionaban "pestañas" a nuestras paginas), por lo que ahora para crear "tabs" y aplicaciones para nuestras fans page de Facebook, debemos recurrir a los iFrames y al SDK de Javascript... (a la fecha sigue habiendo soporte a las aplicaciones FBML existentes pero con una funcionalidad reducida... pueda que algunos desarrollos FBML no funcionen correctamente..).
  • Pueden revisar en nuestro foro mas información al respecto:
Algo imortante que debemos tomar a consideración respecto a este último punto descrito es al trabajar con iframes "propias" o de "terceros" en nuestras paginas facebook significa que ahora para "programar" las presentaciones de dichas páginas debemos utilizar lo convencional en desarrollo Web, vale decir, basicamente HTML, CSS y Javascript; pero dependiendo de la fuente de nuestra iframes, de ser propia por ejemplo, podremos utilizar herramientas propias de nuestro entorno de desarrollo como el empleo de back-end tipo PHP+MySQL u otros JSP, Java y MySQL, etc, con lo que nuestras "paginas" podrian convertirse en aplicaciones full dinámicas... vale decir, al fin Facebook se apertura a todas las opciones de desarrollo Web, aunque debemos de tomar muy en cuenta las "politicas de desarrollo" que nos plantea:

  • Actually, there is one exception: Facebook policy is that you ARE NOT ALLOWED have autoplaying media in a tab. So no autoplaying videos, songs, etc. in the tab.
Asi podremos observar que algunas funciones "autoplay" son incluso bloqueadas, por lo que debemos probar con detalle todos los desarrollos que realicemos para paginas Facebook.

En resumen... Facebook ha mejorado bastante su presentación y perfil de "usuario" personal y de negocios con herramientas que son muy utiles para la gestión y mercadeo de nuestros proyectos personales, empresariales o institucionales .. todo es muy interesante.. pero el diseño general de la pagina es como siempre inamovible.. al estilo de Facebook..

Agregando Facebooks a nuestras paginas Web

Este es una forma de agregar plug-ins de Facebook a nuestras paginas, y las hemos utilizado para mantener una mejor interaccion con nuestros usuarios, y para que también nos puedan ayudar a difundir nuestra comunidad.

Como lo hicimos?

La imagen nos muestra como hemos efectuamos un enlace para que nuestros seguidores puedan efectuar comentarios en sus propios Muros personales, así como tambien muestra una caja con las entradas de nuestra Fan page, la que aparece en nuestro Blog. Detallamos a continuación el código utilizado para que sirva de referencia:

<script>
function fbs_click() {
u=location.href;
t=document.title;
window.open('http://www.facebook.com/sharer.php?u='+encodeURIComponent(u)+'&t='+encodeURIComponent(t),' sharer', 'toolbar=0, status=0, width=626, height=436');
return false;
};
</script>

<a href="http://www.facebook.com/share.php?u=http%3A%2F%2Fmlaynessanchez.blogspot.com" onclick="return fbs_click()" target="_blank" title="Coment about us on Facebook..!">
<img src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhFi4uZqjZ9Sju6d8aaSYMNAgy3PoYobPKKvPAh0ouk1I5qWskr83o6oCtHSPdykZj6LI0n0axlIm0DoAc8xsSst15sgfHiqicblLQ1SINFURH5s5PdDsgibOn4Bdy4OB03rhpLfLPasWzG/s1600/FbSobreNosotros.JPG" style="cursor: hand; cursor: pointer; display: block; float: left; height: 150px; margin: 0px 10px 5px 0px; text-align: left; width: 120px;" /><span class="Apple-style-span" style="font-size: large;">Comments about us..!</span></a>
<p>
Your support is very important to disseminate our project and bring together our users, fans GTUG, web developers and freelancers who are already using, or would like to use, the technology than Google puts at our disposal ...
<span class="Apple-style-span" style="font-size: x-small;"><span class="Apple-style-span" style="font-family: Arial, Helvetica, sans-serif;">(click on the link or in the left image)</span></span></p>
<p>
..</p>

<iframe allowtransparency="true" frameborder="0" scrolling="no" src="http://www.facebook.com/plugins/likebox.php?id=120321264650448&amp;width=430&amp;height=650&amp;connections=10&amp;stream=true&amp;header=true" style="border: none; height: 650px; overflow: hidden; width: 430px;"></iframe>


Asimismo, al final de esta entrada podran observar un Plug-in para comentarios que ha sido desarrollado utilizando la técnica SDK de Javascript que ahora proporciona Facebook...

Este plug-in de Comentarios de Facebook permite al usuario hacer incluso "comentarios de los comentarios" en cualquier página web. Los comentarios pueden ser referidos a una página, artículo, foto o cualquier contenido que indiquemos; y los comentarios que se hagan en páginas externas ahora también pueden aparecer en tu perfil de Facebook (si así lo desea el "comentarista", pues tiene la opción de activar o desactivar el posteo a su Muro)
Como lo hicimos?
Detallamos también a continuación nuestro codigo para que les sirva de referencia:

<script>
window.fbAsyncInit = function() {
FB.init({appId: ‘138465519521758”, status: true, cookie: true,
xfbml: true});
};
(function() {
var e = document.createElement(‘script’); e.async = true;
e.src = document.location.protocol + ‘//connect.facebook.net/en_US/all.js’;
document.getElementById(‘fb-root’).appendChild(e);
}());
</script>

<div id="fb-root">
</div>
<script src="http://connect.facebook.net/en_US/all.js#xfbml=1"></script><fb:comments href="http://mlaynessanchez.blogspot.com/2010/05/hablemos-sobre-facebook.html" num_posts="5" width="450"></fb:comments>


La primera parte, correspondiente a la definición FB.init, inicializa el SDK de Javascript vinculado a nuestra pagina Web, debiendo utilizar como appId el numero obtenido al registrar la URL y la pagina específica donde se va a mostrar nuestra caja de comentarios; operación que debemos realizar la Pagina del Desarrollador Facebook indicada.

Pueden tener mayor explicación del proceso revisando el siguiente link:


La segunda parte corresponde al codigo XFBML que crea el plug-in de comentarios, el cual podemos generar de: http://developers.facebook.com/docs/reference/plugins/comments/

Realmente el código es bastante corto, y hay mas cosas que pueden ser consideradas, como "localizar" los mensajes a nuestro idioma ( por defecto la indicación en_US muestra el formato  "Like" en vez de "Me gusta", para lo que tenemos que utilizar es_LA), pero una opción que voy a empezar a revisar con detenimiento es respecto a las traducciones que por ejemplo se encuentra disponible en el widgets de comentarios del servicio Open Social de Google, con esto esta herramienta sería aún mas interesante... lo indicado son solo algunas de las opciones que ahora son posibles de considerar utilizando los enriquecidos "plug-ins" de Facebook.

Para los que por urgencia requieran continuar trabajando con FBML, conviene revisen el siguiente link:


..y para empezar a revisar em manejo de iFrames conviene revisar este enlace:


Hablar de Facebook es hablar de difusión y mercadeo, por eso los invito a continuar con mayor detenimiento las nuevas herramientas y funcionalidades proporcionadas por Facebook, y también revisar nuestra entrada referente a conceptos de Web2.0: los negocios y las redes sociales.

Saludos.
@Mlaynes







Hablemos sobre Facebook..