Archive | May 2014

Content Marketing, cuando la estrategia es el contenido

El Content Marketing consiste en crear, distribuir y compartir contenido relevante para tus usuarios. La motivación consiste en tener mas engagement con los usuarios, es decir, si publicas algo interesante y útil los usuarios regresarán a tu sitio y comenzarán a confiar en tu marca y tendrás mejores tazas de fidelidad.

En Content Marketing no se crea contenido con fines publicitarios, es decir no es otro comercial más sobre los servicios que ofrece una marca. Por el contrario consiste en ofrecer información de calidad que transforme al usuario en un comprador más inteligente. Por ejemplo si tu marca ofrece servicios de educación online, puedes publicar artículos sobre tecnologías del momento, puedes publicar videotutoriales cortos comparando tecnologías, de esa forma empezarás a fidelizar a tus usuarios.

Suena muy bonito, pero.. vamos seguro que tu compañía ya tenía un blog….

El verdadero poder de Internet para las marcas

Con el auge de las redes sociales muchas compañías entendieron que los comerciales emitidos durante el horario de la novela más popular de la noche dejaron de ser efectivos. De modo que decidieron incursionar con cantidades enormes de dinero en campañas online en Facebook, Twitter, etc.

Esta transición se convierte en un problema para las compañías pues: no saben cómo hacer campañas online, y tampoco saben cómo medirlas. Es en este mundo oscuro que nace la figura del Community Manager.

El Community Manager es un rol que pretende gestionar las campañas online, crearlas y medirlas. Su mision consiste basicamente en hacer que los usuarios interactúen con las campañas online, y en reportar qué tan exitosa es una campaña.

El problema del Community Manager es la forma en la que mide las campañas: número de retweets, número de seguidores y número de likes. Para el Community Manager una campaña exitosa es lo mismo que: muchos likes, muchos retweets y especialmente muchos nuevos seguidores.

Lo anterior resultó en muchos Community Managers buscando maximizar el numero de likes y seguidores, la mayoría por medio de estrategias sucias. ¿Por qué está mal querer maximizar el número de likes y seguidores? En realidad es un buen objetivo querer maximizar el numero de likes y seguidores, pero de una manera orgánica.

Segmenta los gustos de tus usuarios con el poder de las redes sociales

El poder que Twitter y Facebook ofrecen a las marcas no es exactamente poder llegarle a millones de usuarios, eso es posible poniendo un anuncio en la tv o en estaciones de metro. El verdadero poder está en ofrecer a las marcas la oportunidad de conocer a sus clientes/leads/usuarios detalladamente.

Si se obtienen seguidores y likes inorgánicos se crea ruido que no permite a una marca establecer perfiles de sus clientes.

Mediante los perfiles de Facebook y Twitter una marca puede establecer un perfil detallado sobre sus clientes. Por ejemplo una compañía podría saber que sus clientes usualmente twittean sobre Dr. Who en la noche y habitan en latinoamérica, por eso tal vez una campaña con la imagen del Dr who podría ser mas exitosa que una con Superman.

Es una gran historia, pero ¿dónde encaja el Content Marketing?

Es simple y poderoso:Tu eres lo que lees! Tu eres el contenido que consumes. Si puedes entender qué contenido es el que consume tu audiencia puedes crear un perfil personalizado de cada cliente, es más, podrías establecer qué contenido es el mas relevante para ellos.

Veamos un ejemplo: si DirectTV sabe que eres fanático del fútbol en el momento en que llames a cancelar te puede tentar con un año gratis de partidos de fútbol gratis si te quedas, pero si es tu abuela la que llama lo mejor sería ofrecerle el paquete de novelas gratis durante 6 meses.

Con Twitter y Facebook puedo entender a mi audiencia

Estoy de acuerdo, pero imagina combinar Twitter y Facebook con Content Marketing.

OnePoll reveló el año pasado que 1 de cada 4 mujeres y 1 de cada 5 hombres miente sobre su vida en las redes sociales para no parecer aburridos. Las mentiras más comunes incluyen: fiestas, vacaciones y compras. Por el contrario sólo consumimos contenido que realmente nos interesa. Por ejemplo no compartirías en facebook que estás buscando una cura para el terrible y asqueroso hongo que tienes el pie, pero seguro sí consumirás contenido sobre cómo deshacerte de él.

¿Qué ofrece el Content Marketing?

Trabajo para una compañía la cual usa procesamiento de lenguaje natural y Content Marketing para ayudar a las marcas a que entiendan a sus usuarios mediante la interacción con contenido. Por medio de la combinacion lenguaje natural mas Content Marketing las marcas pueden:

  • Ofrecer personalización: es decir contenido que se ajusta a cada usuario. La personalización tiene un gran efecto en el engagement
  • Entender con detalle las preferencias de cada usuario
  • Segmentar usuarios por gustos, edades, regiones geográficas

El Marketing de Contenido puede ayudar a dirigir la estrategia de marketing, entender mejor a tus usuarios, a crear más engagement y finalmente, más conversiones. Además ofrece indicadores que permiten entender y dirigir una estrategia de Marketing Online.

Enviar comentario

via Cristalab http://ift.tt/1rqb8qe

Pruebas de estrés para WebSockets en Node.js

