6 answers
Asked
1005 views
What is the best language to learn for a computer science career?
I am really interested in going into the field of work of a software engineer or somewhere in the IT department. I know that there are plenty of ways I can prepare for a job like that. I am wondering which language will help me most for the future. I also want to know which language would be the easiest to learn. #computer-engineering #software-engineering #programming #technology #computer
Login to comment
6 answers
Updated
Kalidas’s Answer
Agree with Fred's. Also when you start writing code (any coding language of interest), understand why the code behaves likes the way it outputs. Again goes back to the fundamentals Fred mentioned. Once that understanding sets, then any language is easy to learn. Many people start with higher level languages like Python or GoLang and these are tools to practice the fundamentals. So, first fundamentals, then use the language to practice the fundamentals and later use these fundamentals to build your projects.
Thank you, Kalidas for the advice.
Daniel
Updated
Fred’s Answer
There is no "best language". Computer languages are tools, and each has strengths and weaknesses. You wouldn't ask "What hand tool is best?", because the answer depends on what you want to do.
Focus on learning good programming practices. Write clean code that's easy to understand. Follow a coding style convention. Understand design patterns and anti-patterns. Learn to think about edge cases, scalability, and code re-use. Learn to write good specs, documentation, and comments. Learn to think about the problem and do the up-front design work, and not just start typing code.
Once you learn one language, learning another is not all that hard. But not having good fundamentals will cripple you forever.
Focus on learning good programming practices. Write clean code that's easy to understand. Follow a coding style convention. Understand design patterns and anti-patterns. Learn to think about edge cases, scalability, and code re-use. Learn to write good specs, documentation, and comments. Learn to think about the problem and do the up-front design work, and not just start typing code.
Once you learn one language, learning another is not all that hard. But not having good fundamentals will cripple you forever.
Updated
Peter’s Answer
I would echo to others about computer languages, it is really a tool choice. However, we're are limited by our time/knowledge and brain allow us to learn. Therefore, I'm for learning golang/python, it is not they are the best tool for all jobs, they encourage good coding practice which will translate to other languages once you need to.
Thanks for your encouragement!
Daniel
Updated
Madhumitha’s Answer
There is no right/wrong answer to this. You can choose any language of your choice (Java, Python, GoLang, JavaScript, NodeJs), but whatever the language you choose, make sure you know in and outs of that language. For eg: If you choose java, you need to know how java stores data in data structures etc.
Personally, Java is the easiest language for beginners. Reference: Head First Java.
Personally, Java is the easiest language for beginners. Reference: Head First Java.
Updated
Ginamarie’s Answer
One course I typically suggest is Harvard's free CS50 course: https://www.edx.org/course/introduction-computer-science-harvardx-cs50x
It's a challenging course, but it is a great way to get exposure to different languages, cs coding problems, and learn in an environment where you can get feedback on your solutions in real time.
It's not the only option out there, but I found this course to be really impactful when I was a first getting into software engineering in college. And in case this helps, my experience with this course was that it was really challenging, but I felt really proud when I was finally able to solve the problems. It was a really rewarding experience.
What you'll learn:
- A broad and robust understanding of computer science and programming
- How to think algorithmically and solve programming problems efficiently
- Concepts like abstraction, algorithms, data structures, encapsulation, resource management, security, software engineering, and web development
- Familiarity in a number of languages, including C, Python, SQL, and JavaScript plus CSS and HTML
- How to engage with a vibrant community of like-minded learners from all levels of experience
- How to develop and present a final programming project to your peers
It's a challenging course, but it is a great way to get exposure to different languages, cs coding problems, and learn in an environment where you can get feedback on your solutions in real time.
It's not the only option out there, but I found this course to be really impactful when I was a first getting into software engineering in college. And in case this helps, my experience with this course was that it was really challenging, but I felt really proud when I was finally able to solve the problems. It was a really rewarding experience.
What you'll learn:
- A broad and robust understanding of computer science and programming
- How to think algorithmically and solve programming problems efficiently
- Concepts like abstraction, algorithms, data structures, encapsulation, resource management, security, software engineering, and web development
- Familiarity in a number of languages, including C, Python, SQL, and JavaScript plus CSS and HTML
- How to engage with a vibrant community of like-minded learners from all levels of experience
- How to develop and present a final programming project to your peers
Updated
Shweta’s Answer
The most commonly used languages are - Java, SQL, Javascript, C++ and Python
Hope this helps!
Hope this helps!