What is a Bootcamp?
Our facilitated bootcamps focus on rapid skill acquisition by progressing you through a standard course on an accelerated schedule with peers who are committed to progressing on pace. Our bootcamps include:
- Live kick-off event
- Instructor facilitated Q&A for expert feedback and coaching
- Learner Success Support: welcome call, advising sessions, personalized pace reminders
- 24/7 help desk
About This Course:
This bootcamp covers the basics of data visualization and exploratory data analysis. We will use three motivating examples and ggplot2; a data visualization package for the statistical programming language R. We will start with simple datasets and then graduate to case studies about world health, economics, and infectious disease trends in the United States.
We’ll also be looking at how mistakes, biases, systematic errors, and other unexpected problems often lead to data that should be handled with care.
The fact that it can be difficult or impossible to notice a mistake within a dataset makes data visualization particularly important. The growing availability of informative datasets and software tools has led to increased reliance on data visualizations across many areas. Data visualization provides a powerful way to communicate data-driven findings, motivate analyses, and detect flaws.
This course can be used towards completion of a Professional Certificate in Data Science.
What You Will Learn:
- Data visualization principles
- How to communicate data-driven findings
- How to use ggplot2 to create custom plots
- The weaknesses of several widely used plots and why you should avoid them

Professional Certificate in Data Science
Real-world case studies to jumpstart your career

Rafael Irizarry

Leonardo Palomera
Frequently Asked Questions:
Honor code statement
HarvardX requires individuals who enroll in its courses on edX to abide by the terms of the edX honor code. HarvardX will take appropriate corrective action in response to violations of the edX honor code, which may include dismissal from the HarvardX course; revocation of any certificates received for the HarvardX course; or other remedies as circumstances warrant. No refunds will be issued in the case of corrective action for such violations. Enrollees who are taking HarvardX courses as part of another program will also be governed by the academic policies of those programs.
Research statement
By registering as an online learner in our open online courses, you are also participating in research intended to enhance HarvardX’s instructional offerings as well as the quality of learning and related sciences worldwide. In the interest of research, you may be exposed to some variations in the course materials. HarvardX does not use learner data for any purpose beyond the University’s stated missions of education and research. For purposes of research, we may share information we collect from online learning activities, including Personally Identifiable Information, with researchers beyond Harvard. However, your Personally Identifiable Information will only be shared as permitted by applicable law, will be limited to what is necessary to perform the research, and will be subject to an agreement to protect the data. We may also share with the public or third parties aggregated information that does not personally identify you. Similarly, any research findings will be reported at the aggregate level and will not expose your personal identity.
Please read the edX Privacy Policy for more information regarding the processing, transmission, and use of data collected through the edX platform.
Nondiscrimination/anti-harassment statement
Harvard University and HarvardX are committed to maintaining a safe and healthy educational and work environment in which no member of the community is excluded from participation in, denied the benefits of, or subjected to discrimination or harassment in our program. All members of the HarvardX community are expected to abide by Harvard policies on nondiscrimination, including sexual harassment, and the edX Terms of Service. If you have any questions or concerns, please contact harvardx@harvard.edu and/or report your experience through the edX contact form.
What is a Bootcamp?
Our facilitated bootcamps focus on rapid skill acquisition by progressing you through a standard course on an accelerated schedule with peers who are committed to progressing on pace. Our bootcamps include:
- Live kick-off event
- Instructor facilitated Q&A for expert feedback and coaching
- Learner Success Support: welcome call, advising sessions, personalized pace reminders
- 24/7 help desk
About This Course:
This bootcamp will introduce you to the basics of R programming. You can better retain R when you learn it to solve a specific problem, so you’ll use a real-world dataset about crime in the United States. You will learn the R skills needed to answer essential questions about differences in crime across the different states.
We’ll cover R’s functions and data types, then tackle how to operate on vectors and when to use advanced functions like sorting. You’ll learn how to apply general programming features like “if-else,” and “for loop” commands, and how to wrangle, analyze and visualize data.
We help you develop a skill set that includes R programming, data wrangling with dplyr, data visualization with ggplot2, file organization with UNIX/Linux, version control with git and GitHub, and reproducible document preparation with RStudio.
This course can be used towards completion of a Professional Certificate in Data Science .
What You Will Learn:
- Basic R syntax
- Foundational R programming concepts such as data types, vectors arithmetic, and indexing
- How to perform operations in R including sorting, data wrangling using dplyr, and making plots

