What is the best programming language to learn?
I have no programming experience and I am interested in STEM careers
#stem #science #coding
3 answers
Jay’s Answer
Hi Yuniba,
That's a great question! My wife and I were asking ourselves this same question a few years ago while standing in the technical-book aisle of a bookstore.
We eventually selected a book on Python because:
1) Python is growing in popularity - it's now the number one ranked language on stack overflow.
2) Python is useful in a variety of situations and career fields - from machine learning, scientific computing to building webapps like CareerVillage. Learning a language with these broad applications keeps your options open
3) Python is very beginner friendly and has great community support. Many colleges use Python as the language of choice for teaching computer science concepts to beginners.
4) Snakes! Python has the coolest sounding name of any computer language :)
5) This might be cheating, since I didn't know it at the time, but learning Python helped me understand other languages more easily. While Python is still the language I know best, I currently work writing Go, Ruby, and Javascript. A deep understanding of Python helped me understand how these languages approach language design and get up to speed more quickly.
Python may not be the right language for you, but it was the right language for me. Hopefully showing you some of the things I considered when selecting a language to learn will help you understand how to approach this question.
I hope this helps!
Cheers,
Ken’s Answer
There is no one programming language which is better to learn than another, unless you are looking at a specific application for a program. Also, programming is not necessarily the only way to enter into and explore a STEM related career. It all starts with getting to know yourself better to see how you might relate to STEM careers based upon your personality traits and then talking with people in STEM careers to see what they do, how they got there, and what advice they might have for you.
Getting to know yourself and how your personality traits relate to people involved in various career opportunities is very important in your decision making process. During my many years in Human Resources and College Recruiting, I ran across too many students who had skipped this very important step and ended up in a job situation which for which they were not well suited. Selecting a career area is like buying a pair of shoes. First you have to be properly fitted for the correct size, and then you need to try on and walk in the various shoe options to determine which is fits the best and is most comfortable for you to wear. Following are some important steps which I developed during my career which have been helpful to many .
Ken recommends the following next steps:
Sanyam’s Answer
I started programming when I was very young and immediately fell in love with how I could make fun programs and simple text based games! I started with the language 'Basic', which back then was the most common introductory language but also very limited in what all it could do. Once I learnt the basics of programming, I was quickly able to learn C/C++ (more advanced than 'Basic') and transfer my existing knowledge with minimal effort. Very soon I was making more complex computer games like Tic Tac Toe, Snake, Space Invaders etc. Which is why I recommend that there is no wrong language to learn first, since it makes learning any other language in the future much easier. At the end of the day, a language is just a way to express yourself, what is more important to learn is the various programming constructs which is language agnostic.
What really matters in choosing a language is picking something that will give you a pleasing result quickly. Once you see the beauty of what all you can create with programming, you will automatically get motivated to want to learn more and attempt more complicated programming challenges. These days there are numerous programming languages to choose from and I would encourage you to ask what is it that will make you happy, is it making a simple game? Is it writing a program to simplify some painful school work/projects? Is it making a beautiful website or a mobile app? etc.
Some easier languages I recommend for first timers are Python, Swift, Javascript, C. If you have an iPad then I would highly recommend checking out swift playgrounds, its a super fun way to learn programming.
Sanyam recommends the following next steps: