
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)
-
- 1
- 2
- 3
- 4
Introduction to HTML and CSS
Get started creating web pages with HTML and CSS, the basic building blocks of web development. HTML, or HyperText Markup Language, is a standard set of tags you will use to tell the web browser how the content of your web pages and applications are structured. Use CSS, or Cascading Style Sheets, to select HTML tags and tell the browser what your content should look like. Whether you are coding for fun or planning to start a career in web development, learning HTML and CSS is a great place to start.
-
- 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.
-
- 1
- 2
- 3
- 4
HTML Basics
Learn HTML (HyperText Markup Language), the language common to every website. HTML describes the basic structure and content of a web page. If you want to build a website or web application, you'll need to know HTML.
-
- 1
- 2
- 3
- 4
Python Basics
Learn the building blocks of the wonderful general purpose programming language Python.
-
- 1
- 2
- 3
- 4
CSS Basics
In this course, we're going to learn the basics of CSS, one of the core technologies for designing and building websites and applications. No matter what kind of website or web application you want to build, you'll have to use CSS. If you haven't written much CSS, or even if youβve never written CSS at all, donβt worry. That's what this course is for. Weβll start with basic CSS concepts, then gradually progress to more advanced topics and lessons.
-
- 1
- 2
- 3
- 4
CSS Layout
In this course, we're going to learn techniques for better control over our CSS layouts. Weβll cover how the CSS Box Model impacts the presentation of each HTML element, learn to control the position of each element onscreen, and even begin to adjust our layouts for different screen sizes and environments.
-
- 1
- 2
- 3
JavaScript and the DOM
JavaScript lets you create interactive web pages which can respond to a user's actions. In this course, you'll learn how to bring web pages to life using the power of JavaScript.
-
- 1
- 2
- 3
- 4
React Basics
React is a JavaScript library for building user interfaces. React makes building and maintaining your application's user interface faster and easier by breaking it up into smaller, reusable components. It also helps eliminate the complexity of updating your DOM elements when the user interacts with your application.
-
- 1
- 2
- 3
SQL Basics
In SQL Basics, weβll take a look at what databases are and how you can retrieve information from them. Databases can store massive amounts of information to be retrieved at a later date. Databases act as the memory for dynamic web sites or mobile apps.
-
- 1
- 2
- 3
- 4
Node.js Basics
In this course we will create two command line applications using the popular server-side JavaScript platform Node.js. We'll be creating an application to retrieve a student's Treehouse profile information and be working with a dictionary API to retrieve definitions of a given word.
-
- 1
- 2
- 3
Introduction to Git
Git is a version control system - it helps you manage the different versions of your project files, and helps keep your work safe. This course will show you how Git works, and how to upload your projects to GitHub.
-
- 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
How to Give and Receive Feedback
Learn why feedback is useful. You'll explore a simple process for providing feedback (both positive and constructive) in a way that will be well-received and motivate the right behavior. You'll also learn tips for receiving feedback effectively and putting it into action.
-
- 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
Introducing Large Language Models
Large Language Models like ChatGPT are rapidly transforming natural language processing and shaping the future of technology. In this microcourse, learn more about this fascinating type of machine learning model specifically trained to understand and generate natural language text. This microcourse was written with the help of ChatGPT. The video was produced using Synthesia, an AI video creation platform.
-
- 1
- 2
- 3
Introduction to Selenium
As web applications grow in size it becomes difficult to reliably and thoroughly verify that the application behaves as intended. Manually stepping through the system gets tedious and time consuming. That's where automated testing tools become invaluable. In this course we will learn to use Selenium WebDriver, one of the most popular utilities for automating interactions with web browsers, to build automated tests for the purpose of verifying and maintaining a quality application.
-
- 1
AI Tools for Designers
Join Dan as he embarks on a captivating journey into the world of Generative AI. Go deep into the revolutionary platforms, from Midjourney and Adobe Firefly to DALLΒ·E and Bing Image Creator, that are reshaping the artistic landscape. Alongside this exploration, the video delves into the ethical implications of AI creation, emphasizing the importance of authenticity and originality.
-
- 1
- 2
Introduction to Data Security
Keeping data and communications secure is one of the most important topics in development today. In this course, we'll look at common methods of protecting both of these areas.
-
- 1
- 2
Designing with Generative AI
Join Dan in this course as he uses generative AI to design a website for a bakery, employing the tools and methods highlighted in AI Tools for Designers.
-
- 1
- 2
- 3
- 4
- 5
Spreadsheet Basics
A spreadsheet is an electronic document that arranges data in a table by using columns and rows. Among other things, spreadsheets let you store, manipulate, share and analyze data. They're used in business to help make complicated decisions like where to open a new restaurant location, where to build a wind farm, or where to expand a business' marketing efforts. Spreadsheets aren't just for business use either. A household expense spreadsheet can help you determine when you will be able to afford a new car or take your next trip. In this course, you'll learn the basics of spreadsheets including the parts of a spreadsheet, spreadsheet vocabulary, how to import data, how to make complex calculations, how to reference data in different cells, and how to use spreadsheet functions. You'll also learn best practices for formatting spreadsheets, protecting your data, and more, all using Google Sheets, which is free and very similar to Excel. When you're done you'll have built an entire spreadsheet complete with data, complex functions and formulas and colorful and meaningful formatting.
-
- 1
Introduction to Computer Vision
Computer Vision (CV) is a subfield of Artificial Intelligence that enables machines to interpret and make decisions based on visual data. Explore its origins and applications, and the fundamental concepts that drive its development.
-
- 1
- 2
Computer Basics
In this course we're going to challenge what it means to be digitally literate by pulling back the curtain of how computers work. By the end of this course you should have a foundational understanding of computers and how we communicate with them.
-
- 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
Imposter Syndrome
Everyone has probably experienced Imposter Syndrome. We may not know what it is but we have felt it at some point. In these videos learn about what Imposter Syndrome is and tips to combat it.
-
- 1
- 2
- 3
Intermediate Selenium WebDriver
Manually testing your website can only take you so far. Learn how to use Selenium WebDriver to automate the process for you, and alert you to problems before your users see them.
-
- 1
- 2
- 3
Security Literacy
The internet is an invaluable resource for information and entertainment, but it doesnβt always protect your privacy and identity. This course offers an overview on how to stay safe and secure when using your browser and beyond. Weβll introduce foundational concepts about how online activity translates to internet traffic. Weβll then explore some common ways that attackers can view and manipulate this traffic for their uses and how to protect against them. And finally, weβll establish some industry-recommended habits to keep you and your data secure.
-
- 1
- 2
- 3
- 4
Data Visualization with Excel
This overview of Data Visualization in Excel is designed for absolute beginners, but can also benefit people who have already been using Excel to create charts. You will learn about the fundamentals of data visualization, how create types of charts in Excel, and tips on how to get the most of the charts you make.
-
- 1
- 2
- 3
- 4
Modifying Data with SQL
At the heart of a dynamic application is a database. Whether the application is an eCommerce, sports team, social network, or productivity app on your phone, the data needs to change over time. In this course, we'll take a look at the underpinning SQL statements that are needed for every dynamic application.
-
- 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.
-
- 1
How the Web Works
In order to surf the world wide web, you need an application called a web browser. You're probably familiar with this, you might even be learning HTML, CSS, and JavaScript to program for the web, but have you ever looked into how it works? In this course, we'll dissect each aspect of how the web works. You'll learn about URLs, domain names, IP addresses, the domain name system, and the HTTP protocol, to be fully prepared for web development or just a more knowledgeable web user.
-
- 1
- 2
- 3
- 4
Ethical Design
With all the power that technology yields, it comes with tremendous responsibility. This course will introduce Ethical Design, which considers the moral implication of one's work on others. Specifically, we'll focus on tech at the intersection of development, design, and business. We'll reflect on how tricky interfaces and dirty data practices have negative consequences on society. Ethical frameworks and tools will be shared so you can evaluate and align your actions with your values. Techniques for effective advocacy will enable you to nurture human-centered decisions in your organization. This course is for everyone who works in tech, regardless of their role.
-
- 1
Intro to Gender & Sexuality
In this seminar, we'll do an overview of gender and sexuality. We will breakdown these terms, discuss its importance, and how to be inclusive and equitable to these identities.
-
- 1
- 2
- 3
- 4
- 5
Introduction to QA Engineering
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.
-
- 1
- 2
- 3
Introduction to Application Security
Welcome to the realm of web security, where millions of dollars and peopleβs lives are on the line. Well, not in all cases, but some! From protecting static web sites to the most complex of web services and APIs, every web developer should be aware of and adept at writing secure code and building systems that can stand up to the strongest of malicious users. In this course, we will lay the groundwork for what you need to know to get started exploring the vast field of web security, and along the way you will begin to realize that security isnβt about checking boxes, but rather about embedding the thought process and principles of rock-solid security into every line of code you write. First, we will discuss why security matters to you as a web developer, then we will look at data security at an implementation level, then finally we will examine the art of maintaining your websites, apps, and services on a daily basis.
-
- 1
- 2
- 3
Introduction to Big Data
Big data represents an entire ecosystem of data sets, tools, and applications. This course is intended to get you familiar with the concepts, problem spaces, and overall ecosystem of Big Data.
-
- 1
- 2
- 3
- 4
Querying With LINQ
Learn to query in C# with LINQ.
-
- 1
- 2
- 3
- 4
Reporting with SQL
SQL can be used to generate reports and present information on websites. This course covers powerful SQL features in helping you answer more interesting questions about your data.
-
- 1
How the Internet Works
Knowing how the technology you use everyday works will make you a more thoughtful and powerful user of technology. In this course we'll explore how the Internet works, by investigating hardware like routers, switches, and servers and the TCP/IP protocols that define how information moves from computer to computer.
-
- 1
- 2
- 3
- 4
- 5
- 7
- 8
- 10
Careers Foundations
In this Deep Dive, the Treehouse team shares expertise on focusing your passions, finding your path, identifying opportunities, and how to prepare yourself to get the job you want in the tech industry.
-
- 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
- 4
OWASP Top 10 Vulnerabilities
Welcome again to the realm of web security, where millions of dollars and peopleβs lives are on the line. Not every web application has that much on the line, but many do, and itβs your job as the developer or manager to keep your users safe! From protecting static web sites to the most complex of web services and APIs, every web developer should be aware of, and adept at writing secure code and building systems that can stand up to the strongest of malicious users. In this course, we will build on earlier courses in basic web security by diving into the OWASP Top 10 for Node.js and JavaScript. The OWASP Top 10 is a trusted knowledge framework covering the top 10 major web security vulnerabilities, as well as providing information on how to mitigate them. Throughout this course, we will explore each vulnerability in general and in the scope of how they occur in JavaScript (as the frontend) and Node.js (as the backend).
-
- 1
- 2
- 3
Data Analysis Basics
Learn how to make better decisions with data in this course on data analysis. We'll start by looking at what data analysis is, and then we'll see how we can use data analysis to create better outcomes.
-
- 1
- 2
- 3
- 4
- 5
ASP.NET MVC Basics
ASP.NET MVC is a popular server-side framework developed by Microsoft that is used to build dynamic websites. In this course, you'll learn about the basics of ASP.NET MVC while we build a comic book gallery website using Visual Studio Community. Along the way, you'll learn how to create a new project, add controllers and views, model data, and create repositories.
-
- 1
- 2
- 3
- 4
- 5
- 6
Querying Relational Databases
Building off of previous SQL courses, this course will begin to introduce the student to more complex database concepts. Students will learn to think about data as sets and subsets and practice achieving desired query results via such operations as inner and outer joins, unions and except. They will also be introduced to the concepts of Set Theory and Database Normalization to aid in understanding good query practices.
-
- 1
- 2
- 3
Local Development Environments
This course will introduce you how to set up your development environment on your local machine. We will take a deeper look at the Java technology and learn tips, tricks and best practices that will make you more productive.
-
- 1
- 2
- 3
- 4
- 5
Soft Skills
In this series of videos, we're going to explore the most important soft skills: personal and professional qualities that allow you to do your job better. If you can be an effective communicator, manage your time, work well with others, and be a great problem solver, you'll have a lot more success in whatever you do.
-
- 1
How to Have 1:1's
Learn WHY one-on-ones are the most important meeting on your calendar for you and your manager as well as HOW we recommend preparing for and best practices for one-on-ones.
-
- 1
- 2
- 3
- 4
SQL Reporting by Example
In this course you'll get lots of practice writing SQL queries in a realistic environment!
-
- 1
- 2
- 3
- 4
C# Streams and Data Processing
Learn how to read, write, and process data using streams in C#, and get the basics of file system operations. We'll also learn about serialization with JSON using Json.NET, and how to send web requests from our application.
-
- 1
- 2
- 3
- 4
Build a JavaFX Application
JavaFX is the de facto way to make Graphical User Interfaces (or GUIs) in Java. It is robust and customizable, and getting familiar with its APIs will expose many application design best practices.
-
- 1
- 2
- 3
- 4
- 5
- 6
How to Market Your Business
Marketing your business requires an understanding of how to communicate the benefits of your business to satisfy the needs of your potential customers. In this set of videos, we'll explore how to expand your reach and improve your messaging through various strategies such as social media, usability, SEO, video and email marketing.
-
- 1
Important Skills for Professional Success
No matter what job you're in right now or career you hope to have, improving your "soft skills" can help you become a better worker, better team member, and a better person. Embracing a work lifestyle involving communication and feedback, collaboration, and working together to improve things can only lead to positive results.
-
- 1
- 2
- 3
- 4
Intermediate Excel
Learn how to perform intermediate level functions in Microsoft Excel. In this course, you will learn how to use LOOKUP functions, build and modify pivot tables, use conditional formatting, find and replace data, and check for errors. Learning these tools will help you bring data to life and allow you to use Excel in a more meaningful way.
-
- 1
Creating and Modifying Database Tables
Learn how to create and modify your own database tables as we work through a real-life example! We'll talk about how to choose the right structure for a database and then see how we can implement that structure.
-
- 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
Unit Testing in Java
Unit testing is a Java best practice that ensures your code is working how it was intended. It is a critical habit that you should develop early on in your coding adventures.
-
- 1
- 2
Introduction to Churn and Lifetime Value (LTV) Analysis
This introduction to Churn and Lifetime Value ("LTV") analysis course is designed for absolute beginners to give them exposure to the common business metrics of Churn and LTV. In the course we learn about recurring revenue, churn, LTV, why they matter, and navigate some of the nuances of the metrics.
-
- 1
- 2
- 3
- 4
- 5
ASP.NET MVC Forms
In this course, youβll learn how to create forms using ASP.NET MVC. Along the way, youβll use various field types and form validation as we build a web version of the Fitness Frog application from C# Basics.
-
- 1
- 2
Java Annotations
Annotations have rapidly become the preferred approach to integrating powerful third-party libraries into your own Java applications. In this course, we'll first explore the basic use of annotations to give the compiler instructions. Then, we'll use more advanced techniques to create our own annotation and look for it using reflection.
-
- 1
Publish an Android App
Publishing your app on Google Play allows you to share it with users around the world, and maybe even make some money. Publishing your first app can be a little overwhelming, so this course will walk you through preparing an app and then publishing it on Google Play.
-
- 1
- 2
- 3
- 4
- 5
- 6
Researching User Needs
Many products are developed based on a hunch, a judgement call, and incomplete information. Needless to say, most of them fail miserably. Startup founders and business owners then ask themselves why. This course takes a different, risk-mitigating, more scientific approach to the art of starting a business. Youβll learn how to develop a product people really need by uncovering these needs well in advance. Before you write one line of code, before you hire a large team, before you take a big risk. Youβll learn the ins and outs of learning if people need your product by implementing three activities to learn from your future customers - Experience Sampling, Field Observation, and Interviewing. After making sense of it all, youβll be able to kick-start your business with confidence in your knowledge and wisdom.
-
- 1
- 2
- 3
- 4
- 5
- 6
How to Run a Web Design Business
Paul Boag, co-founder of web design agency Headscape, explains the important steps behind running a successful design business or freelance practice. Understanding the fundamentals of marketing, promotion, sales, and how to manage client relationships can allow you to get your work done and create the business that best suits your lifestyle.
-
- 1
- 2
- 3
- 4
- 5
Financial Statement Basics
Understanding how to read the story that financial statements tell is a really useful skill and an important part of career development. In this course, weβll give a basic overview of the 3 main financial statements: the Profit and Loss Statement, the Balance Sheet, and the Cash Flow Statement. Weβll teach what they show you, why it matters, and give you a bunch of practice problems to help retain that knowledge. After completing this course, you will be able to read, understand, and use financial statements and build on that knowledge as you continue to learn about them.
-
- 1
- 2
- 3
C# Collections
Collections are used to organize data so that it can be used efficiently. In this course we'll learn about the various collection types provided by the .NET framework.
-
- 1
- 2
- 3
- 4
How to Build Your Business Through Blogging
C.C. Chapman, author of 'Content Rules' and 'Amazing Things Will Happen', presents his insights on how to start blogging, how to find ideas on what to write, and tactics and tools to create a variety of content that will build your audience and help you find new business.
-
- 1
- 2
- 3
Presentation Skills
Learn techniques for delivering effective presentations so you can help guide decisions, influence change, and make an impact on the business.
-
- 1
- 2
- 3
- 4
- 5
- 6
Build an Interactive Story App
In this course we will build a simple choose-your-own-adventure story app, complete with fantastic illustrations. We will model our story and introduce the Model-View-Presenter pattern, and we will learn about getting input from users, displaying images, and using more than one Activity.
-
- 1
- 2
- 3
- 4
- 5
Entity Framework Basics
In this course, you'll learn how to use Microsoft's Entity Framework to persist application data to a database. By the end of the course, you'll have learned how to use the Code First workflow, create entity classes, write LINQ queries, perform CRUD operations, and more.
-
- 1
- 2
Intro to Java Web Development with Spark
Spark is a Micro-framework that allows you to spin up a web server fairly easily.
-
- 1
- 2
- 3
- 4
Copyright Basics
Understanding the basics of copyright and licensing in the United States is vital for anyone working in a creative field, and that includes web designers, developers, and mobile devs. Coding requires creativity and works created for the web fall under copyright law. This Deep Dive will give you the knowledge you need to both protect and share your own creations. You'll learn how to copyright your website or app, read license agreements, work with open-source software and Creative Commons, combat copyright infringement, properly license your own creations, and much more.
-
- 1
Careers in the Tech Industry
Through a series of interviews with Treehouse teachers and more, we explore the current state of the tech industry, including how to get started as a web designer, developer, or app developer.
-
- 1
- 2
- 3
- 4
- 5
The 5-Step Career Checklist
Welcome to your 5-Step Career Checklist, a course designed to guide you through the process of building essential skills and increasing your employability. This checklist comprises a series of tasks and milestones covering a wide range of crucial topics such as crafting a compelling resume, mastering the art of networking, and leveraging technology to showcase your abilities.
-
- 1
- 2
Styles and Themes in Android
Styles and themes are used to create a consistent user interface throughout an app, in a way that allows for reuse, easy maintenance, and compatibility on older versions of Android.
-
- 1
- 2
Entity Framework Migrations
In this course, you'll learn how to use Entity Framework Code First Migrations to propagate data model changes to your database.
-
- 1
- 2
- 3
Hibernate Basics
Most meaningful applications you will write will have a database associated with it. Knowing how to connect with and incorporate this data is critical to success as a Java developer. In this course, we'll cover how to connect a Java application to a database using what's called JDBC, or Java Database Connectivity. Then, we'll use the convenient approach of including an ORM, or Object Relational Mapper. This will allow us to interact with our data using object-oriented techniques instead of exclusively relying on hard-coded SQL. The ORM we will use is called Hibernate, and is one of the most popular ORMs available.
-
- 1
- 2
- 3
- 4
- 5
- 6
How to Freelance
One of the many ways you can make money off your technical skills is to branch off on your own and freelance. Freelancing and running your own business can be a very rewarding and fulfilling life with exciting projects and great clients but there are lots of things to learn. In this project we are going to look at how you can get started, where you can find clients, what you should be charging, and how to manage your first project.
-
- 1
- 2
- 3
- 4
Entity Framework with ASP.NET MVC
In Entity Framework Basics, you learned how to use Entity Framework to persist data to a database within the context of a console application. In this course, you'll learn how to use Entity Framework within the Comic Book Library Manager web appβa web application developed using the ASP.NET MVC web framework. You'll work on completing this web app so that users can create, update, and delete comic books from their digital library. Throughout this course you'll learn by example by completing hands-on coding exercises. See how to put EF related code into its own class library project, retrieve and persist data from within a web app, organize your data access code using popular design patterns, and more!
-
- 1
- 2
- 3
- 4
- 5
- 6
How to Start a Business
If you have an idea and think you can make some money off it, it's time to start a business! In this course, we're going to look at what it means to take an idea and make a business model out of it. Once we have a business model, we're going to spread the word, try to sell our product and get real customers!
-
- 1
- 2
- 3
- 4
Unit Testing in C#
Unit testing is key to ensuring that your code works as expected. Learn how to write unit tests and perform test driven development using industry standard tools and methods.
-
- 1
- 2
- 3
- 4
Google Play Services
Google Play Services are a suite of APIs that give developers access to Googleβs extensive cloud services and access the userβs Google account for personalization on Android devices. Google Play Services comes pre-installed on userβs devices and auto-updates every 6 weeks providing the latest APIs on all devices accessing the Play Store. Youβll learn the code necessary to access APIs like Google+ to bring personalization to your user experience. Youβll learn common errors and how to handle devices that canβt access Play Services. When youβre done youβll be able to add other services like Maps, Cast, or Ads to elevate your app above the competition.
-
- 1
- 2
How to Write a Business Plan
One of the most common questions asked when starting a business is how to write a business plan. Business plans are used for many different purposes, from planning out your initial venture, to fundraising and conducting feasibility studies. In this course, we will cover what a business plan is, why we need it, the basic structure of a business plan and some of the various formats.
-
- 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
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
Android Activity Lifecycle
Activities are a crucial component of almost any Android app. In this course we will learn about the lifecycle of our activities, and how we can handle various unexpected changes. We'll also see how to correctly handle a device rotation as well as how to save data using SharedPreferences. To top it all off, at the end of this course you'll get a chance to test your Android knowledge with a project.
-
- 1
- 2
- 3
HTML Forms
The web is a two-way communication medium. There are lots of HTML elements for displaying data and producing output, and conversely, there are also lots of HTML elements for accepting input. Accepting input from the user means creating web forms. In this course, weβll learn about all the most important form elements that web professionals use on a daily basis.
-
- 1
- 2
- 3
Introduction to Xamarin
An introduction to developing mobile apps using the Xamarin platform. You'll learn what the Xamarin platform is and how it works. You'll setup a development environment that will allow you to build Android and iOS apps. You'll also learn techniques to share code across mobile platforms. Complete this course and you'll have a functioning app on Android and iOS using the Xamarin platform.
-
- 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.
-
- 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
- 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
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.
-
- 1
- 2
- 3
- 4
- 5
- 6
Build a Weather App
In this course, we will learn about a very common and important element of Android development: downloading data from the Internet! We will request weather forecast data from a free API provided by darksky.net. We will then parse that data (in JSON format) and display it in a single-page app. We will also see how to handle errors and situations when the network is unavailable.
-
- 1
- 2
- 3
- 4
User Authentication with ASP.NET Identity
In this course, you'll learn how to leverage user authentication to secure an application and protect your users' data. You'll update an existing ASP.NET MVC application to use Microsoft's ASP.NET Identity system to implement cookie-based authentication.
-
- 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
Threads and Services
Learn about Services in Android, which can perform long-running operations in the background like downloading a large file or playing music. We'll explore both of these in a simple music player app!
-
- 1
- 2
HTML Tables
The web is filled with text and images, but it's also filled with information like sports scores throughout the years, lists of employee names and email addresses, or nutrition facts for your favorite foods. HTML tables enable the display information in what is commonly known as tabular data, which is information that's stored in a table-like structure of columns and rows. In general, anything that you might put into a spreadsheet could go in a table. There are many use cases for a table, so it's important to add them to your skills because it's a very common method for displaying information.
-
- 1
- 2
- 3
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!
-
- 1
- 2
- 3
Java Arrays
Arrays are a container object that allow you store many values of the same type in a single variable
-
- 1
- 2
HTML Video and Audio
Text and images have always been the foundation of web content, but more than ever, video and audio are also a part of that content mix. Fortunately, we can now create standards-based video and audio players that don't require the use of plugins. Adding video and audio to a webpage is almost as easy as adding an image or formatting some text.
-
- 1
Introducing IntelliJ and Unpacking Packages
Professional developers don't typically develop in the command line, they use an Integrated Development Environment (IDE) like IntelliJ IDEA. In this course, we'll see how to get started with IntelliJ IDEA and learn how to use packages.
-
- 1
- 2
- 3
- 4
Android Lists and Adapters
A collection of data is often represented in an app in some sort of list. In this course we will learn about the popular Android component called RecyclerView to display and interact with a list of items. We will see how to use some default components as well as building custom lists with our own layouts and adapters.
-
- 1
- 2
- 3
- 4
Android Fragments
In this course we'll learn how we can reuse parts of an Activity called Fragments to cut down on repetitive code and better support our tablet users.
-
- 1
- 2
SVG Basics
Scalable Vector Graphics (SVG) is an XML markup language for creating two-dimensional images using vectors. This is different from traditional raster-based image formats that use pixels, like JPEG and PNG. When used on web pages, SVG images provide an infinite level of detail, so they look sharp regardless of screen size or pixel density. In this course, we'll look at situations where SVGs are better than PNG and JPEG files, as well as when an SVG might not be the best choice. Finally, we'll learn how to modify SVGs using CSS.
-
- 1
- 2
Accessibility For Web Developers
Accessibility is a process that specifically considers the needs of people with disabilities. In this course, youβll learn about the standards in place to guide developers in creating experiences that are accessible to all users as well as tools and techniques to ensure your projects are up to those standards.
-
- 1
Inheritance in Java
In this course we'll learn how to use inheritance to use one class as the foundation for another!
-
- 1
- 2
- 3
Testing in Android
Learn how to use common testing tools available for Android development.
-
- 1
- 2
Responsive Images
Using the new source-set and sizes attributes, and the new picture element, it's possible to create images that behave better in a responsive design. These new pieces of markup allow us to deliver the right image to the right device, based on resolution, pixel density, and other factors we define. This will help web pages load faster and look better, and the most capable devices will get the best looking images possible.
-
- 1
- 2
- 3
- 4
Introduction to Front End Performance Optimization
People want to use websites that load quickly, and every second counts. If a website takes more than 3 seconds to load, you can lose 40% of your audience. Every additional second in page response can result in a 7% reduction in conversions. In these lessons, we're going to take a slow website and make it load faster using front end performance optimization. By the end, you'll know many practical techniques that can speed up any website.
-
- 1
Interfaces in Java
Learn how to make more robust and flexible code bases by using interfaces!
-
- 1
- 2
- 3
Practice Ruby on Rails Basics
Practice the basics of creating Ruby on Rails applications!
-
- 1
- 2
- 3
- 4
Intents and Broadcast Receivers
Intents allow Android apps to communicate with each other in a standard way, and broadcast receivers enable an app to listen for specific events. In this course you'll learn how to utilize both to integrate your apps with other apps and aspects of the Android system.
-
- 1
- 2
- 3
- 4
Scrum Basics
These days, just about every software team says they are βAgile.β You will even find many job openings declare familiarity with Agile software development as a prerequisite. What can you do to become familiar with, and knowledgeable in Agile practices so you can hit the ground running with your next team? In this course, we will cover the Scrum model, a commonly-used flavor of Agile which is well known for its clear definition of team membersβ roles and the activities carried out by the team. This course will give you an understanding of Scrum and how it is used by teams in the process of building software.
-
- 1
Generics in Java
Learn how to pass type parameters to Objects or functions in this course on generics!
-
- 1
- 2
- 3
- 4
Practice Sinatra Basics
Let's practice the basics of creating web apps using Sinatra.
-
- 1
- 2
- 3
- 4
Kotlin for Java Developers
Kotlin was recently announced as a new official Android language! It runs on the JVM and can be used to develop Android apps. You can even interweave Kotlin and Java in the same app, and it brings new features for better safety, readability, and tooling!
Start your free trial today (https://teamtreehouse.com/subscribe/plans?trial=yes&cid=8792) to get access to all of the great Android content on Treehouse! -
- 1
- 2
- 3
- 4
Sketch Basics
Sketch 3 is an easyΒ to Βuse and powerful digital design tool for the Mac. It is quickly becoming the standard for many digital professionals and agencies because it was specifically made for them and their needs. Sketch can be used to create all manner of stunning digital designs from mobile applications to websites and icons. In this course we will introduce to you the basics of Sketch as well as looking at some of the more advanced features. We will give you the unimpeded confidence to begin creating your own designs regardless if youβre already familiar with other design tools or have never used one before! It is recommended that you purchase Sketch 3 for this course.
-
- 1
Java Lists
In this course you'll learn how to use Lists to store groups of Objects. You'll also see when to use a List instead of an Array!
-
- 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
Kotlin and Anko
Anko is a new library from JetBrains which makes use of a ton of Kotlin features to make Android development fun again. If you think youβll enjoy being able to create and manipulate your Views from within your code, without needing XML, then I think you'll love Anko!
-
- 1
- 2
- 3
- 4
- 5
Adobe Illustrator for Web Design
Using a project-based learning approach to Illustratorβs core features, walk through the process of designing a simple website beginning with making a wireframe, and then using that wireframe as the basis for creating a page mock up for mobile and desktop platforms. Along the way, use the basic drawing and shape tools to create an illustrated graphic logo. And with responsive web design in mind, weβll utilize the benefits of both scalable vector graphics (SVGs) and CSS export capabilities.
-
- 1
- 2
- 3
Using jQuery Plugins
jQuery plugins let you add interactive page effects, engaging user interfaces, and eye grabbing additions to your web pages. In this course, you'll learn how to find and use these free and easy to use programs that take advantage of the power of jQuery.
-
- 1
Java Maps
In this course we'll learn how to store key-value pairs by using a Map!
-
- 1
- 2
Web Design Process
Going from a blank screen to a finished website can be daunting. In this course, you'll learn about the major steps involved in designing websites. We'll learn how to gather information, explore potential concepts, and iterate on a design. By the end, you'll have the foundation you need to continue your design journey.
-
- 1
- 2
HTTP Basics
During this course, we'll look at the underlying method devices use to communicate with each other: HTTP or the HyperText Transfer Protocol. In particular, we'll focus on how a modern web browser automates the sending of HTTP requests and the receiving of HTTP responses.
-
- 1
- 2
- 3
- 4
Build a Simple Dynamic Site with Node.js
Node.js is a versatile platform for building all sorts of applications. In this course, we're going to make a dynamic website that displays a Treehouse student's profile information by creating a server that will dynamically generate content, handle URLs, read from files and build a simple template engine.
-
- 1
- 2
- 3
- 4
- 5
PHP Standards and Best Practices
PHP is a flexible language with a long history. Being such a popular language for so long means there is a lot of code out there. There are many ways to program in PHP, and not all of them are as safe, performant, or maintainable as some of the older educational materials might have you believe. Having so many options can be daunting to many developers as they grow from beginner to intermediate. Fortunately there are established best practices out there, and this course will help you learn about many of them.
-
- 1
- 2
- 3
- 4
Introduction to GraphQL
Simplify your backend with GraphQL, the new query language and runtime that is taking the world by storm. With GraphQL, itβs no longer necessary to resolve a bunch of different REST endpoints to get a complete chunk of data. We can use GraphQL to tell a server which data we want, and exactly what it should look like. Whether youβre a front-end developer looking to simplify your workflow, or a back-end developer looking for a way to compose more robust APIs, this course is the perfect place to start.
-
- 1
- 2
Prototyping in the Browser
Before you design a website, it's important to have some kind of a plan or a wireframe to guide your efforts. But sometimes when you go from a simple sketch to digital pixels, the results aren't exactly what you expect. When you work with real HTML and CSS, and you're able to see your site on a real screens, you're able to see a more accurate representation of the final result. In this course, we're going to build a website prototype using the Bootstrap web framework.
-
- 1
- 2
- 3
- 4
- 5
- 6
Express Basics
Learn how to use Express.js to build dynamic websites on the Node.js platform. In the process, you'll learn some fundamental HTTP concepts that you can apply to any other framework!
-
- 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.
-
- 1
- 2
- 3
- 4
- 5
GitHub Basics
GitHub is a collaboration platform built on top of a distributed version control system called Git and is the best place to share & collaborate on code. In this course, you will learn how to use the key features of GitHub to showcase your coding projects, work with others, and get into Open Source. First, learn how to navigate the site and explore open source software. Then, learn how to host your own personal projects and some best practices for developing code collaboratively. You will also cover how to use GitHub as a professional on a team and how to get started contributing to open source.
-
- 1
- 2
- 3
PHP Functions
PHP Functions allow you to combine several statements of code into a 'function'. These functions can then be called by their given name, and all of the code contained will run and return the results. This will drastically help you clean up code and use less repetitive code.
-
- 1
- 2
- 3
Build a Chatbot with Watson APIs
IBM has created an AI platform named Watson that gives businesses and developers access to powerful tools for text and speech analysis, computer vision, and more. Watson APIs consist of a suite of services used to process or analyze data to answer questions and make decisions. This course will show you how to build a chatbot with Node.js and the Conversation and Discovery services from Watson. You'll also learn how to setup your bot on the IBM Cloud platform.
-
- 1
- 2
- 3
Digital Media Through Photoshop
Get started with creating your own digital media files. Setting up your documents properly before you start creating will be crucial for your end product. In this course weβll learn what those considerations are as well as how to choose the right options. Weβll introduce the most prolific creative application Photoshop to set up our files, make some adjustments and come out the other end with a banner ad suitable for use on the the desktop and mobile as well as print. This course is perfect for anyone looking to get started with design or photography.
-
- 1
- 2
Data Visualization with Bokeh
Learn how to use the Bokeh library to generate interactive charts, graphs, and other visualizations using Python. We'll explore a world population data set and see how to generate different charts using this powerful library.
-
- 1
- 2
- 3
Prototyping with Figma
In this course, you'll learn how to build interactive and sharable prototypes in Figma, a web-based visual prototyping tool. You'll create a prototype for a "prosumer" mobile photography app, and by the end, you'll have a better understanding of how to create interactive prototypes that can be shared with project stakeholders and team members.
-
- 1
- 2
- 3
Python for File Systems
Python is a great language for the automated handling of files and directories. In this course, you'll learn how to navigate your file system with Python and create and manipulate files and directories. At the end, you'll build a project starter to make starting your Flask project just a little bit easier.
-
- 1
- 2
- 3
PHP & Databases with PDO
Whether you have aspirations of working on a Content Management System, an E-Commerce Site, a new and exciting web app, or an API you will eventually need to work with a Database. PHP and Databases work together through the use of PHP Data Objects or PDO for short.
-
- 1
- 2
Write Better Python
We've learned the ins and outs of Python. We're comfortable making all sorts of data types, writing functions, and creating classes. But now we need to look at how our Python code should be formatted so it matches the standard. We'll also look at how to get our code to give us help() and how we can use logging and pdb to help us keep track of what's going on inside the code.
-
- 1
- 2
- 3
- 4
Introduction to Product Design
Over the last 10 years, design has proven to be essential to the success of a business. With the rise of the internet and more software being created, and as start-ups and tech companies realize the impact of design on the business and on digital products, there has been an increasing need for design. This course will help you understand and get familiar with product design, the role of design throughout product development and delivery, the different components of product design, and the process of designing digital products and experiences.
-
- 1
- 2
- 3
Introduction to Data Visualization with Matplotlib
Get started creating charts with the Python library, matplotlib, an industry-standard data visualization library. Matplotlib provides a way to easily generate a wide variety of plots and charts in a few lines of Python code. It is an open-source project that can be integrated into Python scripts, jupyter notebooks, web application servers, and multiple GUI toolkits. Whether you are exploring sample data available on the internet, or your own business data, learning matplotlib is a great place to start your data visualization journey.
-
- 1
- 2
- 3
Flask Basics
Flask is one of the easiest ways to bring your Python skills online. It's a great microframework used by thousands of people to create prototypes and small web apps.
-
- 1
- 2
- 3
- 4
- 5
Intro to Design Thinking
Learn the user-centered methods and mindsets that entire businesses are using to improve their product experiences. Throughout this course, weβll go over how to find the voice of our user, the importance of that voice, and how to create a better experience for our user.
-
- 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
Game Development with Phaser
Learn how to make your own video game in this beginner-friendly course designed to teach the fundamentals of the Phaser game engine. This course takes a hands-on approach to learning by showing you how to setup and create two games from scratch. With this step-by-step guidance, you will gain a solid understanding of the features of the Phaser game engine needed to create a fun game. By the end of the course, you'll not only have two games to show for your effort, but you'll also gain the skills and confidence to build a game of your own.
-
- 1
- 2
- 3
- 4
- 5
- 6
Web Accessibility Compliance
Your content is clear, your images are responsive, your code is clean, and your layout flows beautifully on all the most popular devices. You think you're ready to launch, but you might have overlooked a crucial aspect of your website's development. If it's not easy for a person to access your content, regardless of the way in which they use the internet, there's still work to be done. Developing for accessibility should be part of the standard workflow, but it's often given too little attention. In this course, youβll learn about the standards in place to guide developers in creating a web that is accessible to all users as well as techniques to help bring your projects up to those standards.
-
- 1
- 2
- 3
- 4
Python Dates and Times
As a Python developer, you will inevitably come across the need to use dates and times in your projects. This course will teach you how to use Python to work with dates and times. You will learn how to manipulate and format dates, calculate time differences, and explore the built-in datetime module. By the end of this course, you will have a solid understanding of how to handle dates and times in Python for a variety of applications. Throughout this course, we'll work together to build a simple app that will utilize this new concept and solidify your understanding.
-
- 1
- 2
Collaborating with Developers
Designers will learn how to involve developers throughout the design process, from conceptual brainstorming to implementation in code.
-
- 1
- 2
- 3
Front End Web Optimization Workflow
As more people are getting on the web every day, there is a desire for those web sites and apps to load quickly. Most users have become accustomed to better and better performance from their home computers and with more apps moving to the web, that desire for performance is still there. The fact is that slow load times cause user frustration and you lose users and possibly money. In these lessons we're going to exercise some common real-world examples of how you can make a slow web app perform better using common techniques for front-end optimization. By the end, you will have a better understanding about how web apps work, what causes performance issues and how to best address them.
-
- 1
Regular Expressions in Python
Regular expressions are one of the tools that every programmer needs, but is often scared of. In this course, we'll explore the re module that Python provides and learn to write regular expressions for many different situations.
-
- 1
- 2
- 3
- 4
Usability Foundations
The concept of usability is directly tied to the success of websites and apps. How easy are they to use? We'll learn in this course how to ensure users can accomplish their goals on websites and apps, as well as laptops and mobile devices. We'll also consider the user centered approach to design, highlight common usability issues on sites and apps, and offer tips on how to ensure your designs stay as usable as possible.
-
- 1
- 2
- 3
- 4
Data Visualization Foundations
What is data visualization? A simple answer might be something like the graphic representation of data. But to get a better understanding of what practitioners of data visualization do, letβs start with the term data. By data, I mean raw, unorganized facts and numbers. Practitioners of data visualization take raw, hard-to-grasp data and turn that data into information by providing context and a purpose.
-
- 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.
-
- 1
- 2
- 3
- 4
Information Architecture
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 structures. By the end, youβll know how to organize website content and provide a clear, logical experience for any user.
-
- 1
- 2
- 3
Introducing Lists
Lists are a powerful data type that allows you to store multiple ordered values in a single container. You are gonna love them.
-
- 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.
-
- 1
- 2
- 3
Using Databases in Python
When you want to store data from a program, you have two general choices: files or databases. In this course, we're going to explore using a database from within Python by using the excellent ORM Peewee. We'll build a command line diary application that stores our thoughts and notes in a SQLite database, lets us review and delete them, and even has a search feature!
-
- 1
- 2
- 3
UX Design Patterns
If youβre a frequent user of websites and mobile applications, youβre already familiar with design patterns, whether youβre aware of them or not. Design patterns are visual strategies for solving common usability problems. Design patterns keep the cognitive load to a minimum by making interfaces feel intuitive. When I say cognitive load, I mean the mental effort involved in solving a problem or making a decision.
-
- 1
- 2
- 3
- 4
A Social Network with Flask
It's time to dig in and build something big. In this course, we're going to take the tools we've learned, Flask, Peewee, and Python itself, and build a small social network. We'll have user registration, user authentication, strongly hashed passwords, form validation, and more.
-
- 1
- 2
Working with $_GET and $_POST in PHP
This course will show you how to work with PHP Superglobals such as $GET and $POST while using a security-conscious mindset. External inputs, like HTML forms, are considered a security vulnerability so you should always filter inputs and escape outputs. Using PHP Superglobals when using external inputs such as HTML forms, cookies, sessions, and web servers will give you a security-conscious mindset that you can apply to all of your projects.
-
- 1
- 2
- 3
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.
-
- 1
- 2
- 3
- 4
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.
-
- 1
- 2
AWS with S3
Whether you're building a major web site, backing up vacation photos, or sharing large files with friends, Amazon's Simple Storage Service, S3, will come in handy. In this course, you'll learn the basics of setting up S3, creating buckets, and controlling file permissions.
-
- 1
- 2
- 3
- 4
JavaScript Unit Testing
In this course, youβll use Behavior Driven Development to write unit tests for your functions with the JavaScript testing framework Mocha.js. Writing unit tests will help you improve your code before you even start writing it. Youβll have fewer problems, and better understand the problems you do have.
-
- 1
- 2
- 3
- 4
- 5
Integrating PHP with Databases
Building a PHP-driven page is the first step in mastering PHP. The true power of PHP shines when you connect it to a data source like an API or a Database. To introduce you to databases, we'll use an example project -- a Personal Media Library application. We'll refactor this project by replacing an associative array with a database to provide a more robust and scalable tool to store the data in the media library. In the process, you'll learn how to use PDO -- a PHP extension to communicate with a database. You'll also learn about relational databases including how to search for data across multiple tables, as well as how to add common web site features like search forms and pagination.
-
- 1
- 2
- 3
- 4
Design Foundations
Have you ever wanted to understand and create aesthetic designs for the web? In this Deep Dive we will learn what design is and how to harness its power. Breakdown the components that conjure the perfect aesthetic. Also create and fix a design of your own.
-
- 1
- 2
- 3
Basic Object-Oriented Python
Learn the powerful object-oriented method of designing and laying out code.
-
- 1
- 2
- 3
- 4
- 5
Laravel Basics
This course will show you how to build the Treehouse course catalog using Laravel, one of the most popular PHP frameworks. You could easily use this project to create your own basic Laravel application using the MVC design pattern.
-
- 1
- 2
Introduction to pandas
Pandas provides fast, flexible, and expressive data structures that have been designed to make working with relational or βlabeledβ data not only easy, but also intuitive. Itβs the fundamental high-level building block for doing practical and real-world data analysis in Python.
-
- 1
- 2
- 3
- 5
Introduction to Wireframing
Wireframing is a useful part of the design process. Throughout a website or mobile app project, you will have a lot of ideas and the best way to sort through those ideas is to brainstorm. Wireframes are a visual artifact of brainstorming, and the goal is to make them with minimal effort, as to encourage ideation. Whether you're a designer or not, wireframing is an important skill to have in your toolkit. It's beneficial for product managers, marketers, or anyone else with ideas for a website or mobile app. Wireframes are a valuable tool for visualizing user experiences, iterating on ideas, and sharing ideas with others.
-
- 1
- 2
Markdown Basics
Learn the basics of Markdownβa simple, text-to-html tool used to format writing on the Web. It's used to write blogs, forum posts, technical documentation, and more. Whether you're having trouble formatting GitHub README files or want to learn about Markdown in general, this course is a great place to start.
-
- 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
Python Testing
Every project can benefit from testing and Python's testing library is solid, strong, and easy to learn and use. In this course, we'll learn about doctests, Python's unittest library, and the super-handy third-party package coverage.py. Come along and learn to assert yourself!
-
- 1
Basic Math for Data Analysis
Basic math concepts learned through traditional schools may have been forgotten or not utilized for a long time. This workshop is to remind students how to calculate basic statistics and refresh their memory on terminology.
-
- 1
- 2
- 3
- 4
Build a REST API with Laravel
Build a REST API using one of the most popular PHP frameworks, Laravel. In this course you'll learn how to implement CRUD operations in a Laravel REST API using the MVC design pattern.
-
- 1
Practice Creating and Using Functions in Python
Practice your function skills
-
- 1
- 2
- 3
- 4
Evaluating Design
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 preparing a test plan to presenting actionable findings.
-
- 1
- 2
- 3
- 4
- 5
Introduction to Docker
Docker allows any developer of any language to package an app into a container, like a shipping container. Containers include an app and all the other software it depends on, like databases. Containers let your users easily run your website, app, or service on any operating system they want. This course will show you how Docker works, and how it can make it easier to distribute your software!
-
- 1
- 2
- 3
- 4
PHP Basics
In this course I'll walk you through the basics of the language, ranging from basic statements to conditionals. We'll be creating a simple "Unit Converter" as well as a "Daily Exercise Program". We'll then finish up by combining those programs with HTML to create a personal webpage to demonstrate your skills.
-
- 1
- 2
- 3
- 4
Introducing ES2015
Learn the basics of the ECMAScript 2015, also known as ES6, JavaScript standard. JavaScript has come a long way since itβs inception in 1995. The ECMAScript 2015 specification brought a lot of improvements, the largest set of changes the language has seen to-date. In this course, weβll review some of the new features and demonstrate how they can be used to build better JavaScript applications.
-
- 1
- 2
- 3
Ruby Collections
In the Ruby Collections course at Treehouse, you'll level up your Ruby knowledge and start learning about collections. We use two basic data structures to create collections in Ruby: arrays and hashes. These are both examples of "collections" and youβll work with them a lot in your career as a Ruby programmer. During the course, we'll be writing simple programs that build on what we learned in this course and in previous courses.
-
- 1
- 2
SQLAlchemy Basics
Creating a SQL database including model creation and CRUD using SQLAlchemy.
-
- 1
Introducing Tuples
Learn about a Python data structure that's similar to lists but with one key difference!
-
- 1
- 2
- 3
- 4
UX Content Strategy
With so many websites and apps offering similar content and features, you need to provide a unique experience to compete - something memorable and enjoyable that resonates with your users. UX Content is how itβs done. From your home page and product descriptions down to your error messages, UX content can turn generic interactions into memorable experiences. By establishing a unique voice and personality, you can create an environment that welcomes, supports, and inspires users during their visit. So in this course, weβll discuss why UX Content is so important, where you need it, how to create it, and how to ensure itβs effective.
-
- 1
- 2
- 3
PHP Arrays and Control Structures
This course builds on the foundational skills covered in the PHP Basics course. We'll explore conditionals, loops and the compound variable -- arrays. All of which help your write more powerful and intelligent programs using less code.
-
- 1
- 2
- 3
- 4
User Authentication With Express and Mongo
Learn how to implement a custom user authentication system that controls users access to web resources using Node.js using Express and MongoDB. The system lets users sign up, log in, and log out, limiting access to password-protected resources. Express is a popular web framework for creating MVC applications and RESTful APIs in Node.js. Express lets developers define routes and middleware for submitting and retrieving data in our database. We will leverage the document based NoSQL database, MongoDB, to store our user data by creating a user model with mongoose. Mongoose is an open source Node package for defining data models for an application and connecting to MongoDB.
-
- 1
- 2
- 3
Ruby Loops
In Ruby Loops, you'll learn how to automatically repeat statements using Ruby. You'll learn about the loop construct, including while loops, until loops, for loops, and more. You'll also learn the basics of iteration and then move on to creating a simple contact list management program.
-
- 1
Basic Statistics for Data Analysis
Basic statistics concepts learned through traditional schools may have been forgotten or not utilized for a long time. This course is to remind students how to calculate basic statistics, solidify understanding of the terminology, and determine which graphs might be most useful in displaying data.
-
- 1
- 2
Flask with SQLAlchemy Basics
Learn how to use the popular Python framework for creating websites and web applications, Flask. Then upgrade your website with a database connection using SQLAlchemy.
-
- 1
- 2
- 3
Functions, Packing, and Unpacking
Learn the ins and outs of Python functions, how to send and receive values to functions, and all about Python packing and unpacking.
-
- 1
- 2
- 3
- 4
- 5
Building a Portfolio
Your portfolio is the most immediate means for a potential employer to decide if youβre a good fit. This course will give you insight into creating and curating a collection of your work that will most accurately reflect what you value as a designer/developer, what it might be like to work with you, and what to expect in terms of your output.
-
- 1
Introduction to REST APIs
Many of the APIs you'll encounter on the Web use an underlying design idea known as REST, which stands for Representational State Transfer. Understanding what and how a REST API provides will help you build better and stronger APIs for your users.
-
- 1
- 2
- 3
- 4
CRUD Operations with PHP
In this course we'll delve into the full spectrum of database interactions. Whether the application is an e-commerce, or social network site, or even a todo app on your phone, the data needs to change over time. CRUD is an acronym that refers to the four main operations that you'd want to perform on data in a database: Create, Read, Update, Delete.
-
- 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.
-
- 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.
-
- 1
- 2
Preparing Data for Analysis
Learn how to clean and prep data for analysis using spreadsheet tools and Python's Pandas.
-
- 1
Technical Interview Prep: Python Basics