Para hacer un test de estrés exclusivamente sobre los WebSockets, voy a usar una librería de Node.js llamada websocket-bench. Esta librería nos permitirá usar Node.js desde nuestro equipo local para hacer un test a nuestra aplicación.

Hoy en día es muy necesario hacer pruebas a nuestras aplicaciones para ver si soportan una gran cantidad de usuarios y interacciones, pero en el tema de socket.io es algo especial ya que no hay muchas formas de probar directamente los WebSockets, esto se debe a que muchos de los tests que hay en el mercado se enfocan a servidores HTTP.

Para instalarla tienes que ya tener instalado Node.js que viene con npm que es el manejador de paquetes, ya con esto listo, abres una terminal y haces lo siguiente:

Código :

$ sudo npm -g install websocket-bench

Ahora vamos a preparar nuestra infraestructura para aceptar nuestras consultas de websocket-bench:

Código :

var Io = require('socket.io').listen(2501);
// basic config
Io.set('log level', 0);
Io.enable('browser client minification');
Io.enable('browser client etag');
Io.enable('browser client gzip');
Io.set('transports', ['websocket', 'flashsocket', 'htmlfile', 'xhr-polling', 'jsonp-polling']);
// on connect
Io.sockets.on('connection', function(socket){
    // event stres
    socket.on('test', function(message){
        // do something.....
        console.log(message);
    });
});

Este server básico tiene un evento ‘test’ en el cual podemos colocar nuestro código que va a ser testeado.

Ahora vamos a crear un pequeño código en JavaScript de nombre "generator.js" el cual va a usar nuestra librería websocket-bench para emular la conexión del socket y de paso emitir el mensaje al nodo:

Código :

(function() {
    exports.onConnect = function(client, done) {
        client.emit('test', 'TEST');
        done();
    };
    exports.sendMessage = function(client, done) {
        done();
    };
})();

Listo! ya con esto podemos emitir un evento a test y medir el rendimiento de nuestro código en los sockets. Ahora corramos nuestra librería usando todo lo reunido hasta el momento:

Código :

$ websocket-bench -a 1000 -c 1000 -m 1 http://localhost:2501 -g generator.js

Miremos bien lo que tenemos aquí:

  • -a xxxx es la cantidad de usuarios, por defecto son 100
  • -c xxxx es la cantidad de concurrencia por segundo
  • -m x es la cantidad de mensajes por usuario
  • -g xxxx.js es que vamos a usar un javascript para el test

Entonces vamos a cargar 1000 usuarios, todos entrando al mismo tiempo y trabajando en un segundo. El resultado para mi aplicación en local es esta:

Código :

Launch bench with 1000 total connection, 1000 concurent connection
1 message(s) send by client
1 worker(s)
WS server : socket.io
#### steps report ####                                                                                               
Number ; Connections ; Errors ; Duration(ms)
1000 ; 998 ; 2 ; 5333
#### total report ####
Number ; Connections ; Errors ; Message Send ; Message Fail ; Duration(ms)
1000 ; 998 ; 2 ; 998 ; 0 ; 5333

Estos resultados son altamente positivos, pero ojo! estos resultados son el local, en producción las cosas cambian completamente y lo único que tienes que hacer es cambiar la url.

Ten en cuenta que si optimizas tu código tendrás resultados diferentes.

Para mas información mira en Git websocket-bench

Enviar comentario

via Cristalab http://ift.tt/1kR6IU9

Socket.io lanza su versión 1.0

Socket.io es un framework que posibilita la ejecución en tiempo real de eventos del lado del cliente. Guillermo Rauch (@rauchg) es de Buenos Aires, Argentina radicado en San Francisco y es el cofundador de LearnBoost. Es el creador de esta librería y ahora y finalmente nos trae la versión 1.0 de socket.io, proyecto que surge luego de una de las primeras apariciones de Node.JS.

Nuevo motor con engine.io

El código base de socket.io ya no se encargará de manejar problemas con el browser e incompatibilidades. Estas tareas estarán a cargo de un nuevo módulo llamado engine.io. Con esta implementación, ahora el código es más ligero y modular.

Esto ha permitido innovar y hacer mejoras en la capa de transporte.

Soporte a datos binarios

Ya es posible el envío de datos binarios. Socket.io ahora permite enviar un Buffer desde Node.js, Blob, ArrayBuffer e inclusive File como parte de cualquier estructura de datos.

Estas nuevas características se pueden testear con weplay.io, un juego colaborativo que inclusive funciona en IE8 o.O.

Testeos automáticos

Cada cambio al socket.io fue testeado a un total de 25 navegadores, incluyendo Android e iOS.

Escalabilidad

Ahora en vez de aculumar o replicar datos en nodos, socket.io sólo se preocupa de pasar eventos.

Integración

Se aclara el panorama para los que utilizan multilenguajes en sus desarrollos. El proyecto socket.io-emitter permite fácilmente enviar eventos al navegador desde cualquier lugar.

Mejoras en debugg

Aumentaron la forma en la que se realiza el debugg. Ahora es posible hacer debugg desde el lado del frontend.

APIs simplificadas

Ahora es muy simple implementar socket.io. Puedes conectarlo a un servidor HTTP o lo puedes cargar directamente en un puerto de tu servidor.

