Ulzurrun de Asanza i Sàez

Month: September 2010

Chuck Facts rechazada… de momento

El viernes recibí un email de Apple avisándome de que tardarían más de lo normal en revisar mi aplicación, y mi sorpresa ha sido mayúscula cuando hace apenas dos horas he recibido un email de Apple exponiendo los dos problemas por los que no podían aceptar mi aplicación. El primero es que en las imágenes que he enviado a la App Store aparecen los banners de prueba de iAd, no tengo claro aún que quieren exactamente que aparezca, pero en cuando lo sepa actualizaré las imágenes, no es problema preocupante puesto que en el peor de los casos siempre podría eliminar la publicidad y zanjar el asunto.

El segundo problema creo que todos podéis adivinarlo, y más aún si os digo que comienza por “C”… se trata de… de… ¡Habéis acertado, Copyright! Mis temores se han cumplido y es que necesito demostrar que tengo derecho a usar el nombre de Chuck Norris en la aplicación (los revisores de Apple lo dejan caer diciendo que “aparecen varias referencias a Chuck Norris”, varias referencias no, ¡es que toda la aplicación está centrada en Chuck Norris!).

La verdad es que estoy ligeramente decepcionado por el tema del Copyright, pero también muy contento porque en el fondo el único problema es el tema de la aplicación, no la aplicación en sí, es decir, la aplicación es lo suficientemente buena como para ser aceptada en la App Store, lo cual es motivo de alegría.

Sin embargo no me he conformado con eso, y hace cerca de media hora me he decido a pedirle a Chuck Norris que me deje usar su nombre en la aplicación. Aún queda ver su respuesta (si responde) y si esta repuesta (en caso de dejarme usar su nombre) es válida para Apple. Seguro que el que lea el email se rie un buen rato, pero eso es lo único que puedo hacer.

Aunque todo lo aprendido con la aplicación (y la mayor parte del código de la misma) lo puedo utilizar para otros proyectos… ¿una aplicación de hechos de Steve Jobs? No, seguro que también tendría problemas de Copyright…


Hasta luego y gracias por el pescado

Tal día como hoy, hace dos años, decidí transformar lo que entonces era un proyecto de portal de videojuegos en un blog sobre informática, y tras estos dos años escribiendo prácticamente a diario me ha quedado claro que no era tan mala idea, y que era la mejor forma de continuar con Sumolari.com. Estas últimas semanas he vuelto a pensar sobre el futuro de Sumolari.com y me he dado cuenta de que no puedo mantener el ritmo que he llevado durante estos dos últimos años (94 artículos cada 100 días son muchos artículos).

El futuro del blog

Si en un mes como agosto, que tenía todo el día libre, tan sólo he llegado a publicar 20 artículos, no quiero ni imaginarme los pocos que habría publicado en un mes como junio, que además de tener los exámenes finales, este año para mí tendría un nuevo reto más: la Prueba de Acceso a la Universidad. Sin lugar a dudas, habría publicado muy pocos artículos y de una calidad muy pobre (sí, más aún que los que publico ahora mismo). Seguramente el principal motivo por el que cada vez escribo más artículos es que el tiempo libre del que dispongo (que cada vez es menos) tengo que compartirlo con cada proyecto en el que trabajo, lanzando nuevas versiones de mis proyectos según va siendo necesario, y lanzando proyectos nuevos de vez en cuando.

Así que he decidido darle un nuevo enfoque a Sumolari.com. Si en un principio el blog fue el centro de la página y mis proyectos eran algo accesorio, ahora será al contrario: mis proyectos pasarán a ser el centro de Sumolari.com y el blog estará en segundo plano. Dejaré de publicar noticias en el blog, y tan sólo publicaré tutoriales y reseñas de cosas que me parezcan interesantes. Es decir, a partir de ahora cabe esperar muchos menos artículos al mes, pero más útiles y menos repetitivos.

De todos modos, el blog tampoco ha sido un gran éxito dentro de lo que cabe. Mi principal plugin para WordPress, WP Carousel consiguió superar ayer las 16.000 descargas, superando a razón de casi 16:1 a los comentarios del blog. Creo que es mucho mejor que dedique el tiempo que tengo a proyectos como WP Carousel y publique de vez en cuando tutoriales útiles. Curiosamente, los artículos más comentados no son ni de lejos los que he publicando más recientemente, como por ejemplo el tutorial de cómo crear un carrusel con jQuery o  el truco para evitar conflictos entre jQuery y Mootools o la explicación de cómo crear varias sidebars en WordPress o la forma de validar formularios con jQuery, ninguno de ellos publicado en 2010.

