SlideShare a Scribd company logo
ZOMG: CLI and
  no puts
     Jesse Wolgamott
 @jwo | houston.rb Meeting
Part 1
  David
Copeland

awesome
command
line apps
Command Line Apps


• What makes a Command Line App?
• Follow the unix way
It’s not
a script
Kind to
Others
Be
Helpful
Two Kinds of
Command Lines
• Simple utility (think ls, or grep)

• Command suite (think github’s, with multiple
  commands)
Helpful Apps
do not destroy
my_cmd -> nothing destructive
my_cmd -h -> full help statement

my_cmd help command -> full help for that
command
List of Gems
Gem                   why For?


         GLI              Command Suite Options

Choices or OptionParser       Utility Options

        Aruba                   Cuke Tests

    Terminal-Table        Format output in tables

       Rainbow                 Color output
Note: Choice is probably only good for
1.8 apps

But I kinda like it

And didn’t have an OptionParser
Example
FREAL, look at
    GLI
Sample Lorem
Ipsum created
  using GLI
https://github.com/jwo/
         Ipster/
Part 2

jim weirich
debugging
the safari
Debugging, no
    puts
Does anyone
here debug?
PRY

 ruby -rpry convert.rb 98.6

def index
  @articles = Article.all
  binding.pry
end
Also, there’s a
  railscast!
PRY is good for

• Can use ls to list variables
• Can inspect variables
• Can cd into an @variable
• Inspects State.
How To Start



 items.each do |item|
  debugger #bam
What you can do

l #where am I

#   to go to next:
      n #next method
#   to go into the next method
      s #step into
#   to evaluate ruby :
      e item #evaluate item, so it'll inspect it
#   display ruby expression with each step
      displ # displ Item.count


•
Da Gems

 Ruby 1.9
gem “ruby-debug19”

Ruby 1.8
gem “ruby-debug”

More Related Content

PDF
An introduction to go programming language
PDF
Python debuggers slides
PDF
Golang from Scala developer’s perspective
PPT
A First Look at Google's Go Programming Language
PPTX
Golang - Overview of Go (golang) Language
PDF
Go Programming Language by Google
PDF
GoLang Introduction
PPTX
Wonders of Golang
An introduction to go programming language
Python debuggers slides
Golang from Scala developer’s perspective
A First Look at Google's Go Programming Language
Golang - Overview of Go (golang) Language
Go Programming Language by Google
GoLang Introduction
Wonders of Golang

What's hot (15)

PDF
Building Command Line Tools with Golang
PDF
Go language presentation
PPTX
Go Programming language, golang
PPTX
ATO 2014 - So You Think You Know 'Go'? The Go Programming Language
PPTX
Programming Basics
PPTX
What is dev ops?
PDF
Golang nuts (by Nii Nai at DevCongress 2013)
PDF
Continuous testing of a terminal font
PDF
The Go programming language - Intro by MyLittleAdventure
PPTX
PPTX
Iron Sprog Tech Talk
PDF
Intro to Crystal Programming Language
PDF
Rails I18n From The Trenches
PPT
Introduction to Go-Lang
Building Command Line Tools with Golang
Go language presentation
Go Programming language, golang
ATO 2014 - So You Think You Know 'Go'? The Go Programming Language
Programming Basics
What is dev ops?
Golang nuts (by Nii Nai at DevCongress 2013)
Continuous testing of a terminal font
The Go programming language - Intro by MyLittleAdventure
Iron Sprog Tech Talk
Intro to Crystal Programming Language
Rails I18n From The Trenches
Introduction to Go-Lang
Ad

Viewers also liked (20)

PDF
Untitled Presentation
PDF
Milliken Univar Household 2016
PDF
The Outside-In Supply Chain
PDF
GeospatialDataAnalysis
PDF
How to optimize your content experience
PDF
projeto estradas 2
PPT
Apple diseases by Nazia Manzar
PPTX
Implementing DevOps
PPT
Conversion Rate Optimization at OMS - the 5 Step Conversion Optimization Stra...
PDF
Do Conversion Optimization Like the Pros
PPTX
ABUELITO QUERIDO
PPTX
Viviendo con diabetes. tania apango
PDF
Isaiah 22 commentary
KEY
Web Flags - Digital Methods Summer 12
PDF
Cardsplitter
PDF
Unmanned Aircraft Systems
PDF
Pasarela 2014 lista
PDF
Mese di borsa novembre
Untitled Presentation
Milliken Univar Household 2016
The Outside-In Supply Chain
GeospatialDataAnalysis
How to optimize your content experience
projeto estradas 2
Apple diseases by Nazia Manzar
Implementing DevOps
Conversion Rate Optimization at OMS - the 5 Step Conversion Optimization Stra...
Do Conversion Optimization Like the Pros
ABUELITO QUERIDO
Viviendo con diabetes. tania apango
Isaiah 22 commentary
Web Flags - Digital Methods Summer 12
Cardsplitter
Unmanned Aircraft Systems
Pasarela 2014 lista
Mese di borsa novembre
Ad

