viernes, 29 de julio de 2011

Supakitch & Koralie



Microsiervos es uno de mis blogs de cabecera y por eso y porque me encanta el vídeo que han colgado hoy en su web, más que hacer una entrada hago un retweet. En el vídeo vemos a los artistas Supakitch y Koralie pintar un fantástico mural. Todo el proceso se ambienta con buena música electrónica (no he conseguido dar con el autor). Sin duda estaría encantado de que esta gente decorase mi casa. Pinchad el play y relajaos y disfrutad a partes iguales.
Vía Microsiervos (no dejéis de visitarles).

miércoles, 27 de julio de 2011

Mission Hill. Una Serie de Culto



Sé que muchos no habéis oído hablar de la serie que os traigo hoy, y es por esta razón y debido a mi afición por la misma por la que hoy me alegro de poder presentarla. En la serie nos encontramos con cinco personajes principales. Por un lado tenemos a Andy (French), que es un joven de 24 años que emancipado vive en un loft del barrio de Mission Hill (se supone que Mission Hill pertenece a una ciudad de mediano tamaño ubicada en los Estados Unidos). Andy es un desastre, es inmaduro y muy dejado, para colmo no hace más que beber y no termina de encontrar trabajo en el ramo para el que lo pretende (los comics). Pasa el rato trabajando en una ruinosa tienda de colchones de agua sin hacer demasiado por cambiar su situación. Andy tiene un hermano llamado Kevin. Kevin acaba de cumplir los diecisiete años y sus padres (que dan a Andy por perdido y que adoran a Kevin) lo envían desde el barrio residencial en el que ha vivido toda la vida. Kevin es el hermano de Andy y deberá convivir con éste último bajo el mismo techo. Kevin por su parte es un niño mimado obsesionado con los estudios y con los videojuegos y (ergo) con nada de vida social. En el piso en el que tendrán que convivir los hermanos French también residen otros tres personajes. Por un lado está Jim, que es un despistado informático que trabaja en una multinacional de publicidad, por otro Posey, una hippie vegetariana amante de la meditación y del yoga, y por último está Stogie, un perro sin ningún cerebro que es el ojito derecho de Andy. A este cuadro se le suman otros habitantes del edificio y del barrio.
Mission Hill es una serie que me encanta por muchas razones. Por un lado adoro la animación que utiliza, que como dicen en Wikipedia, mezcla efectos tradicionales con técnicas modernas. Todo tiene un toque especial que me encanta. Por otro lado está la música, que tiene tintes de rock y jazz y que vuelve a recordad a veces a la de series clásicas. Igualmente está el argumento adulto y siempre cargado de humor. Además de por supuesto sus geniales personajes, todos llegan a enganchar y a arrancarte más de una sonrisa. Mission Hill fue producida en los noventa por Warner Bros y cancelada con tan sólo trece episodios. A España llegó a través de Cuatro (que la emitía a las tantas de la mañana) y debido a su rápida cancelación y a que Bill Oakley (guionista de los Simpsons) participase en el desarrollo de la serie, junto con todo lo que he comentado antes, se termino convirtiendo en una serie de culto.
Sin duda os animo a que veáis unos cuantos episodios de la serie (la podéis encontrar si hacéis una búsqueda rápida a través de Internet). Espero que os guste tanto como a mi, que he visto todos los capítulos tres o cuatro veces. ¿Quién sabe?, lo mismo hasta nos terminamos juntando una legión de fans que la revive algún día. Ya me contaréis.

viernes, 22 de julio de 2011

Superbrothers, Sword & Sworcery. Un Juego Genial


Audience Calibration Procedure from Superbrothers: Sword & Sworcery on Vimeo.

Hoy os traigo un juego que me ha encantado, se llama Superbrothers, Sword & Sworcery y se trata de un título con una altísima componente artística. Desde el comienzo, ya nos avisan de que los auriculares jugarán un papel muy importante en la historia. El mismo avance en la trama se representa sobre un disco de vinilo en la pantalla principal del juego. Los escenarios y la evolución de la historia, el movimiento de los personajes y las distintas músicas y efectos sonoros y visuales, recuerdan en parte a Zelda y/o a Shadow of the Colossus. El juego no llega a ser una aventura gráfica, pero sí que se queda cerca de serlo. Seremos un aventurero que tendrá que lidiar con un extraño ser que habita en los bosques cercanos a una aldea. Los lugareños nos contarán historias y nos ayudarán en nuestra tarea. Luchas con espada, misterios y magia, serán nuestros compañeros de viaje. Sin olvidar a nuestro perro, que nos seguirá incansablemente. Una pega es que el juego está sólo en inglés, y no se trata siempre de un inglés sencillo. Lo tenéis disponible en la App Store. Aquí os enlazo la web oficial del juego. Os animo a descargarlo, la historia, su maravillosa música, sus preciosistas gráficos y su perfecta jugabilidad, merecen sin duda la compra.

