25 de diciembre de 2014

¡Feliz Navidad!




Pues eso, que feliz navidad a todos :)

El cuadro es la Sagrada Familia del pajarito, de Murillo.

1 de diciembre de 2014

Objective c: Convertir timestamp a fecha NSDate

Os pongo un pequeño ejemplo de como convertir una fecha en formato Timestamp a NSDate en objective C:

NSString * timeStampString = @"1316641549";
    NSTimeInterval _interval=[timeStampString doubleValue];
    NSDate *date = [NSDate dateWithTimeIntervalSince1970:_interval];
    NSLog(@"%@", date);

Espero que os sea de utilidad :)

30 de septiembre de 2014

Apple: Como cambiar la batería de un portátil Macbook Pro

Os pongo aquí un videotutorial que he hecho en el que explico como cambiar la batería de un portátil Macbook Pro.




Espero que os sea de utilidad.

29 de septiembre de 2014

Privacidad: Google almacena todos los movimientos de tu móvil Android

Pues eso, que si tienes un móvil con Android con tu usuario de Google activado el famoso buscador va almacenando todos tus movimientos con el móvil. Muy útil para despistados como yo que quieren saber que hicieron tal o cual día y para parejas hipercelosas que quieren controlar al milímetro a los suyos.

Para ver tu histórico tienes que ir a este enlace: https://maps.google.es/locationhistory/b/0 y estar logueado en Google. Ya de paso le puedes enviar un saludo a Obama de mi parte ^_^.

Os pongo aquí una captura de uno de mis días en verano :)


16 de septiembre de 2014

Unity: Acceder a variables de otros scripts con C#

Voy al grano :)

Manager.cs

using UnityEngine;
using System.Collections;

public class Manager : MonoBehaviour {

public static int someGlobal = 5;

// Use this for initialization
void Start () {
print(someGlobal);
someGlobal = 1;
}

// Update is called once per frame
void Update () {

}
}


Acceder.cs

using UnityEngine;
using System.Collections;

public class Acceder : MonoBehaviour {

// Use this for initialization
void Start () {
Manager.someGlobal = 3;
print (Manager.someGlobal);
}

// Update is called once per frame
void Update () {

}
}

Agregar los scripts cada uno a un objeto distinto, yo el Manager lo agrego siempre a un objecto vacío en pantalla al que llamo "Main", pero bueno , cada uno que lo haga según quiera.

3 de septiembre de 2014

Sobre las fotos robadas a las famosas en iCloud

Estos días se ha levantado una polémica brutal a cuenta de las fotos robadas de 100 celebridades de sus cuentas de iCloud. Unos y otros nos hemos lanzado a dar nuestra opinión sobre el asunto.

Los hay que opinan que se lo han buscado por hacerse este tipo de fotos con su móvil, los hay que aprovechan para criticar el sistema de seguridad de Apple, los hay que vaticinan el fin de la protección con password (como si ese fuera el agujero de seguridad), etc.

En mi opinión una cosa es el mundo ideal y otra el mundo real. En un mundo ideal no hay brechas de seguridad y todos somos buenas personas que respetamos la intimidad de los demás.

En el mundo real hay brechas de seguridad, las brechas de seguridad se producen normalmente por un error en el software genérico utilizado creado por terceros (sistema operativo, librerías de terceros, etc) o por un error en el software desarrollado a medida.

En cuanto al software de terceros, pongamos por ejemplo un servidor Apache, cuando se produce un fallo de seguridad este se suele colgar en foros técnicos, y hasta que se resuelve el problema pueden pasar semanas. Durante este tiempo todos los sistemas basados en él están comprometidos. Las empresas privadas como Microsoft optan por el secretismo para que no se sepa que hay un agujero, pero cuando lo hay lo hay y se sabe. Recuerdo una temporada que estuve suscrito a un boletín de seguridad sobre agujeros de Wordpress y al día recibía de 20 a 30 mensajes.

