Aitor Sánchez - Blog - Nov. 1, 2023, 10:59 a.m.
Quizás te preguntes ¿Qué programar cuando estoy aburrido? de manera frecuente ¿verdad? Si es así, este artículo tal vez es para ti. Sigue leyendo.
Mi nombre es Aitor Sánchez, hago apps desde 2014, y en este artículo conocerás 3 cosas para programar cuando estés aburridillo del día a día, o de la tecnología que te imponen en el curro, y quieras aprender algo nuevo o entretenerte haciendo algo interesante.
Pero antes de continuar, esta es la Flutter Mafia. Es mi newsletter donde tu vas a aprender a hacer apps y a ganar dinero con ellas junto con otros genietes que ya están dentro. Y si te suscribes te regalo mi ebook "Duplica los ingreso de tus apps en 5 minutos" No es broma, quizás te interese.
Y ahora si, vamos con ello. Let´s go!
En la actualidad, la mayoría de los desarrolladores de software, siempre pensamos en móviles, pc, web, etc… Pero nunca damos cuenta del potencial entretenimiento que hay en el desarrollo del IOT (Internet Of Things).
Por esta misma razón, he decidido poner este punto aquí, por que me parecía muy interesante, dado que yo mismo lo utilizo, para desconectar un poco cuando lo necesito. Así que coloco a Arduino en el punto número 3 de cosas que programar cuando estoy aburrido.
Para quien no lo sepa, Arduino es un microcontrolador que nos permitirá cargarle código (en el lenguaje de programación C) para que haga lo que nosotros queramos a través de la entrada y salida de sus pines. La verdad es que es super entretenido de configurar y aprender cómo hacerlo.
Pero ¿y qué podría desarrollar yo con esto?
Lo primero que se me viene a la cabeza es un coche de Lego que se conduzca solo, por ejemplo.
Cómo objetivo será conseguir que el coche, mediante nuestra placa de Arduino, unos sensores que nos permitan conocer la proximidad de las cosas y poco más, no se tropiece contra las paredes.
Este ejercicio, a parte de entretenido, será de carácter didáctico para nosotros. Aprenderemos la interacción del Software con el Hardware y de cómo de complejo es traducir el código al mundo real.
Asociado al punto anterior, dado que está muy encaminado al IOT, tenemos la programación de cosas con Raspberry. Aunque no necesariamente tendría que se para para IOT, dado que esto ya no es un microcontrolador, si no más bien un microordenador con sistema operativo y todo.
A parte de poder hacer lo mencionado en el punto anterior, podríamos, por ejemplo, levantar un servidor web e intentar programar una PWA (progresive web aplication).
Para tal fin usaríamos una instancia de XAMP que os la podéis descargar desde la web Oficial. Por si no lo sabes, XAMP es un paquete todo en uno que desplegará un server apache donde podremos desarrollar cómodamente nuestras páginas web antes de mandarlas al server de producción.
Por otro lado, y dado que Raspi usa Python cómo lenguaje de programación principal (explico más detalladamente esto en este artículo), podríamos montar, junto con una cámara, un sistema de clasificación de coches mediante inteligencia artificial/machine learning.
Y para terminar este punto, la programación de los Robots Sumo está a la orden del día. Digamos que mediante unos sensores infrarrojos y otros de proximidad, hacer que dos botos se enfrenten a empujones hasta que uno saque al otro del rin.
Este último punto es super curioso y muy entretenido. Sobre todo, cuando tienes algún amigo que también le pega al desarrollo y podáis hacer cosas así juntos cuando no sabes qué programar cuando estoy aburrido.
A menos que te dedique profesionalmente al desarrollo de este tipo de producto, imagino que cómo a mí, siempre has tenido el gusanillo de programar un videojuego.
A ver, yo ya me lo he quitado. Es más, yo ya tengo algunos publicados en la red que pueden ser descargados, cómo este o este. Pero si es cierto de que es un tipo de desarrollo disruptivo si te dedicas al tema del desarrollo de apps.
Ahora bien, aconsejo que si te vas a poner a darle leña a esto de los juegos, seas una persona que o bien no se frustre con facilidad, o que seas muy cabezota. El game development no es algo que se aprenda en dos tardes, cómo puede ser un Framework, y es un tipo de desarrollo, que debido a sus matemáticas, se hace complejo de comprender al principio.
Para poner un par de ejemplos de lo que se podría hacer para comenzar: La programación de un juego de Sudoku, o un juego plataformas rollo Mario serían dos de los que me gustaría hacer a mí. Eso si, por favor, no te pongas a desarrollar un MMO nada más empezar, no lo vas a terminar y te vas a frustrar y volverás a hacerte la pregunta ¿qué programar cuando estoy aburrido?
Cómo acostumbro a hacer en la mayoría de mis artículos, siempre me gusta aportar un poquito más que lo que el usuario esperaba. Por eso hemos llegado a este punto.
No va a ser un punto con ejemplo cómo tal, por que no sería correcto. Pero estamos hablando del desarrollo de cualquier modelo de inteligencia artificial.
Te invito, si es que no lo sabes hacer aún, a que comiences a estudiar un poco el tema de la IA. Es una tecnología con una capacidad de crecimiento enorme, cómo se está demostrando en la actualidad, y su potencial es infinito.
Preveo que para el 2030, todos los devs que no sepan algo de Inteligencia Artificial van a quedar completamente obsoletos. Su trabajo lo podrá hacer cualquier tipo de máquina, cómo sucederá con la mayoría de los empleos.
Tanto es así, que lo devs que sepamos IA, vamos a ser hiper demandados en un mundo donde habrá una carencia enorme de este tipo de perfil. Esto lo estamos viendo también a día de hoy.
El ejercicio para realizar sería, mediante la librería de IA TensorFlow, hacer un programa que nos permitiese identificar por separado una gran cantidad de animales domésticos.
Te doy una pista, para hacer esto tendríamos que utilizar redes neuronales convolucionales. Así que venga, si has llegado hasta aquí, vamos a comenzar a estudiar ?
Mira, en el momento que tu mejoras el logo de una app que tengas publicada en Google Play, las descargas y los ingresos que esta aplicación genera aumentan. Esto es así. Mejor logo es igual a más dinero.
Basándonos en esto, hemos creado esta herramienta que te permite evaluar, optimizar y mejorar los logos de tus apps para que reciban más descargas. No te quiero espoilear, dentro hay un video explicativo. Entra en el enlace.
Geniete, espero haberte ayudado a resolver tu indecisión y nos vemos en el siguiente artículo. Hasta entonces ¡que vaya bien!