¿Hace falta haber sido formado en programación para crear aplicaciones?

Una de mis varias “acciones 2015 para salir de la zona de confort”, ya sabes aquello que hablamos de al menos, una vez al año… sal de la zona de confort, consistirá en aprender a programar en Android.
Elegí este reto tecnológico porque quería aprovechar mis años de programación en Java, ya que realmente lo que quiero es conocer el sistema operativo, la plataforma, hacer alguna aplicación, entrar en los temas de testing en Android, etc.
Ciertamente, aprovechando los días de navidad, lo que va de año me ha cundido, instalé tranquilamente el IDE, concretamente el nuevo Android Studio, superé las típicas peleas para hacer que todo el entorno funcionase y a ratos creé mi primer “hola mundo” en Android.
En mi proceso de aprendizaje hasta llegar a mi primer “hola mundo”, y sin que a priori fuera mi objetivo con tal actividad, he reafirmado nuevamente dos cosas, que creo que a estas alturas ya son sabidas por todo el mundo, va la primera: puedes aprender casi cualquier cosa, de manera auto-didacta, echándole horas al Google, vamos, buscando y leyendo en la web.
Seguramente sea más rápido, eficiente y te evitará muchos errores que alguien te forme presencialmente en un curso, pero si no puedes o no quieres ir por esa vía el único freno que hoy puedes tener es el tiempo del que dispongas y las ganas que le quieras echar.
Haz tú mismo una búsqueda en Youtube con las palabras “Android Programación”, por si más que leer quieres escuchar y por si, además, quieres hacerlo en español. A mí me salen más de 1.800.000 resultados. Y mientras escribo esto no dejo de pensar en lo que todo el mundo que está metido en formación no deja de pensar: aquello del post de ¿Es la Universidad lo siguiente que va a revolucionar y cambiar para siempre Internet?, o, si quieres un argumento similar, en vídeo, lo que hace unos días contaba Manuel Gértrudix, de la URJC en la Aventura del Saber.
La segunda que te quería contar hoy: me ha sorprendido la cantidad de video tutoriales en los que el autor, normalmente de poca edad, parece tener muy “pocos conocimientos de programación” pero que de una manera u otra (con un copia esto de aquí, pégalo allá, etc.) se crea una aplicación.
Ya sabes que en este nuestro mundo las definiciones son peligrosas, a falta de mayor ayuda por parte de la RAI (Real Academia de la Informática), cuando hablo de “pocos conocimientos de programación” me refiero a que, aparentemente, los autores de muchos de los vídeos (obviamente no todos, por supuesto) no parecen estar familiarizados con cosas como “clases”, “objetos”, “herencias”, “patrones”, “calidad de software”, etc. No me extiendo más en este punto, ya sabes a qué me refiero aquí con “saber programar”, sino te dejo el post de ¿Qué significa “saber programar”? ¿Entendemos todos lo mismo?
En muchas ocasiones parece más un aprendizaje obtenido “en la calle” que en una Universidad. Pero, al final, ambos estilos resultan y concluyen en una aplicación operativa en Android.
Seguramente estarás pensando, que si no sabes “programar”, según nuestra definición anterior, puedes hacer aplicaciones… pero que serán menos mantenibles, más costosas, de poca calidad en su diseño, estilo de programación, etc. Lo cual, yo creo, es cierto y lo comparto.
Pero, igualmente, uniendo los dos puntos que compartía contigo, hoy, aparentemente, hay muchas personas, y me da que cada día puede haber más, que son capaces de hacer aplicaciones (1) auto-formándose, de manera autodidacta, y (2) sin tener unos profundos conocimientos sobre programación.