El software propio siempre se desarrolla con recursos de la empresa, esos recursos suelen ser muy limitados (o por el tamaño de la empresa o por decisión de los contables), con lo que no puedes estar en todo.

¿Por qué surgen estos agujeros? Bueno, el software hoy en día no es como antes, ahora es un producto complejo que utiliza elementos desarrollados por equipos que no tienen nada que ver el uno con el otro. De hecho en ocasiones esos elementos ni siquiera fueron desarrollados para estar juntos, por lo que los problemas entre ellos generan fisuras que pueden ser aprovechadas.

A esto hay que unirle el factor tiempo, en este mundo estresado de locos en el que vivimos todo se quiere para ayer. Si haces un análisis con prisas algún agujero seguro que te dejas y si programas con más prisas aún sólo te queda poner la alfombra. Soy programador, sé de lo que hablo.

El año pasado Apple ya tuvo una brecha de seguridad que motivó que durante casi un mes no pudiésemos publicar aplicaciones en la App Store. A este problema no se le dio mucha publicidad. Pero el problema no es sólo de Apple, es de Sony, de Google (yo he visto hackear cuentas de email de Gmail como quien come pipas -a nivel de pruebas de seguridad, eso sí-) y algún día le tocará la china a Microsoft.

Así que si os va el mundo real no grabéis en formato digital (fotos, vídeos, email) cosas que no queréis que se vean, porque os puede tocar a vosotros. Mientras tanto a pelear para que el mundo ideal sea el real.

1 de septiembre de 2014

Twitter: caca, culo, pedo, pis

Hay una serie de usuarios cuyo lema en Twitter es caca, pedo, culo, pis. Cuando el equipo de fútbol rival pierde o cuando un famoso del corazón dice algo se lanzan al ataque soltando todos los insultos e improperios de los que son capaces en los 140 caracteres de Twitter.
A mí el tema no me pilló de sorpresa, venía ya acostumbrado a los foros, a los comentarios en los blogs y a los comentarios de Menéame, niñatos que en la calle no se atreven ni a mirarte a los ojos en internet se crecen y van soltando todo tipo de tonterías.

En mi caso me han amenazado de muerte vía comentarios en un blog, han amenazado a mi mujer vía YouTube, en fin, que Internet es la jungla.

Lo que yo he hecho siempre es pasar de ellos, son unos energúmenos que se aburren en casa. La pega es que generan mucho ruido y terminan echando de Twitter a gente que expresa su opinión libremente, y eso ya si que me parece triste.

¿Cual es la solución? Ni idea.

22 de agosto de 2014

Pay to Win

¿Qué es el Pay to Win?

Es un modelo de negocio en los juegos Free to Play según el cual el que más dinero gasta en el juego es el que siempre gana. El término en sí se usa de manera despectiva para tratar a un juego de "sacacuartos".

Hace algunos años este modelo de negocio arrasó, pero ahora, conforme ha evolucionado el mercado de los juegos Free to Play y han entrado más competidores en el mercado han aparecido multitud de alternativas en las cuales gastar dinero ayuda, pero no se convierte en el elemento determinante del juego.

Identificar a un juego Pay to Win es bastante sencillo, a las 3 o 4 partidas verás que si no compras moneda virtual del juego -sólo conseguible pagando- no podrás competir contra los otros jugadores.

En el caso de los juegos monojugador lo sabrás cuando veas que no puedes pasar de fase sin pagar, independientemente de tus habilidades como jugador.

El objetivo de este tipo de juegos es captar a los jugadores llamados "ballenas" que son los que más dinero gastan para que se enganchen al juego premiando sus habilidades de gasto, más que las de juego.

Pero bueno, como os he dicho al principio, este tipo de juegos desaparecerán con el tiempo, esperemos :)

19 de julio de 2014

Videojuegos:Xinput y DirectInput

