Coder Social home page Coder Social logo

ruby-101's Introduction

    =[ 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)

ruby-101's People

Stargazers

 avatar  avatar

Watchers

 avatar  avatar

Forkers

mostafa6765

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.