La calidad del blog, definitivamente, ha ido decayendo durante estos 2 años, y me parece que en esta ocasión es mejor calidad que cantidad, de modo que, en resumen, el blog pasará a segundo plano, los proyectos serán el centro de Sumolari.com y publicaré menos artículos pero de más calidad y centrados en la temática que quise tratar originalmente en el blog: tutoriales de informática.

Presentando… Chuck Facts

Y hasta aquí llega la parte “triste” del artículo, ahora toca presentar el proyecto en el que he trabajo durante este verano. Creo que lo he dicho en varias ocasiones, pero desde junio del año pasado, cuando me pasé a Mac, he estado intentando aprender a programar para Mac y para el iPhone / iPod Touch (y de paso iPad, aunque cuando comencé aún no existía). Ese verano me aventuré a comprar un libro de programación para el iPhone para torpes. Lamentablemente acabó el verano, septiembre y parte de octubre antes de que llegase a casa, así que no pude aprender nada.

A lo largo de este año he estado recopilando libros para aprender programación en Objective-C y orientada al iPhone / iPod Touch, y finalmente, tras dos meses veraniegos de dedicar todo el día a leer y estudiar diversos libros de programación, he aprendido lo básico para crear una aplicación para el iPhone (aún me quedan muchos libros muy interesantes por leer, pero me temo que se quedarán para el verano que viene). Tras rescatar la lista de proyectos que me gustaría llevar a cabo para el iPhone / iPod Touch y revisar los que tenía conocimientos suficientes para llevar a cabo, decidí comenzar a desarrollar mi primera aplicación y la primera de la App Store sobre Hechos de Chuck Norris.

Ya está terminada y desde ayer enviada para que la revisen y la aprueben (espero) o no en la App Store. No sé si la aprobarán finalmente o no, así que voy a explicar en qué consiste la aplicación en este artículo, por si finalmente resulta rechazada. Se trata de una aplicación que permite ver hechos de Chuck Norris almacenados en el servidor de Sumolari.com. Los hechos se encuentran organizados por categorías y pueden localizarse tanto hechos individuales como categorías desde el buscador de la aplicación (hay un buscador en cada lista de hechos de Chuck Norris). La cosa no acaba ahí ya que la gracia reside en que todos los usuarios pueden enviar sus propios hechos de Chuck Norris, que aparecerán en la aplicación tras mi aprobación (para evitar hechos duplicados u ofensivos).

El contenido de la aplicación se obtiene de internet, pero está siempre disponible offline. Además también dispone de un mapa donde ver desde qué lugares se han enviado más contribuciones (para mantener la privacidad de los usuarios, tan sólo se muestra el recuento de hechos de Chuck Norris enviados desde el lugar, además las coordenadas se redondean para más privacidad, y es imposible saber desde la aplicación el lugar desde el que se ha enviado un hecho de Chuck Norris). Aunque claro, siempre se puede contribuir sin compartir tu posición simplemente seleccionando la opción de “no permitir” que aparece la primera vez que se contribuye.

No es una aplicación del nivel de otras de la App Store, pero es realmente divertida, y viene genial para distraerse en algunos momentos: con tan sólo agitar el dispositivo la aplicación nos mostrará un hecho escogido al azar, de modo que no hace falta revisar listas ni seleccionar nada, tan sólo agitar y leer. Por supuesto, todo esto de forma totalmente gratuita (y preparada para definición estándar y Retina Display), tan sólo hay unos anuncios (iAd) en la parte superior de la pantalla pero no molestan nada y en general son distraídos.

También me gustaría desarrollar una versión para el iPad, pero por falta de tiempo y por la inseguridad sobre el proceso de aprobación de Apple lo dejaré para más adelante. La aplicación también tiene lista una pequeña página mostrando sus virtudes, pero hasta que no la aprueben no haré la página pública. Podéis ver las capturas de la aplicación que he enviado a Apple a continuación:

Y esto es todo, bastante para un sólo artículo. Ha sido un placer escribir aquí casi a diario durante estos dos últimos años, y estoy muy contento de los más de 1100 regalos que habéis hecho algunos de los lectores del blog durante este tiempo. Espero poder publicar algún tutorial interesante de aquí a final de año, pero como de costumbre, no voy a prometer nada. En cuanto a los usuarios de mis proyectos, estoy realmente sorprendido de la cantidad de gente que ha llegado a usarlos, he visto algunos de mis themes en los lugares más insospechados. Esto no es un adiós, es un “Hsata luego y gracias por el pescado”.


Ya está disponible iOS 4.1

Hay una nueva actualización disponible: iOS 4.1

Novedades de iOS 4.1
Novedades de iOS 4.1

Desde hace algunos minutos está disponible iOS 4.1 para el iPhone y el iPod Touch. Si estáis interesados en conocer las novedades de esta versión os recomiendo leer el resumen que hice al acabar la Keynote de la semaan pasada. De todos modos, os resumo las principales características a continuación:


Evita que UISearchDisplayController oculte una UINavigationBar


UISearchDisplayControllerWithoutAnimation: Subclase de UISearchDisplayController

El funcionamiento estándar de UISearchDisplayController es ocultar la barra de navegación (UINavigationBar) cuando se inicia una búsqueda. Este comportamiento nos puede parecer adecuado, pero en ciertas ocasiones puede que no queramos que se superponga y queramos tener visible la barra de navegación (UINavigationBar).

Actualmente cuando se activa la barra de búsqueda se ejecuta el método privado setActive:animated:. La única manera de evitar que se oculte la barra de navegación es crear una subclase de UISearchDisplayController y reemplazar dicho método por el siguiente, que anima la barra de búsqueda sin ocultar la barra de navegación (realmente oculta primero la barra de navegación y luego la muestra, de modo que a efectos prácticos parece que siempre está ahí):

[obj-c]
– (void)setActive:(BOOL)visible animated:(BOOL)animated;
{
if (self.active == visible) return;

[self.searchContentsController.navigationController setNavigationBarHidden:YES animated:NO];

[super setActive:visible animated:animated];

[self.searchContentsController.navigationController setNavigationBarHidden:NO animated:NO];

if (visible)
{
[self.searchBar becomeFirstResponder];
}
else
{
[self.searchBar resignFirstResponder];
}
}
[/obj-c]

La nueva clase puede llamarse, por ejemplo, UISearchDisplayControllerWithoutAnimation (aunque realmente sí que tiene animación). Su interfaz será algo así (recordad que lo heredamos todo de UISearchDisplayController así que no necesitamos declarar ningún método más ni ninguna propiedad, tan sólo reemplazar el método setActive:animated:, que haremos en la implementación):

[obj-c]#import <UIKit/UIKit.h>

@interface UISearchDisplayControllerWithoutAnimation : UISearchDisplayController
{
}

@end

[/obj-c]

Y la implementación:

[obj-c]

#import "UISearchDisplayControllerWithoutAnimation.h"

@implementation UISearchDisplayControllerWithoutAnimation

– (void)setActive:(BOOL)visible animated:(BOOL)animated;
{
if (self.active == visible) return;

[self.searchContentsController.navigationController setNavigationBarHidden:YES animated:NO];

[super setActive:visible animated:animated];

[self.searchContentsController.navigationController setNavigationBarHidden:NO animated:NO];

if (visible)
{
[self.searchBar becomeFirstResponder];
}
else
{
[self.searchBar resignFirstResponder];
}
}

@end

[/obj-c]

Añadiendo un UISearchDisplayController en Interface Builder
Añadiendo un UISearchDisplayController en Interface Builder
Cambiando la clase del UISearchDisplayController
Cambiando la clase del UISearchDisplayController

Ahora sólo queda usar UISearchDisplayControllerWithoutAnimation en lugar de UISearchDisplayController. Si hemos añadido la barra de búsqueda directamente desde Xcode, sin usar Interface Builder, no hay ningún problema, y si hemos usado Interface Builder basta con cambiar la clase del UISearchDisplayController a UISearchDisplayControllerWithoutAnimation. Si queremos añadir una nueva barra de búsqueda que no oculte la barra de navegación basta con añadir desde la librería un UISearchDisplayController, como de costumbre, y una vez añadido cambiarle la clase a UISearchDisplayControllerWithoutAnimation.