Desde hace algún tiempo muchos de los juegos de PC que compro en Steam no funcionan con mi gamepad para PC compatible con PS3, he estado investigando un poco y he encontrado la razón.

A día de hoy hay dos tipos de drivers para gamepad en Windows, xInput y DirectInput, xInput es más moderno que DirectInput, está basado en las especificaciones de XBOX360 y es muy utilizado en los juegos que tienen también versión para esta consola.

DirectInput es más antiguo que xInput, son los drivers de gamepad para Windows de toda la vida, tienen más limitaciones técnicas y están cayendo en desuso.

En mi caso lo que hago para mi gamepad es instalar un emulador de drivers de XBOX360 para que mi gamepad me sirva, a veces da errores o se cuelga con el motor del vibrador (por ejemplo con las arañas en Castlevania Lords of Shadow) o no funciona bien en algunas ocasiones (por ejemplo en Batman Origins con el botón de investigar pruebas en el modo detective). Vamos, que no es la solución perfecta. Si queréis descargarlo podéis hacerlo aquí: x360c controllers

Aunque tengo una XBOX360 mis mandos son inalámbricos por lo que no funcionan en mi Windows ya que no tengo el receptor para PC así que estoy valorándome comprarme un mando de xbox 360 con cable para poder disfrutar al 100% con los juegos de mi PC.

No me mosqueo demasiado con el tema ya que llevo toda la vida aguantando todas estas macarradas de la industria, mi primera vez fue con el Spectrum +2 que rompió la norma Atari y nos tocó compranos joysticks compatibles, en fin, más de lo mismo.

24 de junio de 2014

Grand Theft Auto V: Un modder saca un mod en primera persona para XBOX 360

El usuario XBLToothPik le está experimentando con el motor del juego y ha conseguido colocar una cámara en primera persona, y sorprendentemente el juego se ve muy bien, a mí me recuerda al Mirror's Edge. A ver si cuando salga para PC aparecen mods tan buenos como este.





11 de junio de 2014

Android: Emulador BlueStacks





BlueStacks es un programa que permite ejecutar aplicaciones Android. Está disponible para Windows y para Macos X.

No emula a ningún dispositivo Android del mercado, simplemente ejecuta sus aplicaciones en un ordenador de una manera rápida y eficaz.

Para ejecutar una aplicación en él puedes, o bien descargarla de la tienda de Google Play desde dentro de BlueStacks o bien puedes hacer doble click sobre un fichero APK -son los ficheros compilados para ejecutarse en Android-.

En mi caso utilizo este emulador para hacer pruebas rápidas de las aplicaciones que desarrollo, no es fiable a nivel de velocidad ni a nivel de exactitud visual, pero viene bien para comprobar otro tipo de errores rápidamente.

Para los que no tengáis móviles o tablets Android os permite también probar juegos y apps de esta plataforma en la pantalla de vuestro ordenador, pero recordad que no es fiable 100% y la sensación de usar el hardware real no la vais a tener.

Si queréis descargarlo podéis ir a BlueStacks.com.

8 de junio de 2014

Dota2: Noob


Noob es el término despectivo que se usa por parte de muchos jugadores de juegos online competitivos por equipos para referirse a los novatos que juegan mal.

En mi caso acabo de comenzar a jugar a DOTA2, llevo 45 horas de juego y tengo nivel 6 por lo que aún no conozco todos los elementos básicos del mismo.

Acabo de jugar mi primera partida con 10 jugadores humanos, 5 contra 5, 3 de nuestro equipo hablaban en ruso y los otros 2 en inglés -vía chat-. Desde el principio a mí y a otro jugador nos han etiquetado de noobs, idiot y otro tipo de insultos 2 jugadores rusos del equipo. Como jugábamos mal comparado con ellos no paraban de exigirnos que nos fuésemos de la partida y de amenazarnos con hacer un "report" sobre nosotros a Valve, los report -por lo que sé- se hacen cuando un jugador insulta o amenaza a otro, no cuando es mal jugador.

