How to Write a Web Application in Ruby

“How to Write a Web Application in Ruby” cuts through the magic and shows you exactly how every part of a web application does its job. An ebook and screencast walk you through the process of building a complete web application from scratch — in bare-bones Ruby, using code from the standard library — and then show you how to use third-party components (including the Rails and Sinatra web frameworks) to offload some of the grunt work without sacrificing your understanding.

Ruby Tapas #263: Immutable Enumerators

If we want to be sure a value won’t get mutated, we can clone it and pass the clone around instead, or we can freeze our value, and then we’ll get an exception if anything tries to modify it. In this episode we’re going to try a different way of making objects immutable in Ruby — specifically, a way of making immutable collections.

Peer to Peer Episode 1: Counting Tree Nodes

This Peer to Peer session shows how Tom Stuart tackles a challenge using Ruby: Model a tree of maximum depth 5. Given a collection of such trees, let me sort by total number of descendants or total number of terminals. These totals should be correct following any operation that adds or removes a node.

Why Are Computers Episode 1: A Fairly Deep Yak Shave

Welcome to “Why Are Computers”, a podcast that attempts to answer that question by talking to people who reckon stuff about computers and hoping they accidentally say the answer. This is episode one, the shambolic pilot episode. I’m joined by James Coglan.

Understanding Computation

“Understanding Computation” is a fun and interesting book about computation theory, with explanations written in real Ruby code instead of mathematical notation. It contains old, deep ideas from theoretical computer science, deconstructed and explained in an engaging, practical way for an audience of working programmers without assuming any academic background.