---
title: 'Announcing: Our Online Learning Platform Upcase is Now Free!'
teaser: 'We''ve got some big news about our online learning platform Upcase, and we
  think you''re gonna love it!

  '
tags: news,upcase,rails,web,git,vim,tmux
author: Chris Toomey
published_on: 2018-10-18
---

If you’re not familiar, [Upcase][] is our online learning platform. While
mentoring client teams, we found that there was plenty of content available
targeted at folks new to web development, but not much focused on the
intermediate and advanced developers looking to take their skills up another
notch. With Upcase we built that content.

For six years we've shared our thinking, workflows, and approach to building web
apps via Upcase. We've been able to help thousands of developers level up their
skills through workshops, videos, flash cards, and coding exercises. Until now,
Upcase required a subscription fee, **but as of today, everything on Upcase is
completely free** 🎉.

[Upcase]: https://thoughtbot.com/upcase

## But... why?

We've loved building Upcase, both as a business and as a way to share what we've
learned with the community. But while we'd love to keep investing in Upcase and
producing tons of new content, we’ve been moving in a different direction—back
to our roots, in fact, as we focus on our core consulting business.

So what to do with this learning platform we’ve poured our hearts and souls
into? We ultimately decided the best option was to open Upcase up to the world
and share all of the content, no subscription needed. As they say, if you truly
love something, set it free.

**Teaching and mentoring is core to [our
mission](https://thoughtbot.com/purpose)** and a big part of what keeps us happy
in our work here at thoughtbot. It feels right to make Upcase free and allow
folks to share and reference it however they'd like.

## Where to Start

Upcase has a ton of content, so if you're looking for a good place to start, try
any of these full-length courses that provide guided lessons on key topics:

### Ruby on Rails

- [Intermediate Ruby on Rails][]
- [Advanced ActiveRecord Querying][]

[Intermediate Ruby on Rails]: https://thoughtbot.com/upcase/intermediate-ruby-on-rails-five
[Advanced ActiveRecord Querying]: https://thoughtbot.com/upcase/advanced-activerecord-querying

### Testing

- [Fundamentals of TDD][]
- [Test Driven Rails][]

[Fundamentals of TDD]: https://thoughtbot.com/upcase/fundamentals-of-tdd
[Test Driven Rails]: https://thoughtbot.com/upcase/test-driven-rails

### Workflow

- [Onramp to Vim][]
- [Mastering Git][]
- [Tmux][]

[Onramp to Vim]: https://thoughtbot.com/upcase/onramp-to-vim
[Mastering Git]: https://thoughtbot.com/upcase/mastering-git
[Tmux]: https://thoughtbot.com/upcase/tmux

### Weekly Iteration

In addition to the longer courses, Upcase features a large collection of
stand-alone videos that dig deep into specific topics. For a few
recommendations:

- [thoughtbot's Approach to Ruby][]
- [Refactoring, Extraction, and Naming][]
- [Testing in Isolation][]
- [Stubs, Mocks, Spies, and Fakes][]
- [Mutation in Ruby][]
- [Testing Interaction with 3rd-party APIs][]
- [Ruby Science: Extract Method][]
- [Optimizing SQL Queries in Postgres][]
- [Elixir & Phoenix in Production][]
- [RSpec Best Practices][]
- [Computer Science: Why Bother?][]

We're extremely proud of what we've built with Upcase, and we're excited to be
able to share it with even more people. So, what are you waiting for?

<div class="post-cta-section" style="border-color: #e7e7e7; background-color: #f8f8f8;">
  <div class="cta-image-wrapper">
    <img class="cta-image"
src="https://images.thoughtbot.com/upcase/upcase-animation.gif" alt="Upcase">
  </div>

  <div class="cta-content">
    <p>
      <strong>Upcase is now completely free</strong>: today's the perfect day
      to start becoming an even better developer with help from your friends at
      thoughtbot.
    </p>

    <a class="cta-button"
      style="font-weight: bold; padding-right: 2rem; padding-left: 2rem;"
      href="https://thoughtbot.com/upcase">
      Start Learning Today!
    </a>
  </div>
</div>

[thoughtbot's Approach to Ruby]: https://thoughtbot.com/upcase/videos/thoughtbots-approach-to-ruby
[Testing in Isolation]: https://thoughtbot.com/upcase/videos/testing-in-isolation
[Testing Interaction with 3rd-party APIs]: https://thoughtbot.com/upcase/videos/testing-interaction-with-3rd-party-apis
[Stubs, Mocks, Spies, and Fakes]: https://thoughtbot.com/upcase/videos/stubs-mocks-spies-and-fakes
[Form Objects]: https://thoughtbot.com/upcase/videos/form_objects
[FactoryBot]: https://thoughtbot.com/upcase/videos/factory-bot
[Mutation in Ruby]: https://thoughtbot.com/upcase/videos/mutation-in-ruby
[Ruby Science: Extract Method]: https://thoughtbot.com/upcase/videos/ruby-science-extract-method
[Blocks: What Are They Good For?]: https://thoughtbot.com/upcase/videos/blocks-what-are-they-good-for
[Optimizing SQL Queries in Postgres]: https://thoughtbot.com/upcase/videos/optimizing-sql-queries-in-postgres
[Elixir & Phoenix in Production]: https://thoughtbot.com/upcase/videos/elixir-and-phoenix-in-production
[RSpec Best Practices]: https://thoughtbot.com/upcase/videos/rspec-best-practices
[Refactoring, Extraction, and Naming]: https://thoughtbot.com/upcase/videos/refactoring-extraction-naming
[Computer Science: Why Bother?]: https://thoughtbot.com/upcase/videos/computer-science-why-bother
[Sandi Metz's Rules]: https://thoughtbot.com/upcase/videos/sandi-metzs-rules
