USING RUBY An Introduction By Evgeny Rahman. About Me Principal Engineer at FirstFuel Software 10+...

Post on 03-Jan-2016

218 views 1 download

Transcript of USING RUBY An Introduction By Evgeny Rahman. About Me Principal Engineer at FirstFuel Software 10+...

USING RUBYAn Introduction

By

Evgeny Rahman

About Me• Principal Engineer at FirstFuel Software• 10+ years in Software Engineering• 5 years working with Ruby.

• https://github.com/evgenyrahman• evgeny.rahman@gmail.com

Overview• Dynamic language• Created by Yukihiro “Matz” Matsumoto in 1993• Very influenced by Perl and Smalltalk• Developed as an open source project• Optimized for developer productivity and happiness• Over 1,000,000 users worldwide• Several implementations – MRI, JRuby, Rubinius, Ruby

EE

The Basics• Install Ruby –

• Windows• http://rubyinstaller.org/

• Linux • Use package manager – details at

https://www.ruby-lang.org/en/installation/

• OSX• Comes with Ruby by default, but

brew install ruby

will install latest Ruby

Interactive Ruby REPL –

‘irb’ command in a terminal window.

Interesting Features• Everything is an object• Modules• Metaprogramming

Interesting Features (cont’d)• Duck typing• Blocks• Enumerable• Gems

Gotchas• Open classes• Testing• Debugging• Performance• Threads

Testing• Big part of Ruby culture• Rspec/Minitest/TestUnit• Mocking/stubbing• TDD/BDD

Frameworks• Rails • Sinatra• Rack• Rake• Grape• Cucumber

Resources• https://www.ruby-lang.org/• http://www.ruby-doc.org/• http://www.ruby-toolbox.com/• http://mislav.uniqpath.com/poignant-guide/• http://rubykoans.com/• http://tryruby.org/levels/1/challenges/0• http://eloquentruby.com/• http://www.poodr.com/

Examples at

https://github.com/evgenyrahman/fullstack_ruby

Thank You!

Questions/Comments?