We are always working on new content so Treehouse students can stay up to date with the latest technology. This content roadmap contains everything that's planned for release. Please contact support if there is a course you want to take but don't see listed.
The dates reflected for each course are estimates and may change.
User Authorization with ASP.NET Identity
In this course, you'll learn how to leverage user authorization to restrict access to part of an application and to control what actions users can and cannot perform. You'll update an existing ASP.NET MVC application to use Microsoft's ASP.NET Identity system to implement authorization using both roles and claims.
Data Persistence with Room
Storing data is important in any Android app. In this course we'll use the Room library to store data in a SQLite database!
Cleaning and Preparing Data
We rely on data to answer important questions, whether we are trying to make the best business decisions or determine the effectiveness of a new medical treatment. But our analyses are only as accurate as the data we are using, and incorrect or “dirty” data can lead to incorrect conclusions and assumptions. Data preparation, also called “cleaning” or “scrubbing”, is an important part of ensuring our analyses are accurate and useful.
Pipenv: The Python Package Manager
Pipenv is a production-ready tool that aims to bring the best of all packaging worlds to the Python world. It harnesses Pipfile, pip, and virtualenv into one single command.Viewed
Practice Using Room
The Room persistence library makes working with databases much easier. In this practice session will build a simple note-taking app and use a Room database to store the notes!Viewed
Scraping Data From the Web
Almost any information you want is available on the Internet. Web scraping is a key tool for data mining that information allowing for web page exploration and collection for a variety of reporting. The tools and techniques used in this course allow for data to be collected that would otherwise not be easily accessible without robotic assistance.
Learn how to become an effective test engineer. Testing is something every developer must do to write effective and quality code, but going about what you should test and how to do it can be a challenging question. Quality Assurance is the practice of monitoring other developers' work and creating processes and tests that will ensure the product meets the end user’s expectations and limiting the amount of bugs that are released. This course will teach you how to become a Software Quality Assurance Engineer.
In this age of information, it’s not always easy to know how content should be structured - everyone has a different perspective. In this course, you’ll learn about information architecture: what it is, and how it relates to web design and user experience. We’ll learn about the fundamentals of IA components like navigation, labeling, and content organization, as well as techniques to test and evaluate existing website structure. By the end, you’ll know how to organize website content and provide a clear, logical experience for any user.
Creating User Experiences
Join us as we learn the basic principles of User Experience Design and how it shapes everyday interactions with products. By structuring products around users’ needs, we can ensure that the products do their job. You will learn how to meet users where they are, think through intuitive experiences, and create products that more effectively meet both your goals and your end users’ goals. This course will help you think more critically through the steps and decisions a user makes while interacting with your product. If you’re considering a career in User Experience (UX) or want to learn more about it, this course will expose you to how to design and plan around the people who use your product.
Wireframing is a process that should occur early on in a website or app design project. In the early stages of a project, you (as well as others on your team) will have a lot of ideas and the best way to sort through those ideas is to start brainstorming. Wireframes are a visual artifact of this brainstorming, and the goal is to make them with minimal effort, as to encourage ideation and minimize exerting unnecessary effort on a sub-par idea. Whether you're a designer, a prospective designer, or (more generally) a person with product or marketing ideas...wireframes are a valuable tool for visualizing user experiences, iterating on ideas, and sharing ideas with others.
An essential part of the UX design process is measurement and validation. This course will provide an overview of the methods available for measuring the success of a design including A/B testing, surveys and usability testing. It will specifically deep dive into usability testing so that students will learn about what’s involved in running such a test, from gaining initial stakeholder buy-in to preparing a test plan and to presenting actionable findings.
Saving Data on a Server
So far all our networking code could do was make GET requests but being able to send and save data to a server is just as important. In this course, let's improve our networking code and learn how to make a POST request. There are a lot of additional concerns when saving data and we'll spend some time talking about security, preventing malicious input and much more.
Unit Testing in iOS
Unit testing allows you to test your application for logic errors, prevent crashes, and even write better code. In this course, we cover the philosophy behind unit testing, ways we can structure our code to make it more testable and look at tools we can use to test our code. We'll look at both tools that come built in, like the XCTest Framework in Xcode, as well as a few third party solutions for both Objective-C and Swift.
UX Design Patterns
Software is often defined by what makes it different, but in many cases, the same UX and design problems appear over and over again; a pattern, across many applications. Rather than come up with a brand new solution for every problem - a solution that could require a tutorial to educate users - it's often best to turn to familiar solutions that a user will immediately recognize. These solutions are called design patterns, and when it comes to UX, these patterns can solve problems in the user interface and they can also help influence the behavior of users.