martes, 19 de julio de 2011

El Anuncio de la Campaña Think Different de Apple, Subtitulado en Español

Soy un mitómano sin remedio y un amante de la buena publicidad. En mi pasada ponencia en La Carolina me quedé sin poner el que es para mi el mejor anuncio que he visto jamás. Seáis o no partidarios de los de la manzana mordida, espero que también a vosotros se os ponga el vello de punta con este vídeo. Aunque sea antiguo, para mi no deja de ser una obra maestra.

viernes, 15 de julio de 2011

Verano de Ponencias y Talleres


Topnuz y Geoversia S.L. están yendo sobre raíles, prueba de ello es que empezamos a ser llamados por unas y otras organizaciones para ofrecer charlas de todo tipo. Aun me abruman estas cosas, sin embargo me gusta intentar que cada conferencia despierte el mayor interés posible. El caso es que recientemente he sido ponente en relación a Topnuz para la XII edición de los cursos de verano Intendente Olavide de la Universidad de Jaén en La Carolina. Participé en el curso titulado, Redes Sociales: Evolución y Revolución, e impartí una ponencia acerca de Topnuz. Doy públicamente las gracias a Francisco Roca y al muy participativo público con el que conté, así da gusto. Igualmente, y ahora ya en septiembre, impartiré un taller para la Asociación Tecnológica Jiennense, EnRed 2.0. El taller versará sobre Java. Tenéis toda la información acerca del mismo a través de este enlace.
Cousins - Vampire Weekend (Contra). Una vez abierto Spotify, si es necesario, haced doble clic sobre el tema seleccionado.

lunes, 11 de julio de 2011

Tutorial para Añadir el SDK de Facebook Connect a Aplicaciones iOS. Segunda Parte


Si queréis saber para que sirve el SDK de Facebook Connect, así como el lugar en donde podéis encontrarlo y/o descargarlo, y/o si estáis interesados en saber la forma en la que podéis añadir el SDK de Facebook Connect a vuestro proyecto, os animo a consultar la primera parte de este tutorial. Ahora continuaré con la segunda y última parte.
El grueso del código debe añadirse en el fichero App Delegate.
Normalmente, una aplicación tendrá un lugar en el que exista un botón que permita al usuario comunicarse con Facebook. Podéis pensar que ese es el lugar en donde debería ir el código asociado al SDK de Facebook Connect, sin embargo, el uso del SDK por parte de cada usuario irá asociado a un objeto Facebook que al instanciarse lanzará una ventana de Safari en el dispositivo iOS que se use en cada caso, para pedir confirmación al usuario de cara a que vuestra aplicación acceda a parte de sus datos personales o para informarle de que ya ha sido dada dicha autorización en otro momento. Si el objeto Facebook que mantiene la conexión se destruye en algún instante, necesitará ser nuevamente instanciado y por tanto volverá a lanzar la anterior ventana de Safari tantas veces como se vuelva a instanciar el objeto Facebook. La forma de evitar este inconveniente para la experiencia del usuario pasa por implementar el objeto que mantenga la conexión con Facebook dentro de la clase App Delegate (que se destruirá sólo al terminar totalmente la aplicación). A continuación se muestra un ejemplo de como hacerlo.


// ExampleAppDelegate.h

#import <UIKit/UIKit.h>
#import "FBConnect.h"

@interface ExampleAppDelegate : NSObject <UIApplicationDelegate, FBDialogDelegate, FBSessionDelegate> {

    // Controls the connection to Facebook.
    Facebook *facebook;
    // Controls the permissions on Facebook of the application.
    NSArray *facebookPermissions;
    // Implements the window of the app.
    UIWindow *window;
    // Maintains the navigation controller that manage the navigation into the application.
    UINavigationController *navigationController;
}

@property (nonatomic, retain) Facebook *facebook;
@property (nonatomic, retain) NSArray *facebookPermissions;
@property (nonatomic, retain) IBOutlet UIWindow *window;
@property (nonatomic, retain) IBOutlet UINavigationController *navigationController;

@end

// ExampleAppDelegate.m

#import "ExampleAppDelegate.h"

@implementation ExampleAppDelegate

@synthesize facebook;
@synthesize facebookPermissions;
@synthesize window;
@synthesize navigationController;

#pragma mark -
#pragma mark Application lifecycle

- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions {

    // Override point for customization after application launch.

    // Add the navigation controller's view to the window and display.
    [window addSubview:navigationController.view];
    [window makeKeyAndVisible];

    return YES;
}

#pragma mark -
#pragma mark Facebook management

