Skip to content

XP123

Exploring Extreme Programming

Menu

Primary menu

  • Home
  • Refactoring Workshop
  • Start Here
    • Comics
    • TDD: Test-Driven Development
    • Refactoring
    • User Stories
    • Dungeons & Patterns
  • Update
  • About
  • Contact

Tag Archives: programmer

Testing Exceptions: Harder Than It Looks

Posted on February 9, 2022 by Bill Wake

Exceptions are one of the most complicated constructs in many languages. Because of that, testing exceptions is one of the harder tests to do. Consider the following code. Assume block1 through block3 are straight-line code, each ending with a statement Continue reading Testing Exceptions: Harder Than It Looks→

Posted in xp123.com | Tagged exceptions, programmer, tester, testing, XPlorations

Refactoring, a Whole-Team Guide

Posted on February 2, 2022 by Bill Wake

A one-page summary of Refactoring is available in PDF. Refactoring is…? Changing the design of existing code without changing its observable behavior (per Martin Fowler). These changes include renaming, reducing duplication, rearranging code, and more. Even large refactorings are built Continue reading Refactoring, a Whole-Team Guide→

Posted in xp123.com | Tagged customer, programmer, refactoring, tester

Code Smells in Exceptions

Posted on January 19, 2022 by Bill Wake

Exceptions are complicated, so it’s no surprise that they can be misused. A “smell” describes potential problems; whether it’s really a problem is your judgment. Let’s look at smells you may find with exceptions. Empty Exception Handlers Java has the Continue reading Code Smells in Exceptions→

Posted in xp123.com | Tagged design, programmer

Spooky Action at a Distance: Exceptions

Posted on January 12, 2022 by Bill Wake

How should we handle error conditions? We’ll look at the try-catch exception mechanism that’s similar across many languages, and a few patterns and pitfalls for working with it.  Old-School One way of handling errors is for a method to have Continue reading Spooky Action at a Distance: Exceptions→

Posted in xp123.com | Tagged design, programmer, XPlorations

2021 Articles in Review

Posted on January 5, 2022 by Bill Wake

Here are the the articles and videos I made last year. Key topics: user stories, refactoring, TDD, functional languages, and design. I’ve grouped them into these areas: My favorites: Want More?Have you found these articles useful or want more? * Continue reading 2021 Articles in Review→

Posted in xp123.com | Tagged customer, design, programmer, refactoring, tester, user stories, XPlorations

Review: Operating System Principles

Posted on December 29, 2021 by Bill Wake

Operating System Principles, by Per Brinch Hansen. 1973. This is a classic book on operating systems – better than many of its successors. What I love about this book is that it comes just after an era of experimentation, when Continue reading Review: Operating System Principles→

Posted in xp123.com | Tagged design, programmer, reviews

Immutable Objects

Posted on December 8, 2021 by Bill Wake

Immutability is the idea that once created, data never changes. Why might we want this? Avoid aliasing bugs: Aliasing occurs when there are multiple ways to access the same piece of data, and one piece changes it in a way Continue reading Immutable Objects→

Posted in xp123.com | Tagged design, programmer, XPlorations

Queues from Stacks: Functional Data Types

Posted on November 17, 2021 by Bill Wake

Functional languages often have immutable data types – you can’t change an object once you’ve created it, though you can include it as part of other objects. Immutable objects are easier to reason about, and prevent errors where two parts Continue reading Queues from Stacks: Functional Data Types→

Posted in xp123.com | Tagged design, programmer, XPlorations

Refactoring and Programming Language Semantics

Posted on November 10, 2021 by Bill Wake

Refactoring improves the design of code without changing its observable behavior. But what is observable behavior? We’ll look at how language semantics affect that. When you devise new refactorings, you have to take semantics into account. The Simple View is Continue reading Refactoring and Programming Language Semantics→

Posted in xp123.com | Tagged design, programmer, refactoring, XPlorations

Lambda to Reduce Coupling

Posted on October 27, 2021 by Bill Wake

Coupling occurs when one part of a system depends on another part. That is, if one part changes, the other must be adjusted too. Lambda expressions can reduce coupling by needing to refer to fewer things. Dependencies on Objects Consider Continue reading Lambda to Reduce Coupling→

Posted in xp123.com | Tagged design, programmer, refactoring, tdd, XPlorations

Post navigation

← Older posts
Newer posts →

Primary Sidebar Widget Area

Stay Up-to-Date

If you'd like to hear when articles come out, sign up today!

|●  Become a Patron!

Recent Posts

  • And-Or Trees
  • Run Tests Without an App — Step by Step with Xcode
  • Swift Testing – A New Unit Testing Framework
  • TDD with a Function Pipeline
  • Trees – Confidence in Design
  • Pipelines – Confidence in Design
  • Threaded Code (and Composite)
  • Time Troubles – Transitions
  • Refactor: Inline-Adjust-Extract
  • Organizing Fields and Methods

Tags

agile analysis atdd author business charts classic coach computers conference cool customer design economics fiction games HCI history improv integration interesting intro Java job aids language lean learning metaphor music myth patterns planning programmer refactoring resources reviews scrum software spreadsheet stories tdd team tester training XPlorations

Archives

counter for wordpress
Copyright © 2025 XP123. All Rights Reserved.
Theme: Catch Box by Catch Themes
Scroll Up