Recently, I had the opportunity to reinforce the need for solid sourcecode control within any software project to a friend who was looking for a new coder (PHP). Previously, his sourcecode control policy centred around having good backups. Needless to…
Bug, Buuuug, *BUG*!!!! I KNEW it.
I am a stalwart follower of the PEEPCODE screencasts. I particularly liked the series about RSPEC. But, in reviewing the code for it, and using the code subsequently, I found this little gem. class Hash def except(*keys) self.reject{|k, v| keys.include?(k…
in_batches_of
Rails is nice. Rails is REAL nice, but, you would expect me to say that, I am a rails developer. One thing that rails is not nice about is efficiency. It’s elegant, its compact, but, the simplest things can have…
Agile ain’t about FAST….
… it’s about GOOD. Using Agile techniques, Rails for instance, or any of the other new frameworks popping up more quickly than mushrooms on a cowturn in a darkened room, and things like TDD, BDD, SPEC driven whatever, is NOT…
A Peepshow anyone?
Nudge Nudge, Wink Wink, Say NO MOWER! or so the old sketch goes. Well, here is a peepshow that even a mother could love. I am, of course, talking about the PEEPCODE screencasts. Wonderful episodes of skirt lifting, revealing the…
Models make decisions, views and controllers ask PERMISSION
Rails uses MVC. Its important to correctly partition what each section does. Views and Controllers should NEVER make decisions. Models should make decisions, and controllers and views should ask models for permission. For instance, if you have a a User…
Users, RSPEC and Behaviour.
The classic way in rails of implementing model behaviour control of controllers and views is to decorate your model classes with methods which expose behavioural information. For instance, for this message, we will consider an application which has users and…
RSPEC: Am I going too far.
I just had a nice idea for how to make my current application prettier. Instead of stopping what I was doing (an item on the critical path, not ‘fluff’) and doing it, I added it as an unimplemented expectation in…
The loneliness of the long distance tester
Well, today I have been coding a new section of the application my current client needs. I have been using RSPEC, and although I LOVE its expressiveness I find that if I use TDD/BDD to its upmost, I spend a…
An evening wasted…
I tend to use music as I code. I like to do about two albums worth of coding and then take a break. My current music player is gnomes musicbox and it does not have a feature to allow me…