Home Accessibility Courses Twitter The Mouth Facebook Resources Site Map About Us Contact
Python and Tcl - public course schedule [here]
Private courses on your site - see [here]
Please ask about maintenance training for Perl, PHP, Lua, etc

Ruby training news
Next Public Course Dates

Link on individual courses for more details and further dates.

We can also run a private tailored course at our centre or a private course at your office.
Learning to Program in Ruby - training course
A Modern, Object Oriented, Portable Scripting language.
Duration: 5 days • Price: £1550.00 (VAT free from January 2019), • Venue: Melksham, Wiltshire

Usually scheduled to meet customer needs or run as a private course. Please email for details
Ruby is very much an object oriented language, and we concentrate on its implementation of objects after covering the fundamental syntax and structures of the language, comparing and contrasting them to Perl and Java.

Our course concludes with sections covering the use of Ruby on the Web, using Ruby to handle relational databases through SQL, and Graphic User Interfaces such as Ruby/Tk.

If you're going to be using Ruby on your web site in the Ruby in Rails framework, please stay on for an extra day for the Ruby on Rails Extension.

This course is for delegates without prior programming experience.

Getting the most from your Well House Consultants course [Link]
Ruby is an object oriented scripting language that has rapidly grown in use and favour across a wide variety of applications in the past two years. Perhaps THE biggest use or Ruby is within the Rails framework, where it is used to provide the programming power behind web based applications that can be quickly and efficiently written.
Course Summary: [Link]
Learning to Progam (module Q100) What is programing? Why are there so many langauges? Which language for what purpose? How to plan your progamming project. Making best use of existing resources.
Programming Principles (module Q101) Stored programs - running from file. Sequential operation. Very fast, but an IQ of zero. Variable and variable types. Conditions and conditional code. Loops and named blocks of code. Collections. Libraries. Pointers and references. Compilers and Interpretters. Program and system design.
Introduction (module R101) What is Ruby? What is it used for? Where do I get and install Ruby? Core facilities, built-in library and standard library. Basic concepts - object orientation, regular expressions, arrays, hashes, etc.
Basic Ruby Language Elements (module R103) Structure of statements and comments. Variables and constants. Operators. Assignments, calculations, etc. Integer, float and string formats. Single and double quotes, here documents, general strings.
Control Structures (module R104) Blocks and the if statement. Writing conditions. Comparative, boolean and range operators. Conditionals - if, unless, case, etc. Loops - while, for in, until, etc. break, next, retry and redo. defined? and ternary operators.
Object Orientation: Individual Objects (module Q906) History - unstructured and structured code. Introduction to object oriented programming. Classes and methods. Static and nonstatic. Instances, constructors and destructors. Overloading. Accessing members of a class. Loading and using classes. Direct access to variables. Encouraging class use.
Classes and Objects (module R105) Objects, classes and methods. Constructors and attributes. Instance and class variables. Local and global variables. Class and object methods. Including files - load and require.
Input and Output in Ruby (module R106) Opening and closing files. Reading and writing from files.
Collections (Arrays and Hashes) in Ruby (module R107) What is a collection? Arrays and hashes. Constructing an array. The %w shortcut. Nesting arrays. Hash keys, iterators, etc.
Object Orientation: Composite Objects (module Q909) Review of object orientation basics. Inheritance. Base classes and subclasses. Overriding and abstract classes. Polymorphism. Inheritance structure. Multiple inheritance and alternatives. Class structure. Hierarchy and visibility. A note on design.
More Classes and Objects (module R108) Public, private and protected visibility. Singletons and defs. Inheritance mixins, and super. Destructors and garbage collection. Namespaces and modules. Hooks. Freezing objects. Calling methods with code blocks. Looking inside objects - reflection.
Object Orientation: Design Techniques (module Q907) Overview - why design? Some basics. OOD, OOA, OOP. Waterfall, spiral and Incremental models. Informal techniques. Micro, macro and specification. Formal methods. Booch, Yourdon and the OO design wars. Unified Modeling Language (UML). Views, diagrams, model elements and general mechanisms. Extending UML - stereotypes, tagged values and constraints. Functions of tools such as Rational Rose. Drawing support, model repository, navigation, code generation. Configuration, version control and associated tools.
Strings and Regular Expressions (module R109) Anchors, literals, character groups and counts. Matching in Ruby. Modifiers i, o, x and m. Pattern matching variables.
Special Variables and Pseudo-Variables (module R110) ARGV, $0 and friends - the command line. Other special variables from $: through $$ to $<. Environment variables. Pseudo-variables. Reserved words in Ruby.
Exceptions. (module R111) begin and end (and a mention of BEGIN and END). Raise and rescue. Throw and catch.
Ruby Miscellany (module R119) Singletons. Modules. Mixins. The comparator interface. Additional standard functions and operators.
Parallelism (module R112) Parallel assigments. Yield. Threads, the thread scheduler and thread exceptions. Thread critical, Mutex and Condition variables. Spawning processes and controlling children. Allowing your children to go independent.
Ruby on the Web (module R114) CGI and the Ruby Apache Module. Using cgi.rb; URL decoding, forms, sessions, cookies, etc. Embedding Ruby in HTML - the <% <%= and <%# tags.
Ruby GUIs, XML, SQL Database Connectivity (module R117) Ruby/Tk, Ruby/GTK, Glade, etc. FOX and FXRuby. VisualuRuby, SWin and VRuby. SAX and DOM - XMLParser and others. SQL and ODBC connection. Using Ruby/DBI to connect to MySQL, Oracle, etc.

Graham Ellis - graham@wellho.net [email]  [about Graham]
Melksham, Wiltshire
Public courses run at Well House Manor - our own purpose fitted training centre and business hotel / conference centre in Melksham.
• Download Melksham Map - [pdf file (750k)] • Google Map - [Link]
1 student   2 students   3 students   For 4 or more students
from the same company,
please consider a private course.
 With hotel room
£1900.00 (No VAT from 1.2019)
Without room
£1550.00 (No VAT from 1.2019) 
 With hotel rooms
£3750.00 (No VAT from 1.2019)
Without rooms
£3050.00 (No VAT from 1.2019) 
 With hotel rooms
£5600.00 (No VAT from 1.2019)
Without rooms
£4550.00 (No VAT from 1.2019) 
• Multiple discount applies to bookings for second and subsequent delegates on the same running of a course, and on same order.
• Hotel rooms are available for arrival the night before the course starts, for departure after the end of the course on the last day.
If you're going to be using Ruby on Rails, please stay on for an extra day to attend our Ruby on Rails training course.

Upon completion of your course, you'll have online access to the source code of all the examples from the course, and you'll have access to the "Ask the Tutor" forum where you can raise questions. We also encourage you to email the tutor, and to visit us again to use our library as appropriate.

Certification? - [Link]
Public (scheduled) courses -- http://www.wellho.net/course/ctc.html
For more information about our public courses in general, such as class size, course times, materials provided, special requests, accommodation list, finding our centre, etc.
Terms and Conditions -- http://www.wellho.net/net/terms.html
Covering topics such as delegate substitution, payment, cancellation policy and other matters.

You can Add a comment or ranking to this page

© WELL HOUSE CONSULTANTS LTD., 2019: 48 Spa Road • Melksham, Wiltshire • United Kingdom • SN12 7NY
PH: 01225 708225 • EMAIL: info@wellho.net • WEB: http://www.wellho.net • SKYPE: wellho

PAGE: http://www.wellho.net/course/rlfull.html • PAGE BUILT: Tue Apr 9 11:23:55 2019 • BUILD SYSTEM: WomanWithCat