Flavatar-square_large

Andrew Goode

The Authoritative Guide on REST API Conventions

...or something like that

Designing a REST API can be difficult. Some frameworks, like Ruby on Rails, come with built-in conventions, which help, but sometimes your framework is quite willing to let you shoot yourself in the foot. For developers using those frameworks, I'd like to offer the following, which is a collection of conventions/rules that will help you . . .

Read More

June 28, 2014

Reviewing Code

Nerd humor

Reviewing code is a necessary part of software development, but I've found that many developers either don't know how to do good code reviews or just don't do it effectively.

Here's the quick-and-dirty list I usually give my software teams. Answer these questions while reviewing someone else's code and it will eventually . . .

Read More

June 22, 2014

So Long

and Thanks for All the Drinks

A couple days ago, I learned that my best friend at work is leaving. His name is Dave.

It didn't come as any big surprise since I knew of several other things leading up to this point, but I had no idea if his timeline was several months out or only a few weeks away. Turns out to be even shorter than that. He'll be gone, leaving not . . .

Read More

June 14, 2014

"Happy New Year!

You're no longer salaried."

Dilbert by Scott Adams

A couple months ago, the private company I work for was acquired by a larger public company. So far there haven't been many changes, but the ones that have been made have all been for the worse. This includes:

  • Reduction in benefits
  • More stringent time reporting
  • Canceled projects and expenses

Most of these I can live with (at least for . . .

Read More

January 04, 2014

Spring Quietly Killed Propagation.SUPPORTS

When using JTA with Hibernate 4

So here's a common scenario.

You've got a mature Java app that uses:

  • A JTA implementation (probably provided by your container) for distributed transactions
  • Spring's JtaTransactionManager abstraction for app-defined transaction management
  • Hibernate 3 for ORM
  • Spring's LocalSessionFactoryBean for building a Hibernate 3 . . .

Read More

November 02, 2013

A Blog Is Born

It's time.

Time to begin the slow and unpredictable process of change. Time to buckle down and start capturing the many thoughts and events of my life before they escape me. Time to stop waiting for changes and start making them happen. Time to begin creating my online persona.

Let's start with some context.

It's Monday, September . . .

Read More

October 01, 2013

Archive