Welcome to the Treehouse Library
This is a sample catalog of all the courses we offer. Browse by topic or difficulty. Sign up today and get access to our entire library. Treehouse students get access to workshops, bonus content, conferences, and more.
Ready to start learning?
Treehouse offers a 7 day free trial for new students. Get access to 1000s of hours of content. Learn to code, land your dream job.
Start Your Free Trial- Newest
-
All Topics
- All Topics
- • AI
- • JavaScript
- • Databases
- • Python
- • Design
- • React
- • HTML
- • CSS
- • Data Analysis
- • Java
- • C#
- • Android
- • Computer Science
- • PHP
- • Quality Assurance
- • APIs
- • Security
- • Digital Literacy
- • Development Tools
- • Business
- • 21st Century Skills
- • Ruby
- • Machine Learning
- • Learning Resources
- • Go Language
- • Equity, Diversity, and Inclusion (EDI)
-
13 minWorkshop
ChatGPT: Code Interpreter
Discover the capabilities of ChatGPT's "Code Interpreter" model in our AI workshop. It's a secure, sandboxed Python interpreter that revolutionizes Python code testing, debugging, data analysis, and visualization. Ideal for developers, data analysts, and AI enthusiasts eager to enhance their Python programming skills and data interpretation proficiency.
Viewed -
11 minWorkshop
How to Learn Data Science
Data Science can seem overwhelming because of its vastness. But if you map out a learning path, acquiring the necessary skills is not a difficult task. In this video, we'll build a learning path through Data Science, starting with programming and math, moving on to machine learning and data foundations, and rounding things out with domain expertise.
Viewed -
- 1
- 2
- 3
- 4
TypeScript Basics
Dive into the basics of TypeScript, an open-source programming language created by Microsoft that shares the same basic syntax as JavaScript. In this beginner course, you'll explore using, creating, and manipulating types to help you write robust and readable code.
-
20 minWorkshop
Hello Computer Science
In this workshop, students are introduced to fundamental Computer Science (CS) concepts. This workshop unpacks the history of computer science, defines key terms, and identifies common elements across multiple disciplines.
Viewed -
18 minWorkshop
Hello Full Stack JavaScript
This workshop provides an introduction to Full Stack JavaScript. Learn about the difference between front and back-end programming. Start writing code in JavaScript and making changes to web pages.
Viewed -
33 minWorkshop
Hello Python
An introduction to the Python programming language. Learn about what backend development is and how Python differs from other programming languages. Jump into writing code and creating your first small program.
Viewed -
- 1
Technical Interviewing
This seminar will cover a range of what you might experience in a technical interview, since they vary by company. We’ll discuss best practices for whiteboarding and other alternatives such as pair programming or portfolio review as well as useful tools to help you practice.
-
- 1
- 2
- 3
JavaScript Functions
JavaScript functions let you create reusable chunks of code. They make programming faster, easier, and less error-prone. They are also one of the essential concepts in JavaScript programming.
-
- 1
- 2
JavaScript Numbers
Numbers are everywhere in programming. You use them to track a player's score in a game, calculate the cost of shipping a product, or count the number of times a "Like" button gets clicked on a page. In this course, you'll learn how to use numbers for useful tasks in your JavaScript programs, including doing math, converting strings to numbers, generating random numbers, and more.
-
- 1
- 2
- 3
- 4
JavaScript Basics
JavaScript is a programming language that drives the web: from front-end user interface design to server-side backend programming, you'll find JavaScript at every stage of a website and web application. In this course, you'll learn the fundamental programming concepts and syntax of the JavaScript programming language.
-
8 minWorkshop
Understanding MVC
Learn the concepts behind the MVC -- Model, View, Controller -- programming pattern and how it can help you build web applications more efficiently and reliably.
Viewed -
- 2
- 3
Build a Basic PHP Website
This project will show you how to build a simple website using the PHP programming language. The web site, a media library, will let you organize and display your Books, Movies and Music. You could easily use this project to create a website that lets you organize and display any type of item: Branch Locations, Products, Services, Events, even Courses like we have here on Treehouse.
-
28 minWorkshop
Plan Ahead with Pseudocode
Learn how to plan your programming projects before you open a text editor so you can discover logic errors before you start to share your ideas with your team.
Viewed -
- 1
- 2
AJAX Basics
AJAX is an important front-end web technology that lets JavaScript communicate with a web server. It lets you load new content without leaving the current page, creating a better, faster experience for your website's visitors. In this course, you'll learn how AJAX works and how you can use JavaScript to communicate with a web server. We'll use plain JavaScript to create AJAX requests and use the response to dynamically update your web pages. Along the way, you'll build mini-projects to reinforce your learning.
-
- 1
- 2
- 3
- 4
- 5
C# Basics
C# is the most popular programming language in the Microsoft ecosystem of products. C# code is designed to run fast and to be easily maintainable. In C# Basics, we'll learn how to work with C# to write simple programs.
-
- 1
- 2
- 3
- 4
Asynchronous Programming with JavaScript
In this course, you will learn why asynchronous code matters and how to write code that avoids blocking behavior using three approaches: callbacks, promises, and async/await.
-
- 1
- 2
- 3
CSS Selectors Quickstart
An introduction to CSS selectors for JavaScript programmers. This course covers what you need to know about CSS selectors to complete common DOM programming tasks.
-
- 1
- 2
Introducing MVC Frameworks in PHP
In this course we will build upon what we have learned about Object-Oriented Programming to build a basic website. By using the Slim Microframework, we will explore common MVC concepts without the framework hiding too much functionality out of the box.
-
- 1
- 2
- 3
Introduction to NumPy
NumPy is short for Numerical Python. It is the fundamental package for scientific computing. You will see it at play in just about everywhere Python needs to deal with data. This course gives a gentle introduction to the powerful library.
-
- 1
- 2
- 3
- 4
JavaScript Quickstart
Get up to speed with the basics of JavaScript. In this course, you'll learn the fundamental concepts and syntax of the JavaScript programming language.
-
- 1
- 2
- 3
- 4
Python Basics
Learn the building blocks of the wonderful general purpose programming language Python.
-
- 1
- 2
- 3
- 4
Object-Oriented JavaScript
In this course, you'll learn the basics of object-oriented programming in JavaScript along with the new ES2015 Class syntax.
-
- 1
Environment Variables with PHP
In the lifecycle of an application, there are multiple environments such as Development, Testing and Production. Each environment may have its own unique sources and credentials that need to be managed and secured. Environment variables are accessible to any programming language, and allow applications to adapt to their environment while keeping credentials secure.
-
- 1
- 2
- 3
Machine Learning Basics
Machine learning encompasses many different ideas, programming languages, frameworks, and approaches to the subject, so the term "machine learning" is difficult to define in just a sentence or two. But essentially, machine learning is giving a computer the ability to write its own rules and learn about new things, on its own. In this course, we'll explore some of the big ideas, and toward the end, we'll even write a little bit of code in Python that can make some intelligent predictions.
-
- 1
- 2
- 3
Building Services with ASP.NET Web API
Services expose data and processes through APIs (Application Programming Interfaces) implemented using common approaches or standards. Decoupling our back-end from our front-end makes it possible for our services to support multiple client apps. We can even allow other developers and organizations to consume and use our services to further broaden the reach of our applications. In this course, you'll learn how to use the ASP.NET Web API framework to build a RESTful service or HTTP API. As you learn about Web API, you'll create a service for the Fitness Frog single-page web app (SPA) developed using Angular.
-
- 1
- 2
- 3
- 4
- 5
Ruby Basics
Ruby is a programming language with a focus on simplicity and productivity. It has an elegant syntax that is natural to read and easy to write. In Ruby Basics, we'll learn how to work with Ruby and write simple Ruby programs.
-
- 1
- 2
- 3
- 4
- 5
Build a Simple Android App with Kotlin
This course covers the very basics of Android development. We will build a simple app that will serve up some fun facts when you tap on a button. We introduce you to programming in Android, a tool for Android development called Android Studio, and some very basic concepts of the Android Software Development Kit, or SDK. By the end you will have a good idea of how a basic app works, and you will be armed with the knowledge to start building more.
-
22 minPractice
Practice Writing Loops in Python
Programming with loops can be tricky, and the best way to get comfortable and grow your understanding is by practicing them.
Viewed -
- 1
- 2
- 3
React by Example
Learn React programming patterns by building an application for keeping track of RSVP's! We'll start at the beginning, using create react app (https://github.com/facebookincubator/create-react-app) to initialize the project, and by the end you'll have a functional application.
-
- 1
- 2
- 3
- 4
- 5
Build a Simple Android App with Java
This course covers the very basics of Android development. We will build a simple app that will serve up some fun facts when you tap on a button. We introduce you to programming in Android, a tool for Android development called Android Studio, and some very basic concepts of the Android Software Development Kit, or SDK. By the end you will have a good idea of how a basic app works, and you will be armed with the knowledge to start building more.
-
- 1
- 2
Introducing JavaScript
Learn the fundamentals of programming by building a JavaScript video game. This fun, exploratory course teaches you basic concepts like variables, values, conditional statements and functions by interactively playing with code while creating a game.
-
- 1
- 2
- 3
- 4
- 5
Go Language Overview
This overview of the Go programming language is designed for developers who are already familiar with another language. It's a quick tour of the language's core features such as interfaces and goroutines.
-
14 minWorkshop
Introducing the Atom Text Editor
Text editors are simple but important tools that let developers write code. They include many helpful features to speed up development and make programming and building web sites faster and easier.
Viewed -
- 1
- 2
- 3
Introduction to Scala
The name Scala derives from a combination of the words “scalable” and “language”. Scala is a functional programming language, which runs on top of the Java virtual machine and can use any Java class. Scala is well suited for distributed programming and big data. It is what Apache Spark is built in and can provide better performance when compared to Python and is much less verbose than Java. Whether you’re learning about functional programming or starting a career in big data, Scala is a great place to start.
-
- 1
- 2
- 3
- 4
Introduction to Functional Programming
Functional Programming is an old paradigm, but one that is relatively new to the Java world. In this course we will explore how to take advantage of the power that comes with thinking declaratively.
-
- 1
- 2
- 3
- 4
Object-Oriented Python
Sometimes simple scripts with functions in them just aren't enough. Eventually you'll need logical models of your work and that'll lead you to creating custom classes in Python. Object-oriented programming is a large topic. It provides us some amazing tools, though, so it's one of the most beneficial things to learn about in Python. First, you'll learn how to build basic custom classes. Then, you'll expand them through inheritance. And for some extra power, you'll also learn how to take control of Python's built-in classes to make your own more powerful while doing less work. Finally, we'll put everything together into a fun game utility.
-
5 hoursBonus Series
The Treehouse Show
The Treehouse Show is our weekly conversation with the Treehouse Community.
Viewed -
- 1
- 2
Using the GitHub API with PHP
Application Programming Interfaces, or APIs, provide a method for connecting your site to a “third-party” web service. We'll use the GitHub API to explore how RESTful APIs allow us to retrieve and update information residing on an external system.
-
- 1
- 2
- 3
- 4
Java Objects
Java is an Object Oriented Programming language. Literally everything you interact with is an object, so understanding them is critical to your Java foundational base. In this course, we will learn how to create, use and express ideas using objects.
-
- 1
- 2
- 3
Intermediate C#
This course builds on what we learned in C# Objects. We'll learn more essential principles of object-oriented programming as we improve the Treehouse Defense game.
-
- 1
- 2
- 3
- 4
Querying With LINQ
Learn to query in C# with LINQ.
-
- 1
- 2
- 3
- 4
Object-Oriented PHP Basics
At a glance, object-oriented programming can appear to be far more complex than simple procedural, or inline, code. However, this doesn’t have to be the case. Because object-oriented programing is similar to the way human beings perceive the real world, using the object-oriented approach, can help you visualize the solution to a problem more easily. Object-oriented programming, or OOP for short, is a style of coding that allows developers to group similar tasks into containers. In PHP, containers are defined using classes. A class contains all the functions and variables that describe an object.
-
- 1
- 2
- 3
- 4
- 5
- 6
C# Objects
In this course we'll build on what you learned in C# Basics. You'll learn about Object Oriented Programming (OOP). We'll use OOP to write the code for a tower defense game. After completing this course, you'll have learned most of the syntax of the C# programming language.
-
37 minWorkshop
Introduction to Design Patterns
Design patterns are a collection of language agnostic solutions to common programming problems. This Workshop is a quick overview that will get you familiar with their origin and how to find and use them.
Viewed -
- 1
- 2
- 3
Functional Python
Functional programming is a great addition to any programmer's toolset. FP allows you to quickly filter lists, modify values, find answers, and other repetitious tasks with less code than other approaches.
-
28 minWorkshop
Regular Expressions in Java
Regular Expressions are an extremely handy tool to have at your disposal. They are also incredibly intimidating looking if you don’t know how or why someone is using them. Regular Expressions are common in just about every programming language, and developers have leaned on their power for many solutions. We use them for searching, replacing and validating that text meets certain formats.
Viewed -
17 minWorkshop
JavaScript Booleans
Logic is an incredibly important part of programming. Typically languages will have a “boolean” data type with two values, “true” or “false”. In JavaScript, some of the behaviors that produce “truthiness” and “falsiness” can be confusing. In this workshop, you will be steeped in all of the different ways JavaScript takes into account booleans.
Viewed -
- 1
- 2
- 3
Build an Address Book in Ruby
In this course, you'll build a simple command line address book application using Ruby. You'll put to use a lot of skills learned in previous courses to put everything together: objects, classes, blocks, input and output, and more.
-
- 1
- 2
- 3
Ruby Blocks
In this course, you’ll learn all about blocks in Ruby. Blocks are a piece of syntax that you can use in Ruby to accomplish all kinds of amazing programming feats. Ruby programmers make constant use of blocks so they are an important piece of the language to learn.
-
- 1
- 2
- 3
Ruby Objects and Classes
Ruby is known as an "Object Oriented" programming language. But what does object oriented mean? In this course, we'll cover the basics of Ruby Classes. We'll learn what classes are, how they are used, and how to write our own.
-
53 minWorkshop
Functional Programming with Python
Kenneth Love provides a quick overview and introduction to the world of functional programming and how to use it in Python
Viewed -
- 1
- 2
- 3
Java Basics
In this course you will gain all the knowledge you will need to build an interactive command line program in Java. No prior programming experience is required. You will create an interactive game that prompts users for different parts of a sentence and then generates a story using those words.
-
- 1
Treehouse Club: HTML
If you’ve never written a line of code before, this is the place to start! In this project, you’ll learn how to edit pre-written HTML code. By the end of this course, you’ll be more comfortable with using Treehouse’s programming tool Workspaces and have a basic understanding of HTML structure.
-
3 hoursBonus Series
Treehouse Quick Tips
Treehouse Quick Tips are fast and easy lessons that you can start applying now. Learn to create stunning designs in Photoshop, beautiful websites, and useful mobile apps for Android and iOS.
Viewed -
30 hoursBonus Series
The Treehouse Show (2012 - 2015)
The Treehouse Show is your weekly dose of web design and web development news, hosted by Nick Pettit and Jason Seifer.
Viewed -
10 hoursBonus Series
Treehouse Friends
Treehouse Friends is a series of interviews with interesting people in the web design and dev fields and other industry experts.
Viewed
Whoops! Perhaps you can try a broader search.