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

For Beginner Programmers

Get started now

One question that Learn Enough strives to answer is, “Where do I start if I don’t know where to start?”

For absolute beginners, the answer is clear: start with the foundational skill of the Unix command line. The command line is a text-based program for interacting with a computer, but Learn Enough Command Lineto Be Dangerous doesn’t even assume you know that.

Surprisingly, this answer is actually unusual. Many people would recommend starting with HyperText Markup Language, the language of the Web, or even JavaScript, the programming language that runs inside web browsers.

But how are you going to write that HTML? How are you going to deploy that JavaScript?

You’ll write HTML using a text editor, a specialized tool for editing plain-text formats like HTML and code. And you’ll launch that text editor at the command line.

You’ll deploy that JavaScript application by pushing to the GitHub website and publish it using a service called GitHub Pages. That requires using a version control called Git to track the changes in your project. And how do you interact with Git? You guessed it—at the command line.

As author Neal Stephenson famously put it, “In the Beginning was the Command Line.”

Of course, if you already know the command line and, say, a text editor, you can always start at next tutorial in the sequence—in this case, Learn Enough Git to Be Dangerous.

No matter what level you’re at, Learn Enough gives you a perfect place to start.

Join the Mailing List

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