Welcome to the Rails Decal!

Logistics

  • CCN Problems
  • Piazza
  • Come talk with me after class

History of this class

  • Third Semester this is being offered
  • Sponsored by Blueprint
  • Theory vs Practice
  • A different approach to learning

Poll

  • Any dynamic web experience
  • Any HTML + CSS experience
  • None at all

Web Development

  • Static
    • http://www.unboard.io/games.html
  • Dynamic
    • http://www.railsdecal.com/

Static

  • Content
  • Presentation
  • Interaction

Dynamic

  • Has components of static webpage
  • Content changes on user interaction

What we need

  • A way to store data
  • A way to interact with the data
  • A way to present the data

How are we going to do this?

Ruby

  • Programming Language
  • Similar to Python
    • High Level Language
  • "Focus on humans, not machines"
  • Metaprogramming

Rails

  • The Framework
  • Convention over Configuration (CoC)
  • MVC (Model-View-Controller)
  • Very quick to get things up and running
  • Vibrant community

Model

 Objects that are used to interact with the data that is stored in the database. Most of the business logic goes into the model.

View

What the user interacts with. Consists of the HTML, CSS, and javascript to display the data.

Controller

The connection between the models and the views. Functions are run with every request to the server. It usually takes the model’s data and populates the views with it.

MVC

Goals

  • Learn the basic structure of web applications
  • Use Ruby on Rails to create web apps
  • Learn tools useful for the industry

Tools

  • Git
    • Version Control
  • RVM
    • Easy way to manage multiple Ruby and gem versions

More Logistics

  • Syllabus: http://bit.ly/railsdecalfall2015
  • Grade Breakdown
    • Attendance: 20%

      • 0-1 absences = 20/20

      • 2 absences = 10/20

      • 3 absences = 0/20

      • 4 or more absences = No Pass

    • Homework: 20%

    • Project 1 (individual): 25%

    • Project 2 (group): 35%

    • A passing grade is 70% or more

Advice

  • Come to office hours. We are here to help!
  • Google your bugs

Junyu Wang

Junior CS major

junyuw@berkeley.edu

OH: Thur 12:30-1:30PM @ TBD

Nic Stone

Junior CS major

OH: TBD

Erica Yin

Senior CS

ericayin831@gmail.com

OH: TBD

Charles Xue

Junior ECCS

charlesx@berkeley.edu

OH: Thursday 2-3PM @ Soda 283E

Mei Wan

Junior CS

wanyuenmei@gmail.com

OH: Friday 12-1pm @ Qualcomm

Warren Shen

Sophomore CS

warrenshen@berkeley.edu

OH: 2-3 Thursdays

Sam Lau

Junior EECS

samlau95@gmail.com

OH: Monday 3 - 5 PM @ 411 Soda

Howard Chen

Senior CS

howardxchen@gmail.com

OH: 1 - 2 PM Fridays @ Strada

Let's get started!