- (BOOL)application:(UIApplication *)application handleOpenURL:(NSURL *)url {

    return [self.facebook handleOpenURL:url];
}

#pragma mark -
#pragma mark Memory management

- (void)applicationDidReceiveMemoryWarning:(UIApplication *)application {

   /* Free up as much memory as possible by purging cached data objects that can be recreated (or reloaded from disk) later. */
}

- (void)dealloc {

   [self.facebook release];
   [self.facebookPermissions release];
   [self.navigationController release];
   [self.window release];

   [super dealloc];
}

@end

Accediendo al objeto que mantiene la conexión con Facebook desde cualquier clase de la aplicación.
La primera vez que se lance la aplicación automáticamente se pedirá memoria para el objeto Facebook de la clase App Delegate. Sólo falta establecer la conexión para el caso de cada usuario, y esto se hará la primera vez que el usuario pulse el botón que le permite interaccionar con Facebook. Para hacer esto último tendremos que recuperar el objeto Facebook de la clase App Delegate y asociarlo con la conexión que se pretenda establecer en cada caso. El siguiente código muestra cómo hacerlo, establece tres permisos cualesquiera (la lista completa de permisos con los que podrá contar cualquier aplicación la podéis consultar en el siguiente enlace, http://developers.facebook.com/docs/authentication/permissions) y lanza una cuadro de diálogo que incorpora cierta información y que puede completar cualquier usuario y publicar en su muro (la primera ocasión en la que se lance el citado cuadro de diálogo, pedirá primero los datos de conexión del individuo. La mayor parte de lo anterior puede verse también en un tutorial oficial publicado en el siguiente enlace, http://developers.facebook.com/docs/guides/mobile/#ios).


// ExampleClass.m

ExampleAppDelegate *appDelegate = (ExampleAppDelegate *)[[UIApplication sharedApplication] delegate];

if (appDelegate.facebook == nil) {

appDelegate.facebook = [[Facebook alloc]                initWithAppId:@"here_you_must_enter_your_own_number"];
appDelegate.facebookPermissions =  [[NSArray arrayWithObjects:@"read_stream", @"offline_access", @"publish_stream", nil] retain];
[appDelegate.facebook authorize:appDelegate.facebookPermissions delegate:appDelegate];
}                

NSString* facebookMessage = @"example_message";
NSString *imageUrl = @"http://example.com/image.jpg";

NSMutableDictionary* facebookParams = [NSMutableDictionary dictionaryWithObjectsAndKeys:
@"here_you_must_enter_your_own_number", @"app_id",
@"http://example.com/", @"link",
imageUrl, @"picture",
self.name, @"name",
self.address, @"caption",
self.description, @"description",
facebookMessage,  @"message",
nil];

[appDelegate.facebook dialog:@"feed" andParams:facebookParams andDelegate:appDelegate];

Aquí acaba este tutorial. Os recomiendo visitar el enlace que os dejo entre paréntesis (http://developers.facebook.com/docs/guides/mobile/#ios) para comprender más acerca del método application: handleOpenURL: y conocer la forma en la que podéis obtener un identificador numérico como aplicaciones de Facebook para vuestras propias aplicaciones. Espero haber sido de ayuda.
Por si os la habéis perdido, aquí os enlazo la primera parte de este tutorial.

viernes, 8 de julio de 2011

La Sección Detalles sobre Tecnología del Diario Jaén se Despide hasta el Próximo Curso Académico


Pues eso, que la semana pasada escribí mi último artículo de este curso académico 2010/2011 que se acaba y que no volveré a escribir otro hasta el comienzo del curso 2011/2012. Como ya os imaginaréis, seguiré escribiendo en el Diario Jaén también el próximo curso y ya os aviso de que seguiré publicando aquí todos mis artículos un día después de que hayan sido publicados en el Diario Jaén. Mientras tanto, seguiré escribiendo aquí como cada semana. Espero que os paséis a leer y a escuchar algo de música.
She’s A Rainbow - Stereo Full Version / With Intro - The Rolling Stones (Singles 1965-1967). Una vez abierto Spotify, si es necesario, haced doble clic sobre el tema seleccionado.

miércoles, 6 de julio de 2011

Tutorial para Añadir el SDK de Facebook Connect a Aplicaciones iOS. Primera Parte


Hoy me animo con este tutorial con el que intento evitar que tengáis los mismos problemas que tuve yo la primera vez que intenté añadir el SDK de Facebook Connect a mis aplicaciones iOS. En esta primera parte del tutorial os hablaré de dónde descargarlo así como de cómo añadirlo a vuestro proyecto. También os hablaré de la utilidad de este SDK.
¿Para qué sirve el SDK de Facebook Connect? 
Para responder a esta pregunta os haré yo otra. ¿Queréis que vuestros usuarios puedan publicar en sus muros información relativa a vuestra aplicación (puntuaciones, textos relativos al propósito de vuestro programa, etc) y todo sin salir de ella? Si la respuesta es sí, este es vuestro SDK. A lo que ya he citado se suma que podréis tener un control estadístico sobre lo que se comparte a partir de vuestra aplicación. Podréis consultar datos tal y como ocurre en el caso de las webs alojadas en Facebook o como pasa en Google Analytics. Igualmente, todo comentario desde vuestra aplicación incluirá un enlace a la misma (lo que a la postre debe suponer más descargas). También podréis acceder a los datos de vuestros usuarios en función de los permisos que en cada caso os confirmen.
¿Dónde puedo encontrar el SDK de Facebook Connect y desde dónde puedo descargarlo?
Podéis encontrarlo en la dirección que os enlazo entre paréntesis (http://developers.facebook.com/docs/guides/mobile/) y descargarlo directamente a partir de este otro enlace también entre paréntesis (https://github.com/facebook/facebook-ios-sdk). En ambos casos hago referencia a código oficial.
¿Cómo puedo añadir el SDK de Facebook Connect a mi proyecto? 
Tal y como explican en el enlace al que os remitía más arriba (http://developers.facebook.com/docs/guides/mobile/), y aunque existen varios métodos, la forma más sencilla de hacer esto es arrastrar el directorio src del proyecto que os habréis descargado y adjuntarlo a vuestro propio proyecto dentro del directorio Other Sources. Os recomiendo que le cambies el nombre al directorio src del SDK de Facebook Connect antes de hacer esto (tan sólo por motivos de organización). Una vez hecho todo lo anterior, debéis especificar la versión de iOS que estáis usando para compilar el código que acabáis de añadir (así evitaréis un warning al compilar). Para ello desplegad el directorio que habéis incluido y pinchad en facebook-ios-sdk.xcodeproj. Una vez hecho esto, y hablo siempre usando XCode 4, en la sección PROJECT tendréis que seleccionar facebook-ios-sdk, para después seleccionar la versión de iOS que prefiráis usar para compilar el código del SDK. Para ello, utilizad el menú desplegable que se encuentra en la opción Deployment Target, y luego en iOS Deployment Target (para evitar problemas, al menos debéis seleccionar la misma versión que uséis para compilar el proyecto principal de vuestra aplicación).
Eso es todo por hoy, nos vemos dentro de unos días en la segunda y última parte de este tutorial (que tan pronto como esté lista enlazaré debajo de esta). Espero haber sido de ayuda.

Aquí tenéis el enlace a la segunda y última parte de este tutorial.

viernes, 1 de julio de 2011

¿Qué es Creative Commons?


Publicado originalmente el jueves treinta de junio en la versión impresa del Diario Jaén.
Creative Commons es una empresa estadounidense (como no, con sede en California) sin ánimo de lucro y fundada por Lawrence Lessig y Hal Abelson. Esta organización surge con un propósito sencillo, el de ayudar a reducir las barreras legales que se interpongan en la libre difusión de la creatividad. La fundación ha ido ganando seguidores desde sus inicios en el año 2001 y hoy es un fenómeno mundial.
Me pondré en esta ocasión como ejemplo. Yo escribo un blog con un nombre por el que pido disculpas públicamente (
http://people-technologyinteraction.blogspot.com/), y puesto que pretendo la mayor difusión posible para sus artículos, no impido que se utilicen. Todo el mundo puede tomarlos y hacer uso de ellos para cualquier propósito, no cobro nada por ello. Sin embargo, sí quiero que cuando se use mi trabajo, se me cite como fuente. Igualmente, también quiero que mis textos se respeten íntegramente. Si son citados, quiero que no se modifiquen de forma alguna. Por tanto y para promover las citadas exigencias, uso una licencia CC BY-SA.
Creative Commons no sólo licencia textos, sino que también lo hace con imágenes y con todo tipo de material audiovisual. La ventaja de todo esto es que el conocimiento fluye sin cortapisas. No hay necesidad de piratear nada, los autores se nutren de la importancia que toman sus nombres. Porque si algo es realmente bueno, saltará de un sitio a otro y vendrá acompañado por los nombres y apellidos de quienes lo hicieron posible, y esto seguramente les servirá para ganar una legión de seguidores e incluso un nombre en su profesión que se traduzca en futuros contratos.
Creative Commons, lógicamente, ofrece sus licencias de forma totalmente altruista. Las hay de muchos tipos y en función de todas las necesidades. No tenéis más que visitar la web entre paréntesis (
http://creativecommons.org/choose/) y rellenar un formulario, para finalmente obtener un sello con el que ilustrar vuestros trabajos.