Ya te dije que no te ibas a aburrir en mi ausencia estas semanas. ¿Qué te parece participar en este reto? Durante los meses de julio y agosto, vamos a aprender 3 lenguajes de programación nuevos.
Las reglas y la mecánica son muy sencillas.
¿Cómo lo vamos a hacer?
La idea es aprender un lenguaje cada 15 días, con 15 días de descanso para tus merecidas vacaciones, que imagino que te tomarás en algún momento de estos dos meses.
Te recomiendo lenguajes que tengas muchas ganas de aprender, no te dejes llevar por su posible utilidad real. Lo que quiero es que te lances a ver qué pasa, qué conseguimos de todo esto.
La mecánica de aprendizaje va a ser muy sencilla, mediante Koans y Katas.
¿Qué son los Koans?
Los Koans son ejercicios sencillos que te ayudan a aprender un lenguaje. Normalmente la dificultad estriba más en entender cómo funciona el lenguaje que en resolverlo. Suelen ir acompañados de un test que validará que el código que escribimos para resolver un problema es el adecuado.
Utilizarás los koans para dar ese primer paso rápido que necesitas para poder manejarte un poco con el lenguaje.
Aquí tienes los koans de algunos lenguajes:
¿Y qué son las Katas?
Son ejercicios un poco más complejos que te ayudan a dominar ciertas habilidades de programación. Es muy habitual hacerlos mediante TDD, y te servirá para afianzar los conocimientos.
Este ejercicio lo utilizarás para coger un poco de soltura con el lenguaje mediante la solución de un ejercicio algo más complejo, así que resolverás el mismo ejercicio tres veces, una vez con cada uno de los lenguajes seleccionados.
Te propongo que utilices la Kata de la bolera, aunque si ya la conoces y prefieres utilizar alguna otra, lo dejo a tu elección.
¿Cómo participar en el reto?
Para hacer pública tu participación y obligarte moralmente, escribe un comentario en este mismo hilo con los 3 lenguajes que te has propuesto aprender. Si dejas un enlace a los koans para que otras personas lo puedan utilizar, muchísimo mejor.
Además, te animo a que lo compartas por las redes sociales
Me uno al reto de @devexperto1 : 3 lenguajes de #programacion en 2 meses Clic para tuitearUna vez que termines las katas en los distintos lenguajes, crea un Pull Request en este repositorio con las Katas solucionadas, incluidas en una carpeta con tu id de Github, y un README dentro de esa carpeta explicando los tres lenguajes que elegiste, qué Koans seguiste y, si hace falta, alguna instrucción más para ejecutar las Katas.
Si sólo consigues acabarlo en uno o dos lenguajes, no te preocupes. Hazlo también.
Los beneficios
Aprender lenguajes nuevos te abre muchísimo tu mentalidad. En otros lenguajes encontrarás diferentes formas de resolver los mismos problemas, que te ayudarán incluso en en el lenguaje que estés utilizando en tu día a día.
Además, aprender nuevos lenguajes es una forma de enriquecerte como profesional. El quedarnos encajados utilizando siempre un mismo lenguaje hace que no seamos capaces de desplegar todo nuestro potencial.
También te ayudará a ver cuáles son las tendencias en los lenguajes nuevos que están surgiendo, y a entender cuál puede ser la evolución de aquí a unos años.
¿Funcionará?
¿Es posible aprender tres lenguajes en dos meses? Sinceramente, no tengo ni idea. Lo que está claro es que no vamos a llegar a dominarlos.
Pero al menos te darán una base para conocer las fortalezas y debilidades de esos lenguajes, y de si podrías aplicarlos para solucionar algunos de tus problemas en tu día a día. Terminar el reto, aunque interesante, creo que no va a ser lo más importante que vas a sacar de este ejercicio.
Este es mi reto
Estos son los tres lenguajes que yo elijo:
- Ruby
- Go
- Clojure
Son tres lenguajes por los que tengo mucha curiosidad y que hace tiempo que quiero aprender, pero por falta de tiempo siempre lo voy dejando.
Además, son tres lenguajes lo suficientemente diferentes, y que se complementan muy bien. Tengo un lenguaje interpretado (Ruby), uno muy enfocado a programación funcional (Clojure), y Go, del que sinceramente no sé apenas nada, pero entiendo que se acerca más a un lenguaje compilado clásico.
Quiero que me cuentes tu historia
Estoy deseando saber qué tal funciona este reto para ti. Si te animas a hacerlo, estaré encantado de que me cuentes por correo electrónico cómo vas progresando con el reto, si te atascas en algún punto, y por supuesto que me cuentes tu historia una vez lo termines.
Si el reto tiene éxito y juntamos unos cuantos casos de éxito, me encantaría publicar un artículo con vuestras experiencias, así que no dudes en escribirme al final del reto para contarme qué te ha aportado.
¡Disfruta de tu verano programando!
Para Python
https://github.com/gregmalcolm/python_koans
Para PHP
https://github.com/mtoigo/PHP-Koans
Mas por aqui
https://changelog.com/a-huge-list-of-koans/
¡Muy buena idea Antonio! Me uno al reto.
Los lenguajes son:
Python: (este es un poco trampa, lo usan en mi trabajo y ya es hora de entender lo que hacen mis compañeros)
Java para Android (ya se java, así que también es trampa pero supongo que enfocado a Android, cambia bastante).
Clojure : No tengo ni idea de que va, se que es a tope funcional, así que para compensar los dos anteriores.
¿Qué te parece, está bien no?
Un saludo Antonio y gracias por tus píldoras semanales
Perfecto! No me parece mal hacer un poco de “trampa”. No es una tarea fácil 🙂
Interesante reto!
He probado el link de Scala y está roto aunque la web sigue funcionando con otros ejercicios, también he encontrado otro enlace a Scala koans, así que aquí os dejo los dos:
https://www.scala-exercises.org/
http://www.scalakoans.org/
Muchas gracias! Revisaré el enlace a mi vuelta
Me gusta el reto y me apunto con:
1.- Kotlin
2.- Swift
3.- Elixir
En cuanto comience por supuesto que comparto el repositorio.
Vamos a intentarlo!
Scala
Kotlin
Swift
Me apunto al reto con:
Go
Swift
Ruby
A ver que tal sale. 🙂
Me uno al reto 😀
[{“programming_language”:”scala”},{“programming_language”:”elixir”},{“programming_language”:”python”}]
Genial! Bienvenido al reto!
Quisiera
Java
C#
PHP
Se puede?
Claro! Puedes elegir los que quieras
Me uno al Reto:
C#
Ruby
Phyton
Genial!
Me uno al reto
1. Go
2. Angular: https://github.com/wingyplus/angular-koans
3. Ruby
Se ve super!!:
– Python.
– Go.
– Swift.
C#
java
HTML
ojala y lo logre…..
Quién dijo miedo?
1. php
2. python
3. ruby
Ruby
Swift
Go
Me uno al reto!!
Ruby
Go
Clojure
El repo en GitHub es: https://github.com/JesusMtnez/devexperto-challenge
Llego tarde, pero por suerte ya había empezado:
Python
Groovy
new Question(“¿Clojure o Ruby?”).NecesitoAyuda(“:'(“);
No me peguéis 🙂
Jajaj los dos son buenas opciones. A lo mejor Clojure es buena idea, para tener un lenguaje más funcional.
¿Algún consejo en cuanto a IDE/Entorno para Clojure?
Parece que para empezar lo que recomiendan es que uses el plugin de IntelliJ o Eclipse http://dev.clojure.org/display/doc/Getting+Started
Me uno al reto, aunque creo que me demoraré unos días más
– Scala
– Go
– Swift
No pasa nada! El caso es acabarlo, cuándo sea importa menos.
¡ Vamos allá!
– Javascript
– Python
– R
A por ello Diego!
Hola me llamó la atención el reto me uno! con los siguientes lenguajes:
Kotlin
Go
Typescript (No tengo mucho conocimiento de javascript) Y dejo unos koans que encontré https://github.com/judithgull/koans
Esperemos que podamos lograrlo!
Me uno al reto,
Puedo unirme yo también? aunque sea un poco tarde, de momento sigo de vacaciones jejejeje
Me gustaría aprender:
Typescript (Que se complementa con Angular2)
Angular2 (Ya tengo algunas nociones básicas)
NodeJS
Tomo nota de los koans de Gerson Sosa para Typescript, muchas gracias
Reto difícil, pero bueno, a ver que se puede hacer.
Perfecto! Claro que sí, no hay prisa con este tema, lo importante es conseguir el objetivo más que cuándo conseguirlo.
Acepto el reto !!!
Quiero aprender
Python
Java para Android
SQL
No entiendo mucho como es la dinámica para empezar el reto !
Quién me ayuda ??
Esto fue un reto que hice hace un par de veranos, pero por supuesto lo puedes hacer a tu ritmo sin problema.
hola me encantaria unirme al reto
Con
C#
JS
Java web
Se puede
Hola Ezequiel. Este reto se hizo hace un par de años para verano. Pero no dudes en llevarlo a cabo cuando a ti te venga bien, siempre es un buen momento para hacerlo!
Java
Javascript
Dart
Hola, buenos días me voy a unir al reto con todos los ánimos de aprender y ampliar mis conocimientos.
Los 3 lenguajes son:
– JavaScript
– JAVA
– PHP
Hola que tal, estoy interesado en unirme al reto junto con todos ustedes
Los dos lenguajes que me interesan son:
C++
JAVA
Espero ser atendido gracias
Hola! Este reto fue lanzando hace unos 3 años, pero nunca es tarde para ponerse con ello. Mucho ánimo!
Hola, me gustaría unirme al reto.
Tengo muchos deseos de aprender.
Los lenguajes que elijo son:
Java
C#
JavaScript
Estoy seguro que lo lograré.
Este reto fue lanzado hace varios años, pero sin problema puedes hacerlo por tu cuenta. Mucho ánimo!