Código :

var srv = require('http').Server();
var io = require('socket.io')(srv);

var io = require('socket.io')(8080);

Red de envío de mensajes

Si bien socket.io posibilita la emisión de mensajes en tiempo real, en sí mismo es un servidor. Para implementar el servidor solo necesitas agregar un línea de código:

Código :

<script src="/http://ift.tt/1771iQL;

¿Qué esperar de socket.io?

En la versión 2.0 nos prometen tener soporte para navegadores web más antiguos, con un código base más pequeño y rápido que no solo sea utilizado para emisión de objetos JSON.

Muchas de las innovaciones a socket.io serán por fuera de su código base. Con sólo integrar una librería podrás expandir la funcionalidad del mismo.

Guillermo Rauch con socket.io ha realizado un gran aporte a la comunidad de JavaScript. Esperemos que el proyecto siga creciendo!

Aviso oficial de la versión 1.0

Enviar comentario

via Cristalab http://ift.tt/1k5d1o6

Cómo hacer una campaña en Facebook Ads

¿Quieres anunciar tu negocio en Facebook pero no sabes cómo se hace? Hoy, si quieres emprender un a través de Internet los Ads de Facebook no son simplemente una opción, no: son una obligación.

Casi siempre oímos hablar de Facebook como la red social más grande del mundo (ya tienen 1.230 millones de usuarios, más personas que en India y casi tantas como en China) pero también -y quizás por eso mismo- tiene una de las plataformas publicitarias más grandes y robustas del mundo online.

Crear un anuncio en Facebook es MUY sencillo y esa es la razón principal por la que es, hoy en día, la principal competencia de Google AdWords en el negocio de la publicidad online.

En este video @freddier nos enseña, en un lenguaje muy sencillo, cómo filtrar por países, región, intereses, palabras clave y todos los secretos para realizar una campaña exitosa.

¿Quieres aprender más? Entonces inscríbete en el curso de Estrategia Digital y Marketing Online de Mejorando.la. ¡Esto es solo el comienzo!

Enviar comentario

via Cristalab http://ift.tt/1nMplb0

Cómo hacer una campaña publicitaria increíble en Facebook Ads

¿Quieres anunciar tu negocio en Facebook pero no sabes cómo se hace? ¿Quieres impulsar tu producto, servicio, carrito de pizzas, agencia de detectives en la red con más impacto? Llegaste al lugar adecuado para aprenderlo rápido y fácil.

Casi siempre oímos hablar de Facebook como la red social más grande del mundo (ya tienen 1.230 millones de usuarios, más personas que en India y casi tantas como en China) pero también -y quizás por eso mismo- tiene una de las plataformas publicitarias más grandes y robustas del mundo online.

Así que para quien quiera echar a andar un negocio a través de Internet los Ads de Facebook no son simplemente una opción, no: son una obligación.

Usarlos no es ciencia compleja, por el contrario, crear anuncio en Facebook es MUY sencillo y esa es la razón principal por la que es, hoy en día, la principal competencia de Google AdWords en el negocio de la publicidad online.

¿Quieres hacer un anuncio increíble? Entonces tienes que ver este vídeo en el que @freddier te enseñará, en un lenguaje muy sencillo, cómo hacerlo.

¿Quieres aprender más? Entonces inscríbete en el curso de Estrategia Digital y Marketing Online de Mejorando.la. ¡Esto es solo el comienzo!

Enviar comentario

via Cristalab http://ift.tt/1opmiXr

Diseño Responsive con Media Queries y “em” ¡Muerte a los Píxeles!

Ya hemos hablado acerca de las medidas relativas y las absolutas en el diseño Web. También acerca de cómo usar el Viewport correcto para layouts en responsive. Pero parece que estas buenas prácticas se nos diluyen cuando tenemos que hablar de layouts responsive y de qué medidas usamos todavía para los cambios en los breakpoints. Hablamos de medidas relativas pero configuramos Media Queries en píxeles.

Media Queries relativos al mercado de los dispositivos

Actualmente hay un set de Media Queries en las que se trata de “identificar” el comportamiento del layout de acuerdo a las resoluciones de las pantallas más usadas. ¿Es esto correcto en un mercado donde la vorágine tecnológica nos estampa todos los días nuevos dispositivos y como resultado, nuevas pantallas y resoluciones?

¿Cuándo realmente debo generar un breakpoint con nuevos comportamientos en mi layout?
Stephen Hay responde a esto algo muy particular:

@stephenhay :

Start with the small screen first, then expand until it looks like shit. Time for a breakpoint!

“Comienza con la pantalla más pequeña, luego expándela hasta que luzca como la mi*rda. Tiempo de hacer un breakpoint!"

Esto realmente nos deja a los diseñadores un poco con el síndrome de la hoja en blanco. Esta manera de pensar en el diseño corresponde a estar 100% convencidos de que la web es fluída y que los diseños estarán en un constante cambio. Ya no hay más pixel perfect y debemos dejar de pensar que media querie sirve para setear solamente los anchos de los elementos, sino también los márgenes, estilos y hasta comportamiento, como por ejemplo cuándo usamos un ícono responsive o no.

