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 . . .
Reviewing Code
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 . . .
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, . . .
"Happy New Year!
You're no longer salaried."
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
. . .
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
. . .
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.