Professional Certificate in Data Science
Real-world case studies to jumpstart your career

Rafael Irizarry

Leonardo Palomera
Frequently Asked Questions:
Honor code statement
HarvardX requires individuals who enroll in its courses on edX to abide by the terms of the edX honor code. HarvardX will take appropriate corrective action in response to violations of the edX honor code, which may include dismissal from the HarvardX course; revocation of any certificates received for the HarvardX course; or other remedies as circumstances warrant. No refunds will be issued in the case of corrective action for such violations. Enrollees who are taking HarvardX courses as part of another program will also be governed by the academic policies of those programs.
Research statement
By registering as an online learner in our open online courses, you are also participating in research intended to enhance HarvardX’s instructional offerings as well as the quality of learning and related sciences worldwide. In the interest of research, you may be exposed to some variations in the course materials. HarvardX does not use learner data for any purpose beyond the University’s stated missions of education and research. For purposes of research, we may share information we collect from online learning activities, including Personally Identifiable Information, with researchers beyond Harvard. However, your Personally Identifiable Information will only be shared as permitted by applicable law, will be limited to what is necessary to perform the research, and will be subject to an agreement to protect the data. We may also share with the public or third parties aggregated information that does not personally identify you. Similarly, any research findings will be reported at the aggregate level and will not expose your personal identity.
Please read the edX Privacy Policy for more information regarding the processing, transmission, and use of data collected through the edX platform.
Nondiscrimination/anti-harassment statement
Harvard University and HarvardX are committed to maintaining a safe and healthy educational and work environment in which no member of the community is excluded from participation in, denied the benefits of, or subjected to discrimination or harassment in our program. All members of the HarvardX community are expected to abide by Harvard policies on nondiscrimination, including sexual harassment, and the edX Terms of Service. If you have any questions or concerns, please contact harvardx@harvard.edu and/or report your experience through the edX contact form.
Overview
Python is a great, beginner-friendly programming language because it was originally designed with learners in mind. It is also used by professional developers in a wide range of applications, like web programming, data science, artificial intelligence, and DevOps. It is estimated that there are about 3 million Python programmers in the world, and by some accounts, it is the fastest growing, most widely used language, especially in high-GDP countries. Out of dozens of programming languages, Python is the third most loved language and is the number one language that current and aspiring developers want to learn.
As an instructor who regularly teaches people who are completely new to programming, Arianne has found that students are often looking for more context than is provided in most introductory courses. Specifically, students want to know how various languages fit into the programming landscape, as well as what next steps they should take after the course. Introduction to Python LiveLessons attempts to fill these gaps by providing “extra context” lessons, in addition to teaching fundamental programming concepts, answering questions like, “Why are there so many languages?”, “How is Python different from other languages?”, and “What concepts should I learn next?” Afterwards, the lessons end with a crash-course on data analysis and web development, the two primary uses of Python.
Table of Contents
Introduction
Lesson 1: Introduction to Programming and Python
Lesson 2: Python and Programming Basics
Lesson 3: Control Flow with Conditionals
Lesson 4: Lists and Loops
Lesson 5: Advanced Language Topics
Lesson 6: Introduction to Data Analysis in Python
Lesson 7: Introduction to Web Development in Python
Summary
Description
This 7+ hour LiveLesson video helps absolute beginners get started in Python, which is one of the most popular and in-demand languages in use today. Python was created with beginners in mind, but don’t let its simple nature fool you. It is used by professional developers in a wide range of applications, such as web programming, data analysis, machine learning, and DevOps. While most introductory courses focus on the basics of the language, this course goes one step further to explain how Python is used in practice in the fields of data analysis and web development.
Students learn fundamental programming concepts–for example, variables and functions. They are given hands-on, modular problems to solve so they can progress as they go. Finally, students tie it all together and experiment with some real programming in the form of text-based games.
The overall goal of this course is to help absolute beginners learn from scratch, navigate the esoteric world of software development, and then kick-start their programming journey with introductions to two of the more common uses of Python: data analysis and web development.
What You Will Learn
Students will learn how to
- Think like a programmer
- Solve mini practice problems in Python
- Use common libraries like “math” and “random”
- Build three small games to practice their learning
- Use PyCharm, a code editor for Python
- Clean up code so it is easy to understand
Once the basics are down, Arianne will provide
- A brief introduction to data analysis
- A brief introduction to web development
- An overview of classes, external libraries, and virtual environments in Python
Who Should Take This Course
- Primary: People who are curious about programming and have little to no experience in it
- Secondary: Beginner/novice programmers who already know one language and want to learn Python
Course Requirements
- General computer skills are an asset–for example, moving, copying, renaming, and deleting files on the computer they will be using
- Experience using text-editors and/or spreadsheet applications
- Comfort using web browsers and search engines
Meet your instructor

