Por qué nuestro campo de entrenamiento de codificación todavía enseña dos lenguajes de programación a la vez

En nuestra búsqueda para capacitar a desarrolladores full-stack listos para el empleo, nuestro campo de entrenamiento de codificación decidió enseñar Ruby on Rails (un marco de back-end basado en Ruby) y React (un marco de front-end basado en Javascript) en paralelo.

Al principio, enseñar dos idiomas fue una decisión práctica. Los estudiantes necesitaban educación tanto de front-end como de back-end para cumplir con nuestro estándar para el éxito completo de los desarrolladores en el mundo real.

Nuestro lenguaje ideal para cada pieza era diferente. Si bien aprender dos idiomas a la vez fue mucho más difícil, nuestros estudiantes no tuvieron otra opción porque no pudimos crear una mejor solución en ese momento.

En lugar de sentirse abrumados y lavados, nuestros estudiantes prosperaron con el desafío de aprender dos idiomas.

Como no vimos ninguna consecuencia negativa para los estudiantes más que una carga de trabajo más pesada, no cambiamos el programa durante nuestros primeros cinco años.

A pesar de nuestro éxito en la enseñanza de Ruby on Rails, finalmente decidimos actualizar nuestro programa e introducir un nuevo marco de trabajo de back-end en nuestro plan de estudios. Consideramos varias opciones, pero finalmente la elección se redujo a dos: Django de Python o Node.js. de Javascript.

Finalmente tuvimos la oportunidad de simplificar el nivel de desafío de nuestro programa y enseñar Javascript solos mientras manteníamos una educación de vanguardia.

Nosotros no lo hicimos.

En su lugar, elegimos Django de Python.

El análisis de empleo había indicado que Python y Django eran tan valiosos para nuestros estudiantes como Javascript y Node.js. Entonces, elegir Django no comprometería la calidad. Sería más difícil para nuestros estudiantes aprender que si enseñáramos solo Javascript y usáramos Node.js.

No solo estábamos haciendo el programa más difícil por el gusto de hacerlo. Había más en la historia cuando miramos lo que sucedió después de que nuestros estudiantes se graduaron.

En el proceso de deliberar sobre nuestras opciones, nos dimos cuenta de que aprender varios idiomas se había convertido en una ventaja para nuestros graduados.

La velocidad a la que nuestros estudiantes aprendieron a programar, su éxito después de la graduación y los comentarios que recibimos de ellos confirmaron que aprender dos idiomas a la vez era, aunque difícil a corto plazo, en última instancia, esencial para su éxito a largo plazo.

Según lo que hemos medido y escuchado, estas son las razones más importantes por las que continuamos enseñando más de un lenguaje de programación en Code Platoon.

1. Priorizas los conceptos sobre la sintaxis

Al igual que los grandes matemáticos no se miden por su capacidad para memorizar teoremas, los grandes desarrolladores no se miden por su capacidad para escribir un bucle sintácticamente perfecto 'for' en un idioma determinado de la cabeza.

Más importante es su capacidad para captar los conceptos esenciales y comprender los sistemas con los que están trabajando.

La sintaxis es sencilla. Buscar en Google "¿Cómo escribo un singleton en Ruby?" Devolverá inmediatamente numerosos resultados. Saber cuándo usar un singleton (en lugar de una instancia de clase) es la parte difícil.

La sintaxis cambia con el idioma, pero muchos de los métodos para resolver problemas con computadoras siguen siendo los mismos.

Una vez que comprenda que todos los lenguajes orientados a objetos tienen singletons, se obsesionará menos con memorizar dónde van las comas y se concentrará más en los pasos que debe seguir para resolver sus problemas.

Ver las similitudes en los idiomas puede ser de gran ayuda para derribar conceptos universales. Pero observar las diferencias puede ser igualmente útil. Algunos conceptos son más abstractos o simplemente más difíciles de entender en un idioma que en otro.

Por ejemplo, lambdas en Ruby no tenía sentido para mí, pero el concepto finalmente hizo clic cuando vi lambdas en Javascript. A veces es solo cuestión de ver lo mismo de una manera diferente, y nunca lo conseguirás si te ciñes a un solo idioma.

2. Aumenta sus oportunidades laborales

Queremos que nuestros graduados estén preparados para trabajos de codificación reales. Si bien algunos de nuestros graduados obtienen trabajos en los que escriben código en los idiomas que enseñamos, muchos de ellos consiguen trabajos que requieren un idioma diferente.

Con cada trabajo posterior, por lo general necesitarán aprender al menos un nuevo lenguaje o marco.

Aprender ese primer idioma es un desafío. Demostrar que ha aprendido dos en poco tiempo anuncia su capacidad para aprender bajo presión. Esta es una habilidad que realmente te ayuda a destacar entre la multitud.

Tener tanto Javascript como Python en su currículum muestra que puede escribir en esos dos idiomas.

Más importante aún, muestra que puede seguir aprendiendo lenguajes de codificación. Esto aumenta sus posibilidades de ser contratado en un trabajo que no requiere a ninguno de ellos.

En el mundo real, no durará mucho como programador si solo conoce un idioma o si no está preparado para seguir aprendiendo otros nuevos. El tiempo que dedique a aprender el segundo en la seguridad del aula le dará la confianza para aprender el tercero en el reloj en su nuevo trabajo.

3. Puedes crear más cosas con más idiomas

Pocas aplicaciones web modernas se crean con un solo lenguaje de programación. Algunos idiomas son mejores en ciertas cosas. Javascript domina la interfaz. También puede usarlo en su parte trasera. Pero, dependiendo de lo que desee hacer, es posible que desee utilizar Ruby o Java en el lado del servidor.

La mayoría de las aplicaciones requieren una base de datos. En cuyo caso, querrá aprender un lenguaje de consulta como SQL.

¿Necesitas analizar muchos datos? Python o R podrían ser lo que estás buscando. Construirá de forma más rápida e inteligente si comprende lo que hace bien cada idioma y cómo usar los idiomas para realizar las tareas que necesita.

4. La perspectiva te ayuda a ganar confianza y a crecer

Aprender tu primer idioma puede ser increíblemente difícil. Pero como cualquier otra cosa, cuanto más aprenda, más seguro estará de su capacidad para resolver problemas difíciles.

Y eso es gran parte de la programación: la capacidad de evaluar un problema y encontrar una solución. La fuerza de voluntad y la confianza para superar esos inevitables momentos de "No tengo idea de qué hacer a continuación" es clave.

Una vez que haya aprendido su segundo idioma, estará más abierto al cambio. Comprenderá cómo elegir la mejor herramienta para el trabajo. Un lenguaje que es excelente para el desarrollo web puede no ser el mejor para el análisis de datos, y lo entenderá. Es menos probable que fuerce una herramienta que conoce muy bien en lugar de simplemente aprender la mejor herramienta sobre la marcha.

5. Queremos bootcamps en dos idiomas como estándar

Aprender dos idiomas a la vez no es poca cosa. Pero saber dos idiomas prepara mejor a nuestros graduados para un mercado laboral competitivo y los prepara para tener éxito.

Esperamos que más campos de entrenamiento de codificación adopten este enfoque en el mejor interés de sus estudiantes. Alentamos a los futuros estudiantes de codificación a buscar campamentos de entrenamiento de codificación que ofrezcan esta ventaja, a pesar del trabajo de campo adicional que se les exige.