Ok, pero qué uso para Media Queries, "rem" o "em"?

Hace poco hablábamos de las medidas relativas "em" y "rem" y sus diferencias y de cómo la unidad de medida "rem" era tan práctica de usar. Prestando atención en algunos ejemplos de Media Queries relativas me fijé que todas correspondían al par 100% = 1em teniendo como premisa que los navegadores en esas medidas dan un resultado de 16px a 14px de base. Lo que concluye en dos cosas:

Usa "em" para Media Queries, no "rem"

¿Porqué? porque el valor que obtiene "em" en Media Queries es relativo al user agent, no al estilo CSS. Por lo que si usas "rem", que debe tener una base definida en el CSS, nunca tomará esa base definida, sino que siempre tomará la medida 16px o 14px según el navegador.

En la especificación de la W3, sección 6:

W3 :

Relative units in media queries are based on the initial value, which means that units are never based on results of declarations. For example, in HTML, the ‘em’ unit is relative to the initial value of ‘font-size’.

Esto significa que las medidas relativas se basan en el valor inicial, por ejemplo 1em toma su valor inicial de 16px. "rem" no nos sirve porque su valor lo debemos declarar, y según la definición Media Queries ignora los valores declarados. Puede ser que el Media Querie en "rem" funcione pero siempre tomará el valor inicial por defecto (16px), por lo que es mejor usar "em".

Esto nos lleva a la segunda cuestión:

No podemos controlar todo

Como diseñadores, o frontends, debemos librarnos a estas premisas, y sabes qué cosas podemos controlar y que cosas no. Muchas veces será el usuario el que termine de realizar ese control final al optar por visualizar el sitio de la manera en la que más sencillo será para él. Pero hay algo seguro, debemos dejar de pensar en píxel perfect cuando diseñamos para Web, y saber que los diseños estarán en constante movimiento literalmente, y es por eso que siempre debemos priorizar el contenido.

Pasar de píxeles a "em" con ish. 2.0

Hay varios conversores, pero está herramienta, ish. 2.0 es muy simpática. Establece las medidas en small, medium, large y full. Tiene una función, HAY! que sirve para generar los breakpoints de tu sitio, dándote la información del valor en píxels y "em". También podés agrandar o achicar manualmente o darle al botón Random. En Disco te muestra en modo random todos los breakpoints que puede haber en el sitio. Es muy útil! podés usarla como demo web o descargar la aplicación en Github.

Si nos fijamos, las medidas no están en tamaños respecto a dispositivos, si no a tamaños: chico, mediano, grande, extra grande, full o completa. Una manera distinta de pensar la aplicación de Media Queries.

¿Creen que esto es más funcional que usar Media Queries en píxeles?

Enviar comentario

via Cristalab http://ift.tt/1neQEPo

Series sobre geeks, el triunfo del mundo tecnológico en el mainstream televisivo

Geek is the new sexy!

Los nerds, geeks y demás bichos parecidos de la fauna académica y tecnológica se han convertido en especímenes tremendamente populares (y hasta sexys, quién lo diría) durante las últimas décadas.

¿Las razones? los callados, rechazados, otrora wallflowers, encabezan las listas de los multimillonarios del mundo: Bill Gates, el niño gafufo y con cara de tonto ¡es el hombre más rico del mundo!, y dentro de los primeros 20 lugares están Jeff Bezzos, Sergey Brin y Larry Page. Paremos ahí.

No se trata solamente de dinero, no: ellos han creado cosas geniales.

Y por si acaso las series y comedias cada vez menos van sobre abogados y abogadas locas o médicos con problemas de personalidad. Anuncio: ¡ustedes ya no son la gente sexy del mundo!

 

El cine y la televisión quieren contar las historias del mundo tecnológico

Dentro de los innumerables logros de estos personajes (cosas como inventar un computador o hacer posible Internet) está también haber capturado la atención de las grandes empresas de televisión y productoras de cine, quienes ahora quieren contar y retratar la vida del mágico mundo de la tecnología.

Como en cualquier otro mundillo, este tiene sus propios role models y personajes típicos: el inversionista con ínfulas de multimillonario; el genio de los algoritmos escondido debajo de su hoodie; el chico pasado de peso que usa una camiseta que certifica que estuvo en la última conferencia para desarrolladores de Google; el entrepreneur que busca que su idea se convierta en the next big thing (o sea el próximo Facebook o Instagram) y que prepara día a día el mejor pitch para conseguir funding para su naciente compañía.

Richard Hendriks y Erlic Bachmann, personajes de la serie Silicon Valley.

Richard Hendriks y Erlic Bachmann, personajes de la serie Silicon Valley.

¿Cuáles son esas series y películas? Veamos.

Baby, you’re a rich man!

Desde la aparición de películas como Los Piratas de Silicon Valley estos personajes han dejado atrás el estereotipo del idiota social, por demás feo, que presentaban películas como “La Venganza de los Nerds” para dar paso a películas y narrativas en las que amasan grandes fortunas, son protagonistas de encarnadas intrigas y son sexualmente deseables.

