Udacity part of Accenture logo

Programming and Computer Science Fundamentals

Explore core programming languages, essential computer science principles, and emerging technologies in this curated collection of beginner to advanced courses. Cover C, C++, Go, Java, Python, quantum computing, algorithms, hardware, and more to prepare for careers in software development, systems engineering, data science, and AI.

Browse Programming and Computer Science Fundamental Courses

C Programming

Master the fundamentals of C programming by learning to build efficient programs, manage memory, use pointers and structs, and complete a hands-on file compression project.

View Course

C++

Learn C++, a high-performance programming language used in the world's most exciting engineering jobs -- from self-driving cars and robotics to web browsers, media platforms, servers, and video games.

View Course

Go Language (Golang)

Stand out in backend development by learning Go. This course covers core language features and teaches you how to build fast, reliable servers that power modern cloud-based applications.

View Course

Computer Literacy Fundamentals

Dive into the core components of modern computing, including software, hardware, programming, and networks, while gaining the essential foundational skills to prepare for opportunities in tech-central organizations.

View Course

Intro to Theoretical Computer Science

Learn the basic concepts in theoretical computer science. Discover what they imply for solving tough computational challenges.

View Course

Discovering Quantum Computing

Discover how quantum computing is redefining what’s possible in science, technology, and problem solving. This beginner-friendly course explains core principles, real-world potential, and key risks of this groundbreaking emerging field.

View Course

Discover Software

Decode the digital world around you. Using tools like Google Docs, Google Translate, Blockly, and Python, this course helps beginners understand how programs think, predict, and process information.

View Course

Intro to Algorithms

This class will give you an introduction to the design and analysis of algorithms, enabling you to analyze networks and discover how individuals are connected.

View Course

Data Structures and Algorithms

Sharpen your problem-solving skills in this Nanodegree program. Practice over 100 algorithm and data structure challenges, learn Python-based techniques, and prepare for interviews with mentor guidance and real coding scenarios.

View Course

Advanced Java Programming Techniques

Sharpen your understanding of scalable systems with advanced Java topics like serialization, dependency injection, and multithreading. Ideal for developers pursuing roles in architecture, backend engineering, or technical leadership.

View Course

Discover Hardware

Explore the foundations of computer hardware, memory, operating systems, file systems, and physical networks. Learn how these components work together to power modern computing in this beginner-friendly course.

View Course

Value-Based Methods

Combine cutting-edge reinforcement learning techniques with deep learning architectures. Use Q-networks and experience replay to train agents capable of navigating and adapting to real-time environments.

View Course

Java Fundamentals

Master Java fundamentals through practical lessons on classes, inheritance, collections, and exceptions. Cement your knowledge by building a working hotel reservation system to showcase your new skills.

View Course

Programming with Python Fluency

Get started with Python through fun, beginner-friendly exercises. Learn programming basics, loops, and control flow by writing code that guides a virtual turtle to draw creative shapes on the screen.

View Course

Complementary Course Collections

Take your foundational programming skills further. These complementary collections strengthen your abilities in Python, full-stack development, and web design, equipping you to create practical, scalable, and thoughtfully built software solutions across platforms and industries.

Software Development and Programming

Broaden your development expertise with courses in Python, DevOps, and machine learning. Strengthen your foundation in automation, cloud workflows, and scalable systems. These collections support deeper fluency in programming and infrastructure, helping you build, refine, and deploy high-performing applications across diverse tools, platforms, and challenges.

View Course Collection

Web Development and Web Design

Expand your web development and design expertise with supporting skills that amplify your technical and creative impact. Explore animation and multimedia for richer user experiences, agentic AI for smarter interfaces, and Python programming to strengthen back-end logic. These courses equip you to build interactive, intelligent, and visually engaging web applications.

View Course Collection

Python Programming For All Levels

Move from Python basics to building intelligent systems in production. Complement your skills with courses in ML, deployment, and cloud to handle every stage of the development pipeline. From early prototyping to live application delivery, you’ll be ready to build and scale with confidence.

View Course Collection

Browse the Full School Library

Explore all of Udacity’s Schools, consisting of hundreds of career-driven programs and courses that are designed to teach practical skills and help you learn to your full potential.

Browse Schools
Udacity Accenture logo

Company

  • Facebook
  • Twitter
  • LinkedIn
  • Instagram

© 2011-2026 Udacity, Inc. "Nanodegree" is a registered trademark of Udacity. © 2011-2026 Udacity, Inc.
We use cookies and other data collection technologies to provide the best experience for our customers.