Arianne Dee

Professional Certificate in Project Finance and Public Private Partnerships
Gain a set of job-ready skills from Wall Street professionals
Meet your instructor

Jeff Hooke
Description
Featuring live, step-by-step demonstrations, the lessons in this workshop cover:
- Concise configurations-configuring just what you need to get the best out of Git
- Your first repo-initializing a repo, three stage thinking, working with the staging area
- Sharing your work-creating and configuring a GitHub repository
- Additional activities-moving, deleting and ignoring files with Git
- Building with branches-how to use feature branches effectively to work on projects. Includes merge types, merge conflicts and rebasing before merging
- GitHub workflows-using clones, forks, feature branches and pull requests to collaborate effectively via GitHub
- Releasing software-release tags, release branches and release workflows
- How to undo anything-learn a range of powerful techniques, from git commit -amend through revert, reset, rebase -interactive and the famed reflog!
What You Will Learn
- Starting with creating your first Git repository and committing code, you learn the key concepts and features that will allow you to quickly set up and use Git for your own projects
- You are introduced to branching and learn how to merge a branch, create a fast forward merge, and use recursive merges
- You also learn how to collaborate via GitHub by cloning a repository, forking a repository, or contributing to a project via a pull request from a fork
- In addition, you are introduced to the basics of Git internals to get a sense for how Git works under the hood.
Meet the instructor

Peter Bell
Meet Your Instructors:

Mark Rudnick
About Me

Ildi Morris
About Me

Professional Certificate in Course Creator Plus
Become an expert in creating online courses for the edX platform
Description
Python Fundamentals LiveLessons with Paul Deitel is a code-oriented presentation of Python–one of the world’s most popular and fastest growing languages. In the context of scores of real-world code examples ranging from individual snippets to complete scripts, Paul will demonstrate coding with the interactive IPython interpreter and Jupyter Notebooks. You’ll quickly become familiar with the Python language, its popular programming idioms, key Python Standard Library modules and several popular open-source libraries. In the Intro to Data Science videos, Paul lays the groundwork for later lessons in which he’ll introduce some of today’s most compelling, leading-edge computing technologies, including natural language processing, data mining Twitter® for sentiment analysis, cognitive computing with IBM® Watson™, supervised machine learning with classification and regression, unsupervised machine learning with clustering, computer vision through deep learning and convolutional neural networks, sentiment analysis through deep learning with recurrent neural networks, big data with Hadoop®, Spark™ streaming, NoSQL databases and the Internet of Things.
What you Will Learn
- Before You Begin–Configure your system for Python, obtain the code examples, Python package managers, Paul’s contact info
- Lesson 1–Test-Drives: Using IPython and Jupyter Notebooks–Work with snippets and scripts in the context of IPython and Jupyter Notebooks
- Lesson 2–Intro to Python Programming–Variables, types, operators, strings, I/O, decisions, objects and dynamic typing
- Lesson 3–Control Statements–if, if…else, if…elif…else, for, while, break, continue, augmented assignments, boolean operators, intro to lists
- Lesson 4–Functions–Custom function definitions, importing libraries, simulation with random-number generation, scope, default parameter values, keyword arguments, arbitrary argument lists, methods, intro to tuples, intro to functional-style programming
Meet your instructor