DOTA2 es un juego divertido cuando juegas contra Bots -jugadores controlados por la máquina-, pero cuando juegas con humanos poco respetuosos puede convertirse en una experiencia muy desagradable. En mi caso tengo 40 años y me da igual, ya que la vida real te da mas palos que cualquier juego, pero no me quiero ni imaginar el efecto que una sesión de insultos de este tipo puede tener sobre un adolescente.

Hasta ahora siempre recomendaba a mis amigos jugar a DOTA2, a partir de esta experiencia se lo recomendaré bastante menos, y advirtiéndoles de la experiencia desagradable que puede llegar a ser. Y como a alguna de mis hijas se les ocurra jugar me veré obligado a pararles los pies hasta que sean más mayores.

Cómo las partidas de DOTA2 quedan grabadas voy a intentar subirla a YouTube para que podáis ver a que me refiero.

Me da a mí que los que hacen bullying a los jugadores novatos deben de ser adolescentes sin la personalidad formada parecidos a los que acosan en secundaria a los demás, espero que con el tiempo maduren y comprendan que cuando un novato se une a un deporte lo que hay que hacer es animarle y enseñarle para hacer más grande aún el deporte que uno tanto ama, hasta el punto de no ser ya un novato.

8 de mayo de 2014

Como llamar desde un iPhone 5 con el bloqueo activado

Si tienes Siri activado en la pantalla de bloqueo con iPhone 5 y iOS 7.1.1 vas apañado con la seguridad, ya que puedes llamar a cualquier número del mundo con sólo pedírselo a Siri.

Os pongo un vídeo de como hacerlo que me he grabado:


5 de mayo de 2014

Sony: Primer vídeo de PS Now! filtrado

Sony está dispuesta a dar un golpe en la reñida guerra de las consolas de sobremesa, ¿Cómo? Acabando con ellas y subiendo toda la carga del Hardware a la nube.

Como muestra un botón, el primer vídeo filtrado del nuevo sistema en estado beta. La verdad es que visto lo visto la cosa promete, y mucho.


Al final la compra de Gaikai habrá tenido algún sentido y todo :)

14 de abril de 2014

Android: Alinear texto dentro de un textview

Es fácil:

android:gravity="right"

Así de sencillo :), no hay que confundirlo con android:gravity_layout = "right"

13 de abril de 2014

Wikifans

No son fan de la Wikipedia, pero como aparece siempre en los primeros resultados de Google la uso a menudo.

He de reconocer que en temas científicos o técnicos sus artículos son bastante buenos, en temas de informática sus contenidos son muy útiles, pero en temas de enciclopedia Pop, ay, madre mía...

Todos los cantantes y grupos musicales son maravillosos, no hay ningún dato crítico sobre ellos, vamos, que parece que el 100% de las bandas musicales no han conocido nunca ningún fracaso.

En cuanto a temas de mascotas también, no hay ninguna sola raza de perro que haya tenido el más mínimo incidente, todas son los mejores amigos del hombre, y como se te ocurra agregar información de como una determinada raza fue creada para la guerra se te tiran al cuello, lo digo por experiencia.

En temas de política mejor ni hablar, dependiendo del día te puedes encontrar en la biografía del político de turno las acusaciones más exageradas basadas en rumores sin confirmar. En fin, para darles de comer a parte.

¿Por qué no soy fan de la Wikipedia? Pues porque no creo que la mayoría tenga la razón por ser eso, la mayoría. En la edad media por ejemplo la mayoría de la población europea creía que la Tierra era plana, y obviamente no es así.

En temas de conocimiento me dan igual las razones políticas, poéticas y estéticas que le dan tanto relumbrón a la Wikipedia, lo que quiero son datos certeros y no opiniones y rumorología que son el caldo de cultivo de muchos de los contenidos de este portal.