Así como Los Piratas presentó en su momento toda la intriga que antecedió a la creación de Microsoft y Apple y la rivalidad entre Bill Gates y Steve Jobs, La Red Social es el ejemplo perfecto del oscuro mundo tecnológico de esta época: de fondo se sugiere que todo el impulso creativo de Zuckerberg se funda en su deseo por una mujer y toda la historia está cruzada por la enconada rivalidad de Zuckerberg con los hermanos Winklevoss.

 The Big Bang Theory y The IT Crowd

Uno de los intentos recientes por reflejar la vida de estos personajes es The Big Bang Theory, una serie que, en mi opinión, no logra convencer y que en vez de retratar una realidad resulta en caricaturizaciones un poco mediocres, como la del astrofísico Sheldon Cooper y su insoportable Bazinga !

En contraste la inglesa The IT Crowd logró presentar una versión bastante mejor de este mundo, recordemos uno de sus más célebres capítulos: “The Internet”.

Betas_ de Amazon y Silicon Valley de HBO

Más recientemente Amazon ha lanzado BETAS_ un sitcom que pretende recrear la cotidianidad de una startup en la que se desarrolla una app móvil de dating. Su objetivo es lograr convencer a los señores de los rolex y tener mucho dinero para financiar su empresa.

En abril HBO ha lanzado Silicon Valley, una comedia sobre seis geeks que viven en Palo Alto. Su empresa se llama Pied Piper y su objetivo es  desarrollar un SaaS dirigido a la industria musical, que ha resultado de un primer intento de crear una app móvil.

¿Quién, que haya trabajado en una empresa de tecnología, no ha visto esta misma escena cientos de veces?

La serie fue creada por Mike Judge, un físico que trabaja en el mundo de la tecnología desde hace muchos años y que fue el director de la célebre película de culto Office Space, que ya a finales de los 90 intentaba retratar la vida de los oficinistas dentro de una empresa de software.

Silicon Valley es quizás la primera de todas estas series que logra hacerlo realmente bien y retrata de una forma muy aproximada cómo es este mundo, cómo se desarrolla una ronda de inversión, una compra, un exit, cómo se crean aplicaciones, cuáles metodologías se usan para desarrollar una aplicación y mantener una startup y, sobre todo, dibujar de forma muy precisa a los personajes.

¿Quieres saber un poco más?

Entonces debes ver a @freddier y @cvander en este vídeo:


¿Cuáles de las series que has visto sobre el mundo tecnológico crees que lo hacen bien? ¿Cuáles te gustan y cuáles no? ¿Por qué?


Aleyda Rodriguez para Maestros del Web.
Agrega tu comentario | Enlace permanente al artículo


Síguenos en: @maestros | Fan page

The post Series sobre geeks, el triunfo del mundo tecnológico en el mainstream televisivo appeared first on Maestros del Web.

via Maestros del Web http://ift.tt/1sQtTyh

El problema de optimizar gráficos 3D en videojuegos. Low Poly sí o no?

En el mundo del modelado 3D hablar de Low Poly hoy en día puede tener dos contextos diferentes que llevan a la confusión.

El modelado en Low Poly existe desde siempre, los primero modelos 3D en la industria de los videojuegos, eran Low Poly, la dimensión en píxeles de las texturas eran pequeñas, debido a que no se le podía exigir mucho al motor de gráficos de las consolas de esa época, que tenían la tarea de renderizar en tiempo real.

El Low Poly para la optimización de recursos 3D, hoy en día sigue vigente.

En el otro lado de la moneda, Low Poly es un estilo y una tendencia gráfica, que si bien tiene unos cuantos años, aun está en pleno boom. A pesar de que la tecnología de hoy nos permite hacer modelados orgánicos de alto poligonaje, también es una opción evocar un poco a lo retro, a lo simple (visualmente hablando), a romper estándares de estética.

En este estilo se trata de representar mucho con pocos recursos. En el contexto del modelado 3D esto se traduce en: poca geometría y texturas simples que es igual a un look Cartoonesco, y bastante cool.

Low Poly para la optimización de recursos 3D

Citando a la consola Nintendo 64, en cualquier título encontramos modelos 3D hechos en Low Poly para la optimización de recursos. Se hacía un esfuerzo enorme para que los modelos no luzcan tan geométricos, todas las texturas estaban pre-renderizadas, entre otras técnicas, ya que no se le podía exigir mucho al motor de gráficos de esta consola. Aun así, ¿nunca intentaron contar de cuántos triángulos estaba hecho Link en The Legend of Zelda – The Ocarine of Time?

Incluso en el remake de Nintendo 3Ds de esta entrega, es evidente que se intentó fidelizar el viejo estilo, pero seguro consideraron "pecado" dejar tantos triángulos evidentes.

Hoy en día en el contexto de Low Poly para la optimización de recursos podemos hablar de personajes de un videojuego con un total de 10,000 polígonos o mucho más y tamaños de texturas de 1024×1024 por que el avance tecnológico lo ha hecho posible. Claro, esto si pensamos trabajar el arte gráfico de un videojuego de última generación.

Técnicas de modelado 3D y optimización versus tecnología

Gracias al surgimiento de nuevas tecnologías en cuanto al modelado 3D (WebGl, Augmented Reality) siguen siendo de mucha importancia técnicas como la retopologización, crear mapas de normales, pre-renderizar texturas y por encima de todo, modelado 3D, donde un total de 5000 polígonos por objeto y una textura de 1000×1000 sea una exageración.