La única pega de este sistema es que tal vez en alguna nueva versión de iOS cambien el método privado setActive:animated:, con lo cual habría que revisar este nuevo método y actualizar nuestra clase personalizada. De todas maneras, parece algo poco probable, al menos en un futuro inmediato. Este método nuevo funciona sin problemas en iOS 4 y iOS 4.1, aunque seguramente funcione también en versiones anteriores (yo sólo he probado estas dos).


Imágenes de iTunes 10 y Ping

Icono de iTunes 10Ya está disponible iTunes 10 tanto para Mac OS X como para Windows, así que ya he podido sacar algunas capturas de los cambios de la interfaz y de Ping. De momento Ping está un poco vacío: hay pocos artistas y tampoco hay demasiado contenido publicado, aunque hoy es el primer día de Ping, ya veremos cómo avanza con el tiempo. Os dejo las imágenes a continuación:


Nuevos iPods, nuevo iTunes y nuevo tv, las novedades de la keynote de hoy

Las novedades de la Keynote del 1-9-2010

Por problemas con la cantidad de imágenes por artículo de WordPress no he podido publicar todas las novedades en un único artículo, como era mi idea inicial, así que me he visto obligado a dividir el artículo en cuatro partes:

  1. Las novedades de iOS 4.1 y iOS 4.2 y del iPod Shuffle
  2. Las novedades del nuevo iPod Nano
  3. Las novedades del iPod Touch
  4. Las novedades de iTunes y del tv.

Disculpad las molestias.


Las novedades de iTunes 10 y del tv

Nota: Mi idea original era publicar todas las novedades en un mismo artículo pero lamentablemente por un problema con el número de imágenes en el artículo me he visto obligado a partirlo en varios artículos. Para estar totalmente informados os recomiendo leer las novedades de iOS 4.1 y iOS 4.2 y del iPod Shuffle, las novedades del nuevo iPod Nano y las novedades del iPod Touch.

Nuevo icono de iTunes 10
Nuevo icono de iTunes 10
Ping, la red social
Ping, la red social

iTunes también ha recibido algunas novedades. En cuanto a interfaz, tanto el icono de la aplicación como los iconos que aparecen en el programa cambian (según Steve Jobs esto es porque venden más música en su iTunes Store que CDs en las tiendas, así que la imagen del CD del icono de iTunes sobraba). Se ha mejorado la visualización en el modo lista y hay algún que otro cambio más, pero poco significativo.

Donde se han centrado todas las novedades son en Ping, la red social que está integrada en iTunes 10. La verdad es que no me ha quedado del todo claro cómo funciona porque la demostración no ha sido demasiado larga y además se me ha cortado la imagen varias veces (sí, podía oir lo que decía, pero se pierde mucho no pudiendo ver de lo que se habla). Por lo que he entendido se asemeja a Facebook, y la idea es crear un círculo de amigos entre los que compartir música, estados y comentarios y poder seguir a artistas y conocer sus últimos discos, conciertos e incluso gustos musicales.

iTunes 10 debería estar disponible hoy, aunque ya son las 23:52 (hora de España peninsular) y aún no se puede descargar así que seguramente hasta mañana por la mañana (u hoy por la tarde en Cupertino) no podremos probar ni la nueva versión ni Ping. Read more →


Las novedades del nuevo iPod Touch

Nota: Mi idea original era publicar todas las novedades en un mismo artículo pero lamentablemente por un problema con el número de imágenes en el artículo me he visto obligado a partirlo en varios artículos. Para estar totalmente informados os recomiendo leer las novedades de iOS 4.1 y iOS 4.2 y del iPod Shuffle, las novedades del iPod Nano y las novedades de iTunes y del tv.

Nuevo iPod Touch

Nuevo iPod Touch
Nuevo iPod Touch
Nuevo iPod Touch
Nuevo iPod Touch

Quizás el iPod con las novedades más previsibles era el iPod Touch. Como podíamos esperar, la mayoría de las novedades de la 4ª generación son heredadas del iPhone 4. Para comenzar, el nuevo iPod Touch tiene Retina Display y el procesador A4 de Apple (el mismo del iPhone 4). En cuanto al resto de especificaciones no se ha especificado nada, pero no creo que sea descabellado suponer que son los mismos que el iPhone 4.