Por otra parte como instrumento de manipulación de la realidad me parece tremendo, consigue modificar un artículo de la Wikipedia con algún dato falso y puedes llegar a hacerlo verdadero para toda una generación de jóvenes nativos de Internet.

Si tenéis ganas de darme caña, adelante con los comentarios :)

22 de febrero de 2014

Objective c: Cómo hacer una llamada de teléfono con retorno a la app

Cuando desarrollas una app para iPhone una de las funcionalidades más útiles que puede llevar es la posibilidad de llamar por teléfono a un número determinado y luego volver a la aplicación.

¿Cómo se consigue esto?, pues con este código:

NSString *phoneNumber = [@"telprompt://" stringByAppendingString:@"965666666"];
[[UIApplication sharedApplication] openURL:[NSURL URLWithString:phoneNumber]];
Obviamente el número de 965666666 es un número de teléfono de prueba, pon en entre comillas al número que quieras llamar.

24 de enero de 2014

A la Apple Store no le gusta Android

Acabamos de lanzar una app para iPhone, iPad y Android una aplicación de guía turística para la Costa Blanca, que es el área turística que engloba la costa de la provincia de Alicante, España, a excepción de Benidorm.

Bueno, pues cuando estaba editando la descripción en inglés que nos ha pasado los colaboradores que nos lleva el ASO (App Store Optimization) he utilizado de base la descripción de la app en inglés para Android, y mirar lo que me ha salido al hacerlo y no borrar la palabra Android de la misma:


Cómo veis la palabra Android no les gusta nada, si la usas te rechazarán la publicación de la aplicación.

Mejor que te lo avisen antes de que metas la pata de todas maneras, pero, ¿Qué daño les hace la palabra Android? Ya que puedes usarla incluso para hablar mejor de la versión de iPhone, en fin, "cosas veredes, amigo Sancho".

2 de enero de 2014

iPhone: Tamaño de los iconos de las apps para iPhone y iPad

Uno de los elementos básicos de cualquier app para iPhone y iPad son los iconos y las pantallas de carga. Son obligatorios y Apple los va cambiando cada cierto tiempo.

Los actuales para iOS 7 son estos:

Description
Size for iPhone 5 and iPod touch (high resolution)
Size for iPhone and iPod touch (high resolution)
Size for iPad and iPad mini (high resolution)
Size for iPad 2 and iPad mini (standard resolution)
App icon (required for all apps)
120 x 120
120 x 120
152 x 152
76 x 76
App icon for the App Store (required for all apps)
1024 x 1024
1024 x 1024
1024 x 1024
1024 x 1024
Launch image (requiredfor all apps)
640 x 1136
640 x 960
1536 x 2048 (portrait)
2048 x 1536 (landscape)
768 x 1024 (portrait)
1024 x 768 (landscape)
Spotlight search results icon (recommended)
80 x 80
80 x 80
80 x 80
40 x 40
Settings icon (recommended)
58 x 58
58 x 58
58 x 58
29 x 29
Toolbar and navigation bar icon (optional)
About 44 x 44
About 44 x 44
About 44 x 44
About 22 x 22
Tab bar icon (optional)
About 50 x 50 (maximum: 96 x 64)
About 50 x 50 (maximum: 96 x 64)
About 50 x 50 (maximum: 96 x 64)
About 25 x 25 (maximum: 48 x 32)
Default Newsstand cover icon for the App Store (required for Newsstand apps)
At least 1024 pixels on the longest edge
At least 1024 pixels on the longest edge
At least 1024 pixels on the longest edge
At least 512 pixels on the longest edge
Web clip icon (recommended for web apps and websites)
120 x 120
120 x 120
152 x 152
76 x 76
Como os he comentado antes Apple suele agregar nuevos tamaños cada vez que saca una versión de iOS, así que es bueno que le peguéis un vistazo a la web de Apple sobre iconos de vez en cuando, su enlace es este.