You have to make a choice. Choose...wisely.

Get occasional notifications about things like product discounts, blog posts, and new or updated tutorials. Unsubscribe at any time.

Gift Delivery Options
Quick Checkout
or Pay by Credit Card
Error processing your payment
  • You didn't choose whether or not to be added to the mailing list
Confirm
$0.00

Payments and credit card details are securely managed and protected by Learn Enough's payment processor, Stripe. More information on their site:

CART
Total
$0.00

Your Cart is Empty

$30
$300
$300
$XY
$XY
1234

the All Access subscription

Start a new career or even your own company with the Learn Enough All Access subscription! This comprehensive series of self-paced online courses includes the entire Learn Enough introductory sequence and the full Ruby on Rails Tutorial.

Start by learning enough Command Line, Text Editor, Git, HTML, CSS & Layout, JavaScript, and Ruby to be dangerous. Then learn how to build profession-grade web applications with Ruby on Rails.

7-day free trial included on all new All Access subscriptions!

ebooks
3200 pages
screencasts
66 hours
courses
79 chapters
 
686 videos
 
945 exercises

The Learn Enough

All Access Subscription

The All Access subscription includes online access to all our tutorial courses: online book content, streaming screencast videos, progress tracking, exercise answers, completion certificates, and exclusive access to a private community-supported Slack chat group.

7-day free trial included on all new All Access subscriptions! Cancel any time before the trial ends and still keep access through the end of the trial period without getting charged.

All Learn Enough tutorials come with a 60-day 100% money-back guarantee.

Money-Back Guarantee

All Learn Enough tutorials come with a 60-day 100% money-back guarantee. If for any reason you aren’t satisfied with any tutorial purchase, just let us know and we’ll refund your payment.

Get all of

The Learn Enough Tutorials

in one place

Command Line
MORE INFO

Suppose you wanted to go search through a large amount of text and count the number of lines matching a particular word or phrase. Say, the number of times the word “rose” appears in the famous Sonnets by William Shakespeare. What might be the easiest way to do this? The answer is to use the command line.

Understanding the basics of the command line is absolutely essential to becoming a skilled software developer. It’s also useful for anyone who needs to work with developers, such as product managers, project managers, and designers. Making this critical component of modern computing accessible to as broad an audience as possible is the goal of Learn Enough Command Line to Be Dangerous.

To be productive with the command line, you don’t have to know everything about it—you just have to learn enough to be dangerous.

Text Editor
MORE INFO

Plain text is one of the most important kinds of computer data. It makes up World Wide Web pages, computer source code, system configuration files, and more. The tool used to edit plain text files is called, appropriately enough, a text editor.

Unlike other text editor tutorials, which are typically tied to a specific editor, this tutorial is designed to introduce the entire category of application—a category many people don’t even know exists. Moreover, editor-specific tutorials tend to be aimed at professional developers, and generally assume years of experience, but Learn Enough Text Editor to Be Dangerous doesn’t even assume you know what a “text editor” is.

To be productive with text editors, you don’t have to know everything about them—you just have to learn enough to be dangerous.

Git
MORE INFO

Version control solves a problem that might look familiar if you’ve ever seen Word documents or Excel spreadsheets with names like Report_2014_1.doc, Report_2014_2.doc, Report_2014_3.doc, or budget-v7.xls. These cumbersome names indicate how annoying it can be to track different versions of documents. Learn Enough Git to Be Dangerous teaches you how to use Git, the most popular and powerful version control system.

A version control system provides an automatic way to track changes in software projects, giving creators the power to view previous versions of files and directories, develop speculative features without disrupting the main development, securely back up the project and its history, and collaborate easily and conveniently with others. In addition, using version control also makes deploying production websites and web applications much easier. As a result, fluency in at least one version control system is an incredibly valuable skill for developer, designer, and manager alike.

To be productive with Git, you don’t have to know everything about it—you just have to learn enough to be dangerous.

HTML
MORE INFO

HyperText Markup Language, or HTML for short, is the universal language of the World Wide Web. Every time you visit a website, the site’s web server sends HTML to your browser, which then renders it as the web page you see on your screen.

Because this process is universal, anyone who works with web technologies—which these days means virtually all developers, designers, and even many managers—can benefit from knowing the basics of what HTML is and how it works. Learn Enough HTML to Be Dangerous is designed to give you this foundation in basic HTML.

CSS & Layout
MORE INFO

CSS—short for Cascading Style Sheets—is the styling language of the World Wide Web. CSS lets developers and designers define what a web page looks like and how it behaves. Pretty much every website that you visit uses CSS to make the user experience and interface look inviting, which means that learning the basics of CSS is an essential part of becoming a web developer or designer.

Most CSS tutorials teach the subject in isolation, showing you how to make individual changes to things like text color or font size, without showing you how to put everything together as an integrated whole. In contrast, Learn Enough CSS & Layout to Be Dangerous is specifically designed to show you how CSS works in the context of a real website. In particular, you’ll learn not only CSS but also a static site builder. This is a powerful but oddly neglected tool that lets you control your site layout in ways that are difficult or impossible otherise.

Python
MORE INFO