Además por fin le han añadido cámara, y del mismo modo que el iPhone 4, dispone de 2: una frontal y otra trasera. Pero no se han quedado ahí y le han añadido compatibilidad con FaceTime, de modo que ahora ya no sólo se pueden realizar videollamadas entre iPhone 4 sino también de un iPhone 4 a un iPod Touch (y viceversa) y entre iPod Touch. No sé si esto le hará mucha gracia a las operadores de telefonía móvil, aunque bien pensado FaceTime no es de momento una alternativa a las llamadas típicas de télefono (sólo entre iPhone 4 y iPod Touch 4G y además sólo bajo redes Wi-Fi).

También se ha reducido su grosor y se ha aumentado la autonomía hasta las 40 horas de reproducción de audio y las 7 horas de vídeo. Realmente el iPod Touch 4G es un iPhone 4 sin teléfono (y sin flash), ya que además de disponer de cámara, dispone de micrófono, otra de las carencias del iPod Touch frente al iPhone.

Aunque no corresponde exactamente a este momento, durante la keynote Epic Games ha presentado su primer juego para el iOS, y la verdad es que los gráficos eran asombrosos. Podéis descargar una demo del juego (en desarrollo) de forma gratuita en la AppStore. La demo no es funcional y tan sólo permite pasearse por el entorno, pero creo que vale la pena probarla para ver de lo que es capaz un iPhone o un iPod Touch (la demo sólo funciona con el iPhone 3GS, iPhone 4, iPod Touch 3G y iPod Touch 4G).

El peso es de 101 gramos y se venderán (a partir de la semana que viene) tres modelos diferentes: de 8GB a 229€, de 32GB a 299€ y de 64GB a 399€. Read more →


Las novedades del nuevo iPod Nano

Nota: Mi idea original era publicar todas las novedades en un mismo artículo pero lamentablemente por un problema con el número de imágenes en el artículo me he visto obligado a partirlo en varios artículos. Para estar totalmente informados os recomiendo leer las novedades de iOS 4.1 y iOS 4.2 y del iPod Shuffle, las novedades del iPod Touch y las novedades de iTunes y del tv.

Nuevo iPod Nano

Nuevo iPod Nano
Nuevo iPod Nano
Colores del nuevo iPod Nano
Colores del nuevo iPod Nano

El iPod Nano ha sido el iPod con más cambios. Para comenzar se ha reducido considerablemente su tamaño y pasa a ser un poco más grande que el iPod Shuffle. La pantalla se hace táctil y ocupa prácticamente toda la superficie del dispositivo. Además, al tener una pantalla táctil la interfaz está adaptada y parece una versión “extra-light” de iOS (ojo, es un sistema operativo independiente, no es ninguna versión de iOS). Obviamente no tiene ni AppStore ni las demás aplicaciones de iOS. El iPod Nano no cuenta con acelerómetro, sin embargo sí que podemos rotar la pantalla con un simple gesto y reproducir canciones aleatorias agitándolo.

Nuevo iPod Nano
Nuevo iPod Nano

Este nuevo modelo mantiene la radio, el podómetro y se hace compatible con Nike+, aunque pierde la cámara en el proceso y la pantalla se reduce considerablemente (el modelo anterior aún parecía relativamente cómodo para ver películas, pero este definitivamente no está pensado para eso, de hecho ni siquiera se dice que reproduzca vídeo – y no me suena haber visto ningún icono de vídeo durante la keynote). La autonomía es de 24 horas y el peso de 21.1 gramos.

Se venden con dos capacidades diferentes: 8GB por 159€ y 16GB por 189€. Personalmente, me parece una lástima la pérdida de la cámara y de la reproducción junto con la reducción de la pantalla, no creo que la pantalla multitáctil valga la pena en el iPod Nano, aunque este rediseño le ha dado muy buen aspecto. Read more →


Nuevo iPod Shuffle, iOS 4.1 para iPhone / iPod Touch y iOS 4.2 para iPad

Nota: Mi idea original era publicar todas las novedades en un mismo artículo pero lamentablemente por un problema con el número de imágenes en el artículo me he visto obligado a partirlo en varios artículos. Para estar totalmente informados os recomiendo leer las novedades del iPod Nano, las novedades del iPod Touch y las novedades de iTunes y del tv.

En la keynote de hoy Apple ha renovado toda la gama iPod, el tv, ha presentado la nueva versión de iTunes con su red social y ha mostrado algunas de las novedades de iOS 4.1 para el iPod Touch y el iPhone y iOS 4.2 para el iPad. Pero vayamos parte por parte y siguiendo el mismo orden de la keynote: Read more →