In this course you will learn Ruby, the language designed specifically with programmer happiness in mind. By the end of it all, you'll have built some pretty sweet projects including Tic Tac Toe, Hangman, a real web server, and even Chess. You'll be able to put together a Twitter spambot (that really spams!), save and open files, test out your code, separate your spaghetti code into nice modular classes, and even reproduce some basic algorithms and data structures for solving complex problems. Basically, you're going to start feeling a whole lot more like a real programmer and that feeling will be justified.
In this section, we'll cover the basic building blocks of Ruby so you have them down cold. Everything else you'll learn in programming builds on these concepts, so you'll be in a great place to take on additional projects and languages in the future.
It's time to get acquainted with what this will look like from here on out.
A more in-depth look at the Ruby fundamentals like Variables, Data Types, Strings, and Methods.
It's time to start getting used to building scripts without the training wheels on.
We'll continue our journey into the fundamentals, this time with Control Flow, Looping, Arrays, Hashes, Blocks and Sorting.
You've got tools in your Ruby tool box and now it's time to combine them into more meaningful programs. In this section, you'll learn how to turn your spaghetti code into properly organized methods and classes. You'll also learn how to serialize code and save it into files.
Fundamental concepts about object oriented programming that will help you with any programming language you learn from here on out.
It's time to flex those new muscles a bit by building Tic Tac Toe and Mastermind on the command line
What if you want to save the state of your program? How about loading in a file? Some basic operations like these will be covered here.
This brief section will bridge the gap between what you've been doing on the command line and the wide world of the Internet... how do you send automated Tweets? How about building a basic web server and browser of your own!
In this section, you'll learn some fundamental computer science concepts that will help you when solving problems with a bit more complexity than just simple web serving. You get to try on your engineering hat and solve some pretty nifty problems.
Get a taste of what's coming up ahead and what the bigger world of CS looks like beyond the scope of this course.
Learn how making a function call itself can be helpful for making big problems into smaller problems
Take your newfound knowledge and apply it to a couple of classic recursive problems
Learn why we use different data structures to handle our data and some classic algorithms for searching through them to help solve problems
You've been briefly introduced to testing in Ruby a couple of times before in the Web Development 101 course, but now you're going to really learn why testing can be hugely helpful and how to apply it to your own projects.
You should be familiar with the basic Git workflow since you've been using it to save your projects along the way (right?!). This section will start preparing you for for the more intermediate-level uses of Git that you'll find yourself doing .
You've come an exceptional distance already, now there's just the matter of wrapping it all together into one coherant package and creating something real. This is your Final Exam and a major feather in your cap. Once you've completed this section, you should have the confidence to tackle pretty much anything.