Aprendiendo Xamarin Forms — Mi receta personal

Cada semana recibo mensajes de personas que me preguntan lo mismo: “¿Cómo puedo aprender Xamarin Forms?”, “¿Cómo aprendiste Xamarin?”, “¿Qué debo hacer para convertirme en un profesional en el área?”, “¿Cómo empiezo? ”, Etc.

En este artículo, quiero darte mi receta personal sobre cómo aprender y cómo puedes mejorar si ya sabes.

¿Estás listo?
¡Empecemos!

Toma un curso

El primer paso para aprender es tomar un curso, o si eres demasiado proactivo puedes aprender con solo leer la documentación, actualmente la documentación de Xamarin esta buenisima, así que puedes echarle un vistazo y ver que tal, de todos formas yo recomiendo un curso. 

Mi curso recomendado es el de Xamarin University, ¿Por qué? Porque tienen los mejores maestros y el contenido es realmente bueno.
Es importante mencionar que después de Junio del 2019 esta plataforma sera deprecada, y después de enero del 2019 todo el contenido estará disponible de forma gratuita en Microsoft Learn.

Otros cursos gratuitos en español que puedes tomar: 
- Código facilito 
- Microsoft Virtual Academy

Otros cursos pagados que puedes tomar:
- Udemy
- Pluralsight (Ingles)

Comienza una aplicación

Ahora que tiene los conocimientos básicos, sabes cómo crear una página, navegar entre ellas, crear layouts y controles, puedes iniciar tu primera aplicación. (Si no ve al paso 1).

Lo mejor de iniciar una aplicación personal es que está bien si cometes errores, tienes memory leaks, crashes, etc. Porque así es como aprenden las personas, cometiendo errores y luego mejorando :).

En esta pagina, hay muchas ideas de aplicaciones (1283 para ser exactos), solo elije una y comienza un nuevo proyecto. Además, puedes intentar re-escribir tus aplicaciones favoritas, solo para practicar. Por ejemplo, puedes intentar hacer clones de Airbnb, Pokémon, WhatsApp, Tinder o Trello.

Usa un Framework

Ahora que tienes una aplicación funcionando, probablemente estes orgulloso de tu código, o quizás no porque sabes que la forma en que lo hiciste no fue la mejor. Así que es framework time!

En Xamarin Forms hay una gran cantidad de frameworks que puedes usar que te ayudarán a manejar la navegación, aplicar mejores prácticas, mejorar la calidad del código, etc.

Esta es la lista de los más famosos y cómo aprender cada uno :

  • Prism (Aprende con XamGirl en aquí)
  • MvvmCross (Aprender Martijn van Dijk here)
  • FreshMvvm (Aprender con Michael Ridland here)
  • MvvmLight (Aprende con Daniel Krzyczkowski here)
  • Reactive UI (Aprender con DevProtocol here)

PDT: Todos estas fuentes están en ingles, si tienes problemas con el idioma te recomiendo que uses o GoogleTraslate para traducir el contenido, o (lo ideal) que tomes un curso de ingles, lo necesitaras para que no te limites a la hora de buscar contenido, para poder ir a eventos internacionales o para poder crecer en el área.

Lee

En este punto probablemente ya sabes como codear, puedes crear aplicaciones para tus clientes, pero tal vez sientas que no eres lo suficientemente bueno. Pues eso pasa mi amigo, pero hay una solución para eso, leer.

La comunidad de Xamarin es muy activa, todos los días alguien escribe un artículo sobre un tema interesante, o simplemente publica su opinión sobre algo.

Haz de las redes sociales una forma de aprender.

Planet Xamarin

Una buena manera de encontrar buenos artículos es en Planet Xamarin. Si no sabes qué es, es una página que recopila artículos de Xamarin de muchos blogs.

Twitter

Otra forma de aprender, y una de mis favoritas, es en Twitter. Simplemente siga las cuentas correctas y todos los días veras tu feed lleno de buenas publicaciones.

Algunas cuentas que puedes seguir:

@xamarinhq @XamarinU @migueldeicaza @JamesMontemagno @TheXamarinShow @davidortinau @DotNetAppDev @BrandonXamarin @kphillpotts @jfversluis @jimbobbennett @rdelrosario @Suave_Pirate @pierceboggan @Chard003

Hay muchas más cuentas que seguir, pero esto debería ser un buen comienzo.

Grupos de Facebook

En Facebook, hay dos grandes grupos de Xamarin:

Únete a ambos, lee lo que las personas publican y si conoces la respuesta entonces ayuda, si tienes un problema, pregunta. Además, algunas personas publican artículos allí o cosas interesantes que encuentran.

Slack

En Slack, hay un Xamarin Slack Channel, el cual tiene el equipo de Xamarin disponible para ayudar.

Asiste a conferencias

Esto es muy importante, no solo porque aprenderás temas interesantes, sino también porque conocerás a personas que te motivarán a ser mejor.

Es muy nice ir a una conferencia y conocer en persona a las personas que admiras. Después de eso, te convertirás en una persona diferente.

Algunas próximas conferencias para asistir:

Aquí una lista de todos los eventos de Xamarin en todas partes del mundo.

Una ultima cosa

Como mencioné, esta es solo mi receta personal que tuve que seguir y que sigo todos los días. En mi experiencia personal, siempre tomo al menos algunos minutos de mi día para revisar Twitter y ver si alguien ha publicado algo interesante, o revisar los grupos de Facebook para ver si puedo ayudar a alguien con un problema. ¿Por qué? Porque somos una comunidad, y ese es el significado de una comunidad, saber que alguien estará allí si necesitas ayuda, pero también estar ahí para alguien que la necesite (awwww: P).

No te limites a ti mismo y sigue aprendiendo todos los días. Si ya conoces un Framework, prueba con otro para ver cuál te gusta más. Si crees que tu código es bueno, buscar código openSource para ver qué hacen las otras personas, qué prácticas siguen y cómo puedes mejorar más.

También, ponte metas, por ejemplo, "Este año debo obtener mi primera certificación", "Iniciar mi blog", "Dar una charla es un evento" o "Hacer mi primer plugin". Esto te ayudará a mantenerte activo y motivado para aprender.

Y eso es todo por ahora.

Gracias especiales a todas las personas que escriben artículos, ayudan en grupos, contribuyen a proyectos de código abierto, escriben plugins, etc. Todos ustedes son mis héroes y mis maestros.

Happy coding!