Free eBook: Clever Algorithms

The book „Clever Algorithms: Nature-Inspired Programming Recipes“ by Jason Brownlee PhD describes 45 algorithms from the field of Artificial Intelligence. All algorithm descriptions are complete and consistent to ensure that they are accessible, usable and understandable by a wide audience.

5 Reasons To Read:

  1. 45 algorithms described.
  2. Designed specifically for Programmers, Research Scientists and Interested Amateurs.
  3. Complete code examples in the Ruby programming language.
  4. Standardized algorithm descriptions.
  5. Algorithms drawn from the popular fields of Computational Intelligence, Metaheuristics, and Biologically Inspired Computation.

Table of Contents

  1. Background
    1. Introduction: What is AI, Problem Domains, Unconventional Optimization, Book Organization, How to Read this Book, Further Reading
  2. Algorithms
    1. Stochastic Algorithms: Random Search, Adaptive Random Search, Stochastic Hill Climbing, Iterated Local Search, Guided Local Search, Variable Neighborhood Search, Greedy Randomized Adaptive Search, Scatter Search, Tabu Search, Reactive Tabu Search.
    2. Evolutionary Algorithms: Genetic Algorithm, Genetic Programming, Evolution Strategies, Differential Evolution, Evolutionary Programming, Grammatical Evolution, Gene Expression Programming, Learning Classifier System, Non-dominated Sorting Genetic Algorithm, Strength Pareto Evolutionary Algorithm.
    3. Physical Algorithms: Simulated Annealing, Extremal Optimization, Harmony Search, Cultural Algorithm, Memetic Algorithm.
    4. Probabilistic Algorithms: Population-Based Incremental Learning, Univariate Marginal Distribution Algorithm, Compact Genetic Algorithm, Bayesian Optimization Algorithm, Cross-Entropy Method.
    5. Swarm Algorithms: Particle Swarm Optimization, Ant System, Ant Colony System, Bees Algorithm, Bacterial Foraging Optimization Algorithm.
    6. Immune Algorithms: Clonal Selection Algorithm, Negative Selection Algorithm, Artificial Immune Recognition System, Immune Network Algorithm, Dendritic Cell Algorithm.
    7. Neural Algorithms: Perceptron, Back-Propagation, Hopfield Network, Learning Vector Quantization, Self-Organizing Map.
  3. Extensions
    1. Advanced Topics: Programming Paradigms, Devising New Algorithms, Testing Algorithms, Visualizing Algorithms, Problem Solving Strategies, Benchmarking Algorithms
  4. Appendix
    1. Ruby: Quick-Start Guide


Ruby on Rails 3 Tutorial Livelessons Bundle: Learn Rails by Example

Ruby on Rails 3 Tutorial LiveLessons is your complete video guided tour of modern Rails web development! Top Rails expert and author Michael Hartl walks you through the entire process: installing and setting up Rails, designing Rails applications with MVC and REST, building dynamic pages, coding effectively in Ruby, implementing registration and authentication, adding social features, even testing and deployment.

Just watch and learn: You’ll find expert insight, modern best practices, and step-by-step instructions for solving real-world problems!

  • LiveLessons are video courses that are organized into short, self-contained lessons–you’ll learn key skills in as little as [shortest lesson time to come] minutes
  • Track your progress as you follow clearly defined learning objectives
  • Follow along as your instructor shows exactly how to get great results in your real-world environment

Ruby on Rails 3 Tutorial: Learn Rails by Example

Using Rails 3, developers can build web applications of exceptional elegance and power. Although its remarkable capabilities have made Ruby on Rails one of the world’s most popular web development frameworks, it can be challenging to learn and use. Ruby on Rails™ 3 Tutorial is the solution. Leading Rails developer Michael Hartl teaches Rails 3 by guiding you through the development of your own complete sample application using the latest techniques in Rails web development.

Drawing on his experience building RailsSpace, Insoshi, and other sophisticated Rails applications, Hartl illuminates all facets of design and implementation—including powerful new techniques that simplify and accelerate development.

You’ll find integrated tutorials not only for Rails, but also for the essential Ruby, HTML, CSS, JavaScript, and SQL skills you’ll need when developing web applications. Hartl explains how each new technique solves a real-world problem, and he demonstrates this with bite-sized code that’s simple enough to understand, yet novel enough to be useful. Whatever your previous web development experience, this book will guide you to true Rails mastery.


This book will help you

  • Install and set up your Rails development environment
  • Go beyond generated code to truly understand how to build Rails applications from scratch
  • Learn Test Driven Development (TDD) with RSpec
  • Effectively use the Model-View-Controller (MVC) pattern
  • Structure applications using the REST architecture
  • Build static pages and transform them into dynamic ones
  • Master the Ruby programming skills all Rails developers need
  • Define high-quality site layouts and data models
  • Implement registration and authentication systems, including validation and secure passwords
  • Update, display, and delete users
  • Add social features and microblogging, including an introduction to Ajax
  • Record version changes with Git and share code at GitHub
  • Simplify application deployment with Heroku Michael Hartl’s awesome new Rails TutorialThe Ruby on Rails3 Tutorial: Learn Rails by Example by Michael Hartl has become a must read for developers learning how to build Rails apps.

