Artwork

Contenido proporcionado por Diego Laballós. Todo el contenido del podcast, incluidos episodios, gráficos y descripciones de podcast, lo carga y proporciona directamente Diego Laballós o su socio de plataforma de podcast. Si cree que alguien está utilizando su trabajo protegido por derechos de autor sin su permiso, puede seguir el proceso descrito aquí https://es.player.fm/legal.
Player FM : aplicación de podcast
¡Desconecta con la aplicación Player FM !

89. ¿Qué tecnología elegir como programador?

9:46
 
Compartir
 

Series guardadas ("Feed inactivo" status)

When? This feed was archived on February 04, 2022 02:10 (2y ago). Last successful fetch was on August 03, 2021 05:49 (2+ y ago)

Why? Feed inactivo status. Nuestros servidores no pudieron recuperar un podcast válido durante un período sostenido.

What now? You might be able to find a more up-to-date version using the search function. This series will no longer be checked for updates. If you believe this to be in error, please check if the publisher's feed link below is valid and contact support to request the feed be restored or if you have any other concerns about this.

Manage episode 218633941 series 1911761
Contenido proporcionado por Diego Laballós. Todo el contenido del podcast, incluidos episodios, gráficos y descripciones de podcast, lo carga y proporciona directamente Diego Laballós o su socio de plataforma de podcast. Si cree que alguien está utilizando su trabajo protegido por derechos de autor sin su permiso, puede seguir el proceso descrito aquí https://es.player.fm/legal.

Lo primero que tenemos que aclarar, es cómo funciona el mundo de la programación porque es algo bastante complejo, sobre todo para aquellas personas que no hayan entrado aún en este mundo.

En primer lugar, tenemos distintos “entornos” en los cuales podemos programar: programación para móviles, para web y para programas de ordenador. Pero no solo es eso, también existen “sub-entornos” dentro de estos “entornos”.

Por ejemplo, en el caso de los móviles, tenemos programación para Android, iOS e híbrida; en el caso de la web, están los CMS, el mundo del frontend y backend; y finalmente, en la programación de escritorio, hay Windows, Mac y también un mundo híbrido como las tecnologías Java.

Ahora bien, al interior de cada “sub-entorno”, existen diferentes lenguajes o tecnologías. Por ejemplo, en el caso del backend dentro del mundo de la web, tenemos PHP, JavaScript y muchos frameworks distintos dentro de estos lenguajes como Python. En el caso de los CMS, tenemos WordPress, Prestashop, Joomla; en el mundo de las aplicaciones móviles híbridas, está Flutter, React Native, etc.

Dicho esto, se puede ver que es un mundo muy complejo así que, lo que voy a hacer es tocar algunos puntos que yo creo son importantes a la hora de decidirse por algo concreto. Además, yo daré mi respuesta personal a cada uno de estos puntos.

¿Cómo decidirse por algo en concreto?

Elegir un entorno que te guste

El primero, es elegir un entorno que te guste personalmente. De hecho, lo mejor que puedes hacer en este caso es preguntarte a ti mismo ¿Qué te gusta? Por ejemplo, ¿te gustan más los móviles, la web o estos nuevos dispositivos del internet of things? ¿Quizás eres un fan de Apple y te gustaría programar solo para éste?

En mi caso concreto, me gustan muchos los móviles y en general, el mundo relacionado con la tecnología móvil. Especialmente, porque al programar, me gusta tocar y comprobar en la palma de mi mano, lo que estás programando. Por tanto, me gusta y he decidido que los móviles es en lo que me he querido enfocar.

Además, también hay otras cosas que me gustan. Por ejemplo, el internet of things también es una cosa que me llama la atención. Sin embargo, me he enfocado en los móviles. Sobre todo, porque hace 5-6 años cuando yo empecé, aún no existían estos dispositivos pequeños del internet of things o, por lo menos, no estaban tan popularizados para programar en ellos, como ahora sí lo están.

Elegir una tecnología/lenguaje que te apasione

El segundo punto, es elegir una tecnología/lenguaje que te apasione. Esto, es más complejo de resolver porque la verdad es que no sabrás si una tecnología te gusta al 100% si no te pones primero a programar con ella.

De todas maneras, si puedes, hazte una idea de cómo es la tecnología, cómo funciona o qué problemas trata de resolver al mirar su documentación o contenidos promocionales.

