11 answers
Asked
1269 views
Coding classes?
What classes are best for computer science majors who are just starting to learn coding?
Login to comment
11 answers
Updated
Sahida’s Answer
If you're a computer science major just starting to learn coding, there are several programming languages and courses that can provide a strong foundation. Here are some recommended classes and programming languages for beginners in computer science:
Introduction to Programming:
Recommended Languages: Python, Java, or JavaScript
Courses:
edX: "Introduction to Computer Science and Programming Using Python" (offered by MIT)
Coursera: "Programming for Everybody (Getting Started with Python)" (offered by the University of Michigan)
Data Structures and Algorithms:
Language: Python, Java, or C++
Courses:
Coursera: "Data Structures and Algorithms Specialization" (offered by the University of California, San Diego)
edX: "Algorithmic Design and Techniques" (offered by UC San Diego)
Web Development:
Languages: HTML, CSS, JavaScript
Courses:
Coursera: "HTML, CSS, and JavaScript for Web Developers" (offered by Johns Hopkins University)
Udacity: "Intro to Programming with Python and JavaScript"
Database Management:
Language: SQL
Courses:
Coursera: "Database Management Essentials" (offered by the University of Colorado Boulder)
edX: "Introduction to Databases" (offered by Stanford University)
Operating Systems:
Language: C
Courses:
Coursera: "Operating Systems and You: Becoming a Power User" (offered by Google)
edX: "Introduction to Operating Systems" (offered by NYU)
Computer Networks:
Language: Python or Java
Courses:
Coursera: "Computer Networking" (offered by Stanford University)
edX: "Computer Networks" (offered by KU Leuven University)
Object-Oriented Programming (OOP):
Languages: Java, C++, or Python
Courses:
Coursera: "Object-Oriented Programming in Java" (offered by the University of California, San Diego)
edX: "Object-Oriented Programming in Python" (offered by Microsoft)
Software Engineering Practices:
Languages: Java, Python, or C#
Courses:
Coursera: "Software Engineering Fundamentals" (offered by the University of British Columbia)
edX: "Introduction to Software Engineering and Testing" (offered by the University of British Columbia)
Remember that practice is key when learning to code. Alongside these classes, engage in coding exercises, work on small projects, and participate in coding challenges on platforms like HackerRank, LeetCode, or CodeSignal to reinforce your skills.
Introduction to Programming:
Recommended Languages: Python, Java, or JavaScript
Courses:
edX: "Introduction to Computer Science and Programming Using Python" (offered by MIT)
Coursera: "Programming for Everybody (Getting Started with Python)" (offered by the University of Michigan)
Data Structures and Algorithms:
Language: Python, Java, or C++
Courses:
Coursera: "Data Structures and Algorithms Specialization" (offered by the University of California, San Diego)
edX: "Algorithmic Design and Techniques" (offered by UC San Diego)
Web Development:
Languages: HTML, CSS, JavaScript
Courses:
Coursera: "HTML, CSS, and JavaScript for Web Developers" (offered by Johns Hopkins University)
Udacity: "Intro to Programming with Python and JavaScript"
Database Management:
Language: SQL
Courses:
Coursera: "Database Management Essentials" (offered by the University of Colorado Boulder)
edX: "Introduction to Databases" (offered by Stanford University)
Operating Systems:
Language: C
Courses:
Coursera: "Operating Systems and You: Becoming a Power User" (offered by Google)
edX: "Introduction to Operating Systems" (offered by NYU)
Computer Networks:
Language: Python or Java
Courses:
Coursera: "Computer Networking" (offered by Stanford University)
edX: "Computer Networks" (offered by KU Leuven University)
Object-Oriented Programming (OOP):
Languages: Java, C++, or Python
Courses:
Coursera: "Object-Oriented Programming in Java" (offered by the University of California, San Diego)
edX: "Object-Oriented Programming in Python" (offered by Microsoft)
Software Engineering Practices:
Languages: Java, Python, or C#
Courses:
Coursera: "Software Engineering Fundamentals" (offered by the University of British Columbia)
edX: "Introduction to Software Engineering and Testing" (offered by the University of British Columbia)
Remember that practice is key when learning to code. Alongside these classes, engage in coding exercises, work on small projects, and participate in coding challenges on platforms like HackerRank, LeetCode, or CodeSignal to reinforce your skills.
Updated
Bogdan D.’s Answer
CS50: Introduction to Computer Science is regarded as one of the best resources to get started. See the link below.
https://pll.harvard.edu/course/cs50-introduction-computer-science
https://pll.harvard.edu/course/cs50-introduction-computer-science
Updated
Patrick’s Answer
Sarah, I appreciate your initiative in seeking guidance on which coding classes to take as a beginner. I trust the information below will shed light on your path and aid you in making informed decisions.
As a novice in the world of coding, there are several key classes that are highly recommended for computer science majors. These classes offer a robust introduction to programming concepts, languages, and problem-solving techniques, equipping you for more advanced studies and future tech careers. Here's a list of the top classes for budding computer science majors with an interest in coding:
• A comprehensive introductory course in computer science is a must. It covers core concepts like algorithms, data structures, and software development methodologies. You'll learn programming basics in a high-level language like Python or Java, and gain practical experience in writing code, debugging, and problem-solving.
• A course that zeroes in on programming fundamentals is crucial for beginners to establish a solid coding foundation. It covers topics like variables, data types, control structures, functions, and object-oriented programming principles. You'll learn to write clean, efficient code and develop the critical thinking skills needed to tackle complex programming tasks.
• Grasping data structures and algorithms is key to computer science and software development. This course introduces you to vital data structures like arrays, linked lists, stacks, queues, trees, and graphs, as well as algorithm design techniques like sorting, searching, and recursion. Mastering data structures and algorithms is vital for writing efficient code and solving problems effectively.
• With the growing demand for web developers, a course in web development is beneficial. You'll learn HTML, CSS, and JavaScript—the cornerstones of web development—and how to create dynamic, interactive websites and web applications. The course may also cover web design principles, responsive design, and server-side programming.
• A solid understanding of database management systems (DBMS) is crucial if you're interested in working with data-driven applications. This course covers database design, SQL (Structured Query Language), database administration, and data manipulation techniques. You'll learn to create and manage databases, write queries to retrieve and manipulate data, and optimize database performance.
• Software engineering principles and methodologies are key for developing large-scale, complex software systems. This course introduces you to software development lifecycle models, software design patterns, version control systems, and software testing techniques. You'll gain practical experience with collaborative software development tools and practices, preparing you for real-world software engineering projects.
• In our increasingly connected world, cybersecurity is a major concern for both organizations and individuals. A course in cybersecurity fundamentals covers topics like network security, cryptography, secure coding practices, and ethical hacking techniques. You'll learn to identify and mitigate common security threats and vulnerabilities, helping to protect systems and data from cyber-attacks.
When choosing coding classes, consider your interests, career aspirations, and your computer science program's specific requirements. It's also helpful to pursue hands-on projects, internships, and extracurricular activities that allow for the practical application of coding skills and exposure to real-world software development challenges. By engaging with these foundational coding classes and the material they offer, you can develop a strong technical skill set and set yourself up for success in your academic and professional journey in computer science.
As a novice in the world of coding, there are several key classes that are highly recommended for computer science majors. These classes offer a robust introduction to programming concepts, languages, and problem-solving techniques, equipping you for more advanced studies and future tech careers. Here's a list of the top classes for budding computer science majors with an interest in coding:
• A comprehensive introductory course in computer science is a must. It covers core concepts like algorithms, data structures, and software development methodologies. You'll learn programming basics in a high-level language like Python or Java, and gain practical experience in writing code, debugging, and problem-solving.
• A course that zeroes in on programming fundamentals is crucial for beginners to establish a solid coding foundation. It covers topics like variables, data types, control structures, functions, and object-oriented programming principles. You'll learn to write clean, efficient code and develop the critical thinking skills needed to tackle complex programming tasks.
• Grasping data structures and algorithms is key to computer science and software development. This course introduces you to vital data structures like arrays, linked lists, stacks, queues, trees, and graphs, as well as algorithm design techniques like sorting, searching, and recursion. Mastering data structures and algorithms is vital for writing efficient code and solving problems effectively.
• With the growing demand for web developers, a course in web development is beneficial. You'll learn HTML, CSS, and JavaScript—the cornerstones of web development—and how to create dynamic, interactive websites and web applications. The course may also cover web design principles, responsive design, and server-side programming.
• A solid understanding of database management systems (DBMS) is crucial if you're interested in working with data-driven applications. This course covers database design, SQL (Structured Query Language), database administration, and data manipulation techniques. You'll learn to create and manage databases, write queries to retrieve and manipulate data, and optimize database performance.
• Software engineering principles and methodologies are key for developing large-scale, complex software systems. This course introduces you to software development lifecycle models, software design patterns, version control systems, and software testing techniques. You'll gain practical experience with collaborative software development tools and practices, preparing you for real-world software engineering projects.
• In our increasingly connected world, cybersecurity is a major concern for both organizations and individuals. A course in cybersecurity fundamentals covers topics like network security, cryptography, secure coding practices, and ethical hacking techniques. You'll learn to identify and mitigate common security threats and vulnerabilities, helping to protect systems and data from cyber-attacks.
When choosing coding classes, consider your interests, career aspirations, and your computer science program's specific requirements. It's also helpful to pursue hands-on projects, internships, and extracurricular activities that allow for the practical application of coding skills and exposure to real-world software development challenges. By engaging with these foundational coding classes and the material they offer, you can develop a strong technical skill set and set yourself up for success in your academic and professional journey in computer science.
Updated
Ashok Kumar’s Answer
You can start learning any programming language, if you interested in working with data analytics then Python programming is very good one. Python institute provides very good training with lab exercise and certification program
Updated
Arun’s Answer
Below are few advices:
1. Linkedin learning, coursera, PluralSight, Udemy are some of well known learning platforms.
2. Do a little bit of research to see what interests you the most and choose a high level career path and start the journey.
3. Programming languages like react, java or python is in demand now. See what you like and choose.
Good luck!
1. Linkedin learning, coursera, PluralSight, Udemy are some of well known learning platforms.
2. Do a little bit of research to see what interests you the most and choose a high level career path and start the journey.
3. Programming languages like react, java or python is in demand now. See what you like and choose.
Good luck!
Updated
damian’s Answer
Hi Sarah - coursera is often used by our junior developers who are starting out with coding and want to get hands on practice before signing up for paid courses.
If you enjoy Coursera you can then apply for a paid option and you can verify your skills and gain certifications
thank you and good luck
https://www.coursera.org/
If you enjoy Coursera you can then apply for a paid option and you can verify your skills and gain certifications
thank you and good luck
https://www.coursera.org/
Updated
Scott’s Answer
Codeacademy (https://www.codecademy.com/) is a great resource for learning Python, which is a good language to start with. It has certain "guardrails" in place so you can focus on writing clean code. Python is also commonly used in many industries and is similar to some other languages, so it should build a good foundation for learning more complex languages (like C++ or Rust) or doing discipline-specific things, like data science.
Duncan Phin
Culture and Engagement Data Manager
19
Answers
Newcastle upon Tyne, England, United Kingdom
Updated
Duncan’s Answer
Hi Sarah
Python: Widely recommended for its readability, beginner-friendly syntax, and extensive libraries for various applications. Courses like "Python for Everybody" by the University of Michigan on Coursera or "Learn Python 3" on Codecademy can be good starting points.
Java: Another popular choice known for its versatility and object-oriented programming approach. "Introduction to Programming with Python and Java" from the University of Pennsylvania on Coursera is an option that introduces both languages.
Introductory courses:
CS50's Introduction to Computer Science (Harvard University): A highly-regarded and comprehensive course that uses C, Python, and other languages to introduce core computer science concepts.
Introduction to Computer Science and Programming Using Python (MIT): This MIT OpenCourseware offering delves into Python programming with a focus on problem-solving and data structures.
Your university's computer science program likely has a specific introductory course sequence you'll need to follow.
If you have specific interests like web development or game development, you might explore introductory courses geared towards those areas after the initial foundational classes.
Consider online resources like Codecademy or interactive platforms like Khan Academy alongside your university courses, especially if you prefer a more self-paced or visual learning style.
Remember, the key is to choose a course or language that resonates with your learning style and interests.
Technologies and coding languages continue to evolve but once you become proficient in one it becomes easier to learn others.
Python: Widely recommended for its readability, beginner-friendly syntax, and extensive libraries for various applications. Courses like "Python for Everybody" by the University of Michigan on Coursera or "Learn Python 3" on Codecademy can be good starting points.
Java: Another popular choice known for its versatility and object-oriented programming approach. "Introduction to Programming with Python and Java" from the University of Pennsylvania on Coursera is an option that introduces both languages.
Introductory courses:
CS50's Introduction to Computer Science (Harvard University): A highly-regarded and comprehensive course that uses C, Python, and other languages to introduce core computer science concepts.
Introduction to Computer Science and Programming Using Python (MIT): This MIT OpenCourseware offering delves into Python programming with a focus on problem-solving and data structures.
Your university's computer science program likely has a specific introductory course sequence you'll need to follow.
If you have specific interests like web development or game development, you might explore introductory courses geared towards those areas after the initial foundational classes.
Consider online resources like Codecademy or interactive platforms like Khan Academy alongside your university courses, especially if you prefer a more self-paced or visual learning style.
Remember, the key is to choose a course or language that resonates with your learning style and interests.
Technologies and coding languages continue to evolve but once you become proficient in one it becomes easier to learn others.
Norman Finkelshteyn
business intelligence software application development and support
2
Answers
Holmdel, New Jersey
Updated
Norman’s Answer
Hi Sarah
Since tools change very quickly, it almost doesn't matter what specific tool you learn. Most important in school to learn the overall logic and methods involved.
At present, I would say
- currently, Python is most popular for overall coding in my industry.
- learn database design and development and SQL (the general language used in database work)
- Business Intelligence / Data Analysis (the two main tools today are Tableau and Power BI - but again - learn the principles)
- Data Warehousing / Data Lake
- security
Since tools change very quickly, it almost doesn't matter what specific tool you learn. Most important in school to learn the overall logic and methods involved.
At present, I would say
- currently, Python is most popular for overall coding in my industry.
- learn database design and development and SQL (the general language used in database work)
- Business Intelligence / Data Analysis (the two main tools today are Tableau and Power BI - but again - learn the principles)
- Data Warehousing / Data Lake
- security
Updated
Sarah’s Answer
It depends what you want to specialise in but I’d recommend considering some free content on sites like Salesforce Trailheads as an initial introduction, or codeacademy or similar… you will soon find what you are interested in. There are lots of lower level free things.
Updated
Julie’s Answer
Hello Sarah,
Just like many others have suggested, I also highly recommend websites like Code Academy (www.codecademy.com) and Data Camp (www.datacamp.com). These platforms have played a significant role in my learning process. When I first started learning Python and SQL, I was just entering graduate school and had no previous coding experience. However, with the help of these websites, I was able to smoothly transition into my classes and perform well on my exams. They served as excellent supplementary resources for my studies. Wishing you all the best on your journey into coding!
Just like many others have suggested, I also highly recommend websites like Code Academy (www.codecademy.com) and Data Camp (www.datacamp.com). These platforms have played a significant role in my learning process. When I first started learning Python and SQL, I was just entering graduate school and had no previous coding experience. However, with the help of these websites, I was able to smoothly transition into my classes and perform well on my exams. They served as excellent supplementary resources for my studies. Wishing you all the best on your journey into coding!