
Master ruby basics and four rails-focused sections, including a to-do list app, a weather app with an API, and a stock portfolio with real-time data.
Check out my student Facebook Group...
It's a great place to get fast support for this course from me, to interact with other students, to post your projects and code, and to access course announcements and extras...
Join Now!
https://www.facebook.com/groups/codemycom/
Install the tools to set up a Ruby development environment, learn basics like strings and variables, then explore conditionals, loops, hashes, fizz buzz, and methods and classes for Rails.
Install the Sublime Text editor and Git Bash terminal to run Ruby across Windows, Mac, and Linux; Windows Ruby will be covered in the next video.
Install ruby for windows with the ruby installer from rubyinstaller.org, including dev kit, and add the ruby path so you can run ruby from anywhere.
Learn how puts outputs a string on its own line and how print outputs on a single line, with examples like hello world and my name is John Elder.
Master Ruby string manipulation by treating strings as objects and applying dot methods like downcase, upcase, capitalize, reverse, and length to transform text.
Master variables in Ruby by naming them with lowercase letters and underscores, distinguishing strings from numbers, and using descriptive names like first_name and age. Note that uppercase names denote classes.
Learn how to get user input in Ruby using gets, store it in a variable, and use interpolation to print a personalized message.
Explore Ruby math basics, including integers vs floats, modulus, exponents, and standard operators. Learn why integer division yields 3 and how to get decimals by designating floats.
Convert user input from string to integer in Ruby using gets and gets.to_i, then perform arithmetic and interpolate results. Learn to convert back to string with to_s.
Explore assignment operators in Ruby, including plus equals, minus equals, multiply equals, divide equals, exponent, and modulus, and see how they update age with age += 1 in loops.
Master Ruby conditional statements by testing numbers and strings with if, else, and else if. Create interactive programs using user input, comparison operators, and branching to handle different outcomes.
Explore arrays as multi-item containers, learn to create named arrays, access items by index, and retrieve the last element using length minus one, including multi-dimensional arrays.
Discover how the while loop executes while a condition is true, using a counter that increments to prevent infinite loops, and ends when the condition becomes false.
Learn how the Ruby each loop iterates over ranges and arrays. See how to use a block with a variable, print with puts, and apply Ruby underscore naming conventions.
Explore hashes, a more complex data structure than arrays, using curly braces and hash rockets to pair keys and values like John and Mary’s favorite pizzas, accessible by keys.
design and implement a fizz buzz program from 1 to 100 using loops and conditionals, printing numbers, fizz, buzz, or fizz buzz based on divisibility.
Learn how to define and call methods in Ruby, pass inputs, interpolate variables, and use methods to control the flow of your program.
Understand how a class is a blueprint that produces Ruby objects with inputs and methods, and learn to explore the Ruby core docs for String, Array, and more.
Create a getter for a square class to return the side length from its instance variable, enabling straightforward object-oriented access. This video leads into setters in the next lesson.
Explore creating a class with initialize, a getter, and a setter using the equals sign to update the side length, and observe changes in output.
Learn how to use attr_accessor to auto-generate getters and setters for class attributes like a square’s side length and area, then update and print the side length to verify.
Learn to build a simple draw method in ruby that prints a square of asterisks, controlled by side length, using loops and object oriented concepts.
Learn to set up Ruby on Rails on Windows, including installing Node, choosing a text editor like Sublime, and using Git Bash with the Heroku toolbar.
Install node.js to support ruby on rails by first uninstalling any existing version, then download the latest long-term support release from nodejs.org and restart your computer after installation.
Install Sublime Text and the Git Bash terminal, with step-by-step download and default settings. Learn to set up SSH keys for secure connections to GitHub and Heroku for version control.
Learn how to generate an ssh key in bash, save it in a hidden directory, and use the public key to push code to GitHub and Heroku for Rails workflow.
Install the Heroku toolbelt to connect your terminal to Heroku and deploy Ruby on Rails apps. Learn to set the path, install Node, and verify the installation with heroku --version.
Install Ruby on Rails using Rails Installer dot org instead of the official site; select a Ruby version, run the installer, and set the path to access Rails from anywhere.
RailsInstaller.org is down, you can find the installer here:
https://web.archive.org/web/20210306035811/http://railsinstaller.org/en
Create a test Rails project to verify installation, then fix installation errors by updating the database gem version in the Gemfile and running bundle install.
Build a to-do app with Rails scaffold to auto generate the database, pages, and forms, using a lists table with description (string) and completed (boolean), and learn about migrations.
Explore Rails scaffolding, migrations, and the automatic generation of views, controllers, and routes, then see how rake routes exposes CRUD operations for a live to-do list app.
Configure the root route to point to the lists index by updating the config folder's routes file, linking the home page to the index action of the lists controller.
Explore Rails views by navigating index, show, and edit pages, and rendering a form partial with embedded Ruby. Inspect lists data rendering, updates, and scaffold-driven functionality, preparing for Bootstrap styling.
Install bootstrap css in a ruby on rails project by adding the bootstrap gem and updating assets. Then run bundle install and restart the server to apply the new styles.
Learn to style todo items by marking them complete with a checkbox and applying a gray bootstrap class via conditional ERB, updating table rows and simplifying markup.
Add a custom CSS class Stryker to apply text-decoration: line-through to completed items in a Rails app, leveraging assets and bootstrap styles to update the index view.
Learn to create links in Ruby on Rails with link_to and embedded Ruby, use edit_list_path for editing, and manage visibility by removing the equal sign in ERB.
Learn how to implement redirection in Rails by updating the controller to redirect to the main index after edit and create actions, and display a top notice.
Explore how flash messages in Rails appear as notices on index, show, and edit pages, and render them with a reusable _flash.html.erb partial styled with bootstrap alerts.
Move the form onto the index page, reuse a form index partial for new and edit flows, and wire it to the lists controller to add and manage to-do items.
Add a Bootstrap navigation bar by copying the component code, create a partial, and render it on every page via the application layout using yield.
Replace the navbar clutter with a copied, styled form, render it from the form index, and iteratively adjust wrappers, form-group, and form-control to achieve the desired layout and button styles.
Experiment with table colors by adjusting the dark border and background, try lighter text, and test nav bar color changes to refine the table appearance.
Learn to add a delete marked items feature in Rails: wire a trash action, route, and link to remove all completed items with a confirmation prompt and user feedback.
Add a delete all items feature in a Rails app by creating a delete link, wiring a trash method, and routing to bulk delete with confirmation.
Learn to implement checkbox-style buttons in a Rails list to mark items as completed or not, using a form with hidden fields and a toggled checked state.
Discover how to deploy a Rails app to Heroku using the free tier, switch production database from sequel lite 3 to Postgres, and push via GitHub with bundle install.
Learn to deploy Ruby on Rails apps to Heroku using the Heroku tool belt, create and rename apps, push code with Git, and run migrations to update the database.
Configure a real domain for your Heroku app by adding it in settings and updating registrar dns with Namecheap or GoDaddy; understand propagation and basic pricing tiers.
Redirect all create, update, and delete actions to the root URL by updating redirects in the list controller, replacing lists_url with root_url to keep users on the root path.
Build a simple Ruby on Rails app that checks air quality using the AirNow API, pulls data, and displays a color-coded ozone level with basic logic.
Refer Back To The Ruby On Rails Installation Section if you need help installing Rails and the tools that we'll need...
Create a new Rails project named ozone, generate a home controller with an index view, set routes to root, and run bundle install and Rails server to view localhost:3000.
Install bootstrap in a Rails app by adding the bootstrap gem and jquery-rails, wiring assets and javascript, bundling, restarting the server, and verifying visual changes.
Learn how to add a Bootstrap navbar to a Rails app by creating a partial, rendering it in the application layout, and customizing with a dark style and container spacing.
Learn to build a Bootstrap page by adding a jumbotron, switching a button to secondary, and displaying an ozone readout on the home page.
Learn to display API results on screen by parsing Ruby arrays and hashes, access the AQI value, and add basic error handling for API glitches.
Add descriptive messages to color statuses on the index page using embedded Ruby, refine the home controller, and update navigation, styling, and layout for a Ruby on Rails UI.
Learn to create a zip code search page in Rails by defining routes, building a zip code view, and passing form data as params to the controller, with error handling.
Implement basic error handling for a search form by checking for empty zip input, renaming variables to zip_query, and preparing to call an API to fetch and display results.
Learn how to set up version control with Git, initialize a repository, add and commit files, and push code to GitHub for safe, shareable Rails projects.
Learn how to rename your Heroku app to a custom domain and connect it using a registrar such as Namecheap or GoDaddy by creating a CNAME record.
Please Refer Back To The Ruby On Rails Installation Section if you need help installing Rails and the tools that we'll need...
Create your first rails webpage by using rails generate to scaffold a home controller and index view (erb), set up a route, and preview in the browser.
Configure the root route to make the home page the default view by editing routes.rb, switching to root 'home#index', and removing or commenting the old get 'home/index' route.
Master version control with git: initialize a repository, configure user name and email, add changes with git add, and commit with meaningful messages to back up your code.
Create an about page in Rails manually by defining an about action in the home controller, adding the about view, and wiring the route.
Learn how the application.html.erb layout in Rails injects common page elements via yield, enabling a single template to update navigation, footer, and title across all pages.
Learn how Rails uses embedded Ruby to create dynamic links with link_to, compare to standard HTML href, and use root_path and home_about_path to keep links updated as routes change.
Learn to use Bootstrap to style a website, explore Bootstrap components like alerts, buttons, cards, carousel, forms, jumbotron, and navbar, and install Bootstrap in Rails.
Learn two methods to use bootstrap with Rails: quick reference by linking files, or full install via the bootstrap gem, updating Gemfile and assets, then bundle install and restart.
Build a bootstrap navbar by copying bootstrap code, customize colors and links, and apply embedded ruby links with nav-link and nav bar brand classes in a Rails app.
Install and use the stock quote gem to fetch stock data in a Rails app, exploring symbols, company names, and latest prices, while noting gem updates and API key requirements.
Explore the stock quote gem to fetch company data, logo, and stats such as market cap, 52-week highs/lows, and descriptions, then apply dynamic queries in your Rails app.
Apply basic error handling in Ruby by adding an if/elsif flow to validate ticker input and display a helpful message when nothing is entered.
Develop robust error handling in Ruby on Rails by validating stock symbol input, distinguishing blank or invalid entries, and displaying clear, user-friendly error messages without crashing the app.
Set up Devise authentication by generating a user model, running migrations, and creating a users table with email and encrypted password, exploring Rails db:migrate and schema updates.
Learn to implement flash messages in a Rails app using Devise and Bootstrap. Explore restarting the server, inspecting routes, and rendering a flash partial for login feedback.
Add devise links to the nav bar for sign up and log in via new_user_registration_path and new_user_session_path, and plan to show/hide links based on login status.
Apply bootstrap forms to login and registration pages by wrapping inputs in form-group, adding form-control classes, and styling buttons, while using bootstrap docs for layout ideas like jumbotron.
Implement conditional navbar links in a Rails app using embedded Ruby; show edit profile and log out when signed in, otherwise sign up or log in.
Create a stocks table to track each user's stocks, using Rails scaffold to generate the model, controller, and views, then migrate the database and update the schema.
Explore how the stocks views and controller actions work in Rails, including index, show, new, edit, create, update, and destroy, plus resource routes and upcoming associations.
Learn how to establish Active Record associations by making a user has many stocks and each stock belongs to a user, linking stocks and users tables and updating views.
Implement user authentication with devise and before_action authenticate_user to protect stock actions. Learn to display only a user's own stocks and handle crud securely.
Enforce owner-only access in the stocks controller with a correct_user before_action, using current_user to restrict edits, updates, and destroys to the owner's stocks and filter shown stocks.
Assign the stock's user_id to the current_user in the new form, and hide that field from the view. Filter stocks by the logged-in user on the show and index pages.
Filter the stocks index to the current user by using stock.user_id in an each loop, displaying only that user's stocks and their show, edit, and destroy links.
Wire the stocks index view to the quote gem by using the stock ticker to fetch and display current prices and company names, with basic error handling and formatting.
Explore handling blank stock inputs and showing an error when a stock doesn't exist. Apply page-level error handling to prevent adding invalid records to the database.
Style a stock index table with bootstrap to display company name, ticker, price, and market cap, using borders, stripes, and hover effects for an engaging Rails bootstrapped stock page.
Refine error handling for stock data by adding market cap validation, handling invalid tickers via the stock quote gem, and ensuring edit and delete actions persist in the database.
Learn to build and refine the stock show page in a Rails app by pulling ticker data, displaying price, sector, market cap, and changes, with Bootstrap styling.
Push your finished app to Heroku for live hosting, and learn about the free tier, dyno scaling, and using custom or Heroku domains.
Deploy a Ruby on Rails app to Heroku by replacing development SQLite with Postgres. Install the pg gem, adjust bundler for production, then login, create an app, and push code.
Push your existing migrations to the Heroku Postgres database and run rails db:migrate on Heroku to initialize the new database, enabling sign up and stock creation.
Discover how to add a custom domain to your Heroku app by configuring settings, selecting a registrar such as Namecheap, and pointing the domain with a CNAME record.
this bonus lecture offers a three-day, $200 discount on lifetime membership, granting access to 60+ courses, PDFs, and books for a $49 one-time fee with coupon code Udemy.
This is a bundle course of four of my popular Ruby on Rails and Ruby Programming courses all in one course. Aimed at the absolute beginner, in this course you'll learn the Ruby programming language and the Ruby on Rails Web Framework for building websites.
This course is broken up into four sections:
Ruby Programming
Ruby on Rails To-Do List App
Ruby on Rails Weather App
Ruby on Rails Stock Market App
We'll start out learning the Ruby programming language. You don't need any prior knowledge or special tools to learn Ruby, I'll walk you through everything you need to know. You'll learn:
Printing to the Screen
Variables
Numbers and Simple Math
Comparison Operators
Assignment Operators
After that, we'll move into more intermediate topics like:
Conditional If/Else Statements
While Loops
For Loops
Fizzbuzz
Finally we'll finish up with more advanced topics like:
Arrays
Objects
Functions
Classes
After that we'll learn the Ruby on Rails Web Framework by building out Three awesome Web Apps! I'll teach you how to install Ruby on Rails and set up all the tools you'll need, and then we'll dive right in and start building out apps!
The first app we'll build is a daily "To-Do" List App. It will allows you to create lists of things you want to do in a day (take out the trash, feed the dog, buy groceries, etc). You'll learn how to use a database in Rails, how to add things to the database, and how to remove them.
In the next App, we'll build a Weather App that checks air quality in your neighborhood. We'll learn how to connect to a third party API to grab weather data, and then do cool stuff with it.
In the last app, we'll build a full blown Stock Market Portfolio App. You can lookup stock market data on any company, save the data to your own personal portfolio, and all kinds of other cool things!
If you've every wanted to learn web development with the Ruby on Rails and Ruby stack, this is the course for you...
Sign up today and I'll see you on the inside!
-John Elder