Por ejemplo, es posible que tengas videos o una web donde expliquen de qué va esa tecnología, lenguaje, framework (llámalo como quieras). En mi caso, elegí Flutter, porque me permite desarrollar de forma rápida aplicaciones para Android y iOS con una calidad nativa.

Flutter tiene funcionalidades como el Hot Reload que te permite ver los cambios muy rápidamente cuando estás programando con los dispositivos, lo cual, con las aplicaciones nativas, hasta el momento, no pasa ya que tardas mucho tiempo desde que haces un cambio hasta que lo ves reflejado en el móvil para ver si funcionaba o no. Por tanto, es posible ir mucho más rápido en el desarrollo.

Luego está la ventaja de que solo necesita tener una sola base de código; lo cual es la idea esencial de las aplicaciones híbridas. Asimismo, mantiene una calidad nativa porque Flutter, no es como las otras tecnologías web o híbridas que van un poco más ralentizadas, ya que tiene su propio engine que te permite mantener esta calidad nativa y que las aplicaciones funcionen bien.

Por otra parte, utiliza Dart, el cual es un lenguaje moderno inventado por Google y, aunque no es muy conocido, sí tiene muchas cosas que tienen los lenguajes modernos.

Especialización

El tercer punto, es la especialización. Una de las cosas que tienes que tener claro desde el primer momento es que no podemos abarcar todo.

Como decía, a mi también me llaman la atención otras cosas, como los dispositivos de internet of things, u otras cosas. Sin embargo, sé que no puedo intentar ser bueno en todo. Si realmente quieres ser bueno en algo, necesitas especializarte y ser muy bueno en eso; aprenderlo bien, trabajar mucho tiempo con ello, saber donde están los errores y cómo solucionarlos, etc.

Visto desde el otro lado, si tratas de abarcar muchas tecnologías, no vas a abarcar nada: el que mucho abarca, poco aprieta. Lo importante aquí, es especializarse en algo que tenga una demanda suficiente y, de esto vamos a hablar en el siguiente punto.

En mi caso, me especializo en aplicaciones móviles con Flutter. De hecho, este fue uno de los errores que cometí cuando empecé con el tema de las aplicaciones: quise abarcar tanto las aplicaciones nativas de Android, como las de iOS.

Después de 2-3 meses, vi que eso era totalmente inviable porque no me podía mantener al día y ser bueno en ambos entornos. Era algo muy complejo de mantener, así que pase a Android y finalmente este año, es cuando ya estoy empezando con Flutter, pero siempre eligiendo una única tecnología.

Demanda

Vamos al cuarto punto, la demanda. La demanda de aquello a lo que te quieras dedicar es muy importante ya que, al fin y al cabo, si quieres vivir de ello (que supongo ese es el objetivo), necesitas que alguien esté interesado en esa clase de servicios y tecnologías.

Lo importante es encontrar el equilibrio entre especializarse y la demanda, y esto ya dependerá de cada caso.

Si quieres trabajar para una empresa, tienes que asegurarte que las empresas de tu alrededor utilizan esa tecnología y de que hay puestos de trabajo para ello. Si eres freelance, aplica lo mismo: tendrás que ver si los clientes a los cuales te quieres dirigir, realmente les interesa esa tecnología y que es la mejor opción para ellos.

En mi caso, elegí Flutter porque, a pesar de ser una tecnología nueva y ahora no haya muchos trabajos o aplicaciones hechas con él, creo que es lo que muchas pequeñas y medianas empresas, y start-ups buscan, que es para quienes yo generalmente trabajo.

Representa una forma de desarrollar aplicaciones de forma rápida, sencillas y a un coste no tan elevado como las nativas, pero manteniendo la calidad.

¿Tiene futuro esa tecnología?

Finalmente, el quinto punto: ¿tiene futuro esa tecnología?, ¿es un tipo de programación que va a quedar obsoleta por otras más nuevas o que llevan más tiempo?

Es decir, me refiero a si vale la pena dedicarle tiempo a aprender a utilizarla bien; o si por el contrario, no se lo merece porque esa tecnología está en decadencia en favor de otras.

Esto es algo muy importante. Por ejemplo, en mi caso, aunque Flutter sea una tecnología muy buena y sea difícil ver hacia donde va a ir, creo firmemente que es algo que tiene mucho futuro, y que es algo hacia donde el desarrollo de las aplicaciones móviles tiene que ir.