Esto es debido a que el motor de gráficos de esta tecnología (en el caso de WebGL es el navegador mismo) no tiene la potencia que posee una consola de última generación. En mi experiencia, introducir un modelo de más 5000 polígonos y cuatro texturas de 1000×1000 dentro de un móvil es pedirle a la aplicación que se cierre, o incluso que se niegue a abrir.

Esto es Low Poly para la optimización de recursos:

  • Modelo: 502 polígonos.
  • Textura: 128x128px.

El Low Poly como estilo en la ilustración 2D y animación en 3D

El surgimiento de este estilo, me atrevo a relacionarlo directamente con el Flat Design. Este estilo también busca optimizar recursos, y ahora ya dejó de ser pecado dejar triángulos evidentes. Este recurso se ha convertido en el estilo por excelencia y usarlo es muy cool.

Sin embargo, al igual que el Flat Design, este estilo no es recomendable para todo, ni deberíamos usarlo sólo por que esté de moda, el contexto del proyecto que emprendamos nos dirá si es factible usarlo o no.

En mi opinión personal, se ha sobreexplotado este estilo, hay artistas que buscan que el modelo luzca muy geométrico, que los triángulos sean muy evidentes, y es tanto este empeño que, se olvidan de parte de la esencia del Low Poly: optimizar recursos. Se olvidan del nombre "LOW POLY", y hacen todo lo contrario, generan "muchos polígonos que tengan una apariencia geométrica".

No voy a negar que este último ejemplo también es muy cool (de hecho es obra de mis artistas favoritos: Nick Campbell "the gorilla"), sólo opino que es un error catalogarlo como Low Poly.

Híbridos, óptimos o completamente inadecuados?

Podemos concluir en que un modelo será Low Poly o no, dependiendo de la plataforma en que utilicemos el modelo: una animación en video, un personaje para un juego de video, un personaje para ser implementado en webGl, por mencionar algunos ejemplos.

Pero aun así podemos debatir con la siguiente imagen:

¿Es Low Poly como el título de la obra dice? En mi opinión me parece demasiado más de 2000 polígonos sólo para una lámpara. ¿Cuántas lámparas habrá en la escena? Es un elemento que se repetirá al menos cuatro veces, mas la cantidad de polígonos de cada objeto en esta escena: si la lámpara tiene más de 2000, ¿cuántos tendrá un auto? ¿cuántos un personaje? Por nivel de jerarquía, seguro serán muchos más.

Al menos que este ítem sea utilizado en algún juego de Play Station 4, tal vez no tengan validez mis cuestiones. Tal vez es sólo envidia mía por que la artista posiblemente trabaje para RockStar Games.

Enviar comentario

via Cristalab http://ift.tt/1lqJdPt

Adapta tu Web a la luz del ambiente con JavaScript y CSS3

Hacer un sitio con buena usabilidad abarca muchas facetas, una de ellas es que sea cómodo y agradable de usarlo. Y algo que haría muy agradable la experiencia a cualquier usuario es no tener que desgastar la vista cuando está en la oscuridad ni forzar los ojos cuando hay mucha luz. ¡Ahora es posible adaptar el diseño a la luz!

Seguro que te ha pasado: vas por la calle un día con un tiempo perfecto, sol radiante, quieres mirar tu teléfono pero hay mucha luz, no puedes. Pones la mano alrededor de la pantalla tapándola, pero tampoco alcanzas a ver bien, levantas el teléfono poco a poco hasta ponerlo por encima de tu cabeza y miras hacia arriba, ya tienes que detenerte porque no eres capaz de caminar con esa postura.

Y por fin, agarrando el teléfono con las dos manos hacia arriba y mirándolo con fijeza como si estuvieras levantando la copa del mundo logras intuir lo que hay en la pantalla… ¿no sería más fácil si el diseño de un sitio web se adaptara en función del nivel de luz del ambiente?

El sensor de luz

Lógicamente el requisito fundamental para que esto sea posible es que nuestro dispositivo tenga sensor de luz, normalmente todos los nuevos smartphones y tablets cuentan con este sensor ubicado junto a la cámara frontal en muchos casos como el de la imagen:

Una vez tengamos esto, hacer nuestra web adaptable a la cantidad de luz que nos rodee es posible de dos formas diferentes:

  • JavaScript
  • CSS en el futuro

Cómo preparar los diseños adaptables a la luz ambiente

Para que los diseños sean coherentes con la luz ambiente, tenemos que usar colores de fondo y de letra que correspondan con la situación.

La norma es: para ambientes oscuros usaremos fondos oscuros y para situaciones de mucha claridad usaremos fondos claros. El color del texto será inverso al fondo.

Pero como siempre, usando un criterio lógico, en el caso de fondos oscuros se necesitará color de texto más claro para poder diferenciarse pero recordemos que si el entorno está en oscuridad, como por ejemplo cuando miramos el teléfono nada más abrir los ojos al despertarnos, tampoco es agradable que la letra tenga un color tan tan claro que igualmente sea incómodo.

