Most developers know enough about refactoring to write code that’s pretty good. They create short methods, and classes with one responsibility. They’re also familiar with a good handful of refactorings, and the code smells that motivate them. Read more
Metric_fu makes it easy to generate reports that measure code quality. Once you’ve created the reports, what do you do next? You know your code could be better. Now what? As lead developer of metric_fu, Jake Scruggs is in a great position to make recommendations about the best ways to leverage the tool.
Video Producer: Chicago Ruby
This two videos show how to do Behaviour Driven Development (BDD) with Ruby, Cucumber and RSpec.
Coding dojos offer the chance to practice solid coding techniques without pressure. This video shares experience learned during dojos.
Video Producer: chicagoruby.org
Most of us have worked where there’s tremendous effort on planning, anticipating the needs of our customers, testing before release to our customers, re-thinking, re-considering and re-coding. To a developer, the only thing that may seem worse is when there’s none of this. Regardless, we expect to know, in advance what’s true about our customers.What if both alternatives are wrong? What if, instead, we assume we’re ignorant and use our creativity to learn? Then, we’d continually run live experiments with our users to see what works; and gather more metrics than we know what to do with; and continually deploy changes to adapt those learnings. Find out why we worked this way, the results we achieved and the specific tools and technologies we use.
Producer: Lone Star Ruby Conference
Your application is slowing down and you can’t seem to speed it up. The code is a mess, and changes are taking longer and longer. You’re afraid to release new features for fear of introducing bugs throughout the system. The marketing and sales teams are frustrated by how long new features are taking to release. All signs seem to point to the dreaded Big Rewrite. Big Rewrites are dangerous projects. The decision to rewrite shouldn’t be taken lightly. In this session, we will walk through the pros and cons of Rewrites and give real world examples of Rewrite strategies that work and that fail. From the first hint of a need for a rewrite, through the migration and deployment of the reincarnated system, we’ll share our victories, sorrows, joy, and pain. By the end of the session we hope you’ll have a better idea of how to approach The Big Rewrite the next time it rears its never-welcomed head and have a framework which increases your likelihood of success.
The Crystal 3-step model consists of practices, principles, and personalization. The practices are what you know or learn how to do. The principles are the laws of design that inform you as to what works better, when. Personalization is adapting yourself to your situation, and your practices to your personality. In this closing keynote, Dr. Alistair Cockburn will incorporate the history of Agile development into the evolution of what we know about software development, leading to how to use the Crystal 3-step model to improve your and your team’s performance.
Video producer: Ruby|Web Conference
This is a 5 minute video that takes you through the steps of getting CruiseControl.rb up and running with a Ruby on Rails project.
Ben Hall shows how Ruby testing tools can help with .NET and ASP.NET development and takes a look at RSpec, Webrat, Cucumber, Selenium and others. Also: a peek at using IronRuby for testing .NET apps.
Continuous integration is a great way to keep your code base organized and well tested. But when a test suite takes so long to run that developers stop running it before every commit, they lose their constant feedback loop and quality drops. In this talk we’ll explore methods of speeding up the test suite so that developers can be confident about the code they’ve written before they share it with the team. We’ll start with quick cheap fixes, like optimizing your operating system, that can yield drastic results (like cutting test time in half!) with no loss of functionality. We’ll also cover methods of writing tests that reduce their run time with gems like fast_context for shoulda. At then end, we’ll move to more involved methods of multi-tasking your test suite to run on all the cores in your workstation and even to setting up a distributed testing cloud to run all your tests in parallel. Every tactic will be backed up with hard benchmarks from real production code. We’ll show the evolution of a test suite from its full run time of 13 minutes down to a number you won’t believe.keep looking »