¿Cómo aprender un nuevo lenguaje de programación de forma rápida y eficiente y luego comenzar a trabajar en un proyecto para una empresa? ¿Qué enfoque debo seguir? ¿Cuántas horas debo escribir código diariamente para eso?

Asumiré que ya conoces otros idiomas …

Si está trabajando en un cuerpo de código existente (lo que es más probable), mire el código existente. Deberá hacer esto de todos modos para conocer la estructura interna, las interfaces y el estilo general del código. Mientras hace esto, querrá tener a mano un libro de texto de idioma para poder buscar cosas que no entiende.

Además, al mismo tiempo, es bueno copiar y pegar el código que ve en un pequeño entorno de ejecución para que pueda ejecutarlo de forma aislada y ver qué hace. Otra cosa útil es familiarizarse con el entorno de desarrollo estándar (IDE o lo que sea) utilizado por su empresa, y utilizarlo para recorrer partes interesantes del código con el depurador de nivel de origen.

También debe intentar hacer algo “real” muy rápidamente y aprender lo suficiente del lenguaje para ejecutar su tarea sin demora. Hará mucho “aprender haciendo”, así que no tenga miedo de hacer preguntas, especialmente sobre la base del código y el entorno de desarrollo si es nuevo para usted. No espere que sus compañeros de trabajo le enseñen el idioma, pero puede hacerles preguntas particulares sobre el idioma a medida que lo aprenda.

Además, si su grupo tiene revisiones de códigos, solicítelos y úselos como oportunidades para que otros ingenieros lo critiquen, y no tenga miedo de solicitar enfoques alternativos en las revisiones. En general, sus compañeros estarán más dispuestos a ayudarlo con los problemas de idioma en el contexto del producto que si lo hace con preguntas “frías” del tipo “cómo hago X en el idioma Y”.

El lenguaje en sí también importa. Si es un lenguaje como C ++ que tiene una tonelada de sintaxis, querrá centrarse en el producto y aprender la sintaxis utilizada en el producto en lugar de intentar aprender toda la sintaxis antes de poder ser productivo. Si se trata de un lenguaje como Python, que es más centrado en bibliotecas y API, primero querrá aprender las API que usa su producto.

En lo que respecta a aprender “fuera del trabajo”, uno o dos cursos en línea no duelen, pero me centraré en el código base del trabajo en lugar de hacer un montón de proyectos paralelos al estilo de “asignación de tareas”. Recuerde que no solo está aprendiendo el nuevo idioma, también está aprendiendo un código base existente. Puedes seguir adelante y aprender otras partes del idioma por tu cuenta.

Aprender un idioma en el trabajo es muy diferente de aprender uno en la escuela. Rara vez se trabaja en el código “greenfield”, y se enfoca en ser productivo rápidamente en lugar de intentar obtener un conocimiento “completo” antes de intentar cualquier trabajo productivo.

Un último punto, ya que esta publicación se está extendiendo demasiado 🙂 El código base puede ser feo y puede seguir estilos pobres. Si lo hace, no tengas miedo de notar la fealdad, aunque si hay un estilo de codificación estándar, debes usarlo. Una base de código grande y existente tiende a asumir las características del equipo y la administración que la construyeron: si es un equipo pequeño y bien administrado, producirá un código limpio y bien organizado. Si es una burocracia grande e inflada, producirá un código “burocrático”. Si es un inicio creciente, probablemente tendrá un código que es una mezcla (y probablemente un desorden) de estilos.

Nunca hay una forma rápida y eficiente de aprender un lenguaje de programación. Pero puedo enseñarte cómo aprendí. Comencé aprendiendo lenguajes muy básicos como HTML y CSS (lenguajes muy simples utilizados para el desarrollo web). Luego aprendí otros idiomas de nivel superior, como Lua, Python y Ruby. La primera vez que toqué un lenguaje de programación de nivel superior estaba muy confundido, no entendía la sintaxis y todo era ajeno a mí. Entonces, cuando aprendí esos idiomas fue que comencé a desglosar el código al comprender las funciones de cada pieza de código, como esta pieza muy simple de código de C print (“¡Hola, Mundo!”) ;. Cuando se compila produce el texto “¡Hola, mundo!”. Entonces, se vuelve más complicado como otro tipo de código en Python llamado “if declaraciones”, mientras que el usuario ingresa esto, esta otra cosa sucederá, y si el usuario no pone esto, otra cosa sucederá. Sin embargo, aprender un lenguaje de programación se basa en su capacidad para desglosar el código y entender lo que significa.

Si desea ser empleado dentro de 12 semanas, lo primero que recomiendo es hacer un Bootcamp de codificación. Seguí esa ruta y pasé de saber muy poco acerca de la programación a conseguir un trabajo como desarrollador.

Si esa ruta no es para ti y tienes motivación propia, entonces debes gastar al menos un mínimo de 8 horas diarias de codificación, todos los días, durante 15 semanas. Pero no se limite a sentarse y programar, aprenda temas, pague $ 10 por tutoriales al azar en Udemy, mire cientos de tutoriales de YouTube, aprenda a construir cosas del mundo real. Necesita aprender sobre muchas cosas, por ejemplo, si desea ser un candidato sólido para un trabajo de C # / .NET, entonces necesita aprender Visual Studios, C #, MVC. Para un desarrollador de front-end, debe saber un poco de JavaScript. , jQuery, Twitter Bootstrap, Angular, y para el backend, aprenda SQL Server, Entity, ADO.NET, Dapper o Nhibernate, y más.

Hay mucho que aprender, pero si pasa 8 horas al día durante 15 semanas aprendiendo estas cosas, puede conseguir fácilmente un trabajo en el Medio Oeste pagando $ 50,000- $ 60,000 y en las costas pagando $ 90,000- $ 100,000.

Si comprende el concepto y puede aplicar el algoritmo de uso, entonces aprender cualquier lenguaje de programación no sería un problema.

Primero intente entender el algoritmo, luego la implementación en el idioma que escogería. Luego intenta hacer algunos proyectos pequeños antes de saltar a proyectos más grandes. El desarrollo de software es acelerado en estos días, por no mencionar que depende de los requisitos.

¿Cuantas horas? No hay limitación. Cuando te pierdes al escribir un código, no creo que te darías cuenta de cuántas horas has dedicado a escribir un código, a menos que estés atascado.

Si tienes conocimientos previos de programación: entonces supongo que sabes el trato. En ese caso, simplemente repasando los conceptos básicos le permitirá caminar con el idioma. Recopile un buen libro, lea los esquemas de los capítulos y familiarícese con la nueva sintaxis y conceptos introducidos por ese idioma en particular.

Si usted es un principiante : entonces le diré que busque un buen libro, léalo, dé suficiente tiempo para entender los conceptos y la práctica. Ya sé que puedes ver muchos tutoriales y también practicar, pero eso no hará que tu comprensión sea más profunda.

En ambos casos, la eficiencia requiere una comprensión profunda y una gran cantidad de experiencias. Solo puedes obtenerlo haciendo todas las prácticas que puedas. La eficiencia se solidificará día a día si comienza a trabajar en proyectos de nivel profesional en el mundo real.