Por lo tanto la claridad de la fuente debe ser diferenciable del fondo pero no tanto que resulte molesta. Aquí puedes ver este ejemplo de diseños para luz tenue, normal y abundante con tonos granates:

Adaptar el diseño con JavaScript

Simplemente tenemos que añadir a nuestro código la escucha del evento ‘devicelight’ con JavaScript que nos indicará cuánta cantidad de lux (medidad de luz) capta el sensor.

Después establecemos los límites de luz que diferenciarán si en el entorno hay una cantidad de luz pequeña, normal o abundante. En función de dicha cantidad cambiaremos la clase de nuestro body (o cualquier otro elemento html que deseemos modificar).

Para ello tenemos que haber declarado en nuestro archivo .css las diferentes clases que asignaremos a nuestro body dependiente de la luz que nos rodee.

Los límites de luz recomendables son los siguientes

  • Luz tenue: -50 luxes
  • Luz normal: 50 – 1500 luxes
  • Luz abundante: 1500+ luxes

Código :

<script>
window.addEventListener('devicelight', function(e) {
  var lux = e.value;

  if (lux < 50) { // luz tenue
    document.body.className = 'tenue';
  }
  if (lux >= 50 && lux <= 1500) { //luz normal
    document.body.className = 'normal';
  }
  if (lux > 1500)  { // mucha luz
    document.body.className = 'luminoso';
  } 
});
</script>

[css:1:e02276abf3]
body,
body.normal {
/*fondo de luminosidad media*/
background-color: #963F53;
/*letra de color
levemente oscuro*/
color: #111;
}
body.tenue {
/*fondo oscuro
para ambiente de oscuridad*/
background-color: #70011B;
/*luz clara que resalte del fondo*/
color: #fff;
}
body.luminoso {
/*fondo claro
para ambiente de mucha claridad*/
background-color: #fff;
/*luz oscura que resalte del fondo*/
color: #70011B;
}
[/css:1:e02276abf3]

Adaptar el diseño con CSS3

Una de las media queries más esperadas por implementar en la mayoría de navegadores y sistemas es "light-level", anteriormente llamada "luminosity". La documentación oficial puede verse en este enlace.

Con esta media query se podrá establecer el diseño de cada parte de nuestro .html sin necesidad de JavaScript, desde el mismo .css en función de los tres parámetros posibles que acepta "light-level".

  • dim: Para una luz tenue, ambiente de oscuridad
  • normal: Cuando la cantidad de luz que nos rodea es común
  • washed: Para un ambiente muy luminoso que impida ver bien la pantalla

