Cuando desarrollamos orientados a tecnologías webs se establece un mecanismo de seguridad de comunicaciones en navegadores webs con el fin de evitar acceder a información alojada en otros servidores.
Lo que se pretende es que ningún script ejecutado desde el navegador de una página web pueda acceder a otro servidor de páginas diferente al suyo.
No obstante hay alternativas para acceder al contenido de otro servidor web desde el browser desde dónde se ejecuta nuestra aplicación:
podemos usar un proxy como web service de tal forma que la comuniación no se establece entre mi browser y el servidor web deseado sino que llamo al servicio web alojado en mi servidor y éste hace la llamada.
con jsonp o lo que es lo mismo Json con Padding: en lugar de realizar una petición Ajax (Asynchronous Javascript And Xml no funciona entre dominios distintos), generamos un archivo jsonp dinámicamente en el que definimos una variable que va a actuar como callback de la petición.
Como soy fiel seguidor de "maestros del web", voy a hacerle un guiño y voy a traerme sus diez últimos post publicados:
El acrónimo CSS (Cascading Style Sheet en inglés) se traduce al castellano como Hojas de Estilo en Cascada y es una tecnología diseñada para la presentación de los documentos que forman una página web.
El organismo que regula sus especificaciones es el W3C (World Wide Web Consortium) de la misma forma que lo hace con el lenguaje Html.
Las novedades que ha introducido la nueva versión de CSS (en el post "html5, el cambio que esperabamos" menciono algunas de sus propiedades más importantes) hacen posible una mayor dinamización e interactividad de la web utilizando tecnologías abiertas.
En este sentido, los nuevos estándares web permiten el desarrollo de sitios mucho más accesibles.
Tan sólo debemos disponer de un navegador actualizado para poner en práctica algunos ejemplos asombrosos como los que vemos a continuación:
Lorem ipsum dolor sit amet, consectetur adipiscing elit. Mauris pulvinar rhoncus risus, vel ornare lacus sagittis sit amet. Duis vel sem magna. Proin pulvinar velit eleifend ligula ultrices vestibulum. Nunc posuere dolor eu mauris feugiat dignissim.
Lorem ipsum dolor sit amet, consectetur adipiscing elit. Mauris pulvinar rhoncus risus, vel ornare lacus sagittis sit amet. Duis vel sem magna. Proin pulvinar velit eleifend ligula ultrices vestibulum. Nunc posuere dolor eu mauris feugiat dignissim.
Top cube face
The top face is nested in an extra div tag to give correct rotation of skewed rectangle.
This face is also scaled, so the font size has been reduced to accommodate.
Left cube face
Duis aute irure dolor in reprehenderit in voluptate velit esse cillum dolore eu fugiat nulla pariatur. Excepteur sint occaecat cupidatat non proident, sunt in culpa qui officia deserunt.
Right cube face
Lorem ipsum dolor sit amet, consectetur adipisicing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam, quis nostrud exercitation ullamco.
La animación es un proceso utilizado para dar la sensación de movimiento a imágenes o dibujos o a otro tipo de objetos inanimados (figuras de plastilina, por ejemplo).
Fuente: wikiepedia (http://es.wikipedia.org/wiki/Animación).
A continuación voy a mostrar un ejemplo muy simple de una animación en dos dimensiones usando el objeto Canvas de Html5.
Si quieres puedes crear tu propia historia editando las cajas de texto:
Marian (texto1)
Billy (texto1)
Billy (texto2)
Marian (texto2)
Marian (texto3)
Podemos ver un ejemplo de animación en tres dimensiones en la dirección http://www.benjoffe.com/code/demos/canvascape.
Se trata de un juego de aventuras en 3D (disparos en primera persona).
Sin duda, html5 es una alternativa para juegos de navegador que presenta ventajas importantes:
se trata de una herramienta estándar abierta y gratuíta al alcance de cualquier persona interesada en desarrollo web.
no requiere de software adicional o instalación de complementos.
es sopotado por los navegadores más actuales con independencia del sistema operativo lo que lo convierte en multiplataforma.
En contra, se está trabajando para mejorar el rendimiento debido al elevado consumo de memoria y cpu.
También os dejo un enlace que os va a sonar: Angry Birds.
Uno de los juegos más populares para dispositivos móviles, también está disponible en HTML5 para disfrutar desde el navegador. http://chrome.angrybirds.com
HTML5 es el Lenguaje de Marcado de Hipertexto (HyperText Markup Language) en su quinta revisión, regulado y recomendado por el W3C (World Wide Web Consortium), consorcio encargado de la mayoría de las especifiaciones tecnológicas para la web.
Está en fase borrador pero cuenta con el apoyo de las grandes compañías como Google, Apple o Microsoft cuya apuesta supone el lanzamiento definitivo en la web.
Se estima que la versión final de esta recomendación se aprobará en el año 2014. No obstante, se puede usar html5 sin ningún temor ya que la mayoría de sus características se encuentran en una situación muy estable.
Html5 hace referencia al conjunto de nuevas tecnologías que proporcionan una navegación mucho más ágil y flexible y suponen una experiencia de usuario mejorada sin el uso de software adicional.
El objetivo fundamental de html5 es facilitar el desarrollo de aplicaciones web enriquecidas (ahorro de costes en el desarrollo de páginas webs) y mejorar el rendimiento ante las nuevas necesidades tecnológicas y de gestión de la información.
No olvidemos que cada vez más terminales móviles soportan html5 y para el presente año se espera la venta de mil millones de terminales compatibles con esta tecnología. Véase el artículo: http://jmacuna73.blogspot.com.es/2012/12/smartphone-utilidades-reales-y-evolucion.html
Algunas de las aportaciones del lenguaje son:
Etiquetas nuevas:
<canvas> para representación de elementos gráficos en 2D y 3D
elementos multimedia como <audio>, <video>, <source>, <embed>. Los formatos de audio soportados son AAC, mp3, ogg, PCM, WebM y los de vídeo ogg, H.264, WebM, H.264.
elemento <track> para alojamiento de una pista de texto asociada a un contenido multimedia, por ejemplo un vídeo.
tags para manejar la web semántica. Algunos elementos que definen secciones del documento son <article>, <aside>, <bdi>, <command>, <details>, <summary>, <figure>, <figcaption>, <footer>, <header>, <hgroup>, <mark>, <meter>, <nav>, <progress>, <ruby>, <rt>, <rp>, <section>, <time>, <wbr>.
elementos de forma: <datalist>, <keygen>, <output>.
Formularios enriquecidos:
se añaden nuevos tipos de datos cómo direcciones de e-mail <input type=email>, números de teléfono <input type=tel>, url absoluto <input type=url>, búsqueda <input type=search>, fecha y hora global <input type=datetime>, fecha y hora local <input type=datetimelocal>, fecha <input type=date>, mes <input type=month>, semana <input type=week>, hora <input type=time>, número <input type=number>, número en rango <input type=range>, color <input type=color>
nuevos tipo de controles de entrada: barras de progreso, generadores de claves, interfaces de salida, listas de datos, selectores de colores, calendarios, cuadros de búsqueda, etc.
comportamientos como autofocus, autocompletar, redirigir el valor.
y posibilidad de validación de los campos sin el uso complejo de scripting.
CSS3:
permite dibujar gráficos vectoriales
rotar y escalar imágenes: transform, -webkit-transform, -moz-transform, -o-transform
texto sombreado: text-shadow
cajas sombreadas: box-shadow
redondear bordes o esquinas de elementos o imágenes: border-radius.
bordes con imágenes: border-image y border-corner-image.
múltiples imágenes de fondo: background-image: url('fondo1.png'), url('fondo2.png')
tooltip usando pseudo-elementos :before (or :after) combinados con pseudo-clases :hover.
opacidad: opacity
múltiples columnas: -moz-column-count and -moz-column-width
soporta una gama más amplia de las definiciones del color: HSL (hue, saturation, lightness), CMYK (cyan, magenta, yellow, black), HSLA (hue, saturation, lightness, alpha) y RGBA (red, green, blue, alpha)
Modelo de procesamiento de errores:
el manejo de errores queda claramente definido y es mucho más sencillo para el programador.
Javascript:
los nuevos APIs para gestionar la interacción con el usuario permiten dibujar gráficos 3D con WebGL, trabajar off-line, geoposicionamiento, drag and drop, etc.
APIs para el acceso a sistema de ficheros, almacenamiento de sesión, base de datos local, etc.
Otros módulos:
MathML (Mathematical Markup Language): lenguaje extendido que nos permite expresar notaciones matemáticas .
SVG (Scalable Vector Graphics) hace posible dibujar gráficos vectoriales nativamente.
Para poder disfrutar de todo su potencial hay que contar con las últimas versiones de los navegadores más importantes del mercado (Mozilla, Chrome, Opera, Safari e IE).
Internet Explorer interpreta código html5 a partir de la versión 8. Para versiones anteriores y con el objetivo de no excluir a ningún usuario, recomiendo utilizar la detención de capacidades. La librería más completa para ello es Modernizr: the feature detection library for HTML5/CSS3.
Os dejo un buen vídeo sobre Qué es HTML5 y qué no es, mitos y leyendas de los estándares abiertos, pasado, presente y futuro de HTML5 de Sandra Guerrero Sanmarti que no os podéis perder.
Reflexiones que planteo:
¿es el momento de realizar un cambio tecnológico con tanto impacto en nuestra empresa y nuestros clientes? ¿es html5 una apuesta de futuro para aplicaciones web y videojuegos?
Me interesa tu opinión, ¿qué piensas al respecto?
La traducción literal del anglicismo “smartphone” es “Teléfono inteligente”.
La diferencia fundamental respecto del teléfono convencional es que posee un sistema operativo propio de una computadora dotándole de valor añadido:
permite la instalación de aplicaciones adicionales a las que trae de fábrica.
vienen provistos de cliente de correo electrónico con administrador de tareas y agendas de contactos.
poseen interfaces para la introducción de datos: pantalla táctil, teclado querty.
permiten el acceso a Internet mediante la red 3G o wifi.
permiten la lectura de documentos en diferentes formatos: pdf y documentos de oficina como Word y Excel.
es multitarea: al igual que un ordenador, permite realizar distintas tareas al mismo tiempo. Por ejemplo, podemos consultar la agenda mientras visualizamos un vídeo en Youtube o recibimos una llamada. De ahí que se les catalogue como ordenadores de bolsillo.
cuentan con GPS (Sistema de Posicionamiento Global).
también disponen de reproductores de música y vídeo y en muchos casos de acelerómetros (sensores que detectan el movimiento del dispositivo permitiendo girar con sólo rotar el teléfono).
Algunos de los smartphones más conocidos en el mercado mundial son: iPhone (Apple), BlackBerry (Research In Motion), Ascend (Huawei, el mayor fabricante de equipamiento de redes y telecomunicaciones de China), Defy (Motorota), Optimus (LG), Lumia (Nokia), Nexus (Google), One (HTC), Xperia (Sony Mobile Communications), Galaxy (Samsung).
Gráfico sobre la evolución en la venta de smartphones (Fuente: Bitelia):
En los próximos años la mayor parte de los dispositivos móviles vendidos serán terminales Android o iPhone/iPad (70%).
El número de aplicaciones para móviles crecerá de los 11 millones de 2010 a los 77 millones en 2014.
Las nuevas funcionalidades del móvil dan acceso a información cada vez más valiosa, las empresas invierten en marketing, ofertas y promociones online y los dispositivos móviles hacen posible conectarnos a la red en cualquier lugar y en cualquier momento.
Es por ello que las operadoras de telefonía móvil apuesten por este tipo de dispositivos electrónicos y traten de cubrir los aspectos más valorados por los compradores: las prestaciones del terminal y sus funciones. Hoy día podemos gestionar una empresa con un teléfono inteligente, realizar videoconferencias y estar en contacto con todo el mundo.
El fácil acceso a este tipo de terminales a través de promociones y contratos de permanencia así como la introducción de modelos más asequibles ha hecho posible la rápida expansión de los smartphones.
Las funciones principales de un Community Manager, en adelante CM, se vienen realizando desde que existe la World Wide Web o telaraña mundial. Si bien en la actualidad se ha convertido en una profesión emergente que, por sus características, está dirigida principalmente a publicistas, profesionales del marketing y de la información.
¿qué es un CM?
Es la persona encargada de expandir, cuidar y mantener la comunidad de seguidores de una marca o empresa en el ámbio digital.
Debe conocer las necesidades e intereses de los clientes y las posibilidades estratégicas de la empresa con el fin de gestionar la comunicación creativa de la marca en las redes sociales (Twitter, Facebook, Google+, YouTube, Tuenti, Xing, Linkedin, etc).
Crear contenido enriquecido y mantenerlo actualizado en las redes sociales para atraer consumidores potenciales de nuestra marca es una de las tareas fundamentales de de un CM.
¿de qué otras tareas principales se ocupa un CM?
No sólo se trata de crear y gestionar perfiles de la marca sino de investigar y conocer las distintas herramientas de automatización que existen en el mercado, fomentar el intercambio de conocimientos, interactuar con los miembros del grupo e intercambiar opiniones en redes sociales, blogs, foros, eventos y conferencias.
Herramientas para organizar contenido en las redes sociales
Crear contenido en las redes sociales, moderar comunidades de usuarios y analizar resultados requiere del uso de herramientas adecuadas.
Algunas de las más importantes son:
Google Calendar: agenda y calendario electrónico para crear y compartir eventos.
Google Reader: lector de feed o agregador de noticias para suscribirte a los sitios o blogs que lees habitualmente. Otros lectores conocidos son Bloglines, My Yahoo!, Netvibes.
Wikimedia Commons: banco de imágenes bajo diferentes licencias Creative Commons. No olvidemos que muchas imágenes y fotografías que circulan por la web tienen derechos de autor y están reguladas por las leyes de propiedad intelectual. También podemos acceder a Flickr, Freefoto, Fotolibre, Public Domain Pictures, Openphoto.
Google Alerts: herramienta para recibir directamente a tu correo, resultados de búsqueda por palabra, frase o sitios. Es especialmente útil para monitorear lo que se dice de tu empresa o marca en la red. Otras destacadas son Twitter Search, Topsy, SocialMention.
TweetDeck: sirve para gestionar cuentas de Twitter, Linkedin, Facebook y My Space, posibilitando programar tareas, asignar tareas pendientes, realizar reportes.Otras de las herramientas de gestión más importantes son CoTweet, Hootsuite.
Google Analitycs: para analizar datos sobre el tráfico de tu sitio web. Muy útil para conocer cuál es tu público, número de visitas, contenido más visitado, cuánto tiempo pasan en nuestro sitio, etcétera. Haremos mención especial a Clicky, Feedburner, Facebook Stats, Twitter Counter, Social Mention.
GSite: herramienta colaborativa útil para registrar el trabajo de un equipo. Permite asignar tareas, poner fechas de entrega, recibir alertas por correo, almacenar archivos… También podemos destacar Basecamp para el trabajo en equipo a distancia. Y Dropbox para almacenar archivos en la nube y sincronizarlos en línea.
En los tiempos que nos ha tocado vivir todo el mundo ha oído hablar de las T.I.C. o “tecnologías de la información y comunicación” pero ¿qué son? ¿para qué sirven? y ¿qué papel desempeñan en las empresas?
En realidad son aquellas tecnologías necesarias para gestionar y transmitir la información y comunicación.
Si bien es cierto que engloba las tecnologías tradicionales como la radio, la televisión y la telefonía convencional, en las últimas décadas las siglas se han asociado a la nuevas tecnologías como la informática, internet, las telecomunicaciones y el gps principalmente.
Suponen un importante desarrollo de nuestras capacidades mentales y físicas y amplian el escenario de desarrollo social incidiendo en muchos aspectos de nuestra vida cotidiana como la gestión de actividades burocráticas, la educación, la sanidad, el acceso al mercado de trabajo, el ocio, la comunicación entre personas y un largo etcétera.
Es evidente que han mejorado nuestra calidad de vida siendo cada vez más difícil prescindir de ellas.
Desde el punto de vista de la empresa han cambiado nuestra forma de trabajar y suponen un elemento crucial para que nuestro rendimiento sea mayor, agilizando el trabajo en equipo y las comunicaciones lo que nos permite ser más competitivos y sobre todo, reducir costes.
En las distintas áreas de la empresa su aportación es determinante:
departamento financiero: software de contabilidad, facturación electrónica, banca electrónica, firma electrónica.
logística y distribución: comercio electrónico, gps, e-procurement o suministro de productos y servicios vía internet.
recursos humanos: plataformas e-learning de formación, gestión del conocimiento, software de gestión de nóminas, portal del empleado.
producción y procesos: ERP, en inglés “Enterprise Resource Planning” o “Gestión integral de procesos”.
marketing: correo electrónico, boletines electrónicos (también conocidos como newsletters), blogs (bitácora), página web, publicidad on-line, herramientas de fidelización (programas de puntos, descuentos), ofertas, lanzamientos, programas informáticos de gestión de clientes más conocidos como CRM cuyas siglas significan “Customer Relationship Management” o “Gestión de las relaciones con los clientes”.
Cómo conclusión final diremos que en la actualidad, las TIC son un instrumento clave para la gestión de las empresas permitiendo ejercer un mejor control de su actividad dando como resultado el éxito en la toma de decisiones y por tanto en el alcance de sus objetivos.