Back to Courses

Computer Science Courses - Page 124

Showing results 1231-1240 of 2309
DevOps Capstone Project
In this course you will apply your skills and knowledge acquired during previous courses in the PC to demonstrate your proficiency in DevOps practices by developing, testing, deploying, monitoring, and enhancing a secure microservices-based application on Cloud, over the course of several sprints, using a variety of Agile, Cloud Native, and CI/CD technologies and tools.
Computer Science: Programming with a Purpose
The basis for education in the last millennium was “reading, writing, and arithmetic;” now it is reading, writing, and computing. Learning to program is an essential part of the education of every student, not just in the sciences and engineering, but in the arts, social sciences, and humanities, as well. Beyond direct applications, it is the first step in understanding the nature of computer science’s undeniable impact on the modern world. This course covers the first half of our book Computer Science: An Interdisciplinary Approach (the second half is covered in our Coursera course Computer Science: Algorithms, Theory, and Machines). Our intent is to teach programming to those who need or want to learn it, in a scientific context. We begin by introducing basic programming elements such as variables, conditionals, loops, arrays, and I/O. Next, we turn to functions, introducing key concepts such as recursion, modular programming, and code reuse. Then, we present a modern introduction to object-oriented programming. We use the Java programming language and teach basic skills for computational problem solving that are applicable in many modern computing environments. Proficiency in Java is a goal, but we focus on fundamental concepts in programming, not Java per se. All the features of this course are available for free. It does not offer a certificate upon completion.
Distributed Programming in Java
This course teaches learners (industry professionals and students) the fundamental concepts of Distributed Programming in the context of Java 8. Distributed programming enables developers to use multiple nodes in a data center to increase throughput and/or reduce latency of selected applications. By the end of this course, you will learn how to use popular distributed programming frameworks for Java programs, including Hadoop, Spark, Sockets, Remote Method Invocation (RMI), Multicast Sockets, Kafka, Message Passing Interface (MPI), as well as different approaches to combine distribution with multithreading. Why take this course? • All data center servers are organized as collections of distributed servers, and it is important for you to also learn how to use multiple servers for increased bandwidth and reduced latency. • In addition to learning specific frameworks for distributed programming, this course will teach you how to integrate multicore and distributed parallelism in a unified approach. • Each of the four modules in the course includes an assigned mini-project that will provide you with the necessary hands-on experience to use the concepts learned in the course on your own, after the course ends. • During the course, you will have online access to the instructor and the mentors to get individualized answers to your questions posted on forums. The desired learning outcomes of this course are as follows: • Distributed map-reduce programming in Java using the Hadoop and Spark frameworks • Client-server programming using Java's Socket and Remote Method Invocation (RMI) interfaces • Message-passing programming in Java using the Message Passing Interface (MPI) • Approaches to combine distribution with multithreading, including processes and threads, distributed actors, and reactive programming Mastery of these concepts will enable you to immediately apply them in the context of distributed Java programs, and will also provide the foundation for mastering other distributed programming frameworks that you may encounter in the future (e.g., in Scala or C++).
Build a MERN application using Next.js
By the end of this project, you will Build a MERN application using Next.js by using Next.js to fetch data from an existing REST API and passing props to a React component to present questions and check answers on a form. Next.js is used to provide server-side rendering and routing. React is used for presenting dynamic data on the Client side for such activities as form processing. Next.js may be responsible for fetching data from an API to create props, while the React component handles form creation and event processing. Note: This course works best for learners who are based in the North America region. We’re currently working on providing the same experience in other regions.
Mobile Architecture
Explore the fundamental concepts behind mobile architecture such as layers, data flows, performance and components versus containers. Mobile architecture is a group of patterns and techniques that developers use to build a fully structured mobile application (app). Get a deeper understanding of how mobile devices handle the data from React Native. Soon, you’ll build your own data rich components.
Computational Thinking for K-12 Educators: Abstraction, Methods, and Lists
How do gamers cause things to happen when they hit buttons on their controller? How does the computer keep track of gamer's scores? This class teaches the concepts of nested loops, events, and variables. For each concept, we'll start by helping you connect real-world experiences you are already familiar with to the programming concept you are about to learn. Next, through a cognitively scaffolded process we'll engage you in developing your fluency with problem solving with nested loops, events, and variables in a way that keeps frustration at a minimum. Along the way you will learn about the common challenges or "bugs" students have with these concepts as well as ways to help them find and fix those concepts. You'll also be guided in running classroom discussions to help students develop deeper understanding of these concepts. Finally, you'll learn how to develop low-frustration learning experiences for learning programming via Parsons' Problems., Additionally, you will create an email to either a counselor, administrator or parent organization to help them understand the value of all students taking computer science.
Visualize Complex Projects with Flow Charts in Miro
By the end of this project, you will be able to simplify workflows and optimize business processes through the creation of flow charts. To do this, you will gain hands-on experience mapping out roles and responsibilities within a flow chart in the Miro online visual collaboration platform for teamwork. Note: This course works best for learners who are based in the North America region. We’re currently working on providing the same experience in other regions.
Dart: Introducing Class Abstraction
This is a self-paced lab that takes place in the Google Cloud console. In this lab you will learn how to work with Classes in Dart. Object oriented programming provides an abstraction of code and Dart is perfectly placed to work in this way.
Create C# App Inheritance, Composition, and Aggregation
By the end of this project you will create an application that uses the C# List data structure and the C# Linq to process a collection of Employees in a file. Linq, when used with the List data structure, allows the programmer to compare and perform computations on objects without the need to access attributes directly. It simplifies the process of iterating through a list and obtaining data from user-defined objects. Note: This course works best for learners who are based in the North America region. We’re currently working on providing the same experience in other regions.
Getting Started with AI using IBM Watson
In this course you will learn how to quickly and easily get started with Artificial Intelligence using IBM Watson. You will understand how Watson works, become familiar with its use cases and real life client examples, and be introduced to several of Watson AI services from IBM that enable anyone to easily apply AI and build smart apps. You will also work with several Watson services to demonstrate AI in action. This course does not require any programming or computer science expertise and is designed for anyone whether you have a technical background or not.