La estructura del código para esta media query sería así:
[css:1:e02276abf3]
@media (light-level: normal) {
p { background: url("texture.jpg"); color: #333 }
}
@media (light-level: dim) {
p { background: #222; color: #ccc }
}
@media (light-level: washed) {
p { background: white; color: black; font-size: 2em; }
}
[/css:1:e02276abf3]

Decimos que esta opción es para un futuro porque teóricamente en la actualidad sólo funciona en sistemas Android y en versiones de Firefox posteriores a la 22. Pero con el tiempo la posibilidad de cambiar el diseño con CSS3 en función de la luz del entorno será implementada en la mayoría de sistemas y navegadores.

Aun así cada dispositivo tiene unos niveles diferentes en su sensor, de modo que para lo que un teléfono sería un nivel de luz "dim" quizás para otro aún se mantenga como "normal".

En resumen

Si quieres hacer más agradable la experiencia de visitar tu sitio web recuerda que prepararlo para que se adapte a la luz y facilite su visualización hará que dé un salto en calidad.

Y en caso contrario…seguiremos levantando copas del mundo en los días de sol radiante. ;)

Enviar comentario

via Cristalab http://ift.tt/1lz4F6w

We need hablar bien en el mundo tech

El spanglish, ese hijo bastardo de la cultura de los inmigrantes latinos a Estados Unidos, ya se abre paso en el mundo como una lengua, que quizás en algunos años empiece a ser tomada más en serio por lingüistas y defensores a ultranza del español y es muy usado en el mundo de las startups latinas.

El mundo del emprendimiento no es ajeno a estos avatares del idioma y también ha creado algunos pequeños demonios idiomáticos a cuyo uso me opongo rotundamente y que hoy quisiera denunciar.

El léxico de la atención al cliente

Todos los ámbitos de desempeño humano desarrollan sus léxicos. También sus chistes privados, sus propias expresiones. El mundo tecnológico no está excluido de esta particularidad.

También es muy probable que cada profesión, ocupación u oficio desarrolle sus propias deformaciones del idioma, por ejemplo en los call centers los encargados ya no verifican nuestra información sino que “validan nuestros datos”, a un asunto cualquiera se le dice por defecto “tema” y a su tratamiento “manejo”. Manejaremos el tema de la validación de sus datos puede ser una expresión tan corriente como poco agradable en el contexto de la atención al cliente.

¿Cuáles son esas palabras horribles que se usan en el mundo tecnológico y que debemos evitar, por ser un atentado contra nuestro hermoso español?

Espero que prefieras entrar y no accesar

:

“Anoche casi no puedo accesar a mi apartamento porque dejé tiradas las llaves”.

¿Esta te parece una expresión normal o intuyes alguna maldita anomalía en ella? Por favor, di acceder o entrar, nunca accesar. ¿Por qué? sencillamente el verbo accesar no existe en español, es una castellanización (como ha pasado con muchos otros verbos) del inglés To access, que significa “tener acceso”.

Uno no accesa un servicio web, ni mucho menos diría corrientemente que “accedió” o “accesó” a su apartamento luego de encontrar las llaves para señalar la acción de entrar al lugar en donde vive.

Por favor, ya mismo oprime enter para ponerte en el modo de uso del bonito y simple verbo entrar. Mejor dicho: accesa :shock: al uso del verbo entrar, para que me entiendas. Repite después de mí: "Entré a mi apartamento. Entré a Facebook. Entré a una bonita tienda de discos". ¿Viste? Suena simplemente hermoso :D

Estar ubicado en, no estar basado en

En el mundo startup latino es común la pregunta ¿en dónde está basada tu empresa? De nuevo acudimos a la versión deformada en español de la expresión inglesa “based in”, que en español significaría algo como "estar ubicado en".

En español la expresión “estar basado en” refiere a los fundamentos de una explicación, a las ideas a partir de las cuáles surgieron empresas, libros, aplicaciones web, nuevas ideas acerca del universo. Por ejemplo:

Aleyda :

Las ideas de Galileo se basaron en el redescubrimiento del diálogo platónico Timeo, en el que se planteaba un sistema del mundo en el que el sol, y no la tierra, era el centro del universo conocido

Nunca vayas a decir por favor que "Galileo estaba basado en Florencia”. Es mucho más simple y comprensible decir que Galileo vivió en Florencia.

¿Eres empresario, emprendedor o emprendedurista?

Sesquipedalismo es una palabra extraña para describir un comportamiento no menos extraño: la costumbre de alargar las palabras con terminaciones “raras” o de decir lo mismo con un mayor número de palabras para aparentar sofisticación al hablar.

¿Quieres un ejemplo? si para decir que María tiene gripa usas la expresión “María en este momento afronta un delicado proceso gripal” estás incurriendo en esta rareza idiomática. ¿No es más sencillo decir que ella tiene gripa y punto?

Con esta explicación en mente grábate que la palabra emprendedurismo no existe. En español tenemos la palabra emprendedor para referirnos a quien funda una empresa y todavía una más sencilla y agradable para referirse a estas mismas personas: empresarios.

Dar a las palabras una apariencia sofisticada no te hace grande. Y recuerda: lo bueno, si breve, dos veces bueno. Esta fue la lección más importante que aprendí en la universidad.

Diseño adaptativo, o Responsive design: nunca Diseño responsivo

Aunque la palabra responsivo sí existe en el español (es decir, aparece en el DRAE), no es, ni de lejos, lo mismo que significa la inglesa responsive.

Lo que quiere designarse con la expresión responsive design es la capacidad de un diseño web para adaptarse a los diversos tamaños de pantalla existente. ¿Por qué no simplemente decir diseño adaptativo? o, si te suena raro (como a mí) entonces escribe y usa responsive design, pero no hagas esas extrañas mezclas que solo le salen bien a la comida fusión. Y no siempre :P

Aplicación, no aplicativo

No entiendo bien por qué en los últimos meses los periodistas y empresarios del mundo tecnológico han decidido usar la deformación “aplicativo” al referirse a una aplicación, designada casi siempre en inglés o en el contexto del trabajo en tecnología como una app. ¿Es que acaso suena más sofisticado decir aplicativo? Aunque algunos creen que “aplicación” y “aplicativo” significan exactamente lo mismo, DRAE es tremendamente esclarecedor al respecto:

  • aplicativo, va.
    1. adj. Que sirve para aplicar algo. O sea como un copito para limpiar tus orejas o un paño para ponerte crema encima.
  • aplicación.
    4. f. Inform. Programa preparado para una utilización específica, como el pago de nóminas, formación de un banco de términos léxicos, etc.

Para cerrar te dejo este poema, que describe muy bien lo idiota que te ves cada vez que intentas parecer sofisticado al hablar. Y recuerda una regla simple de la vida: casi siempre menos es más.

Poemática enfisemática

En cierta prosa hinchada y mema,
tan pesada como enfática,
nunca se trata del problema
sino de la problemática.

La esdrujulación por sistema
que suena tan antipática
me acaba de inspirar un tema.
Perdón, iba a decir temática.

Tal vez de elegancia suprema,
en esta sucesora de Ática,
es que en vez de entrar al cinema
ingresamos a cinemática.

O que siguiendo el mismo esquema
una criada aristocrática
no sahúme ya con alhucema
sino con alhucemática.

O si el que recorta la grama
con su podadora automática
le propone de golpe al ama
arreglarle su gramática.

O si en la Bolsa el accionista,
al mirar la demanda apática,
le pregunta al comisionista:
¿Hoy está cómo? ¿Cómo estática?

Mujer, para quien mi cartera
tiene atracción carismática,
la plata del diario quisiera
yo dártela en forma de plática.

Hernando Martínez Rueda

Si quieres denunciar el mal uso de alguna otra palabra puedes hacerlo en la sección para comentar.

Enviar comentario

via Cristalab http://ift.tt/1v4OfrG