CyberMonday, tropiezos con futuro

Éste lunes se celebró el CyberMonday en USA, y en Argentina, como buenos gauchos, copiamos ésta costumbre “yanki” y la trajimos al mercado local, con algunos tropezones, pero bueno, la idea está, y la CACE le pone ganas.

cybermonday

CyberMonday

El BlackMonday

Ya sé, el black es el viernes, pero bueno, considerando el desempeño de los sitios se podría decir que fue un lunes negro, sobre todo para administradores de sistemas que tuvieron que mantener monstruos mal configurados, que cargaban recursos que no utilizaban, imágenes que no habían sido optimizadas y otros pequeños detalles.

Se va mejorando

Si bien hubo desperfectos, el año pasado había sido peor, habían participado muchas empresas que hacían descuentos que parecían un chiste (por lo malos), éste año se tomaron las cosas un poco mas en serio, pero no tuvieron en cuenta el flujo de visitantes, que también es positivo, la gente está mas predispuesta o al menos hubo una mayor difusión del evento.

Ofertas extendidas

Luego de los inconvenientes muchas empresas extendieron las ofertas hasta el día martes, o sea hoy, como para compensar por los problemas técnicos que surgieron ayer.

Para mejorar

Obviamente la infraestructura es algo que debe ser mejorado y considerado con mas detalle, se notó que los sitios que están centrados en la venta online tuvieron una mejor respuesta a la ola de usuarios. Estaría bueno que después publiquen estadísticas, aunque sea que lo hagan a través de la CACE para ver el resultado.

Falta un poco de planificación en la parte de actualización de los precios, había sitios que tenían los mismos precios, otros donde estaban mal cargados los datos, cosas de ése estilo, es como que si creen que el argentino todavía duda al comprar online, ojo que no estoy diciendo que no lo haga, pero la realidad es que año a año aumentan las transacciones online, y no solo debido a la inflación.

Una mala experiencia con Positivo BGH

Negativo BGH, negativo!

En la red de redes pasan cosas, la gente cuenta sus experiencias, y es por eso que éste post llega a ustedes, con el auspicio de Asus, MENTIRA! El resto de lo que van a leer, por desgracia, no es mentira.

Por casualidad, recorriendo mi red antisocial favorita, Reddit, me encuentro con un post de un redditor contando sus peripecias con una de las marcas que promete tener equipos de fabricación nacional, Positivo BGH, o mejor dicho, negativo BGH.

Primer acto

El redditor va y compra una ultrabook de “fabricación” nacional, tenia un defecto en la tecla de encendido y la lleva cambiar al local donde la compró, solo había pasado un día, debido a la política de cambios del lugar (Rodó) de 3 días, se la cambian sin problemas.

Segundo acto

Nuevamente inmerso en el olor a nuevo se predispone a probarla, todo OK, pasan unas horas y el medidor de batería de Windows no reacciona, espera un tiempo más y procede a desenchufarla, dejándola funcionando solo con la batería, pufff, se apaga, la batería está KO, no OK, KO!

Luego de esto, y debido a que sabía que en Rodó no tenían más stock, decide tratar directamente con BGH, donde le dicen que es un problema simple, que solo debe llevar el equipo a un servicio técnico y en cuestión de una semana lo tendrá nuevamente en su poder.

PEQUEÑO inconveniente, no tenían stock de baterías. Seguir leyendo »

Medir distancias en linea recta en Google Maps

Regla en Google Maps

La regla para medir distancias en linea recta de Google Maps es una de las varias características “ocultas” que tiene el servicio, en realidad se encuentra en la sección de funcionalidades de prueba, pero por desgracia no es tan fácil encontrarlas, y para usarlas se deben activar.

Lo que deben hacer para acceder a éstas características “ocultas” es entrar a Maps Labs, menú que no está disponible en la nueva versión de Google Maps.

google maps labs

Acceso a Maps Labs

Maps Labs

Labs está disponible, o estaba, disponible en varios de los productos de Google, y contiene funcionalidades no masivas ¿que significa esto? En general son funcionalidades interesantes pero no lo suficiente como para implementarlas en toda la base de usuarios, y algunas incluso se asemejan mas a una broma del día de los inocentes que a una verdadera funcionalidad de un software.

¡Quiero mi regla!

Una vez que acceden a Maps Labs pueden activar la regla, es una de las primeras opciones listadas.

regla dinstancia recta g maps

Rulers Rule!

Después de seleccionar la opción “Activar”, la regla aparecerá junto a la escala del mapa. Para usarla solo tienen que hacer clic sobre el icono y luego seleccionar los puntos que deseen medir. Ésta es una funcionalidad propia de Google, no es un plugin, ni nada por el estilo. Look mom, no plugins!

Angry Birds Go

Pájaros y furiosos, llega un nuevo juego de Rovio

Estuve al menos 15 segundos pensando en un juego de palabras para el titulo pero lo mejor que logré fue eso, que desastre. Bueno, no importa, porque a partir del 11 de diciembre de éste año podremos disfrutar de un nuevo juego de la serie Angry Birds, pero en ésta ocasión con un enfoque “totalmente nuevo”, si es que nunca jugaron Mario Kart.

