ruby

Ruby is an interpreted, high-level, general-purpose programming language. It supports multiple programming paradigms, including procedural, object-oriented, and functional programming.

Install ruby with rbenv so that you can manage your ruby versions. Your system may come with Ruby, but it might be a tad old.

Most webby stuff runs on the Rails framework which has great defaults to get you started quickly.

There's a great background jobs processor called Sidekiq which can help you split long running tasks out to another server.

For other random frameworks, checkout the awesome-ruby project on github.

I wrote a script for rbenv to check for newer rbenv versions

# REPL for Experimenting * pry - a feature rich interactive shell for the Ruby programming language. * irb - the built in repl for ruby, does what it needs to.

# Debugging * Execute a single test with `rspec -e "test my flub"` and quote of the exact broken test when running * Use `byebug` or `binding.pry` and step through the code. * `puts` relevant stuff * TODO ruby debugger vim integration? Investigate astashov/vim-ruby-debugger

# Testing * Use Rspec, it's the bomb! * Try Simple Cov to get code coverage * For Mutation Testing, try Mutant.

# Trix * Be functional with Proc

# Tuning your programs * Profile through ruby-prof . * Use the built in benchmark module . * For rack or rails projects, check out Rack Mini Profiler * Another one that's come up in #devtrain is New Relic RPM .

# Linting and text Editor Tools * Rubocop has ruby best practice checks. * When using with Vim's Syntastic, do a doubletake on the rubocop instructions .