Python is a powerful and popular programming language with applications ranging from shell scripting to web development to data science. Learn Enough Python to Be Dangerous is designed to get you started writing practical and modern Python programs as fast as possible, with a focus on the real tools used every day by software developers.

Learn Enough Python to Be Dangerous broadly follows the structure of Learn Enough JavaScript to Be Dangerous and Learn Enough Ruby to Be Dangerous, both of which can be studied either before or after this tutorial. Because many of the examples are the same, the tutorials reinforce each other nicely—there are few things more instructive in computer programming than seeing the same basic problems solved in two different languages.

To be productive with Python, you don’t have to know everything about it—you just have to learn enough to be dangerous.

JavaScript
MORE INFO

As the only language that can be executed inside web browsers, JavaScript is an essential part of every programmer’s toolkit. Learn Enough JavaScript to Be Dangerous is designed to get you started writing practical and modern JavaScript programs as fast as possible, using the latest JavaScript technologies (including Node.js and ES6), with a focus on the real tools used every day by software developers.

Unlike most JavaScript tutorials, Learn Enough JavaScript to Be Dangerous treats JavaScript as a general-purpose programming language right from the start, so the examples won’t be confined to the browser. The result is a unusually broad and solid foundation not only for web development, but for computer programming generally.

To be productive with JavaScript, you don’t have to know everything about it—you just have to learn enough to be dangerous.

Ruby
MORE INFO

Ruby is an elegant object-oriented programming language with applications ranging from shell scripting and package management to full-stack web application development. Learn Enough Ruby to Be Dangerous is designed to get you started writing practical and modern Ruby programs as fast as possible, with a focus on the real tools used every day by software developers.

Learn Enough Ruby to Be Dangerous broadly follows the structure of Learn Enough JavaScript to Be Dangerous, which can be studied either before or after this tutorial. Because many of the examples are the same, the tutorials reinforce each other nicely—there are few things more instructive in computer programming than seeing the same basic problems solved in two different languages.

To be productive with Ruby, you don’t have to know everything about it—you just have to learn enough to be dangerous.

Ruby on Rails (Rails 6)
MORE INFO

The Ruby on Rails Tutorial teaches you how to develop custom web applications with the popular Ruby on Rails web framework. Since its launch in 2010, the Ruby on Rails Tutorial has been the leading introduction to web development with Rails.

The Ruby on Rails Tutorial is designed to give you a thorough introduction to web application development, including a basic grounding in Ruby, Rails, HTML & CSS, databases, version control, testing, and deployment—sufficient to launch you on a career as a web developer or technology entrepreneur. If you already know web development, this book will quickly teach you the essentials of the Rails framework, including MVC and REST, generators, migrations, routing, and embedded Ruby.

Ruby on Rails (Rails 7)
MORE INFO

The Ruby on Rails Tutorial teaches you how to develop custom web applications with the popular Ruby on Rails web framework. Since its launch in 2010, the Ruby on Rails Tutorial has been the leading introduction to web development with Rails.

The Ruby on Rails Tutorial is designed to give you a thorough introduction to web application development, including a basic grounding in Ruby, Rails, HTML & CSS, databases, version control, testing, and deployment—sufficient to launch you on a career as a web developer or technology entrepreneur. If you already know web development, this book will quickly teach you the essentials of the Rails framework, including MVC and REST, generators, migrations, routing, and embedded Ruby.

Action Cable
MORE INFO

Learn Enough Action Cable to Be Dangerous teaches you how to use the WebSocket Protocol, a complement to the standard HyperText Transfer Protocol (HTTP) that creates a persistent connection between servers and clients, allowing two-way communication between them. The result is that WebSockets allow developers to create real-time applications such as chat apps and game servers that are far more interactive than ordinary web pages.

When using WebSockets, it’s nice to be able to have users log in, store their attributes in a database, render templates back to the browser, etc. In other words, it’s nice to have the power of a full-strength web framework like Ruby on Rails behind us. This is where Action Cable comes in. Action Cable gives us the best of both worlds: real-time communications with WebSockets combined with all the convenience and flexibility of Rails.

To be productive with Action Cable, you don’t have to know everything about it—you just have to learn enough to be dangerous.

About the Authors
Michael-hartl

Michael Hartl

Michael Hartl is the creator of the Ruby on Rails Tutorial, one of the leading introductions to web development, and is cofounder and principal author at Learn Enough. Previously, he was a physics instructor at the California Institute of Technology (Caltech), where he received a Lifetime Achievement Award for Excellence in Teaching. He is a graduate of Harvard College, has a Ph.D. in Physics from Caltech, and is an alumnus of the Y Combinator entrepreneur program.

Lee-Donahoe

Lee Donahoe

Learn Enough cofounder Lee Donahoe is an entrepreneur, designer, and front-end developer. In addition to doing the design for Learn Enough, Softcover, and the Ruby on Rails Tutorial, he is also a cofounder and front-end developer for Coveralls.io, a leading test coverage analysis service, and is tech cofounder of Buck Mason, a men’s clothing company once featured on ABC’s Shark Tank. Lee is a graduate of the University of Southern California, where he majored in Economics and studied Interactive Multimedia & Technologies.

Join the Mailing List

Get occasional notifications about things like product discounts, blog posts, and new or updated tutorials. Unsubscribe at any time.