2. We Tried To Get Jeremy To Teach
But...
3:49:17 PM Ashley Thompson: I will work on Jeremy.
3:49:30 PM Ashley Thompson: He told me to contact his
agent… which isn't a "no".
3. ● You will see coding
● You will learn basic concepts
● You will know where to go to practice
● You will know where to go with questions
What Today's Session Will Do
4. ● Teach you ever more advanced concepts
● Teach you how to code on your local box
● Teach you how to leverage existing code
● Build stuff that is day to day useful
What Future Sessions Will Do
5. There are too many concepts to pack into an
hour.
We're going to go in smaller chunks.
We are "eating our veggies" today by learning a
lot of concepts which will relate later.
No SQL Today
6. What Is Coding?
Playing with numbers and words until they are
useful, then saving them and reusing them.
7. Computers vs. Humans
Computers are like this 10101101010101.
Humans are like this "hi! k. thx, bye"
This is "hi! k. thx, bye" in computer:
01101000011010010010000100100000011010
11001011100010000001110100011010000111
10000010110000100000011000100111100101
100101
8. Code Like A Human
I do not want to write a bunch of 1s and 0s.
I need a coding language to take my English
and turn it into 1s and 0s for me.
Many good languages do this.
I like Ruby.
9. Where Do I Go To...Ruby?
To punch stuff in and see what Ruby does:
● http://tryruby.org/
To go through a structured, type it in course:
● http://www.codeacademy.com/tracks/ruby
10. Where Do I Go To...Ruby?
To ask questions to other coders:
http://stackoverflow.com/questions/tagged/ruby
11. Today's Coding Concepts
● Words and Numbers
● Storage
● Comments
● Running Code
● Comparisons
● Arrays
● Commands On Variables
● If/Else Statement
12. Words
In code, you store words in Strings.
Examples:
● "I am a string because I am words"
● "I am also a string"
● "jello"
Quote signs tell the computer that its a String.
13. Numbers
In code, you store numbers in Integers.
Examples:
● 5
● 555
● 102125
No quote strings needed.
14. You'll need to do three things to store stuff:
● To make up a name
● Type an equals sign
● Type a word or number
Example:
save_me = "this will be stored to save_me"
Storing Values
15. pudding = "word or number"
The made up name pudding is commonly
called a variable.
johnny = "hi hi"
carolyn = "bye bye"
johnny and carolyn are variables.
Storing Values
16. Lets store "my words" to the my_value variable:
my_value = "my words"
Display that variable with the puts command:
puts my_value
=> "my words"
Storing Values
17. Examples of how to store Strings:
words = "my words"
oscar = "grouch"
johnny = "occasionally grouchy"
Storing Values
18. Examples of how to store Integers:
total = 5 + 4
another = 10 - 3
last = 42 * 125
Storing Values
19. Another Example:
pudding = "tasty goodness"
puts pudding
=> "tasty goodness"
This is because we stored "tasty goodness" to
pudding, then said "print the value of pudding"
Storing Values
20. Storing Values
You can use variables just as if they were the
original value they store.
Example:
one = 1
two = 2
three = one + two
puts three
=> 3
21. Storing Values
You can overwrite variables with new data
var = "this won't last"
puts var
=> "this won't last"
var = "overwrite the current data"
puts var
=> "overwrite the current data"
22. Storing Values
You can store variables to other variables
Number Example:
one = 1
also_one = one
puts also_one
=> 1
23. Comments tells the computer to skip the line.
The symbol for a comment is the # sign.
Here are what comments look like:
#var1 = "test"
#my comment line will be skipped
#var1 = "test2" a third skipped line
Comments
24. Comments are used by coders to add context,
warning and overviews of code
#This will store "hi" to myvar
myvar = "hi"
#This will store 2 + 2 to the variable four
four = 2 + 2
Comments
25. To run code:
1. Go to the command line
2. Type in Ruby code
3. Get a response from Ruby
Running Code, The Command Line
26. Where do you find command lines?
1. Inside tutorials like codeacademy/tryruby
2. On your computer, if ruby is installed (irb)
3. On other computers where ruby is installed,
like if IT configures one and gives you creds
Running Code, The Command Line
27. Lets move to the command line and run
examples we've worked on so far.
1. Johnny's command line
2. The code academy tutorial
Running Code, The Command Line
28. If Ruby is installed on your computer:
1. Create a file.
2. Make it end in .rb (instead of .doc, .txt, etc)
3. Navigate to the file's directory via command
line
4. $>ruby my_file.rb
Running Code, From A File
29. If you have downloaded a Ruby focused text
editor, you can also load and run the file right
from the GUI.
Lets pause for examples.
Running Code, From A File
30. The == sign tells us if two values are equal:
1 == 1
=> true
1 == 2
=> false
Comparisons
31. one = 1
two = 2
one == 1
=> true
one == two
=> false
Comparisons
33. Arrays
Arrays let you store a group of the same data to
one variable.
Some examples of groups:
people = ['johnny', 'robert', 'nelson', 'jayson']
animals = ['sloth', 'toad', 'zebra']
presidents = ['clinton', 'bush', 'obama']
34. Arrays
To get all that data back out
$> people
=> ["johnny", "robert", "nelson", "jayson"]
$> puts people
johnny
robert
nelson
jayson
35. Arrays
To get only one element out, you need to learn
a trick...
Arrays are zero indexed.
Meaning you count and reference the elements
from 0.
38. Commands On Variables
First, lets just look at it:
people
=> ['johnny', 'robert', 'nelson', 'jayson']
people.count
=> 4
39. Commands On Variables
You can call commands on variables.
Structure:
<variable>.<command>
Example:
people.count
=> 4
40. Commands On Variables
Here's another one:
people
=> ["johnny", "robert", "nelson", "jayson"]
people.reverse
=> ["jayson", "nelson", "robert", "johnny"]
41. Commands On Variables
If you want to see all the commands you are
allowed to call on a given variable, use the
methods command
people.methods
=> [:inspect, :to_s, :to_a, :to_ary, :frozen?,:==, :
eql?, :hash, :[], :[]=, :at, :fetch, :first, :last, :
concat, :<<, :push, :pop, :shift, :unshift, :insert, :
each, :each_index, :reverse_each, :length, :
size, :empty?, :find_index, :index, :count]
42. More Helpful Array Commands
Add a new person to people:
people.push('jenny')
=> ["johnny", "robert", "nelson", "jayson",
"jenny"]
43. More Helpful Array Commands
Remove the last person from people:
people.pop
=> "jenny"
people
=> ["johnny", "robert", "nelson", "jayson"]
44. If/Else Statement
A variable's value can be used as a decision
point that determines which code to run next.
You do this using an if / else statement.
45. If/Else Statement, Structure
If / Else Structure:
if variable == <value>
#run this code if true
else
#run this code if false
end
46. If/Else Statement, Example 1
one = 1
if one == one
puts "true, one equals one"
else
puts "false, one does not equal one"
end
=> "true, one equals one"
47. If/Else Statement, Example 2
one = 1
if one == 2
puts "true, one equals one"
else
puts "false, one does not equal one"
end
=> "false, one does not equal one"
49. The Big Picture
A web page does this:
1. Queries a database and stores data to
arrays
2. Loops through the arrays
3. Manipulates elements of the arrays
4. Displays results to the user
50. The Big Picture
You know:
1. How to create and store variables
2. How to manipulate variables with commands
3. About arrays
4. How to decide which code to run via IF/Else
51. The Big Picture
You do not know:
1. How to loop through arrays
2. How to wrap code in reusable methods
3. How to wrap methods in reusable classes
4. How to use other peoples code
52. The Big Picture
Once you fill those holes in, you have the core
concept of how to build any web page.
You can also look at a web page and say "I
know how they did that" in a conceptual way.
53. The Big Picture
Code is slowly automating everything.
Code is the new universal language.
Nearly every other skill will eventually be code
involved or code dependant.
Be in the "can code" part of the work force.
54. Next Time
● Loops
● Arrays + Loops
● Classes and Methods
● Connecting To Databases
● Looping Through Database Query Results
● Using Other People's Code In Yours