The post 89. ¿Qué tecnología elegir como programador? appeared first on Diego Laballós.

  continue reading

100 episodios

Artwork
iconCompartir
 

Series guardadas ("Feed inactivo" status)

When? This feed was archived on February 04, 2022 02:10 (2y ago). Last successful fetch was on August 03, 2021 05:49 (2+ y ago)

Why? Feed inactivo status. Nuestros servidores no pudieron recuperar un podcast válido durante un período sostenido.

What now? You might be able to find a more up-to-date version using the search function. This series will no longer be checked for updates. If you believe this to be in error, please check if the publisher's feed link below is valid and contact support to request the feed be restored or if you have any other concerns about this.

Manage episode 218633941 series 1911761
Contenido proporcionado por Diego Laballós. Todo el contenido del podcast, incluidos episodios, gráficos y descripciones de podcast, lo carga y proporciona directamente Diego Laballós o su socio de plataforma de podcast. Si cree que alguien está utilizando su trabajo protegido por derechos de autor sin su permiso, puede seguir el proceso descrito aquí https://es.player.fm/legal.

Lo primero que tenemos que aclarar, es cómo funciona el mundo de la programación porque es algo bastante complejo, sobre todo para aquellas personas que no hayan entrado aún en este mundo.

En primer lugar, tenemos distintos “entornos” en los cuales podemos programar: programación para móviles, para web y para programas de ordenador. Pero no solo es eso, también existen “sub-entornos” dentro de estos “entornos”.

Por ejemplo, en el caso de los móviles, tenemos programación para Android, iOS e híbrida; en el caso de la web, están los CMS, el mundo del frontend y backend; y finalmente, en la programación de escritorio, hay Windows, Mac y también un mundo híbrido como las tecnologías Java.

Ahora bien, al interior de cada “sub-entorno”, existen diferentes lenguajes o tecnologías. Por ejemplo, en el caso del backend dentro del mundo de la web, tenemos PHP, JavaScript y muchos frameworks distintos dentro de estos lenguajes como Python. En el caso de los CMS, tenemos WordPress, Prestashop, Joomla; en el mundo de las aplicaciones móviles híbridas, está Flutter, React Native, etc.

Dicho esto, se puede ver que es un mundo muy complejo así que, lo que voy a hacer es tocar algunos puntos que yo creo son importantes a la hora de decidirse por algo concreto. Además, yo daré mi respuesta personal a cada uno de estos puntos.

¿Cómo decidirse por algo en concreto?

Elegir un entorno que te guste

El primero, es elegir un entorno que te guste personalmente. De hecho, lo mejor que puedes hacer en este caso es preguntarte a ti mismo ¿Qué te gusta? Por ejemplo, ¿te gustan más los móviles, la web o estos nuevos dispositivos del internet of things? ¿Quizás eres un fan de Apple y te gustaría programar solo para éste?

En mi caso concreto, me gustan muchos los móviles y en general, el mundo relacionado con la tecnología móvil. Especialmente, porque al programar, me gusta tocar y comprobar en la palma de mi mano, lo que estás programando. Por tanto, me gusta y he decidido que los móviles es en lo que me he querido enfocar.

Además, también hay otras cosas que me gustan. Por ejemplo, el internet of things también es una cosa que me llama la atención. Sin embargo, me he enfocado en los móviles. Sobre todo, porque hace 5-6 años cuando yo empecé, aún no existían estos dispositivos pequeños del internet of things o, por lo menos, no estaban tan popularizados para programar en ellos, como ahora sí lo están.

Elegir una tecnología/lenguaje que te apasione

El segundo punto, es elegir una tecnología/lenguaje que te apasione. Esto, es más complejo de resolver porque la verdad es que no sabrás si una tecnología te gusta al 100% si no te pones primero a programar con ella.

De todas maneras, si puedes, hazte una idea de cómo es la tecnología, cómo funciona o qué problemas trata de resolver al mirar su documentación o contenidos promocionales.

Por ejemplo, es posible que tengas videos o una web donde expliquen de qué va esa tecnología, lenguaje, framework (llámalo como quieras). En mi caso, elegí Flutter, porque me permite desarrollar de forma rápida aplicaciones para Android y iOS con una calidad nativa.

Flutter tiene funcionalidades como el Hot Reload que te permite ver los cambios muy rápidamente cuando estás programando con los dispositivos, lo cual, con las aplicaciones nativas, hasta el momento, no pasa ya que tardas mucho tiempo desde que haces un cambio hasta que lo ves reflejado en el móvil para ver si funcionaba o no. Por tanto, es posible ir mucho más rápido en el desarrollo.

