Refactoring Erlang with Wrangler

Published August 23rd, 2011 Under Coding | Leave a Comment

Wrangler is an interactive refactoring tool for Erlang. This video shows how to perform the basic refactoring activity: how to rename functions, variables and modules and also how to more functions from one module to another.

Metrics Based Refactoring

Published May 30th, 2011 Under Coding | Leave a Comment

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

So You Think You Need a Rewrite?

Published November 29th, 2010 Under Coding | 2 Comments

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.

Refactoring Test Code

Published August 31st, 2010 Under Coding | Leave a Comment

Badly written tests are a nightmare of many agile projects. Hard to understand and maintain test suite sometimes act as a brake on introducing changes. This presentations discuss basic techniques of refactoring test code. During live coding session you will see how to simplify non-readable tests in few simple test and, among other things, various ways of creating test data, expressing assertions and avoiding duplication in tests.

Removing Duplication by Refactoring

Published May 5th, 2010 Under Coding | Leave a Comment

This video removes the duplication in the add and subtract classes by introducing an abstract base class. The end result is a use of the template method pattern.

Video Producer: Brett L. Schuchert

Learning how to use the Extract Interface Technique

Published February 22nd, 2010 Under Coding | Leave a Comment

In this episode we are going to take a look at another refactoring technique, the Extract Interface technique. This technique allows you to extract an interface from a class in order to break your concrete dependencies. By doing this you can provide yourself with better testing support as well as a better layer of abstractions.

http://www.dimecasts.net/Content/WatchEpisode/163

How Do I Refactor my Code in Visual Studio?

Published January 14th, 2010 Under Coding | Leave a Comment

These two videos show how to use the refactoring tools in Visual Studio.

Video Part 1

Video Part 2

Refactoring A Cyclomatic Complexity Script

Published December 23rd, 2009 Under Agile | Leave a Comment

An example of refactoring to clean up a python script.

Blog source of the video

Test-Driven Development With Refactoring

Published September 24th, 2009 Under Coding, Software Testing, TDD | Leave a Comment

Success on an Agile project relies heavily on the people in the trenches. Developers, testers, and product managers focused together, can deliver astonishing accomplishments in a short amount of time. Extraordinary results require discipline, motivation and alignment. Test Driven Development (TDD) and Refactoring creates the momentum to help developers organically adapt to an endlessly changing world. In this hands-on tutorial, you will see and try simple TDD and Refactoring exercises. The session is split in two videos.

Eliminating Static Dependencies

Published August 21st, 2009 Under Coding, Software Testing, TDD | Leave a Comment

Nature abhors a vacuum.  It turns out she also abhors static dependencies (I have my sources).  Static dependencies are the modern-day globals, often exposed through classes named “Helper”.  I’ve certainly been guilty of overusing static dependencies in the past, with classes like “LoggingHelper”, “SessionHelper”, “DBHelper” and so on. The problem with static dependencies is that they are opaque to the extreme, enforcing a strong coupling that is impossible to see from users of the class.  To demonstrate techniques for eliminating static dependencies, Ray Houston and Jimmy Bogard created a short screencast. The screencast demonstrates using TDD along with ideas and techniques laid out in Michael Feathers’ Working Effectively with Legacy Code and Joshua Kerievsky’s Refactoring to Patterns.  It details how to make safe, responsible changes to an existing legacy codebase, while improving the design by breaking out dependencies to a static class.

Watch this screencast on Pablo TV

keep looking »