Si sois desarrolladores del mundo Apple, y trabajáis con Cocoa o Cocoa Touch, seguramente conocéis la web NSCodeCenter.com, una web que se plantea en un concepto más allá de un foro, en que los usuarios plantean preguntas que a su vez los mismos usuarios son los que dan respuesta. Además un experto grupo de desarrolladores, de la propia página, también estarán al tanto. Las preguntas pueden tener etiquetas, dar medallas por respuestas, clasificación de lecturas… Una enorme base de datos, que va creciendo con el uso, y que responderá a muchas preguntas que atañen al mundo del desarrollo de iOS y Mac OS X. Una herramienta de gran valor para todo aquel que trabaja o quiere trabajar en el mundo del desarrollo para Apple.

Pero para hablarnos sobre ella, y sobre otros temas interesantes, lo mejor es compartir con vosotros una interesante entrevista que hemos realizado a los creadores de este gran invento, Fernando Verdú (@blindOSX) y José Antonio Lobato (@JoseALobato). Desde AppleWeblog, queremos agradecerles su atención y tiempo en contestar a nuestras preguntas.

Contadnos como surgió la idea de hacer NSCodeCenter, no sólo el concepto sino el particular desarrollo que se ha realizado para poner en práctica la idea.

Lo cierto es que todo se debe a la estupenda reacción que supuso el lanzamiento del Podcast 85% Cocoa de nuestro compañero Jose Antonio Lobato, allá por el mes de Septiembre. Lanzar un podcast de programación y sobre un Framework tan específico como es Cocoa era algo muy arriesgado y no sabíamos como iban a responder los oyentes. Sin embargo, contra todo pronóstico, la respuesta fue inmejorable y de hecho, a día de hoy, continúa siendo cada semana en iTunes uno de los 16 podcasts a destacar. Este éxito fue la clave que nos llevó a crear NSCodeCenter como un servicio alternativo al podcast donde los desarrolladores hispano hablantes pudieran plantear sus dudas cotidianas acerca de la programación en Mac. Lo bonito de NSCodeCenter es que, al igual que Wikipedia, es un sitio que es editado colaborativamente y dónde se realiza un seguimiento de todos los cambios efectuados.

La puesta en práctica de la idea no fue excesivamente complicada debido a que afortunadamente pudimos contar con la amplia experiencia en desarrollo de servicios web que tiene nuestro compañero Fernando Verdú. Aunque como todo servicio de este tipo, realmente quien acaba creándolo y haciéndolo crecer son los usuarios que participan en él. La verdad es que estamos muy orgullosos de que la idea esté funcionando tan bien y esté sirviendo de ayuda a muchos desarrolladores.

Abrir el mercado de desarrollo de un dispositivo profesional no sólo a grandes empresas sino a desarrolladores independientes, ha potenciado el mercado de las aplicaciones móviles. ¿Creéis que este paso ha merecido la pena y ha proporcionado calidad a las aplicaciones o realmente al final son sólo aplicaciones profesionales las que tienen una verdadera cuota de mercado?

Realmente esto no es nada nuevo. Antes del iPhone y el iPad, existía el Mac, y las herramientas de desarrollo que se utilizan actualmente para programar en iOS ya existían en aquella época, y eran gratuitas. Y por aquel entonces, ya la mayoría de los mejores programas estaban hechos por desarrolladores independientes, y no grandes empresas. El éxito del mercado de las aplicaciones en el iPhone y en el iPad se debe en gran parte a esta medida, ya que resulta tan similar programar para Mac OS X y iOS que cualquiera que hubiera desarrollado antes en Mac OS X contaba con experiencia suficiente para comenzar a desarrollar su aplicación en cuanto quisiera.

Por otra parte, la App Store no ha hecho otra cosa que consolidar el sector de los desarrolladores independientes, pues supone eliminar la necesidad de tener que montar un sistema de venta y descarga, control de licencias, promoción, etc. Ha hecho posible que muchas aplicaciones puedan ser realizadas por una sola persona sin apenas realizar inversión.

Por lo tanto, podríamos decir que bien ha sido al revés, ha sido el mercado de las aplicaciones móviles lo que ha ayudado a consolidar el sector de los desarrolladores independientes.

¿Cómo creéis que será la acogida de la futura Mac App Store? ¿Tendrá tanta repercusión como la App Store del iPhone?

Tiene todas las posibilidades de que así sea. Al cliente le gusta y al desarrollador le facilita las cosas.

Muchos desarrolladores critican esta medida por el hecho de que sus aplicaciones no podrán estar en la Mac App Store debido al filtro que Apple impone para ser publicadas en su servicio. Sin embargo, siempre que Apple continúe permitiendo la difusión de aplicaciones mediante el medio tradicional, la Mac App Store no otorga más que ventajas, tanto para el cliente como para el desarrollador.

