6 answers
Updated
1168 views
best way to road map about new skills like programming ?
best way to road map about new skills like programming ?
Login to comment
6 answers
John Easton CEng FIET FBCS CITP
Design large computer systems for companies
35
Answers
Winchester, England, United Kingdom
Updated
John’s Answer
Hi Yasmine. Great question, though I'm going to give you a somewhat different response to the ones above. I would always suggest that you SHOULDN'T invest too much time in picking up any skill in depth until you are clear that there is a demand for it. The tech industry changes at such a pace that knowledge about a particular thing can often become obsolete as quickly. If you make a bad choice you could invest a lot of time that potentially counts for nothing. So, the advice here is to learn enough to talk sensibly about it but to ONLY invest in deeper skills when someone is actually asking for it.
One of the things about the tech industry is that there is a lot of base information that is helpful regardless of what you do. If you understand the basics of programming you can fairly quickly pick up a new language (and these change a lot - programming is a fashion industry in many places). If you know the basics of how computers work and how they are networked together, you can build working systems regardless of what the underlying technologies are. And so on...
So, learn a little bit about a lot. Focus on developing deeper skills only when you know you need them. Build a knowledge-base that is the foundation of the other skills you will develop. No skills are wasted, but you likely don't have the time to learn everything in depth so be selective.
One of the things about the tech industry is that there is a lot of base information that is helpful regardless of what you do. If you understand the basics of programming you can fairly quickly pick up a new language (and these change a lot - programming is a fashion industry in many places). If you know the basics of how computers work and how they are networked together, you can build working systems regardless of what the underlying technologies are. And so on...
So, learn a little bit about a lot. Focus on developing deeper skills only when you know you need them. Build a knowledge-base that is the foundation of the other skills you will develop. No skills are wasted, but you likely don't have the time to learn everything in depth so be selective.
Updated
Som’s Answer
Hello Yasmine,
I'm thrilled to hear about your enthusiasm towards programming! My advice would be to kickstart your journey with a beginner's programming class, ideally in-person. You can explore this opportunity in your high school or nearby community college or university. As you progress, these courses typically advance to more complex levels, so it's a perfect way to build your skills progressively.
Engage in a conversation with an academic advisor from the Computer Science department. They can provide valuable insights based on your interests and the courses available. If there's a specific programming language that piques your interest, you might want to explore platforms like Coursera or EdX. They offer a wide range of courses, and you might find exactly what you're looking for.
However, I believe an in-person class could be an excellent starting point. Once you've grasped the basics, aim for an internship. This will allow you to apply your programming skills to real-world projects. Even if you feel you lack certain skills, the experience of working in a programming environment, observing and solving problems, will be an incredible learning opportunity. I hope you find this advice helpful. Keep going, and enjoy your programming journey!
I'm thrilled to hear about your enthusiasm towards programming! My advice would be to kickstart your journey with a beginner's programming class, ideally in-person. You can explore this opportunity in your high school or nearby community college or university. As you progress, these courses typically advance to more complex levels, so it's a perfect way to build your skills progressively.
Engage in a conversation with an academic advisor from the Computer Science department. They can provide valuable insights based on your interests and the courses available. If there's a specific programming language that piques your interest, you might want to explore platforms like Coursera or EdX. They offer a wide range of courses, and you might find exactly what you're looking for.
However, I believe an in-person class could be an excellent starting point. Once you've grasped the basics, aim for an internship. This will allow you to apply your programming skills to real-world projects. Even if you feel you lack certain skills, the experience of working in a programming environment, observing and solving problems, will be an incredible learning opportunity. I hope you find this advice helpful. Keep going, and enjoy your programming journey!
Updated
Will’s Answer
Hey Yasmine,
Welcome to CareerVillage and great job posting your first question!
The roadmap below will help you get started, build a strong foundation, develop practical skills and advance your career in programming. Btw, it can be leveraged in learning other new skills too with proper tweaks.
* Foundations of Programming:
- Choose Your Domain: Research and select a specific field in technology that aligns with your interests, such as front-end, back-end, or full-stack development, data analysis, or machine learning.
- Pick a Language: Based on your domain, choose a primary programming language to focus on. For web development, JavaScript or Python are good choices; for mobile apps, consider Swift or Kotlin.
- Understand the Basics: Gain a solid understanding of fundamental concepts like variables, control structures, data types, and algorithms.
- Learn Core Concepts: Delve deeper into object-oriented programming, data structures, software design patterns, and databases.
* Skill Development and Practice:
- Practice Regularly: Dedicate time daily or weekly to coding practice. Use platforms like LeetCode, HackerRank, or Codecademy to solve problems and challenges.
- Build Projects: Start with simple projects like a calculator or a to-do list and gradually increase complexity. Share your projects on GitHub and contribute to open-source.
* Tools and Collaboration:
- Learn Version Control: Master Git for version control to manage your code history and collaborate with other developers effectively.
- Explore Frameworks: Once you're comfortable with the basics, learn about frameworks (like React for JavaScript or Django for Python) that can streamline your development process.
* Professional Growth:
- Seek Help: Join coding communities, attend meetups, or find a mentor to guide you through challenging concepts or projects.
- Internships and Jobs: Apply for internships or entry-level positions to gain real-world experience, build your professional network, and learn from seasoned developers.
Good luck!
Welcome to CareerVillage and great job posting your first question!
The roadmap below will help you get started, build a strong foundation, develop practical skills and advance your career in programming. Btw, it can be leveraged in learning other new skills too with proper tweaks.
* Foundations of Programming:
- Choose Your Domain: Research and select a specific field in technology that aligns with your interests, such as front-end, back-end, or full-stack development, data analysis, or machine learning.
- Pick a Language: Based on your domain, choose a primary programming language to focus on. For web development, JavaScript or Python are good choices; for mobile apps, consider Swift or Kotlin.
- Understand the Basics: Gain a solid understanding of fundamental concepts like variables, control structures, data types, and algorithms.
- Learn Core Concepts: Delve deeper into object-oriented programming, data structures, software design patterns, and databases.
* Skill Development and Practice:
- Practice Regularly: Dedicate time daily or weekly to coding practice. Use platforms like LeetCode, HackerRank, or Codecademy to solve problems and challenges.
- Build Projects: Start with simple projects like a calculator or a to-do list and gradually increase complexity. Share your projects on GitHub and contribute to open-source.
* Tools and Collaboration:
- Learn Version Control: Master Git for version control to manage your code history and collaborate with other developers effectively.
- Explore Frameworks: Once you're comfortable with the basics, learn about frameworks (like React for JavaScript or Django for Python) that can streamline your development process.
* Professional Growth:
- Seek Help: Join coding communities, attend meetups, or find a mentor to guide you through challenging concepts or projects.
- Internships and Jobs: Apply for internships or entry-level positions to gain real-world experience, build your professional network, and learn from seasoned developers.
Good luck!
Nikolaos Zormpas
Global Manager – Digital Services Offerings / Technology, Software & Services Offerings Marketing
88
Answers
Athens, Greece
Updated
Nikolaos’s Answer
Hi Yasmine!
I am sure that you already have all you need to create the best possible roadmap and build your skills. What I wanted to add as an idea was that if programming is indeed your focus area, then maybe your first personal project after implementing your roadmap could be to create a program that proposes roadmaps based on different skill-building requirements. This could keep you engaged with your passion while doing something that could help others who are in the same position! Of course, this is just an idea, and you can always evaluate if it makes sense or not, especially when you get a better view of your progress through your journey.
Best of luck!
Regards,
Nikolas
I am sure that you already have all you need to create the best possible roadmap and build your skills. What I wanted to add as an idea was that if programming is indeed your focus area, then maybe your first personal project after implementing your roadmap could be to create a program that proposes roadmaps based on different skill-building requirements. This could keep you engaged with your passion while doing something that could help others who are in the same position! Of course, this is just an idea, and you can always evaluate if it makes sense or not, especially when you get a better view of your progress through your journey.
Best of luck!
Regards,
Nikolas
Updated
Stephen’s Answer
Hello there!
Having an interest in programming is actually a fantastic thing! The world of programming itself is vast and filled with endless possibilities.
Here's a valuable tip for you: Start by identifying the type of software you're passionate about creating or developing. Once you've pinpointed that, gather the essential resources that will aid you in setting up and getting started.
It's crucial to thoroughly understand the fundamentals of the programming language related to your chosen field. These basics are the building blocks for everything else you'll learn.
From there, progressively move on to more advanced topics. Remember, consistency, passion, and determination are key in your career or chosen field.
Best of luck on your exciting journey!
Having an interest in programming is actually a fantastic thing! The world of programming itself is vast and filled with endless possibilities.
Here's a valuable tip for you: Start by identifying the type of software you're passionate about creating or developing. Once you've pinpointed that, gather the essential resources that will aid you in setting up and getting started.
It's crucial to thoroughly understand the fundamentals of the programming language related to your chosen field. These basics are the building blocks for everything else you'll learn.
From there, progressively move on to more advanced topics. Remember, consistency, passion, and determination are key in your career or chosen field.
Best of luck on your exciting journey!
Updated
Rajeev’s Answer
Hello,
Many people have advised on this topic, and the most crucial step is to grasp the fundamentals of programming and computer hardware. There's a multitude of programming branches available, so it's essential to pinpoint your passion and move forward. Here are a few areas you might consider:
1. Application Programming
2. System Programming
3. Web UI Development
4. Cybersecurity Domain
5. Database Programming
6. Gaming
7. iPhone/Android App Development
Reflect on these options, choose the one that resonates with you the most, and navigate your future towards a rewarding career in that direction.
Many people have advised on this topic, and the most crucial step is to grasp the fundamentals of programming and computer hardware. There's a multitude of programming branches available, so it's essential to pinpoint your passion and move forward. Here are a few areas you might consider:
1. Application Programming
2. System Programming
3. Web UI Development
4. Cybersecurity Domain
5. Database Programming
6. Gaming
7. iPhone/Android App Development
Reflect on these options, choose the one that resonates with you the most, and navigate your future towards a rewarding career in that direction.