Similar to Zomg: Ruby Command Line and Ruby Debugging (20)

KEY
Rails development environment talk
KEY
Crafting Beautiful CLI Applications in Ruby
KEY
Ruby v cpp_preso
PPT
Intro To Ror
PDF
Writing a Ruby Gem for beginners
ODP
Debugging Rails 3 Applications
KEY
Introducing Command Line Applications with Ruby
PDF
Ruby Presentation
PDF
IJTC%202009%20JRuby
PDF
IJTC%202009%20JRuby
PDF
Ruby Presentation - Article
PPTX
My month with Ruby
PDF
rubyonrails
PDF
rubyonrails
PDF
Writing Well-Behaved Unix Utilities
PPT
Ruby Projects and Libraries
PPT
Rails Rookies Bootcamp - Blogger
KEY
Introducing Ruby
PDF
Writing Rust Command Line Applications
PDF
The story of language development
Rails development environment talk
Crafting Beautiful CLI Applications in Ruby
Ruby v cpp_preso
Intro To Ror
Writing a Ruby Gem for beginners
Debugging Rails 3 Applications
Introducing Command Line Applications with Ruby
Ruby Presentation
IJTC%202009%20JRuby
IJTC%202009%20JRuby
Ruby Presentation - Article
My month with Ruby
rubyonrails
rubyonrails
Writing Well-Behaved Unix Utilities
Ruby Projects and Libraries
Rails Rookies Bootcamp - Blogger
Introducing Ruby
Writing Rust Command Line Applications
The story of language development

Recently uploaded (20)

PPTX
TLE Review Electricity (Electricity).pptx
PPT
Teaching material agriculture food technology
PDF
A comparative analysis of optical character recognition models for extracting...
PPTX
Programs and apps: productivity, graphics, security and other tools
PDF
Heart disease approach using modified random forest and particle swarm optimi...
PDF
Encapsulation theory and applications.pdf
PDF
Agricultural_Statistics_at_a_Glance_2022_0.pdf
PDF
Build a system with the filesystem maintained by OSTree @ COSCUP 2025
PDF
Mobile App Security Testing_ A Comprehensive Guide.pdf
PDF
NewMind AI Weekly Chronicles - August'25-Week II
PDF
Accuracy of neural networks in brain wave diagnosis of schizophrenia
PPTX
SOPHOS-XG Firewall Administrator PPT.pptx
PDF
Mushroom cultivation and it's methods.pdf
PDF
Getting Started with Data Integration: FME Form 101
PDF
Reach Out and Touch Someone: Haptics and Empathic Computing
PDF
Approach and Philosophy of On baking technology
PDF
Univ-Connecticut-ChatGPT-Presentaion.pdf
PPTX
KOM of Painting work and Equipment Insulation REV00 update 25-dec.pptx
PDF
Advanced methodologies resolving dimensionality complications for autism neur...
PDF
Blue Purple Modern Animated Computer Science Presentation.pdf.pdf
TLE Review Electricity (Electricity).pptx
Teaching material agriculture food technology
A comparative analysis of optical character recognition models for extracting...
Programs and apps: productivity, graphics, security and other tools
Heart disease approach using modified random forest and particle swarm optimi...
Encapsulation theory and applications.pdf
Agricultural_Statistics_at_a_Glance_2022_0.pdf
Build a system with the filesystem maintained by OSTree @ COSCUP 2025
Mobile App Security Testing_ A Comprehensive Guide.pdf
NewMind AI Weekly Chronicles - August'25-Week II
Accuracy of neural networks in brain wave diagnosis of schizophrenia
SOPHOS-XG Firewall Administrator PPT.pptx
Mushroom cultivation and it's methods.pdf
Getting Started with Data Integration: FME Form 101
Reach Out and Touch Someone: Haptics and Empathic Computing
Approach and Philosophy of On baking technology
Univ-Connecticut-ChatGPT-Presentaion.pdf
KOM of Painting work and Equipment Insulation REV00 update 25-dec.pptx
Advanced methodologies resolving dimensionality complications for autism neur...
Blue Purple Modern Animated Computer Science Presentation.pdf.pdf

Zomg: Ruby Command Line and Ruby Debugging

Editor's Notes