Paul J. Deitel
JavaScript started as a basic language for performing simple computations on web pages, but it’s now become one of the most popular–if not the most popular–programming language. Over the past few years, it’s become possible to do pretty much anything using only JavaScript: We can write entire front-end applications using React, Angular, or Vue. We can create JavaScript servers using Node.js. We can make JavaScript-driven desktop apps using Electron. We can even develop mobile apps in JavaScript using React Native. In other words, JavaScript has become the common tongue of the software-development world, making it possible for a single developer with a single programming language to build programs that only a few years ago would have required an entire department.
Join Shaun Wassell and take a journey into the universe of modern JavaScript. This LiveLessons offers manageable, thorough, step-by-step guides to learning and mastering modern JavaScript.
Description
Learn JavaScript LiveLessons gives first-time JavaScript users what they need to become successful developers. Shaun Wassell offers a modern, full-fledged introduction to JavaScript. In particular, the viewer will learn the modern syntax of JavaScript: ES6. Shaun delivers step-by-step guidance that will take the learner from the basic syntax and concepts of JavaScript, all the way through the more advanced concepts that are covered in technical interviews.
Skill Level
- Beginning to Intermediate
What You Will Learn
- Learn modern JavaScript from the ground up
- Build a basic server using JavaScript and Node.js
- Master the best practices of modern JavaScript
- Write high-quality, readable code
- Skillfully answer technical interview questions
- Write and run modern JavaScript programs
- Learn how to take advantage of recent language additions
- Master the finer points of JavaScript ES6+
Who Should Take This Course
- Junior software developers
- Software engineers
- Full-stack developers
- Front-end developers
- Back-end developers
Course Requirements
Prerequisites:
- Basic knowledge of how programming works
- Some experience with command line (not required)
Meet your instructor

Shaun Wassell
Overview
In MTA 98-364 Database Fundamentals LiveLessons, you gain the knowledge required to work with and design relational databases and prepare for Microsoft MTA Exam 98-364.
Drawing on his experience as a SQL Server MVP, Eric Johnson guides you from the basic elements of databases, such as tables and indexes, and progresses into the principles of database design and layout. Building on that foundation, you learn how to perform more advanced skills, such as database administration, backup, and security.
Topics are organized into easily digestible lessons so you can learn these skills with ease. This video course, along with additional study, helps you achieve the hands-on experience recommended to take the exam and demonstrate your mastery of database fundamentals.
Skill Level
- Beginner
- Understand concepts involved with database storage
- Perform database normalization
- Create database objects
- Manipulate data in databases
- Secure databases
- Back up and restore databases
- Developers and system administrators with no prior experience working with databases
- Knowledge of Windows operating system
- IT background with no prior database experience
Meet your instructor

Eric Johnson
Overview
React.js Fundamentals LiveLessons, Third Edition, covers vanilla React and presents a refresher on some advanced JavaScript topics and essential ES6 features. You first learn how to create a modern React toolchain. Next, the training covers the advanced JavaScript concepts that regularly pop up in React and the modern ES6 features you’ll need to write more idiomatic React code. Next, the training covers a conceptual understanding of React and takes an in-depth look at how React’s virtual DOM works. Starting in Lesson 6, you dive into writing React code using the original create class syntax and begin to look at the JSX. Next, you see how to rewrite your earlier code using modern es6 features. From there, you learn the remaining vanilla React topics, such as component lifecycle and state management. The training wraps up with a discussion of how you can tweak performance in React apps, use styling, and create functional components.
Learn How To
- Utilize the React toolchain
- Understand the advanced JavaScript features used with React
- Use ES6 features with React
- Understand basic React concepts
- Utilize React’s virtual DOM
- Code a React app with traditional and ES6
- Optimize React performance
- Utilize libraries to make React a complete front-end solution
- Use React router
- Use Flux
- Use Redux
- Test React applications
- Use React functional components