=[ CURENT RELEASE Week 1:: Learn ruby with "atvvk.rb version 0.0.1" += Ruby basics
-
-- --=[ learn the ruby language by studying & writing code & doing code reviews to spot vulns
-
-- --=[ A simple study guide to help you learn ruby. Written by Rick Flores (nanotechz9l)
-
-- --=[ This 3 week ruby tutorial series adopts the following learning path:
-
-- --=[ [x01] Week 1 : 'atvvk.rb' (no pre-requisites)
-
-- --=[ [x02] Week 2 : 'vulnerable.rb' (pre-requisite is Week 1 : atvvk.rb)
-
-- --=[ write vulnerable code (OWASP Top 10) to quickly identify vulnerabilities during source code reviews
-
-- --=[ [x03] Week 3 : 'sekure.rb' (pre-requisite is Week 2 : vulnerable.rb)
-
-- --=[ practice secure software development by securing all previously written vulnerable code from week 2
# For all updates/pull requests please visit: # Github += https://github.com/nanotechz9l
-
-- --=[ REFs :::
-
-- --=[ awesome tutorial += http://ruby.learncodethehardway.org/book/
-
-- --=[ awesome vid tutorials += http://www.lynda.com/Ruby-tutorials/essential-training/47905-2.html
-
-- --=[ awesome api with ajax flavor += http://www.extremetomato.com/misc/files/rubybrain/index.html
-
-- --=[ No ajax, not as awesome ;) += The Ruby Programming Language/ruby 1.9.3/ruby-doc.org/core-1.9.3/
***DISCLAIMER:::
Its important to note that this tutorial was designed to be used in conjunction with the above lynda.com/Ruby-tutorials video training series, the online ruby API per your ruby version (I crawled the above sites so I didnt need to depend on an active www connection), and irb to really learn the language fundamentals. You wont learn ruby by watching videos, or simply watching the videos and following along with this script, no, you have to write your own code and especially do NOT copy and paste.
Before moving on to the next lesson, make sure you 100% understand the material, and know how/why it outputs what is shown here!!! Otherwise you have already failed yourself.
ALSO atvvk is an acronym for the 5 learning styles::
atvvk.shuffle => ["verbal", "visual", "tactile", "kinesthetic", "aural"] <- Keep that in mind when learning a new alien language
=[ x01, KEYWORDS
=[ x01.1, STRING ESCAPES
=[ x01.2, OPERATORS
=[ x01.3, RUBY VARIABLE SCOPE INDICATORS
=[ x02, OBJECT TYPES
+ -- --=[ x02.1 Objects
+ -- --=[ x02.2 Variables
+ -- --=[ x02.2.2 Variable scope indicators
+ -- --=[ x02.3 Integers
+ -- --=[ x02.4 Floats
+ -- --=[ x02.5 Strings
+ -- --=[ x02.6 Arrays
+ -- --=[ x02.7 Array methods
+ -- --=[ x02.8 Hashes
+ -- --=[ x02.9 Symbols
+ -- --=[ x02.10 Booleans
+ -- --=[ x02.11 Ranges
+ -- --=[ x02.12 Constants
=[ x03, CONTROL STRUCTURES
+ -- --=[ x03.1 Conditionals if, else, elsif
+ -- --=[ x03.2 Conditionals unless, case
+ -- --=[ x03.3 Loops
+ -- --=[ x03.4 Iterators
=[ x04, CODE BLOCKS
+ -- --=[ x04.1 What is a code block
+ -- --=[ x04.2 Find
+ -- --=[ x04.3 Merge
+ -- --=[ x04.4 Collect
+ -- --=[ x04.5 Sort
+ -- --=[ x04.6 Inject
=[ x05, METHODS
+ -- --=[ 0x5.1 Defining and calling methods
+ -- --=[ 0x5.2 Variable scope in methods
+ -- --=[ 0x5.3 Arguments
+ -- --=[ 0x5.4 Argument default values
+ -- --=[ 0x5.5 Return value
+ -- --=[ 0x5.6 Operators are also methods
=[ x06, CLASSES
+ -- --=[ 0x6.1 Defining and using classes
+ -- --=[ 0x6.2 Instances
+ -- --=[ 0x6.3 Attributes
+ -- --=[ 0x6.4 Reader writer methods
+ -- --=[ 0x6.5 Attribute methods
+ -- --=[ 0x6.6 Initialize method
+ -- --=[ 0x6.7 Class methods
+ -- --=[ 0x6.8 Class attributes
+ -- --=[ 0x6.9 Class reader writer methods
+ -- --=[ 0x6.10 Inheritence
+ -- --=[ 0x6.11 Subclass overriding
+ -- --=[ 0x6.12 Accessing the superclass
=[ x07, MODULES
+ -- --=[ 0x7.1 Namespacing
+ -- --=[ 0x7.2 Mixins
+ -- --=[ 0x7.3 Load, require, and include
+ -- --=[ 0x7.4 Enumerable as a mixin
=[ x08, WORKING WITH FLAT FILES
+ -- --=[ 0x8.1 Input output basics
+ -- --=[ 0x8.2 File system basics
+ -- --=[ 0x8.3 File paths
+ -- --=[ 0x8.4 Accessing files
+ -- --=[ 0x8.5 Writing to files
+ -- --=[ 0x8.6 Reading from files
+ -- --=[ 0x8.7 File pointer
+ -- --=[ 0x8.8 Renaming and deleting files
+ -- --=[ 0x8.9 Examining file details
+ -- --=[ 0x8.10 Working with directories
# THE BELOW LESSONS WILL BE AVAILABLE in atvvk.rb version 0.0.2 (after I get some rest, I DO accept pull requests btw)!!
=[ x09, WORKING WITH DATABASES
-- coming soon, probably not in this series though (not enough time)
=[ x10, WORKING WITH NETWORKING SOCKETS
-- coming soon, probably not in this series though (not enough time)