¿Cómo se puede aprender un nuevo lenguaje de programación como ingeniero de software?
Como ingeniero de software, es posible que desee aprender un nuevo lenguaje de programación por varias razones. Tal vez quieras ampliar tu conjunto de habilidades, trabajar en un proyecto diferente o explorar nuevos paradigmas. Sea cual sea tu motivación, aprender un nuevo lenguaje de programación puede ser un reto pero gratificante. En este artículo, compartiremos algunos consejos sobre cómo abordar esta tarea y aprovechar al máximo tu experiencia de aprendizaje.
Antes de sumergirte en el aprendizaje de un nuevo lenguaje de programación, debes tener una idea clara de por qué quieres aprenderlo y qué esperas lograr con él. Los diferentes lenguajes tienen diferentes fortalezas, debilidades, características y aplicaciones. Por ejemplo, si quieres aprender desarrollo web, puedes considerar JavaScript, Python o Ruby. Si quieres aprender ciencia de datos, puedes elegir R, Julia o Python. Si quieres aprender programación de bajo nivel, puedes optar por C, C++ o Rust. Elegir un idioma que se alinee con tus objetivos te ayudará a mantenerte motivado y enfocado.
-
Roberto Eddy Lara Rodríguez
Desarrollador de Software
Un lenguaje es una herramienta. El hecho de que todavía usemos lenguajes de programación escritos para expresarle nuestras ideas a una PC, deja claro que las Ciencias de la Computación están aún en pañales. Puedes elegir cualquier lenguaje, algunos te harán entrar escalar más rápido que otros en el mercado laboral, pero lo importante es que aprendas los conceptos esenciales de la Computación (estructuras de datos + algoritmos, principios filosóficos del diseño del software, etc.)
-
Rini Joy
Software Engineer ⫸ Dedicated to Crafting Equitable Web Solutions for users ⫸ Focused on Javascript, Python, React, Node.js, RESTful APIs, MongoDB ⫸ Believer of Kindness.
Step 1 before getting here: Pick any one language and understand it throughly. Ex: Python or Javascript. Step 2: Understand the language that your industry commonly use and choose one Step 3: Learn how to handle different data types in this language Step 4: Understand basic syntax/ take the shortest possible tutorial Step 5: Start working on a mini project using this language The real learning happens when you code and reference the documentation during the process.
-
Dickson Sosanya
Software Engineer || Technical Writer || Adept at Transforming Business Ideas into Engineering Solutions
You also want to pick a more challenging project than your current language. If you write JavaScript or python already, consider picking up GO. If you write GO already consider picking up Rust, C++ or C. If you already write any of those, you can consider picking up Haskell. The idea is to write something that deepens your knowledge about engineering.
-
Wilson Ibekason
Lead Software Engineer @Medxoca | Software Architect | Agile Advocate | Indie Entrepreneur Harnessing SaaS for Innovative Solutions
There are tons of programming languages built specifically for different use cases, It your responsibility to understand what area that really inspires you, The choice of the programming language that suits your interests should be built around concepts like Algorithms and Data structures, UML Diagramming, System design, etc. Understanding the fundamentals also plays a unique and vital role to your success.
-
Damian Green
Software Developer
It also helps to do a bit of research into the tools your company uses, the common stack in your field the emerging technologies. These findings change over time and vary person to person
Una vez que haya elegido un idioma, debe encontrar un buen recurso para aprender los conceptos básicos. Hay muchas opciones disponibles, como libros, cursos en línea, tutoriales, blogs, podcasts y videos. Debes buscar un recurso que coincida con tu estilo de aprendizaje, nivel y ritmo. Por ejemplo, si eres un aprendiz visual, es posible que prefieras videos o plataformas interactivas. Si eres un aprendiz autodirigido, es posible que te gusten los libros o los blogs. Si eres un principiante, es posible que necesites un recurso que cubra los fundamentos y explique los conceptos con claridad. Si eres un estudiante intermedio o avanzado, es posible que desees un recurso que te desafíe y te presente nuevos temas.
-
Jan Werkhoven
Manager (2y), programmer (14y), UX designer (6y), mentor to some, front-end, back-end, dev ops, father, husband, friend, gardener 🌱🌳, from 🇧🇪, home in 🇦🇺
Avoid courses like the plague. Online tutorials teach you nothing. Hello world gave you a false sense of accomplishment. Instead have real purpose. Have a real app in mind to help out a real person. Start building towards that. You'll quickly realise that all these tutorials focus too much on syntax and methods you will never need in real life projects. Also the reality is that your app requires a myriad of code languages. No one language will build it all. The sooner you have a real project in mind, the sooner you'll theoretical bullshit of courses. 🙈
-
Ali H.
Senior Software Engineer @Prixite | FullStack | AWS | Team Lead
Instead of wasting time on tutorials, I always recommend to build a small app in the language you are trying to learn. In this way you actually do the work and end up learning a lot instead of tutorials pitfall where you just keep on wasting time and not actually doing anything. So one thing I would recommend is just write a Chat APP. you get work on Rest + WS + file handling (uploading attachments) + UI + Auth
-
Nathan Muntner, CTS
Software Developer for AV Control
Let a current code base and AI be your teacher and you can't go wrong really. There is a debate if AI make s you dumber or smarter, well the choice is really yours. Learning is asking the right questions and the dumb questions to a teacher that never judges. That is the power of AI.
-
Damian Green
Software Developer
I find the free courses online very helpful and self paced. Once you feel confident you can start testing your skills in sites such as leetcode.
-
mohammed reqqass
You can begin with online courses to gain a broad overview of knowledge, but for deeper understanding, it's important to read books and, of course, practice through real projects.
Aprender un nuevo lenguaje de programación no se trata solo de leer o mirar, sino también de hacer. Necesitas practicar con proyectos y ejercicios que te permitan aplicar lo aprendido y poner a prueba tu comprensión. Los proyectos y ejercicios también pueden ayudarte a desarrollar tus habilidades para resolver problemas, tu creatividad y tu confianza. Puedes encontrar proyectos y ejercicios de diversas fuentes, como plataformas online, libros, cursos o tus propias ideas. Debes elegir proyectos y ejercicios que te interesen y coincidan con tu nivel de habilidad. También debes intentar implementarlos de diferentes maneras y comparar los resultados.
-
Khaled Mohammad
Lead Senior Software Engineer (Web) at CHEQ Lifestyle Technology, Inc.
A very important step! Depending on your level you can take different paths. For a Junior engineer following reading official docs and seeing how to do basic things like print, loop would help and then as you gain confidence try out different projects to build, for a example simple CLI, or CRUD app, etc, depending on the language. For a Mid-Senior Engineer, reading the official docs and then doing some problem solving just get the hang of the language yet keeping it fun (maybe some leetcode problems) and then dive into building something with it like a chat app, which will allow you to utilize advanced features of the language such as networking and others. But remember, each one of us learn differently! Do what suits you best.
-
Herry Gunawan
Co-Founder & CTO at Gajiku | Writing bitbytebit.xyz
Learning by doing has always worked for me. Here are my steps: 1. Define the project and set up the goal that you want to develop. 2. Follow frameworks, tutorials, best practices, or success open source project. 3. Avoid copying and pasting; instead, write the code yourself. 4. Understand each part of the tutorial. 5. Once you start enjoying the language, try implementing solutions on your own.
-
Ali H.
Senior Software Engineer @Prixite | FullStack | AWS | Team Lead
My goto way to learn a new piece of technology is to implement in some project either hobby project or small freelance project or convincing at Job.
-
Damian Green
Software Developer
One thing I would suggest here is to give yourself a reasonable deadline to complete tasks. Try to have a mental space of having to get it done and prepare dedicated times for practice. Discipline is key
-
Kayanat Suleman
Automation Engineer at Sogeti UK | Sogeti Women and Allies in Tech
Having a little black book to keep your ideas in is a good start. Inspiration usually starts with being frustrated or impatient with the way something works for me. Once I acknowledge what I wish worked better and I think ‘what if’ I could write a couple of lines of code to make my life easier. It’s adopting this mindset that lets me be creative and keeps me excited to continue to learn and implement programming. You should then take ownership and pride in what you create from then, as it was conceived by you. Put it on GitHub and share your ideas. You’ll become more confident in your abilities to think creatively and develop a sense of what ideas are more useful than others as time passes.
Aprender un nuevo lenguaje de programación puede ser más divertido y efectivo si te unes a una comunidad y buscas comentarios de los demás. Una comunidad puede brindarte apoyo, orientación, inspiración y oportunidades para aprender de los demás. Puedes unirte a una comunidad en línea o fuera de línea, como foros, grupos de redes sociales, reuniones o hackatones. Debes participar activamente en la comunidad haciendo preguntas, respondiendo preguntas, compartiendo tus proyectos, dando retroalimentación y colaborando con otros. También debe buscar comentarios de otras personas sobre su código, como sus compañeros, mentores o expertos. Los comentarios pueden ayudarle a mejorar la calidad, el estilo y el rendimiento del código.
-
Jan Werkhoven
Manager (2y), programmer (14y), UX designer (6y), mentor to some, front-end, back-end, dev ops, father, husband, friend, gardener 🌱🌳, from 🇧🇪, home in 🇦🇺
Amen! Find all the other geeks who love the same coding languages you do. Their companies will organise free seminars and meetups with free food, presentations, mingle time and job opportunities. Find the companies that also use the obscure coding language you love. Git paid to learn. $$$
-
Nathan Muntner, CTS
Software Developer for AV Control
Linkedin is a decent place to share but I feel like Discord is the best to learn and teach and share and collaborate even. Indulge in what you find fun and with the people share that joy and you will organically develop your software along with your new relationships.
Aprender un nuevo lenguaje de programación no es un evento único, sino un proceso continuo. Debes seguir aprendiendo y explorando nuevos aspectos del lenguaje, como bibliotecas, marcos, herramientas, patrones y mejores prácticas. También debes seguir actualizando tus conocimientos y habilidades a medida que el idioma evoluciona y cambia. Puedes seguir aprendiendo y explorando siguiendo blogs, podcasts, boletines informativos o cursos que cubren las últimas tendencias y desarrollos en el idioma. También puedes seguir aprendiendo y explorando desafiándote a ti mismo con proyectos y ejercicios más complejos y diversos.
Aprender un nuevo lenguaje de programación como ingeniero de software puede ser un viaje gratificante y agradable. Siguiendo estos consejos, puedes aprovechar al máximo tu experiencia de aprendizaje y dominar el idioma que elijas.
-
Nayana Weligalla
Software Engineer at auraDOT | MSc in CS, UoM (Reading) | Full Stack Dev | AWS & OCI Certified
Learning isn't a single task that you can finish. Even if you believe you have achieved your goal with the new language, just keep learning! You will be surprised when you discover new and easier ways to do things that you've already done. Even if you don't want to change stuff that you have already done in your work, continuing to learn will help you in future greatly. Personally, this happened to me a lot. So my advice is to never stop learning.
-
Nathan Muntner, CTS
Software Developer for AV Control
If you want to stay young than keep learning and playing. Keep it fun and you will always have an insatiable thirst for knowledge.
-
mohammed reqqass
Of course, you need to engage in continuous learning to explore new aspects of the language and to stay updated with its latest features.
-
SARDAR UZAIR
Empowering Innovation: From Full-Stack Development to Entrepreneurship, Founder at @susolz, Unleashing Tech Solutions with Expertise in PHP/Laravel, DART/Flutter, Python/Django, C#/.Net, JS/React, Vue.js, and Beyond!
Dive into new coding challenges regularly to expand your programming skills and knowledge. Also Challenge yourself with coding exercises and projects to apply theoretical knowledge to practical scenarios
-
William Lowrimore
Frontend Web Developer, Software Engineer, NextJS | JavaScript | TypeScript | TailwindCSS
One thing I keep in mind is that learning a language is more than just programming with that language. Step outside and look in. The language(s) you are working with will have other languages, frameworks, and libraries that compliment them. Part of learning something is being aware of its full scope and capabilities, as well as, where it may fall short. Research and listen to other programmers, take in their approach to problems and solutions, gather and store it in your wheel-house with your translation. If the way you translate it works, then you are properly learning...not regurgitating someone else's approach.
-
Martin Vaughan
Head of Data Engineering and Software Development at Glowinkowski International
I would always argue for the benefit of understanding general computer science (CS) concepts when both evaluating and learning new languages. This can provide key insights that can hone one's intuition into how to most effectively use a language. E.g., one of the first things I always want to know about a new language is: are function arguments 'pass by value' or 'pass by reference'? This simple fact will have highly non-trivial consequences! Another important issue is how strongly 'typed' the language is (the casting of a float to an integer is the cause of many a bug). Then there is the question of how well true object orientation is implemented (not very well in many cases) or whether the language permits multi-threading.
-
Vasileios Fasoulas
Executive leadership | Engineering management | Architecture | Data Lifelong learner | AI adopter | Author (work in progress)
Programming languages come into families. The process of learning another in a family you know e.g. from Java to C# is a lot more straight forward than learning a language in a different family as that usually requires to learn to think of problem solving in a different way e.g. from C# (OO language) to F# (functional). Consider your long term objectives as the effort required for crossing language families is typically considerably higher. For languages that mix both object and functional paradigm, consider which one you want to focus and adopt as your dominant style.
-
SARDAR UZAIR
Empowering Innovation: From Full-Stack Development to Entrepreneurship, Founder at @susolz, Unleashing Tech Solutions with Expertise in PHP/Laravel, DART/Flutter, Python/Django, C#/.Net, JS/React, Vue.js, and Beyond!
Stay engaged with the programming community through forums, meetups, and online platforms to exchange ideas and learn from others' experiences.
-
William Lowrimore
Frontend Web Developer, Software Engineer, NextJS | JavaScript | TypeScript | TailwindCSS
Speaking with other developers about what you are working on, how you are approaching it, and declaring your "Aha moments" can open a world of conversational knowledge. Do this, BUT don't forget that you once didn't know the technical jargon. I say this because explaining the same thing to a non-programmer can be very helpful to you as well. When you talk about your strides to a layman, you have to use layman terms. It forces you to really get to the heart of how and why something works or fails. This will almost always unearth another "Aha moment".
Valorar este artículo
Lecturas más relevantes
-
Computación¿Cuáles son las formas más efectivas de aprender un nuevo lenguaje de programación rápidamente?
-
Operaciones de TIWhat do you do if you want to expand your IT Operations skills by learning new programming languages?
-
Estrategia de TIWhat do you do if you want to master new programming languages?
-
Desarrollo personalA continuación, te explicamos cómo puedes dominar un nuevo lenguaje de programación con pasos clave.