—Peter Cooper, editor of Ruby Inside

Very detailed and hands-on Rails Tutorial!

Great job! I’m learning Rails, and found your tutorial to be one of the most detailed and hands-on guides. Besides many details of Rails, it also taught me about Git, Heroku, RSpec, Webrat, and most important (at least to me), it emphasized the Test-Driven Development (TDD) methodology. I learned a lot from your tutorial. Keep up the good job! Thanks so much for sharing it.

—Albert Liu, senior manager, Achievo Corporation.

Ruby on Rails Tutorial is the best!

Just wanted to say that your Ruby on Rails tutorial is the best! I’ve been trying for a while to wrap my head around Rails. Going through your tutorial, I’m finally feeling comfortable in the Rails environment. Your pedagogical style of gradually introducing more complex topics while at the same time giving the reader the instant gratification and a sense of accomplishment with working examples really works for me. I also like the tips and suggestions that give me a sense of learning from a real Rails insider. Your e-mail response to a problem I ran into is an example of your generous sharing of your experience.

—Ron Bingham, CEO, SounDBuytz

I love the writing style of the Rails Tutorial

I love the writing style of the Rails Tutorial, and there is so much content that is different from other Rails books out there, making it that much more valuable…Thanks for your work!

—Allen Ding

Ruby on Rails 3: Das Entwickler-Handbuch

Das Buch von Hussein und Tanja „Ruby on Rails 3: Das Entwickler-Handbuch“ erscheint im April in einer neuen und aktualisieren Version.

Einiges hat sich getan: Rails 3 integriert das Ruby-Framework »Merb« und erweitert damit enorm sein Potenzial. Die neue Version bietet so eine viel größere Flexibilität bei der Wahl des Datenbank-, Test- und Template-Frameworks. Die zahlreichen und komplexen Möglichkeiten des Frameworks werden ausführlich behandelt. Dabei bleibt das Buch stets verständlich und praxisbezogen, da Rails anhand mehrerer »Realworld«-Beispiele anschaulich erläutert wird. Alle Beispielapplikationen sind dabei systematisch aufgebaut: von einer einfachen bis zu einer komplexen Anwendung inklusive TestDrivenDevelopment. Tipps und Tricks, eine umfassende Befehlsreferenz und eine Einführung in die Sprache Ruby lassen dann keine Wünsche mehr offen.

RubyGems 1.5.0 erschienen: Jetzt mit Ruby 1.9.2 Unterstützung

RubyGems ist in Version 1.5 erschienen und bringt nun endlich Unterstützung für Ruby 1.9.2 mit. Dieses Release behebt nun die Probleme die es in der vorherigen Version (rubygems 1.4) mit der aktuellen Ruby-Version gab.

Neben Bugfixes bringt diese Version auch einige Neuerungen und Verbesserungen mit.

  • Wie schon erwähnt Unterstützung für Ruby 1.9
  • Post-build hooks die ein „gem install“ abbrechen könnenl
  • Gem.find_files ist jetzt 40% schneller (on Ruby 1.9)
  • Bessere Fehlerausgabe für beschädigte/korrupte Gem Dateien (inklusive Pfad)
  • Neue Hilfe Dokumente zur Unterstützung von Ruby 1.9
  • gem update aktualsiert nicht mehr defaultmäßig und falscher weise RubyGems selber

Die Aktualisierung kann wie gewohnt über gem selber vollzogen werden:


gem update –system


Alternative Installations- und Aktualisierungmöglichkeiten sind in der neuen Dokumentation verfügbar:


Benutzer von Bundler sollten mit dem Update noch ein wenig warten, weil die atktuelle Bundler-Version nicht perfekt mit dem neuen RubyGems funktioniert. In der Regel sollte auch hier eine aktualisierte Version relativ schnell erscheinen.

Rails 3 Installer für Windows

Um die Entwicklung mit Rails auf Windows-Rechnern zu vereinfachen hat EngineYard einen One-Click-Installer veröffentlicht. Die Installationsroutine bringt alles Nötige, das für die Arbeit mit Rails benötigt wird, mit. Neben dem Railsstack sind auch weitere Komponenten in dem Paket enthalten.

Zu den zusätzlichen Komponenten gehören:

Wie die Installation verläuft und wie die installierten Komponenten überprüft werden können, wird in dem folgendem Screencast gezeigt:

Weitere Details zu dem Installer sind auf der Projektseite erhältlich:
Weitere Versionen für Linux und OSX sollen demnächst folgen.