文件名称:Ruby_Cookbook_Source
介绍说明--下载内容均来自于网络,请自行研究使用
Ruby Cookbook 源代码
Ruby Cookbook Source README
by Leonard Richardson (leonardr@segfault.org)
Last update: 09/06/2006
This source code was extracted automatically from my markup copy of
the Ruby Cookbook. Every chapter has its own directory, and every
recipe (and chapter introduction) has its own file.
Ruby Cookbook Source README
by Leonard Richardson (leonardr@segfault.org)
Last update: 09/06/2006
This source code was extracted automatically from my markup copy of
the Ruby Cookbook. Every chapter has its own directory, and every
recipe (and chapter introduction) has its own file.
(系统自动生成,下载前可以参看下载内容)
下载文件列表
压缩包 : 83390063ruby_cookbook_source.zip 列表 Ruby Cookbook Source/ Ruby Cookbook Source/00-Preface.rb Ruby Cookbook Source/01 - Strings/ Ruby Cookbook Source/01 - Strings/00 - Introduction Ruby Cookbook Source/01 - Strings/01 - Building a String From Parts.rb Ruby Cookbook Source/01 - Strings/02 - Substituting Variables Into Strings.rb Ruby Cookbook Source/01 - Strings/03 - Substituting Variables Into an Existing String.rb Ruby Cookbook Source/01 - Strings/04 - Reversing a String by Words or Characters.rb Ruby Cookbook Source/01 - Strings/05 - Representing Unprintable Characters.rb Ruby Cookbook Source/01 - Strings/06 - Converting Between Characters and Values.rb Ruby Cookbook Source/01 - Strings/07 - Converting Between Strings and Symbols.rb Ruby Cookbook Source/01 - Strings/08 - Processing a String One Character at a Time.rb Ruby Cookbook Source/01 - Strings/09 - Processing a String One Word at a Time.rb Ruby Cookbook Source/01 - Strings/10 - Changing the Case of a String.rb Ruby Cookbook Source/01 - Strings/11 - Managing Whitespace.rb Ruby Cookbook Source/01 - Strings/12 - Testing Whether an Object Is String-like.rb Ruby Cookbook Source/01 - Strings/13 - Getting the Parts of a String You Want.rb Ruby Cookbook Source/01 - Strings/14 - Handling International Encodings.rb Ruby Cookbook Source/01 - Strings/15 - Word-wrapping Lines of Text.rb Ruby Cookbook Source/01 - Strings/16 - Generating a Succession of Strings.rb Ruby Cookbook Source/01 - Strings/17 - Comparing With Regular Expressions.rb Ruby Cookbook Source/01 - Strings/18 - Replacing Multiple Patterns in a Single Pass.rb Ruby Cookbook Source/01 - Strings/19 - Validating an Email Address.rb Ruby Cookbook Source/01 - Strings/20 - Classifying Text with a Bayesian Analyzer.rb Ruby Cookbook Source/02 - Numbers/ Ruby Cookbook Source/02 - Numbers/00 - Introduction Ruby Cookbook Source/02 - Numbers/01 - Parsing A Number From A String.rb Ruby Cookbook Source/02 - Numbers/02 - Comparing Floating-Point Numbers.rb Ruby Cookbook Source/02 - Numbers/03 - Representing Numbers to Arbitrary Precision.rb Ruby Cookbook Source/02 - Numbers/04 - Representing Rational Numbers.rb Ruby Cookbook Source/02 - Numbers/05 - Generating Random Numbers.rb Ruby Cookbook Source/02 - Numbers/06 - Converting Between Numeric Bases.rb Ruby Cookbook Source/02 - Numbers/07 - Taking Logarithms.rb Ruby Cookbook Source/02 - Numbers/08 - Taking Mean, Median, and Mode.rb Ruby Cookbook Source/02 - Numbers/09 - Converting Between Degrees and Radians.rb Ruby Cookbook Source/02 - Numbers/10 - Multiplying Matrices.rb Ruby Cookbook Source/02 - Numbers/11 - Solving a System of Linear Equations.rb Ruby Cookbook Source/02 - Numbers/12 - Using Complex Numbers.rb Ruby Cookbook Source/02 - Numbers/13 - Simulating a Subclass of Fixnum.rb Ruby Cookbook Source/02 - Numbers/14 - Doing Math with Roman Numbers.rb Ruby Cookbook Source/02 - Numbers/15 - Generating a Sequence of Numbers.rb Ruby Cookbook Source/02 - Numbers/16 - Generating Prime Numbers.rb Ruby Cookbook Source/02 - Numbers/17 - Checking a Credit Card Checksum.rb Ruby Cookbook Source/03 - Date and Time/ Ruby Cookbook Source/03 - Date and Time/00 - Introduction Ruby Cookbook Source/03 - Date and Time/01 - Finding Today's Date.rb Ruby Cookbook Source/03 - Date and Time/02 - Parsing Dates Fuzzily or Precisely.rb Ruby Cookbook Source/03 - Date and Time/03 - Printing a Date.rb Ruby Cookbook Source/03 - Date and Time/04 - Iterating Over Dates.rb Ruby Cookbook Source/03 - Date and Time/05 - Doing Date Arithmetic.rb Ruby Cookbook Source/03 - Date and Time/06 - Counting the Days Since an Arbitrary Date.rb Ruby Cookbook Source/03 - Date and Time/07 - Converting Between Time Zones.rb Ruby Cookbook Source/03 - Date and Time/08 - Checking Whether Daylight Saving Time Is Currently in Effect.rb Ruby Cookbook Source/03 - Date and Time/09 - Converting Between Time and DateTime Objects.rb Ruby Cookbook Source/03 - Date and Time/10 - Finding the Day of the Week.rb Ruby Cookbook Source/03 - Date and Time/11 - Handling Commercial Dates.rb Ruby Cookbook Source/03 - Date and Time/12 - Running a Code Block Periodically.rb Ruby Cookbook Source/03 - Date and Time/13 - Waiting a Certain Amount of Time.rb Ruby Cookbook Source/03 - Date and Time/14 - Adding a Timeout to a Long-Running Operation.rb Ruby Cookbook Source/04 - Arrays/ Ruby Cookbook Source/04 - Arrays/00 - Introduction Ruby Cookbook Source/04 - Arrays/01 - Iterating Over an Array.rb Ruby Cookbook Source/04 - Arrays/02 - Exchanging Values Without Using Temporary Variables.rb Ruby Cookbook Source/04 - Arrays/03 - Stripping Duplicate Elements from an Array.rb Ruby Cookbook Source/04 - Arrays/04 - Reversing an Array.rb Ruby Cookbook Source/04 - Arrays/05 - Shuffling an Array.rb Ruby Cookbook Source/04 - Arrays/06 - Ignoring Case When Sorting Strings.rb Ruby Cookbook Source/04 - Arrays/07 - Sorting an Array by an Attribute of its Objects.rb Ruby Cookbook Source/04 - Arrays/08 - Making Sure a Sorted Array Stays Sorted.rb Ruby Cookbook Source/04 - Arrays/09 - Summing Each Item of an Array.rb Ruby Cookbook Source/04 - Arrays/10 - Sorting an Array by Frequency of Appearance.rb Ruby Cookbook Source/04 - Arrays/11 - Getting the n Smallest Items of an Array.rb Ruby Cookbook Source/04 - Arrays/12 - Building Up a Hash Using Injection.rb Ruby Cookbook Source/04 - Arrays/13 - Extracting Portions of Arrays, Destructively and Non-.rb Ruby Cookbook Source/04 - Arrays/14 - Treating an Array as a Queue.rb Ruby Cookbook Source/04 - Arrays/15 - Computing Set Operations on Arrays.rb Ruby Cookbook Source/04 - Arrays/16 - Partitioning or Classifying a Set.rb Ruby Cookbook Source/05 - Hashes/ Ruby Cookbook Source/05 - Hashes/00 - Introduction Ruby Cookbook Source/05 - Hashes/01 - Using Symbols as Hash Keys.rb Ruby Cookbook Source/05 - Hashes/02 - Creating a Hash with a Default Value.rb Ruby Cookbook Source/05 - Hashes/03 - Adding Elements to a Hash .rb Ruby Cookbook Source/05 - Hashes/04 - Removing Elements from a Hash.rb Ruby Cookbook Source/05 - Hashes/05 - Using an Array or Other Modifiable Object as a Hash Key.rb Ruby Cookbook Source/05 - Hashes/06 - Keeping Multiple Values for the Same Hash Key.rb Ruby Cookbook Source/05 - Hashes/07 - Iterating Over a Hash.rb Ruby Cookbook Source/05 - Hashes/08 - Iterating Over a Hash in Insertion Order.rb Ruby Cookbook Source/05 - Hashes/09 - Printing a Hash.rb Ruby Cookbook Source/05 - Hashes/10 - Inverting a Hash.rb Ruby Cookbook Source/05 - Hashes/11 - Choosing Randomly From a Weighted List.rb Ruby Cookbook Source/05 - Hashes/12 - Building a Histogram.rb Ruby Cookbook Source/05 - Hashes/13 - Making a Hash More Like a Struct.rb Ruby Cookbook Source/05 - Hashes/14 - Remapping the Keys and Values of A Hash.rb Ruby Cookbook Source/05 - Hashes/15 - Extracting Portions of Hashes.rb Ruby Cookbook Source/05 - Hashes/16 - Searching a Hash with Regular Expressions.rb Ruby Cookbook Source/06 - Files and Directories/ Ruby Cookbook Source/06 - Files and Directories/00 - Introduction Ruby Cookbook Source/06 - Files and Directories/01 - Checking to See if a File Exists.rb Ruby Cookbook Source/06 - Files and Directories/02 - Checking Your Access to a File.rb Ruby Cookbook Source/06 - Files and Directories/03 - Changing the Permissions on a File.rb Ruby Cookbook Source/06 - Files and Directories/04 - Checking When a File was Last Used.rb Ruby Cookbook Source/06 - Files and Directories/05 - Listing A Directory.rb Ruby Cookbook Source/06 - Files and Directories/06 - Reading the Contents of a File.rb Ruby Cookbook Source/06 - Files and Directories/07 - Writing to a File.rb Ruby Cookbook Source/06 - Files and Directories/08 - Writing to a Temporary File.rb Ruby Cookbook Source/06 - Files and Directories/09 - Picking a Random Line from a File.rb Ruby Cookbook Source/06 - Files and Directories/10 - Comparing the Contents of Two Files.rb Ruby Cookbook Source/06 - Files and Directories/11 - Performing Random Access on Read-Once Input Streams.rb Ruby Cookbook Source/06 - Files and Directories/12 - Walking a Directory Tree.rb Ruby Cookbook Source/06 - Files and Directories/13 - Locking a File.rb Ruby Cookbook Source/06 - Files and Directories/14 - Backing Up to Versioned Filenames.rb Ruby Cookbook Source/06 - Files and Directories/15 - Pretending a String is a File.rb Ruby Cookbook Source/06 - Files and Directories/16 - Redirecting Standard Input or Output.rb Ruby Cookbook Source/06 - Files and Directories/17 - Processing a Binary File.rb Ruby Cookbook Source/06 - Files and Directories/18 - Deleting a File.rb Ruby Cookbook Source/06 - Files and Directories/19 - Truncating a File.rb Ruby Cookbook Source/06 - Files and Directories/20 - Finding the Files you Want.rb Ruby Cookbook Source/06 - Files and Directories/21 - Finding and Changing the Current Working Directory.rb Ruby Cookbook Source/07 - Code Blocks and Iteration/ Ruby Cookbook Source/07 - Code Blocks and Iteration/00 - Introduction Ruby Cookbook Source/07 - Code Blocks and Iteration/01 - Invoking Blocks.rb Ruby Cookbook Source/07 - Code Blocks and Iteration/02 - Writing a Method that Accepts a Block.rb Ruby Cookbook Source/07 - Code Blocks and Iteration/03 - Binding a Block Argument to a Variable.rb Ruby Cookbook Source/07 - Code Blocks and Iteration/04 - Blocks as Closures - Using Outside Variables Within a Code Block.rb Ruby Cookbook Source/07 - Code Blocks and Iteration/05 - Writing an Iterator Over a Data Structure.rb Ruby Cookbook Source/07 - Code Blocks and Iteration/06 - Changing the Way an Object Iterates.rb Ruby Cookbook Source/07 - Code Blocks and Iteration/07 - Writing Block Methods that Classify or Collect.rb Ruby Cookbook Source/07 - Code Blocks and Iteration/08 - Stopping an Iteration.rb Ruby Cookbook Source/07 - Code Blocks and Iteration/09 - Looping Through Multiple Iterables in Parallel.rb Ruby Cookbook Source/07 - Code Blocks and Iteration/10 - Hiding Setup and Cleanup in a Block Method.rb Ruby Cookbook Source/07 - Code Blocks and Iteration/11 - Coupling Systems Loosely with Callbacks.rb Ruby Cookbook Source/08 - Object-Oriented Programming/ Ruby Cookbook Source/08 - Object-Oriented Programming/00 - Introduction Ruby Cookbook Source/08 - Object-Oriented Programming/01 - Managing Instance Data.rb Ruby Cookbook Source/08 - Object-Oriented Programming/02 - Managing Class Data.rb Ruby Cookbook Source/08 - Object-Oriented Programming/03 - Checking Class or Module Membership.rb Ruby Cookbook Source/08 - Object-Oriented Programming/04 - Writing an Inherited Class.rb Ruby Cookbook Source/08 - Object-Oriented Programming/05 - Overloading Methods.rb Ruby Cookbook Source/08 - Object-Oriented Programming/06 - Validating and Modifying Attribute Values.rb Ruby Cookbook Source/08 - Object-Oriented Programming/07 - Defining a Virtual Attribute.rb Ruby Cookbook Source/08 - Object-Oriented Programming/08 - Delegating Method Calls to Another Object.rb Ruby Cookbook Source/08 - Object-Oriented Programming/09 - Converting and Coercing Objects to Different Types.rb Ruby Cookbook Source/08 - Object-Oriented Programming/10 - Getting a Human-Readable Printout of Any Object.rb Ruby Cookbook Source/08 - Object-Oriented Programming/11 - Accepting or Passing a Variable Number of Arguments.rb Ruby Cookbook Source/08 - Object-Oriented Programming/12 - Simulating Keyword Arguments.rb Ruby Cookbook Source/08 - Object-Oriented Programming/13 - Calling a Superclass's Method.rb Ruby Cookbook Source/08 - Object-Oriented Programming/14 - Creating an Abstract Method.rb Ruby Cookbook Source/08 - Object-Oriented Programming/15 - Freezing an Object to Prevent Changes.rb Ruby Cookbook Source/08 - Object-Oriented Programming/16 - Making a Copy of an Object.rb Ruby Cookbook Source/08 - Object-Oriented Programming/17 - Declaring Constants.rb Ruby Cookbook Source/08 - Object-Oriented Programming/18 - Implementing Class and Singleton Methods.rb Ruby Cookbook Source/08 - Object-Oriented Programming/19 - Controlling Access by Making Methods Private.rb Ruby Cookbook Source/09 - Modules and Namespaces/ Ruby Cookbook Source/09 - Modules and Namespaces/00 - Introduction Ruby Cookbook Source/09 - Modules and Namespaces/01 - Simulating Multiple Inheritance with Mixins.rb Ruby Cookbook Source/09 - Modules and Namespaces/02 - Extending Specific Objects with Modules.rb Ruby Cookbook Source/09 - Modules and Namespaces/03 - Mixing in Class Methods.rb Ruby Cookbook Source/09 - Modules and Namespaces/04 - Implementing Enumerable - Write One Method, Get 22 Free.rb Ruby Cookbook Source/09 - Modules and Namespaces/05 - Avoiding Naming Collisions with Namespaces.rb Ruby Cookbook Source/09 - Modules and Namespaces/06 - Automatically Loading Files as Needed.rb Ruby Cookbook Source/09 - Modules and Namespaces/07 - Including Namespaces.rb Ruby Cookbook Source/09 - Modules and Namespaces/08 - Initializing Instance Variables Defined by a Module.rb Ruby Cookbook Source/09 - Modules and Namespaces/09 - Automatically Initializing Mixed-In Modules.rb Ruby Cookbook Source/10 - Reflection and Metaprogramming/ Ruby Cookbook Source/10 - Reflection and Metaprogramming/00 - Introduction Ruby Cookbook Source/10 - Reflection and Metaprogramming/01 - Finding the Class and Superclass of an Object.rb Ruby Cookbook Source/10 - Reflection and Metaprogramming/02 - Listing an Object's Methods.rb Ruby Cookbook Source/10 - Reflection and Metaprogramming/03 - Listing Methods Unique to an Object.rb Ruby Cookbook Source/10 - Reflection and Metaprogramming/04 - Getting a Reference to a Method.rb Ruby Cookbook Source/10 - Reflection and Metaprogramming/05 - Fixing Bugs in Someone else's Class.rb Ruby Cookbook Source/10 - Reflection and Metaprogramming/06 - Listening for Changes to a Class.rb Ruby Cookbook Source/10 - Reflection and Metaprogramming/07 - Checking Whether an Object Has Necessary Attributes.rb Ruby Cookbook Source/10 - Reflection and Metaprogramming/08 - Responding to Calls to Undefined Methods.rb Ruby Cookbook Source/10 - Reflection and Metaprogramming/09 - Automatically Initializing Instance Variables.rb Ruby Cookbook Source/10 - Reflection and Metaprogramming/10 - Avoiding Boilerplate Code with Metaprogramming.rb Ruby Cookbook Source/10 - Reflection and Metaprogramming/11 - Metaprogramming with String Evaluations.rb Ruby Cookbook Source/10 - Reflection and Metaprogramming/12 - Evaluating Code in an Earlier Context.rb Ruby Cookbook Source/10 - Reflection and Metaprogramming/13 - Undefining a Method.rb Ruby Cookbook Source/10 - Reflection and Metaprogramming/14 - Aliasing Methods.rb Ruby Cookbook Source/10 - Reflection and Metaprogramming/15 - Doing Aspect-Oriented Programming.rb Ruby Cookbook Source/10 - Reflection and Metaprogramming/16 - Enforcing Software Contracts.rb Ruby Cookbook Source/11 - XML and HTML/ Ruby Cookbook Source/11 - XML and HTML/00 - Introduction Ruby Cookbook Source/11 - XML and HTML/01 - Checking XML Well-Formedness.rb Ruby Cookbook Source/11 - XML and HTML/02 - Extracting Data From a Document's Tree Structure .rb Ruby Cookbook Source/11 - XML and HTML/03 - Extracting Data While Parsing a Document.rb Ruby Cookbook Source/11 - XML and HTML/04 - Navigating a Document with XPath.rb Ruby Cookbook Source/11 - XML and HTML/05 - Parsing Invalid Markup.rb Ruby Cookbook Source/11 - XML and HTML/06 - Converting an XML Document into a Hash.rb Ruby Cookbook Source/11 - XML and HTML/07 - Validating an XML Document.rb Ruby Cookbook Source/11 - XML and HTML/08 - Substituting XML Entities.rb Ruby Cookbook Source/11 - XML and HTML/09 - Creating and Modifying XML Documents.rb Ruby Cookbook Source/11 - XML and HTML/10 - Compressing Whitespace in an XML Document.rb Ruby Cookbook Source/11 - XML and HTML/11 - Guessing a Document's Encoding.rb Ruby Cookbook Source/11 - XML and HTML/12 - Converting From One Encoding to Another.rb Ruby Cookbook Source/11 - XML and HTML/13 - Extracting All the URLs from an HTML Document.rb Ruby Cookbook Source/11 - XML and HTML/14 - Transforming Plain Text into HTML.rb Ruby Cookbook Source/11 - XML and HTML/15 - Converting HTML Documents From the Web into Text.rb Ruby Cookbook Source/11 - XML and HTML/16 - A Simple Feed Aggregator.rb Ruby Cookbook Source/12 - Graphics and Other File Formats/ Ruby Cookbook Source/12 - Graphics and Other File Formats/00 - Introduction Ruby Cookbook Source/12 - Graphics and Other File Formats/01 - Thumbnailing Images.rb Ruby Cookbook Source/12 - Graphics and Other File Formats/02 - Adding Text to an Image.rb Ruby Cookbook Source/12 - Graphics and Other File Formats/03 - Converting Among Image Formats.rb Ruby Cookbook Source/12 - Graphics and Other File Formats/04 - Graphing Data.rb Ruby Cookbook Source/12 - Graphics and Other File Formats/05 - Adding Graphical Context with Sparklines.rb Ruby Cookbook Source/12 - Graphics and Other File Formats/06 - Strongly Encrypting Data.rb Ruby Cookbook Source/12 - Graphics and Other File Formats/07 - Parsing Comma-Separated Data.rb Ruby Cookbook Source/12 - Graphics and Other File Formats/08 - Parsing Not-Quite-Comma-Separated Data.rb Ruby Cookbook Source/12 - Graphics and Other File Formats/09 - Parsing and Generating Excel Spreadsheets.rb Ruby Cookbook Source/12 - Graphics and Other File Formats/10 - Compressing and Archiving Files with Gzip and Tar.rb Ruby Cookbook Source/12 - Graphics and Other File Formats/11 - Reading and Writing Zip Files.rb Ruby Cookbook Source/12 - Graphics and Other File Formats/12 - Reading and Writing Configuration Files.rb Ruby Cookbook Source/12 - Graphics and Other File Formats/13 - Generating PDF Files.rb Ruby Cookbook Source/12 - Graphics and Other File Formats/14 - Generating MIDI Music.rb Ruby Cookbook Source/13 - Databases and Persistence/ Ruby Cookbook Source/13 - Databases and Persistence/00 - Introduction Ruby Cookbook Source/13 - Databases and Persistence/01 - Serializing Data With YAML.rb Ruby Cookbook Source/13 - Databases and Persistence/02 - Serializing Data With Marshal.rb Ruby Cookbook Source/13 - Databases and Persistence/03 - Persisting Objects With Madeleine.rb Ruby Cookbook Source/13 - Databases and Persistence/04 - Indexing Unstructured Text with SimpleSearch.rb Ruby Cookbook Source/13 - Databases and Persistence/05 - Indexing Structured Text With Ferret.rb Ruby Cookbook Source/13 - Databases and Persistence/06 - Using Berkeley DB Databases.rb Ruby Cookbook Source/13 - Databases and Persistence/07 - Controlling MySQL on Unix.rb Ruby Cookbook Source/13 - Databases and Persistence/08 - Counting the Rows Returned by a Query.rb Ruby Cookbook Source/13 - Databases and Persistence/09 - Talking Directly to a MySQL Database.rb Ruby Cookbook Source/13 - Databases and Persistence/10 - Talking Directly to a Postgres Database.rb Ruby Cookbook Source/13 - Databases and Persistence/11 - Using Object Relational Mapping with ActiveRecord.rb Ruby Cookbook Source/13 - Databases and Persistence/12 - Using Object Relational Mapping with Og.rb Ruby Cookbook Source/13 - Databases and Persistence/13 - Building Queries Programmatically.rb Ruby Cookbook Source/13 - Databases and Persistence/14 - Validating Data with ActiveRecord.rb Ruby Cookbook Source/13 - Databases and Persistence/15 - Preventing SQL Injection Attacks.rb Ruby Cookbook Source/13 - Databases and Persistence/16 - Using Transactions in ActiveRecord.rb Ruby Cookbook Source/13 - Databases and Persistence/17 - Adding Hooks to Table Events.rb Ruby Cookbook Source/13 - Databases and Persistence/18 - Adding Taggability with a Database Mixin.rb Ruby Cookbook Source/14 - Internet Services/ Ruby Cookbook Source/14 - Internet Services/00 - Introduction Ruby Cookbook Source/14 - Internet Services/01 - Grabbing the Contents of a Web Page.rb Ruby Cookbook Source/14 - Internet Services/02 - Making an HTTPS Web Request.rb Ruby Cookbook Source/14 - Internet Services/03 - Customizing HTTP Request Headers.rb Ruby Cookbook Source/14 - Internet Services/04 - Performing DNS Queries.rb Ruby Cookbook Source/14 - Internet Services/05 - Sending Mail.rb Ruby Cookbook Source/14 - Internet Services/06 - Reading Mail with IMAP.rb Ruby Cookbook Source/14 - Internet Services/07 - Reading Mail with POP3.rb Ruby Cookbook Source/14 - Internet Services/08 - Being an FTP Client.rb Ruby Cookbook Source/14 - Internet Services/09 - Being an Telnet Client.rb Ruby Cookbook Source/14 - Internet Services/10 - Being an SSH Client.rb Ruby Cookbook Source/14 - Internet Services/11 - Copying a File to Another Machine.rb Ruby Cookbook Source/14 - Internet Services/12 - Being a BitTorrent Client.rb Ruby Cookbook Source/14 - Internet Services/13 - Pinging a Machine.rb Ruby Cookbook Source/14 - Internet Services/14 - Writing an Internet Server.rb Ruby Cookbook Source/14 - Internet Services/15 - Parsing URLs.rb Ruby Cookbook Source/14 - Internet Services/16 - Writing A CGI Script.rb Ruby Cookbook Source/14 - Internet Services/17 - Setting Cookies and Other HTTP Response Headers.rb Ruby Cookbook Source/14 - Internet Services/18 - Uploading a File via CGI.rb Ruby Cookbook Source/14 - Internet Services/19 - Running Servlets with Webrick.rb Ruby Cookbook Source/14 - Internet Services/20 - A Real-World HTTP Client.rb Ruby Cookbook Source/15 - Web Development - Ruby on Rails/ Ruby Cookbook Source/15 - Web Development - Ruby on Rails/00 - Introduction Ruby Cookbook Source/15 - Web Development - Ruby on Rails/01 - Writing a Simple Rails Application to Show System Status.rb Ruby Cookbook Source/15 - Web Development - Ruby on Rails/02 - Passing Data From the Controller to the View.rb Ruby Cookbook Source/15 - Web Development - Ruby on Rails/03 - Creating a Layout for Your Header and Footer.rb Ruby Cookbook Source/15 - Web Development - Ruby on Rails/04 - Redirecting to a Different Location.rb Ruby Cookbook Source/15 - Web Development - Ruby on Rails/05 - Displaying Templates with render.rb Ruby Cookbook Source/15 - Web Development - Ruby on Rails/06 - Integrating a Database with Your Rails Application.rb Ruby Cookbook Source/15 - Web Development - Ruby on Rails/07 - Understanding Pluralization Rules.rb Ruby Cookbook Source/15 - Web Development - Ruby on Rails/08 - Creating a Login System.rb Ruby Cookbook Source/15 - Web Development - Ruby on Rails/09 - Storing Hashed User Passwords in the Database.rb Ruby Cookbook Source/15 - Web Development - Ruby on Rails/10 - Escaping HTML and Javascript for Display.rb Ruby Cookbook Source/15 - Web Development - Ruby on Rails/11 - Setting and Retrieving Session Information.rb Ruby Cookbook Source/15 - Web Development - Ruby on Rails/12 - Setting and Retrieving Cookies.rb Ruby Cookbook Source/15 - Web Development - Ruby on Rails/13 - Refactoring Code Into Helper Functions.rb Ruby Cookbook Source/15 - Web Development - Ruby on Rails/14 - Refactoring the View Into Partial Snippets of Views.rb Ruby Cookbook Source/15 - Web Development - Ruby on Rails/15 - Adding DHTML Effects with script.aculo.us.rb Ruby Cookbook Source/15 - Web Development - Ruby on Rails/16 - Generating Forms For Manipulating Model Objects.rb Ruby Cookbook Source/15 - Web Development - Ruby on Rails/17 - Creating an AJAX Form.rb Ruby Cookbook Source/15 - Web Development - Ruby on Rails/18 - Exposing Web Services on Your Website.rb Ruby Cookbook Source/15 - Web Development - Ruby on Rails/19 - Sending Mail With Rails.rb Ruby Cookbook Source/15 - Web Development - Ruby on Rails/20 - Automatically Sending Application Errors to Your Email.rb Ruby Cookbook Source/15 - Web Development - Ruby on Rails/21 - Documenting Your Website.rb Ruby Cookbook Source/15 - Web Development - Ruby on Rails/22 - Unit Testing your Website.rb Ruby Cookbook Source/15 - Web Development - Ruby on Rails/23 - Using breakpoint in Your Web Application.rb Ruby Cookbook Source/16 - Web Services and Distributed Programming/ Ruby Cookbook Source/16 - Web Services and Distributed Programming/00 - Introduction Ruby Cookbook Source/16 - Web Services and Distributed Programming/01 - Searching For Books on Amazon.com.rb Ruby Cookbook Source/16 - Web Services and Distributed Programming/02 - Finding Photos on Flikr.rb Ruby Cookbook Source/16 - Web Services and Distributed Programming/03 - Writing an XML-RPC Client.rb Ruby Cookbook Source/16 - Web Services and Distributed Programming/04 - Writing a SOAP Client.rb Ruby Cookbook Source/16 - Web Services and Distributed Programming/05 - Writing a SOAP Server.rb Ruby Cookbook Source/16 - Web Services and Distributed Programming/06 - Searching the Web with Google's SOAP Service.rb Ruby Cookbook Source/16 - Web Services and Distributed Programming/07 - Using a WSDL File to Make SOAP Calls Easier.rb Ruby Cookbook Source/16 - Web Services and Distributed Programming/08 - Charging a Credit Card.rb Ruby Cookbook Source/16 - Web Services and Distributed Programming/09 - Finding the Cost to Ship Packages Via UPS or FedEx.rb Ruby Cookbook Source/16 - Web Services and Distributed Programming/10 - Sharing a Hash Between Any Number of Computers.rb Ruby Cookbook Source/16 - Web Services and Distributed Programming/11 - Implementing a Distributed Queue.rb Ruby Cookbook Source/16 - Web Services and Distributed Programming/12 - Creating a Shared Whiteboard.rb Ruby Cookbook Source/16 - Web Services and Distributed Programming/13 - Securing DRb Services with Access Control Lists.rb Ruby Cookbook Source/16 - Web Services and Distributed Programming/14 - Automatically Discovering DRb Servers and Clients.rb Ruby Cookbook Source/16 - Web Services and Distributed Programming/15 - Proxying Objects that Can't Be Distributed.rb Ruby Cookbook Source/16 - Web Services and Distributed Programming/16 - Storing Data on Distributed RAM.rb Ruby Cookbook Source/16 - Web Services and Distributed Programming/17 - Caching Expensive Results with memcached.rb Ruby Cookbook Source/16 - Web Services and Distributed Programming/18 - A Remote-Controlled Jukebox.rb Ruby Cookbook Source/17 - Testing, Debugging, Optimizing, and Documenting/ Ruby Cookbook Source/17 - Testing, Debugging, Optimizing, and Documenting/00 - Introduction Ruby Cookbook Source/17 - Testing, Debugging, Optimizing, and Documenting/01 - Running Code Only in Debug Mode.rb Ruby Cookbook Source/17 - Testing, Debugging, Optimizing, and Documenting/02 - Raising an Exception.rb Ruby Cookbook Source/17 - Testing, Debugging, Optimizing, and Documenting/03 - Handling an Exception.rb Ruby Cookbook Source/17 - Testing, Debugging, Optimizing, and Documenting/04 - Rerunning after an Exception.rb Ruby Cookbook Source/17 - Testing, Debugging, Optimizing, and Documenting/05 - Adding Logging To Your Application.rb Ruby Cookbook Source/17 - Testing, Debugging, Optimizing, and Documenting/06 - Generating and Understanding Tracebacks.rb Ruby Cookbook Source/17 - Testing, Debugging, Optimizing, and Documenting/07 - Writing Unit Tests.rb Ruby Cookbook Source/17 - Testing, Debugging, Optimizing, and Documenting/08 - Running Unit Tests.rb Ruby Cookbook Source/17 - Testing, Debugging, Optimizing, and Documenting/09 - Testing Code that Uses External Resources.rb Ruby Cookbook Source/17 - Testing, Debugging, Optimizing, and Documenting/10 - Using breakpoint to Inspect and Change the State of Your Application.rb Ruby Cookbook Source/17 - Testing, Debugging, Optimizing, and Documenting/11 - Documenting Your Application.rb Ruby Cookbook Source/17 - Testing, Debugging, Optimizing, and Documenting/12 - Profiling Your Application.rb Ruby Cookbook Source/17 - Testing, Debugging, Optimizing, and Documenting/13 - Benchmarking Competing Solutions.rb Ruby Cookbook Source/17 - Testing, Debugging, Optimizing, and Documenting/14 - Running Multiple Analysis Tools at Once .rb Ruby Cookbook Source/17 - Testing, Debugging, Optimizing, and Documenting/15 - Who's Calling That Method - A Call Graph Analyzer.rb Ruby Cookbook Source/18 - Packaging and Distributing Software/ Ruby Cookbook Source/18 - Packaging and Distributing Software/00 - Introduction Ruby Cookbook Source/18 - Packaging and Distributing Software/01 - Finding Libraries by Searching Gem Repositories.rb Ruby Cookbook Source/18 - Packaging and Distributing Software/02 - Installing and Using a Gem.rb Ruby Cookbook Source/18 - Packaging and Distributing Software/03 - Requiring a Specific Version of a Gem.rb Ruby Cookbook Source/18 - Packaging and Distributing Software/04 - Uninstalling a Gem.rb Ruby Cookbook Source/18 - Packaging and Distributing Software/05 - Reading Documentation for Installed Gems.rb Ruby Cookbook Source/18 - Packaging and Distributing Software/06 - Packaging Your Code as a Gem.rb Ruby Cookbook Source/18 - Packaging and Distributing Software/07 - Distributing Your Gems.rb Ruby Cookbook Source/18 - Packaging and Distributing Software/08 - Installing and Creating Standalone Packages With setup.rb.rb Ruby Cookbook Source/19 - Automating Tasks With Rake/ Ruby Cookbook Source/19 - Automating Tasks With Rake/00 - Introduction Ruby Cookbook Source/19 - Automating Tasks With Rake/01 - Automatically Running Unit Tests.rb Ruby Cookbook Source/19 - Automating Tasks With Rake/02 - Automatically Generating Documentation.rb Ruby Cookbook Source/19 - Automating Tasks With Rake/03 - Cleaning Up Generated Files.rb Ruby Cookbook Source/19 - Automating Tasks With Rake/04 - Automatically Building a Gem.rb Ruby Cookbook Source/19 - Automating Tasks With Rake/05 - Gathering Statistics About Your Code.rb Ruby Cookbook Source/19 - Automating Tasks With Rake/06 - Publishing Your Documentation.rb Ruby Cookbook Source/19 - Automating Tasks With Rake/07 - Running Multiple Tasks in Parallel.rb Ruby Cookbook Source/19 - Automating Tasks With Rake/08 - A Generic Project Rakefile.rb Ruby Cookbook Source/20 - Multitasking and Multithreading/ Ruby Cookbook Source/20 - Multitasking and Multithreading/00 - Introduction Ruby Cookbook Source/20 - Multitasking and Multithreading/01 - Forking a Daemon Process on Unix.rb Ruby Cookbook Source/20 - Multitasking and Multithreading/02 - Creating a Windows Service.rb Ruby Cookbook Source/20 - Multitasking and Multithreading/03 - Doing Two Things At Once With Threads.rb Ruby Cookbook Source/20 - Multitasking and Multithreading/04 - Synchronizing Access to an Object.rb Ruby Cookbook Source/20 - Multitasking and Multithreading/05 - Terminating a Thread.rb Ruby Cookbook Source/20 - Multitasking and Multithreading/06 - Running a Code Block on Many Objects Simultaneously.rb Ruby Cookbook Source/20 - Multitasking and Multithreading/07 - Limiting Multithreading with a Thread Pool.rb Ruby Cookbook Source/20 - Multitasking and Multithreading/08 - Driving an External Process with popen.rb Ruby Cookbook Source/20 - Multitasking and Multithreading/09 - Capturing the Output and Error Streams from a Unix Shell Command.rb Ruby Cookbook Source/20 - Multitasking and Multithreading/10 - Controlling a Process on Another Machine.rb Ruby Cookbook Source/20 - Multitasking and Multithreading/11 - Avoiding Deadlock.rb Ruby Cookbook Source/21 - User Interface/ Ruby Cookbook Source/21 - User Interface/00 - Introduction Ruby Cookbook Source/21 - User Interface/01 - Getting Input One Line at a Time.rb Ruby Cookbook Source/21 - User Interface/02 - Getting Input One Character at a Time.rb Ruby Cookbook Source/21 - User Interface/03 - Parsing Command-Line Arguments.rb Ruby Cookbook Source/21 - User Interface/04 - Testing Whether a Program Is Running Interactively.rb Ruby Cookbook Source/21 - User Interface/05 - Setting Up and Tearing Down a Curses Application.rb Ruby Cookbook Source/21 - User Interface/06 - Clearing the Screen.rb Ruby Cookbook Source/21 - User Interface/07 - Determining Terminal Size.rb Ruby Cookbook Source/21 - User Interface/08 - Changing Text Color.rb Ruby Cookbook Source/21 - User Interface/09 - Reading a Password.rb Ruby Cookbook Source/21 - User Interface/10 - Allowing Input Editing with Readline.rb Ruby Cookbook Source/21 - User Interface/11 - Making Your Keyboard Lights Blink.rb Ruby Cookbook Source/21 - User Interface/12 - Creating a GUI Application with Tk.rb Ruby Cookbook Source/21 - User Interface/13 - Creating a GUI Application with wxRuby.rb Ruby Cookbook Source/21 - User Interface/14 - Creating a GUI Application with Ruby-GTK.rb Ruby Cookbook Source/21 - User Interface/15 - Creating a Mac OS X Application with RubyCocoa.rb Ruby Cookbook Source/21 - User Interface/16 - Talking to AppleScript to get User Input.rb Ruby Cookbook Source/22 - Extending Ruby with Other Languages/ Ruby Cookbook Source/22 - Extending Ruby with Other Languages/00 - Introduction Ruby Cookbook Source/22 - Extending Ruby with Other Languages/01 - Writing a C Extension for Ruby.rb Ruby Cookbook Source/22 - Extending Ruby with Other Languages/02 - Using a C Library from Ruby.rb Ruby Cookbook Source/22 - Extending Ruby with Other Languages/03 - Calling a C Library through Swig.rb Ruby Cookbook Source/22 - Extending Ruby with Other Languages/04 - Writing C Within Your Ruby Code.rb Ruby Cookbook Source/22 - Extending Ruby with Other Languages/05 - Calling Java Libraries with JRuby.rb Ruby Cookbook Source/23 - System Administration/ Ruby Cookbook Source/23 - System Administration/00 - Introduction Ruby Cookbook Source/23 - System Administration/01 - Scripting an External Program.rb Ruby Cookbook Source/23 - System Administration/02 - Managing Windows Services.rb Ruby Cookbook Source/23 - System Administration/03 - Running Code as Another User.rb Ruby Cookbook Source/23 - System Administration/04 - Running Periodic Tasks Without Cron or At.rb Ruby Cookbook Source/23 - System Administration/05 - Deleting Files that Match a Regular Expression.rb Ruby Cookbook Source/23 - System Administration/06 - Renaming Files in Bulk.rb Ruby Cookbook Source/23 - System Administration/07 - Finding Duplicate Files.rb Ruby Cookbook Source/23 - System Administration/08 - Automating Backups.rb Ruby Cookbook Source/23 - System Administration/09 - Normalizing Ownership and Permissions in User Directories.rb Ruby Cookbook Source/23 - System Administration/10 - Killing all Processes For A Given User.rb Ruby Cookbook Source/README