La Mac App Store evolucionará como ha evolucionado la App Store y acabará convirtiéndose en el sistema de distribución predominante para Mac. Y el método tradicional en el medio para ofrecer las versiones betas o de aquellas aplicaciones que no pasan el filtro de Apple.

¿Cuales, como expertos en la materia del desarrollo, creéis que serían unas buenas recomendaciones para futuras posibilidades de desarrollo en los dispositivos móviles iOS?

Nosotros siempre recomendamos a todos aquellos que quieren empezar a desarrollar para iOS que no tengan prisa por empezar ya mismo a desarrollar una aplicación. Que aprovechen el tiempo a estudiar en profundidad el lenguaje y a familiarizarse con el entorno mientras conciben qué van a desarrollar. Con esto queremos decir, que no se lancen directamente a crear una aplicación simple o que ya esté muy repetida, sino que intenten crear un producto novedoso y único.

Una vez tengas clara la idea sobre qué es lo que vas a desarrollar, es importante reflexionar sobre cómo lo vas hacer, cómo lo vas a financiar, cuál va a ser tu modelo de negocio, etc.

¿Pensáis que Apple seguirá teniendo una posición predominante y de innovación frente al resto de plataformas? ¿Android u otra plataforma futura podrán ensombrecer e incluso minimizar el desarrollo en iOS?

Ahora mismo iOS es la referencia sin ninguna duda. La gran mayoría de las aplicaciones con éxito salen primero para iOS y posteriormente, debido al triunfo, aparecen sus correspondiente versiones en las diferentes plataformas. Mucho tienen que cambiar las cosas para que Apple pierda posiciones, y más si sus competidores en lugar de innovar, como hace la propia Apple, continúan dedicándose en crear un sistema a imagen y semejanza.

Resulta incomparable a día de hoy Android con iOS. Android se encuentra en pleno desarrollo, aún no tiene un personalidad fijada y le falta mucho que demostrar.

¿Qué le recomendaríais a la gente que está pensando en dedicarse al desarrollo móvil? ¿Cuales serían los mejores pasos?

Requisito imprescindible, tener un Mac. Las herramientas de desarrollo que Apple ofrece únicamente están para Mac OS X. A partir de ahí podemos decir que los pasos básicos serían registrarse en el iOS Developer Program de Apple para tener acceso a multitud de recursos oficiales y soporte, comenzar leyendo algún libro de introducción a la programación en esta plataforma y solventar cualquier tipo de duda que vayan teniendo en NSCodeCenter donde podrán encontrar cientos de desarrolladores españoles con más experiencia encantados de ayudarles.

¿Qué ventaja veis en el desarrollo para entornos Apple frente al resto de plataformas? ¿Y qué defectos?

NS: Desde el punto de vista de un desarrollador, la principal ventaja es el usuario para el que desarrolla. Es un usuario complemente diferente a cualquiera que te puedes encontrar en otras plataformas. Es un usuario que compra aplicaciones, algo que desde luego no frecuenta en otro entornos. Un usuario que tiene gusto, que da feedback al desarrollador, que es fiel y que es consciente del esfuerzo que supone desarrollar una aplicación. Quizás es debido a que el usuario de Mac es consciente de lo que había hace unos años y de lo que hay ahora, y que con la piratería de aplicaciones lo único que consigue es retardar y empeorar el desarrollo de su propio entorno. Un desarrollador necesita que los usuarios le compren su aplicación, sino… acabará por mudarse de plataforma.

¿Defectos? Cualquier que puedas encontrarte en cualquier plataforma, pero nada remarcable.

¿Creéis que el control sobre las aplicaciones que hace Apple es correcto y garantiza la estabilidad y los contenidos de calidad o por el contrario pensáis que es una lacra para la creatividad y posibilidades de la plataforma?

El sistema de control que Apple realiza sobre las aplicaciones que se publican en la App Store garantiza que los usuarios reciban un mínimo nivel de calidad en las aplicaciones. Podrán ser más o menos útiles para el usuario, pero son aplicaciones que han sido probadas y validadas previamente por expertos de Apple y que por lo tanto no ponen en riesgo ni al usuario ni a la estabilidad del sistema. La creatividad en las aplicaciones no tiene porqué verse mermada pues muchos desarrolladores consiguen hacerse con las normas y encuentran la manera de llevar a cabo sus ideas cumpliendo con ellas, sin embargo, sí es cierto que el iPhone como dispositivo podría dar mucho más de sí pero para Apple es mucho más importante garantizar la estabilidad del sistema. Y creemos que es una medida muy acertada.

¿Es el desarrollo en entornos Apple una inversión de futuro?

Desde luego si uno se para a examinar la trayectoria que ha mantenido Apple en los últimos años, todo parece indicar que sí lo es.