El nuevo juego cambia totalmente la dinámica, ya que se trata de carreras de autos en el cual se pueden “tunear” los mismos y que cuenta con una gran cantidad de personajes con diferentes especialidades.

El juego será gratis y estará disponible para Android, iOS, BlackBerry 10 y Windows Phone 8 ¿Qué? ¿Blackberry qué y Windows cuánto? Si, Rovio se toma el multiplataforma en serio.

Después que vean el trailer probablemente tengan recuerdos de los viejos juegos de Family y Sega, y de algunos mas nuevos como Mario Kart, no se preocupen, pasa hasta en las mejores familias.

Sitio oficial

Maquillando gráficos en D3.js

Siguiendo con la escueta introducción a D3.js, en ésta ocasión la idea es hacer un poco mas lindo el gráfico feo y aburrido del tutorial anterior, para ello se le va a agregar color y etiquetas para identificar las barras.

Llega la primavera, llegan los colores

El atributo fill es el que le da color, literalmente, a los elementos SVG, su uso es igual al de otros atributos, como los que dan las coordenadas o el tamaño de los elementos, obviamente, los valores que se le asignan deben ser colores validos, pudiendo usar varias sintaxis, RGB, Hexadecimal o nombres explícitos. Con D3 asignar el valor de los atributos es siempre tan sencillo como .attr(‘atributo’, valor), magia!

Pero ¿y esa barra de que es?

Las etiquetas hacen de nuestro mundo un lugar menos caótico (?) ¿que hubiese sido de Monk sin etiquetas? Agregar etiquetas es simple gracias a, sí, a D3, aunque puede que necesiten un poquito de matemática.

Para las etiquetas vamos a necesitar texto, por suerte SVG viene armado hasta los dientes (?), y tenemos elementos para ésto (text). Con D3, además, agregar un elementos de texto es similar a lo que se hizo con las barras, solamente cambia el tipo de elemento, obviamente, y algunos atributos.

Barras etiquetadas

Okey, eso es …¿útil?

Ahora hay que ajustar la posición de las etiquetas, lo que no es tan difícil.

Lo primero es centrar la posición de las etiquetas, en éste momento la posición está dada por la siguiente formula

i*(svgwidth/datos.length)

Para centrarlas debemos modificar la formula para centrarla dentro de la barra, o sea que deberíamos sumarle a la posición la mitad del ancho de las barras, que es (svgwidth/datos.length)/2, por lo que la formula de la posición respecto a x queda:

i*(svgwidth/datos.length)+(svgwidth/datos.length)/2

Pero como no podía ser de otra manera, tenemos un problema nuevamente, ya que si el texto es largo no va a queda centrado, pero a no desesperar, también hay solución para eso.

Denle la bienvenida al atributo text-anchor, éste atributo lo que hace es alinear el texto respecto a un punto dado, tiene 4 configuraciones posibles : start, middle, end e inherit.

  • Start: El texto comienza en el punto dado.
  • Middle: El “medio” del texto queda en el punto dado.
  • End: El texto termina en el punto dado.
  • Inherit: Hereda la configuración del elemento padre.

En caso de que no se especifique el valor por defecto es start.

Ésto es lo que llevamos hasta ahora.

etiquetas centradas text-anchor

La etiqueta está en orden!

Por ultimo, algo que depende del gusto de cada uno, pero en mi caso prefiero que el texto éste contenido dentro de la barra, pero en realidad hay que considerar nuestros datos antes de tomar ésta decisión.

Encerrado y colorido

Los últimos toques antes de dar por terminada la obra, ojo, ésto sigue, aún nos faltan los ejes y la normalización.

Para llevar las etiquetas al interior de las barras vamos a jugar con la posición respecto a y, es tan simple como sumarle un valor determinado a la posición ¿por qué determinado? Porque va a depender del tamaño de las etiquetas, sino podemos terminar con la mitad del texto adentro de la barra y el resto afuera.

Probablemente alguien se haya perdido ¿Restarle? ¿Con que te drogás, Tomás? Ésto se debe a la forma en que maneja los ejes SVG, y pasa con casi todo lo relacionado a gráficos en la PC, la esquina superior izquierda se considera la coordenada (0,0), cuando estamos acostumbrados de las matemáticas a trabajar con el origen de coordenadas ((0,0)) ubicado en la esquina inferior izquierda, pero bueno, detalles, imaginen que estamos en el plano y nuestro gráfico se encuentra en el cuarto cuadrante.

Los colores, como en el resto de los elementos SVG se dan con el atributo fill.

etiqueta coloridas d3js

Etiqueta blanca!

Finalmente, el código, mi único héroe en éste lío.

Y el Fiddle para que se pongan manos a la obra.

En el código del texto pueden ver que hay varios atributos que no comenté en el tutorial, en realidad ésos atributos son “compartidos” con CSS y son bastante sencillos.

  • font-family: nos permite asignar la fuente, se pueden separar con comas varias fuentes diferentes en caso de que el usuario no las tenga instaladas en su PC.
  • font-size: es el tamaño de la fuente en pixels, en éste caso.

Pueden ver que al atributo y del texto se le suman 15 para “meter” las etiquetas adentro de las barras, y también le restamos 1 al width de las barras para que estén separadas.

Espero les haya sido de utilidad éste tutorial, cualquier consulta o sugerencia es bienvenida.