Luego está la ventaja de que solo necesita tener una sola base de código; lo cual es la idea esencial de las aplicaciones híbridas. Asimismo, mantiene una calidad nativa porque Flutter, no es como las otras tecnologías web o híbridas que van un poco más ralentizadas, ya que tiene su propio engine que te permite mantener esta calidad nativa y que las aplicaciones funcionen bien.

Por otra parte, utiliza Dart, el cual es un lenguaje moderno inventado por Google y, aunque no es muy conocido, sí tiene muchas cosas que tienen los lenguajes modernos.

Especialización

El tercer punto, es la especialización. Una de las cosas que tienes que tener claro desde el primer momento es que no podemos abarcar todo.

Como decía, a mi también me llaman la atención otras cosas, como los dispositivos de internet of things, u otras cosas. Sin embargo, sé que no puedo intentar ser bueno en todo. Si realmente quieres ser bueno en algo, necesitas especializarte y ser muy bueno en eso; aprenderlo bien, trabajar mucho tiempo con ello, saber donde están los errores y cómo solucionarlos, etc.

Visto desde el otro lado, si tratas de abarcar muchas tecnologías, no vas a abarcar nada: el que mucho abarca, poco aprieta. Lo importante aquí, es especializarse en algo que tenga una demanda suficiente y, de esto vamos a hablar en el siguiente punto.

En mi caso, me especializo en aplicaciones móviles con Flutter. De hecho, este fue uno de los errores que cometí cuando empecé con el tema de las aplicaciones: quise abarcar tanto las aplicaciones nativas de Android, como las de iOS.

Después de 2-3 meses, vi que eso era totalmente inviable porque no me podía mantener al día y ser bueno en ambos entornos. Era algo muy complejo de mantener, así que pase a Android y finalmente este año, es cuando ya estoy empezando con Flutter, pero siempre eligiendo una única tecnología.

Demanda

Vamos al cuarto punto, la demanda. La demanda de aquello a lo que te quieras dedicar es muy importante ya que, al fin y al cabo, si quieres vivir de ello (que supongo ese es el objetivo), necesitas que alguien esté interesado en esa clase de servicios y tecnologías.

Lo importante es encontrar el equilibrio entre especializarse y la demanda, y esto ya dependerá de cada caso.

Si quieres trabajar para una empresa, tienes que asegurarte que las empresas de tu alrededor utilizan esa tecnología y de que hay puestos de trabajo para ello. Si eres freelance, aplica lo mismo: tendrás que ver si los clientes a los cuales te quieres dirigir, realmente les interesa esa tecnología y que es la mejor opción para ellos.

En mi caso, elegí Flutter porque, a pesar de ser una tecnología nueva y ahora no haya muchos trabajos o aplicaciones hechas con él, creo que es lo que muchas pequeñas y medianas empresas, y start-ups buscan, que es para quienes yo generalmente trabajo.

Representa una forma de desarrollar aplicaciones de forma rápida, sencillas y a un coste no tan elevado como las nativas, pero manteniendo la calidad.

¿Tiene futuro esa tecnología?

Finalmente, el quinto punto: ¿tiene futuro esa tecnología?, ¿es un tipo de programación que va a quedar obsoleta por otras más nuevas o que llevan más tiempo?

Es decir, me refiero a si vale la pena dedicarle tiempo a aprender a utilizarla bien; o si por el contrario, no se lo merece porque esa tecnología está en decadencia en favor de otras.

Esto es algo muy importante. Por ejemplo, en mi caso, aunque Flutter sea una tecnología muy buena y sea difícil ver hacia donde va a ir, creo firmemente que es algo que tiene mucho futuro, y que es algo hacia donde el desarrollo de las aplicaciones móviles tiene que ir.

The post 89. ¿Qué tecnología elegir como programador? appeared first on Diego Laballós.

  continue reading

100 episodios

Todos los episodios

×
 
Loading …

Bienvenido a Player FM!

Player FM está escaneando la web en busca de podcasts de alta calidad para que los disfrutes en este momento. Es la mejor aplicación de podcast y funciona en Android, iPhone y la web. Regístrate para sincronizar suscripciones a través de dispositivos.

 

Guia de referencia rapida