== Semana del desarrollador == Miercoles 1 de Febrero del 2012 - Como crear tu app para Ubuntu - dpm {{{#!IRC 09:00 < chilicuil> bienvenidos al segundo dia del UDW, aka, semana del desarrollador 09:00 < chilicuil> las platicas seran impartidas en #ubuntu-classroom 09:00 < chilicuil> aseguranse de entrar 09:01 < chilicuil> en este canal llevaremos a cabo intepretacion simultanea, si tienen preguntas para #ubuntu-classroom, solo usen la palabra QUESTION en #ubuntu-classroom-chat para hacerla 09:01 < chilicuil> si tienen problemas para hacerla o no estan seguros de la sintaxis, haganos un ping y con gusto les ayudaremos a plantearla =) 09:02 < chilicuil> los logs estaran disponibles en https://wiki.ubuntu.com/UbuntuDeveloperWeek 09:02 < chilicuil> los de la interpretacion en https://wiki.ubuntu.com/SemanaDesarrollador 09:03 < chilicuil> nuestro primer ponente sera dpm, el es una parte importante del equipo de ubuntu, su mision es hacer cada vez mas popular Ubuntu, como plataforma de desarrollo 09:04 < chilicuil> en la siguiente hora nos mostrara las herramientas que Ubuntu tiene disponible para crear aplicaciones 09:06 < chilicuil> comenzare la interpretacion ahora 09:07 < chilicuil> durante la siguiente hora les mostrare como enviar sus aplicaciones a Ubuntu para que aparezcan en el Centro de software y puedan ser descargadas por millones de usuarios 09:07 < chilicuil> sientanse libres de interrumpirme en cualquier momento, intentare responder a todas sus preguntas 09:08 < chilicuil> les recuerdo que para hacer una pregunta, deberan usar la palabra QUESTION:, seguida de sus pregunta, esta debera ser hecha en #ubuntu-classroom-chat 09:08 < chilicuil> durante la platica me estare refiriendo a varios lugares del sitio de desarrollo ubuntu, http://developer.ubuntu.com 09:09 < chilicuil> comencemos! 09:09 < chilicuil> Como crear tu app 09:09 < chilicuil> ================ 09:10 < chilicuil> el primer paso obvio es convertir una idea maravillosa en software que rulee 09:10 < chilicuil> esa app difiere mucho de autor a autor, y solo ustedes pueden hacerlo 09:11 < chilicuil> mi trabajo durante esta hr sera mostrarles como usar Ubuntu como plataforma para hacer popular su aplicacion 09:13 < chilicuil> sin embargo, si aun no han creado su aplicacion, tenemos algunos tips en http://developer.ubuntu.com/get-started/quickly-workflow/ 09:13 < chilicuil> ryan__ pregunta, que lenguaje de programacion recomiendas? 09:14 < chilicuil> dpm responde que recomienda python + quickly, una herramienta que Ubuntu ha desarrollado para aumentar la velocidad con la que se crean nuevas aplicaciones 09:15 < chilicuil> de hecho existe un video donde se muestra como crear una app muestra en http://developer.ubuntu.com/get-started/ 09:15 < chilicuil> el uso de quickly solo es una recomendacion, pueden usar el lenguaje que mejor les acomode 09:17 < chilicuil> si tienen cualquier pregunta, pero no estan seguros de poder hacerla, comentenosla y les ayudaremos a hacerla en #ubuntu-classroom-chat 09:19 < chilicuil> metasansana pregunta porque python y no otro? 09:20 < chilicuil> dpm ha respondido que porque es un lenguaje facil de aprender, de alto nivel, libre, esta altamente integrado con Ubuntu y ademas viene con una ampliga gama de librerias que ayudaran a crear casi cualquier cosa 09:20 < chilicuil> quiero recordar que tambien podemos ayudar a integrar su aplicacion comercial, no estamos siendo excluyentes en ese aspecto, hablare un poco mas tarde de ello 09:22 < chilicuil> ryan__ pregunto si quickly tiene soporte para visual basic 09:23 < chilicuil> dpm ha contestado que quickly perse no soporta ningun lenguaje, es un conjunto de herramientas que para empaquetar software, aunque puede extenderse para soportarlos, por el momento el que esta mas integrado con quickly es python 09:23 < chilicuil> Que clase de app son aptas 09:23 < chilicuil> ========================== 09:24 < chilicuil> en los repositorios de Ubuntu, hay muchas aplicaciones, todas estas estan bajo un estricto control de calidad 09:24 < chilicuil> por supuesto, tambien nos aseguramos que sean software libre y de que puedan ser distribuidos con Ubuntu 09:26 < chilicuil> asi que para diferencias estas aplicaciones del proceso del que hablare hoy, lo nombrare "the app developer process" 09:26 < chilicuil> basicamente existen 3 formas de hacer que tu aplicaciones entre a ubuntu 09:27 < chilicuil> basicamente existen 3 tipos de aplicaciones en Ubuntu 09:27 < chilicuil> - las de paga, el usuario debe comprar una licencia para usarla 09:27 < chilicuil> - aplicaciones que son gratis, pero su codigo no es distribuible 09:28 < chilicuil> - aplicaciones gratis, cuyo codigo fuente es libre 09:29 < chilicuil> cada tipo de aplicacion, conlleva un proceso diferente 09:29 < chilicuil> para las aplicaciones comerciales, y de codigo que no es distibuible se sigue el siguiente camino: http://developer.ubuntu.com/publish/commercial-software-faqs/ 09:30 < chilicuil> para aplicaciones de codigo fuente libre, tenemos otro proceso: https://wiki.ubuntu.com/AppReviewBoard/Review/Guidelines 09:30 < chilicuil> Como enviarnos tu aplicacion 09:30 < chilicuil> ============================ 09:31 < chilicuil> una vez que tengas tu aplicacion, puedes enviarnosla a https://myapps.developer.ubuntu.com, se daran cuenta que es un sitio bastante intuitivo, aunque tendran que registrarse para poder usarlo 09:32 < chilicuil> el login se basa en el SSO single sing on, asi que si ya tienen una cuenta para los foros de ubuntu o launchpad, pueden usar esa misma 09:33 < chilicuil> tal vez tambien les interese leer http://developer.ubuntu.com/publish/ 09:33 < chilicuil> el proceso basicamente es como sigue: 09:33 < chilicuil> 1.- crea una cuenta, no cuenta si ya tienes una ;) 09:34 < chilicuil> 2.- prepara los iconos y algunos screenshots de tu aplicacion, entre mejor salgan, tendras mayor cantidad de posibles usuarios 09:34 < chilicuil> 3.- describe tu apliacion, asegurate de que tu descripcion sea clara, de esa forma sera encontrada mas facilmente en el Centro de software 09:35 < chilicuil> 4.- introduce el costo, si tu aplicacion sera comercial 09:35 < chilicuil> 5.- ten lista tu aplicacion para subirse, dare mas detalles al respecto mas tarde 09:36 < chilicuil> 6.- una vez hecho esto, tu aplicacion sera revisada, veremos si cumple nuestros standares de calidad, hablare un poco mas sobre esto, mas tarde 09:37 < chilicuil> regresando al punto 5, cuando nos referimos a tener lista tu aplicacion, nos referimos a tener listo un paquete fuente .deb 09:37 < chilicuil> no un binario, hay que recarcarlo 09:38 < chilicuil> un paquete fuente de debian, esta compuesto de 3 archivos (.dsc, diff.gz, orig.tar.gz) que deberan estar comprimidos de alguna forma (.tarball, .zip, .rar, etc) 09:40 < chilicuil> * si tu aplicacion es comercial, aunque suene ilogico, recomendamos que tambien se envie a Debian, aunque si no sabes crear paquetes, puedes enviar unicamente los binarios, con todas las dependencias necesarias, y empaquedaores profesionales lo haran por ti 09:41 < chilicuil> estamos trabajando en una forma de crear paquetes de forma automatizada, sin embargo aun no tenemos nada practico 09:41 < chilicuil> * si tu aplicacion es software libre, puedes utilizar un ppa para alamzenarlo, despues puedes enviarnos la direccion en la cajita que dice "Any additional notes for the application reviewer" 09:42 < chilicuil> puedes aprender como usar los ppa a traves de este sitio: developer.ubuntu.com/packaging 09:42 < chilicuil> regresando al punto 6, === Revision de tu aplicacion === 09:43 < chilicuil> una vez que tengamos tu programa, una de 2 cosas pasara: 09:43 < chilicuil> * si es una aplicacion comercial, sera revisada por el equipo de revisores de Canonical, si es necesario lo empaquetaran por ti 09:44 < chilicuil> * si es software libre, sera revisado por un equipo de voluntarios llamado ARB Ubuntu App Review Board 09:45 < chilicuil> en cualquier caso, los revisores te contactaran tan pronto como vean tu programa 09:45 < chilicuil> ademas de eso, seras notificado constantemente del estatus que tiene tu app 09:46 < chilicuil> para conocer cuales son estos estatus, pueden ver: http://developer.ubuntu.com/publish/application-states/ 09:46 < chilicuil> ahora contestemos algunas preguntas 09:46 < chilicuil> cielak pregunto, he estado interesado en la etapa de revisoin, como podria ser parte del equipo ARB? 09:47 < chilicuil> dpm ha comentado que el equipo estara feliz de escuchar eso, ha sugerido entrar a #ubuntu-arb para saber como ayudar 09:47 < chilicuil> tambien ha recomendado la lectura de https://wiki.ubuntu.com/AppReviewBoard 09:47 < chilicuil> ryan__ pregunto, cuanto tiempo toma el ciclo para introducir tu aplicacion? 09:48 < chilicuil> dpm ha respondido que depende de la aplicacion, algunas son mas faciles de verificar que otras, y tambien depende de la licencia que tenga 09:48 < chilicuil> aunque generalmente el lapso va de algunas horas a varios dias 09:48 < chilicuil> se puede ver http://askubuntu.com/questions/97272/how-long-does-it-take-to-complete-the-review-stages-in-ubuntu para conocer mas al respecto 09:49 < chilicuil> dmpj726 pregunto como se verifica la seguridad en aplicaciones comerciales 09:49 < chilicuil> dpm ha contestado que esas aplicaciones no se adaptan a las mismas politicas de seguridad de las aplicaciones libres 09:50 < chilicuil> consultara a davmor2 para saber mas al respecto 09:50 < chilicuil> Gontxo-Vitoria pregunto si puede vender aplicaciones libres 09:51 < chilicuil> dpm ha contestado que si, se pueden vender aplicaciones con el codigo fuente accesible 09:51 < chilicuil> http://developer.ubuntu.com/publish/commercial-software-faqs/ responde con mayor extension 09:51 < chilicuil> pawel_st pregunto si los autores estan obligados a soportar todas las versiones de Ubuntu 09:52 < chilicuil> dpm ha recomendado soportar la mayor cantidad de versiones, pero ha enfatizado en que no se obliga a hacerlo 09:53 < chilicuil> respecto a la pregunta sobre seguridad davmor2 ha mencionado que se verifican los directorios hacia los que escribe la aplicacion y que cualquier error grave de seguridad recae sobre el autor 09:55 < chilicuil> pawel_st pregunto si existe algun criterio para juzgar aplicaciones comerciales, por ejemplo si se verifica el tema de patentes, o solo son cuestiones tecnicas 09:55 < chilicuil> dpm dice que esos casos se revisan uno por uno, recomienda que envie un borrador de su aplicacion para que los revisores puedan darle mas detalles 09:56 < chilicuil> dmj726 pregunta si existe algun forma de verificar que las aplicaciones comerciales no sean maliciosas 09:57 < chilicuil> dpm ha respondido que el equipo de revisores se encarga de analizar si la aplicacion contiene errores muy graves, sin embargo la liabilidad del software recae sobre la reputacion del autor 09:57 < chilicuil> Donde encontrar ayuda 09:57 < chilicuil> ======================== 09:58 < chilicuil> si tienen cualquier otra duda al respecto, pueden hacerla a la comunidad de entusiastas programadores de Ubuntu 09:58 < chilicuil> vean http://developer.ubuntu.com/community/ para saber como entrar en contacto con ellos 09:58 < chilicuil> me gustaria puntualizar #ubuntu-app-devel http://webchat.freenode.net/?channels=ubuntu-app-devel 09:59 < chilicuil> askubuntu, http://www.askubuntu.com/questions/ask?tags=application-development con la etiqueta "ubuntu-app-devel" 09:59 < chilicuil> finalmente http://developer.ubuntu.com/2011/11/building-the-ubuntu-app-development-community-i-communication-channels/ 10:01 < chilicuil> con esto termina su sesion }}}