UPCOMING Courses and Events
Whether you’re just beginning to code or building your first web pages, or you’re an advanced software engineer, we’ve got a book that will take your skills to the next level. Join our audience of more than 1,000,000 readers who have used our books to succeed.
Coming this fall
O'Reilly Learning - Live
JavaScript Bootcamp
Three-day course on the fundamentals of JavaScript in the browser
Coming soon!
ONGOING
O'Reilly Learning - Live
Design Patterns in 3 Weeks
Three-day course on the fundamentals of design patterns and principles
Join Eric Freeman and Elisabeth Robson, co-authors of the industry’s “go to” book for learning design patterns, Head First Design Patterns, in a three-day course on the fundamentals of patterns. You’ll learn soup to nuts about patterns and everything you need to understand them and use them in your own code. You’ll also get a great overview of the object-oriented principles behind all patterns, and the foundational patterns from the Gang of Four.
VIDEO ON DEMAND
LinkedIn Learning
Foundations of Design Patterns
Video training on the fundamentals of design patterns
Design patterns are reusable solutions that solve the challenges software developers face over and over again. Rather than reinventing the wheel, learn how to make use of these proven and tested patterns that will make your software more flexible and resilient to change. This course introduces you to design patterns and takes you through several of the most used object-oriented patterns. Elisabeth Robson and Eric Freeman, coauthors of Head First Design Patterns, join forces to provide an overview of each pattern and examples of the pattern in action. Featured design patterns include the Strategy, Adapter, Observer, and Decorator patterns. Elisabeth and Eric lend these concepts a real-world context by providing code demos in Java, with the occasional example in Python and JavaScript.
VIDEO ON DEMAND
LinkedIn Learning
Design Patterns: Creational
Video training on the fundamentals of design patterns
Time-tested solutions to common problems in software engineering never go out of style, especially when software systems last much longer than anticipated. Exploring design patterns as part of an overall software development strategy is more important than ever to create maintainable, flexible designs. This course covers all the core creational patterns from the original design patterns catalog, the Gang of Four collection. Explore how to use these five patterns to create flexible and efficient object-oriented software designs, learn how the patterns and the design principles behind them guide good software design, and discover techniques and ideas to improve your own designs.
VIDEO ON DEMAND
LinkedIn Learning
Advanced Design Patterns: Design Principles
Video training on the fundamentals of design patterns
You may be familiar with the fundamental concepts of object-oriented design—inheritance, encapsulation, polymorphism, and abstraction—but there is a set of higher-level design principles that can be used to take your design to the next level. Design principles guide your design decisions to produce software that is more reliable, flexible, and maintainable. Join instructor Eric Freeman as he goes beyond the standard concepts of object-oriented programming to introduce you to the most notable design principles, including encapsulate what varies, favor composition over inheritance, loose coupling, and the SOLID principles. Each lesson includes examples that show how these principles can be used to avoid costly design mistakes and create more maintainable, high-quality software.
VIDEO ON DEMAND
Udemy
Build the Game of Life
Master HTML, CSS and JavaScript by building a game
Welcome to Build the Game of Life, a project that takes you through building a generative, cellular automaton game from start to finish in a one page app using HTML, CSS and JavaScript. This project is a great way for you to integrate your skills with markup, style and behavior by creating an interactive and dynamic application right in your browser. In this project we’ll make heavy use of the DOM, events, timing and simple logic to create a truly generative application.
VIDEO ON DEMAND
Udemy
Generative Music Box Project
Build a generative app in the browser with JavaScript
Welcome to Build a Generative Music Box. In this project we take inspiration from Brian Eno and Peter Chilvers’ Bloom application. You’ll build a web application, using JavaScript, that allows you to create generative, ambient music. With a small amount of code you’ll handle your mouse clicks, use the canvas for the user interface and graphics, and leverage the Web Audio API to create sound. You’ll also spend a lot of time on scheduling events in time and organizing your code. This project is a great way for you to practice programming in JavaScript by creating an interactive and dynamic application right in your browser.
VIDEO ON DEMAND
Udemy
How to Visualize Data with JavaScript
Visualize Trends in Temperature Data with HTML, CSS, JavaScript and jQuery
Welcome to How to Visualize Data with JavaScript. In this project, join Elisabeth Robson to learn how to incorporate data visualization into your web skills using simple JavaScript along with HTML and CSS. Elisabeth will take you through building an interactive visualization using data downloaded from NOAA, reading data into a web page, adding the data to an HTML table with JavaScript code, adding color to the visualization with JavaScript and CSS, and using a little jQuery to help make selecting and updating elements in the page easy.
VIDEO ON DEMAND
Udemy
How to Visualize Data with D3
Learn the D3 JavaScript library and create a data visualization using real science data
Welcome to How to Visualize Data with D3. In this project, join Elisabeth Robson to learn how to incorporate data visualization into your web skills using HTML, JavaScript and the D3 data visualization library. Elisabeth will take you through building a visualization using data downloaded from NASA. You’ll learn how to use D3 to read data into a web page, select and create new elements, and position and style elements to generate a striking color visualization. Along the way you’ll learn from the ground up how to use D3: how data binding works, how to use methods to add attributes and style on D3 elements, and how to use scale functions to process data points as you build the visualization.
At the end of the course you’ll have completed a data visualization of the NASA data, and have some new skills you can apply to your own data too.
VIDEO ON DEMAND
Udemy
How to Visualize Data with R
Learn R programming and create a data visualization using real weather data
Welcome to How to Visualize Data with R. In this project, join Elisabeth Robson to learn how to use the R programming language and RStudio to visualize data. Elisabeth will take you through building a visualization using data downloaded from the US National Weather Service. You’ll learn how to use R to read data from a CSV file, inspect and understand data and data frames, and use the plot() and ggplot() functions to create data visualizations. Along the way you’ll learn from the ground up how to use R and RStudio, including how to create and run an R script, basic R data types and values, how to create a scatter plot graph, how linear regression works, and how to install and use an R package.
At the end of the course you’ll have completed a data visualization of the weather data, and have some new skills you can apply to your own data too.
VIDEO ON DEMAND
Udemy
How to Process Time Series Data with JavaScript
Create a data visualization with JavaScript and D3.js
This project takes you through building a data visualization of COVID19 data from Johns Hopkins University from start to finish, using HTML, CSS, JavaScript, and D3.js. In this project, you’ll learn how to process data to pull out relevant information, structure the data for visualizing, use JavaScript’s map and filter methods, use D3.js’s scale functions, and more. You’ll practice your JavaScript skills while creating a visualization to help you and others understand real world data affecting everyone right now.
VIDEO ON DEMAND
WickedlySmart
Use Map to Organize Data with JavaScript
Learn the D3 JavaScript library and create a data visualization using real science data
Learn the basics of the ES6 Map data structure and then follow along as we build an application to read CSV data into an array, and then combine data by year into a Map to find the average of values by year. By the end of this course, you’ll be using Map like a pro!
VIDEO ON DEMAND
WickedlySmart
Learn JavaScript with Head First
Learn the D3 JavaScript library and create a data visualization using real science data
These chapter videos are a great companion as you work your way through Head First JavaScript Programming. Each video walks you through a quick overview of what’s coming up in the next chapter, points out what to watch out for or take special note of as you work through the chapter, and what big ideas you should take away. Each video is just a few minutes long, and will help set the stage before you jump into the next chapter of the book.
Head First JavaScript Programming is a brain-friendly guide teaches you everything from JavaScript language fundamentals to advanced topics, including objects, functions, and the browser’s document object model. You won’t just be reading—you’ll be playing games, solving puzzles, pondering mysteries, and interacting with JavaScript in ways you never imagined. And you’ll write real code, lots of it, so you can start building your own web applications.