Back to Courses

Software Development Courses

Showing results 1-10 of 1266
Unordered Data Structures
The Unordered Data Structures course covers the data structures and algorithms needed to implement hash tables, disjoint sets and graphs. These fundamental data structures are useful for unordered data. For example, a hash table provides immediate access to data indexed by an arbitrary key value, that could be a number (such as a memory address for cached memory), a URL (such as for a web cache) or a dictionary. Graphs are used to represent relationships between items, and this course covers several different data structures for representing graphs and several different algorithms for traversing graphs, including finding the shortest route from one node to another node. These graph algorithms will also depend on another concept called disjoint sets, so this course will also cover its data structure and associated algorithms.
Create an interactive story game with Twine
In this 2-hour long project-based course, you will learn how to create an interactive story game with the leading open source interactive fiction development platform Twine. You will learn how to create an interactive detective story, setting up variables, creating character sheet, inventory and clues, rolling dice and incorporating an RPG-style fighting mechanism. 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 AWS Machine Learning
Machine learning (ML) is one of the fastest growing areas in technology and a highly sought after skillset in today’s job market. The World Economic Forum states the growth of artificial intelligence (AI) could create 58 million net new jobs in the next few years, yet it’s estimated that currently there are 300,000 AI engineers worldwide, but millions are needed. This means there is a unique and immediate opportunity for you to get started with learning the essential ML concepts that are used to build AI applications – no matter what your skill levels are. Learning the foundations of ML now, will help you keep pace with this growth, expand your skills and even help advance your career. This course will teach you how to get started with AWS Machine Learning. Key topics include: Machine Learning on AWS, Computer Vision on AWS, and Natural Language Processing (NLP) on AWS. Each topic consists of several modules deep-diving into variety of ML concepts, AWS services as well as insights from experts to put the concepts into practice.
Create React Forms Using Hooks
By the end of this project, you will Create React Forms Using Hooks. React Hooks were added so that state and lifecycle could be addressed within a React Functional component. This simplifies state and component lifecycle management. This project is for learners who want to gain a good foundation using React Hooks in a React Form to build a web application.
Modern Robotics, Course 1: Foundations of Robot Motion
Do you want to know how robots work? Are you interested in robotics as a career? Are you willing to invest the effort to learn fundamental mathematical modeling techniques that are used in all subfields of robotics? If so, then the "Modern Robotics: Mechanics, Planning, and Control" specialization may be for you. This specialization, consisting of six short courses, is serious preparation for serious students who hope to work in the field of robotics or to undertake advanced study. It is not a sampler. In Course 1 of the specialization, Foundations of Robot Motion, you will learn fundamental material regarding robot configurations, for both serial robot mechanisms and robots with closed chains. You will learn about configuration space (C-space), degrees of freedom, C-space topology, implicit and explicit representations of configurations, and holonomic and nonholonomic constraints. You will also learn how to represent spatial velocities and forces as twists and wrenches. This material is at the core of the study of anything that moves (e.g., robots). This course follows the textbook "Modern Robotics: Mechanics, Planning, and Control" (Lynch and Park, Cambridge University Press 2017). You can purchase the book or use the free preprint pdf. You will build on a library of robotics software in the language of your choice (among Python, Mathematica, and MATLAB) and use the free cross-platform robot simulator V-REP, which allows you to work with state-of-the-art robots in the comfort of your own home and with zero financial investment.
Getting Started With Application Development
In this course, application developers learn how to design and develop cloud-native applications that seamlessly integrate managed services from Google Cloud. Through a combination of presentations, demos, and hands-on labs, participants learn how to apply best practices for application development and use the appropriate Google Cloud storage services for object storage, relational data, caching, and analytics. Learners can choose to complete labs in their favorite language: Node.js, Java, or Python. This is the first course of the Developing Applications with Google Cloud series. After completing this course, enroll in the Securing and Integrating Components of your Application course.
Continuous Delivery and Release Pipelines with Azure DevOps
This Guided Project "Continuous Delivery and Release Pipelines with Azure DevOps" is for IT professionals who want to raise the quality of their software products to a higher level by totally automating their software applications’ deployment processes. In this 1-hour long project-based course, you will learn how to use Azure DevOps Services to safely deploy new software version to the environments in the Microsoft’s cloud called Azure. Since this project uses Azure DevOps Services, you will need access to an Azure DevOps account. In the video at the beginning of the project you will be given instructions on how to sign up for one. Besides that, you need to have a valid account on Microsoft Azure and a Resource group which will be used across this guided project, so you will need to have that prepared before you begin. If you are ready to start automating deployment process of your applications, then this project is for you! Let’s get started!
Design Patterns
This course extends object-oriented analysis and design by incorporating design patterns to create interactive applications. Through a survey of established design patterns, you will gain a foundation for more complex software applications. Finally, you will identify problematic software designs by referencing a catalog of code smells. You will be challenged in the Capstone Project to redesign an existing Java-based Android application to implement a combination of design patterns. You will also critique a given Java codebase for code smells. After completing this course, you will be able to: • Demonstrate how to use design patterns to address user interface design issues. • Identify the most suitable design pattern to address a given application design problem. • Apply design principles (e.g., open-closed, dependency inversion, least knowledge). • Critique code by identifying and refactoring anti-patterns. • Apply the model-view-controller architectural pattern.
Introduction to Java
This Course is the first of a series of courses that make up the Core Java Specialization. The Core Java Specialization, in turn, is part of a series of programming specializations, derived from LearnQuest's private Java Bootcamps, designed to provide the skill set necessary to be hired as an IT developer using Java in many corporate environments. This course includes hands-on practice and will give you a solid knowledge of the Java language. After completing this course, you will be able to identify Java’s benefits, program in basic Java syntax using Java data types, and incorporate branches and loops. The audience for this course: - Anyone interested in learning Java - Programmers - Technical Managers - Application Developers Prerequisites: To be successful with this course, you should understand the fundamentals of software development in either a procedural or object-oriented language.
API Security on Google Cloud's Apigee API Platform
In this course, you learn how to secure your APIs. You explore the security concerns you will encounter for your APIs. You learn about OAuth, the primary authorization method for REST APIs. You will learn about JSON Web Tokens (JWTs) and federated security. You also learn about securing against malicious requests, safely sending requests across a public network, and how to secure your data for users of Apigee. Through a combination of lectures, hands-on labs, and supplemental materials, you will learn how to design, build, secure, deploy, and manage API solutions using Google Cloud's Apigee API Platform. This is the second course of the Developing APIs with Google Cloud's Apigee API Platform series. After completing this course, enroll in the API Development on Google Cloud's Apigee API Platform course.