act:ualise | technology

agile software development, software quality, scaling, testing and other tech

March 26, 2009
by j pimmel
0 comments

Vancouver Grails & Groovy Meet, March 30th

Spring has sprung and with that hails the first Vancouver Groovy and Grails meet of the year.

Time:

Monday 30th March, 18:00

Place:

WorkSpace @ 21 Water Street in Gastown, #400

Topics under the spotlight this time round are twofold:

  • EasyB: BDD For Groovy & Grails (Jerome Pimmel)

EasyB leverages the Groovy language with a simple readable DSL for writing BDD style tests. But why BDD over TDD? Come and find out…

  • Grails 1.1 Testing Lightning Talk (Geoff Webb)

Compared to 1.0.X versions (and compared to many languages too), Grails beds in an impressive amount of testing support to aid TDD . Testing integration pieces like controllers, taglibs or domain classes is now faster and less cumbersome; importantly they no longer require a Spring container and can often be run as simpler unit tests.

Hopefully this can be made into a more regular event with a variety of speakers who are interested in discussing other Groovy and Grails problem-solving-fu. If you have a topic you would like to share at a future event, please feel free to get in touch.

March 25, 2009
by j pimmel
0 comments

Agile Vancouver, special event April 21st

Eric Ries, formerly the co-founder CTO of  IMVU, is running a special Agile Vancouver workshop on the Lean Startup which he promises will involve more than just the usual slideshow and Q & A.

Whats makes Eric and the IMVU story so interesting (certainly to me) is that they are unique in having developed their business and taken some highly recognisable Agile practices and pushed those to new extremes, the like of which most would dare not emulate. They have courted many a raised eyebrow given their strategy of deploying every nine minutes, they aren’t afraid to throw away working code, the minimum viable product is a concept which companies could do well to observe and they’re even so brazenly open and honest they open board meetings to the entire company.

Additional speakers include Corey Ladas and Katherine Radeka who are speaking on Kanban and Lean respectively.

Numbers are limited and the $25 registration fee sounds like a steal to me!

March 25, 2009
by j pimmel
0 comments

If less is more, naked is ideal

Alistair Cockburn (@TheOtherAlistai) has posted a humorous yet incisive article reminding us that what absolutely certainly matters in software development is:

  • Coding
  • Testing
  • Listening
  • Designing

..  ergo, “That’s all there is to software. Anyone who tells you different is selling something.”

His compulsion to remind us of this core essence comes from the emergence of all kinds of newfangled buzzwords.. “Recently we’ve been hearing of “Agile 2.0” and “Beyond Agile”. The ad copy for these scary buzzwords includes initial architectural modeling, MSF Agile, AUP (Agile Unified Process), and Agile Model Driven Development (I note even the acronyms are getting longer), distributed teams, modeling tools, progress tracking tools.”

Certainly myself and the teams within which I have worked who had achieved success through our agility kept things lean and simple.

  • No bug databases
  • No electronic story card tracking
  • No silos/departments
  • No cubicles

Instead (and assuming you are a small, collocated team with access to usage/domain experts), try some naked agile.

“Drop the fancy tools. Drop the fancy rules. Get together. Talk, understand each other, trade ideas. Invent, code and deliver. Check in with the sponsors and users. Reflect on what you’re doing and see if you can get better.”

Read Alistair’s article in full

March 24, 2009
by j pimmel
0 comments

Clean code cheat sheet

I happened upon the Clean Code Cheat Sheet and thought it worthwhile to share. It draws together a number of principles which help you achieve cleaner and more habitable code.

It includes:

  • The Get It Done Adagio
    • Make it Work
    • Make it Right
    • Make it Fast
  • The Three Rules of TDD
  • SOLID Principles
    • SRP
    • OCP
    • LSP
    • ISP
    • DIP
  • Law of Demeter
    • Bad smell
    • Local methods
    • Local fields
    • Local params
    • Local objects
  • Connascences
  • Coupling
  • Cohesion
  • Common Metrics

A must read if you program and you’re not already familiar with them.

March 17, 2009
by j pimmel
0 comments

Another web based IDE (for Groovy/Grails only)

@graemerocher just tweeted about the Nuts Grails plugin which provides web based IDE from within your Grails application. Talk about eating your own dogfood!

Here’s some of the key features as listed on the project homepage:

  • Currently code completion is available only for groovy files
  • When user pressed ctrl+space completion suggestions will be shown
  • Variables and methods available to current scope, classes and their methods and properties will be shown in completion dialog
  • User can navigate with arrow keys
  • Users can select any of the suggestions by pressing enter key
  • Suggestions will be sent from server side. After suggestions are received by client they will be filtered further while user continues to edit.

March 13, 2009
by j pimmel
0 comments

On Software Craftsmanship

My friend and associate Chris Pitts, an Agile Coach in London, has weighed in on the ongoing debate about software craftsmanship.

Chris is focused on trying to move the debate from just being open to interpretation toward specific codes – as drawn from other present day crafts such as carpentry, surgery, architecture/building and so on. 

He proposes that Software Craftsmanship:

  • Needs a set of ethics
  • Needs a set of tools and techniques that are the generally accepted best way of doing something
  • Needs continuous learning
  • Needs apprenticeship

Read the full article.

For the benefit of those who don’t already know, a call to raise the bar for Software Development has spawned: Manifesto for Software Craftsmanship. Originally inspired by Uncle Bob Martin, this call to arms for quality has quite a few thought leaders getting vocal.

March 12, 2009
by j pimmel
0 comments

Energize your development

Gus Power and Kris Lander of EnergizedWork just presented ‘No Excuses: Concept to Cash Every Week‘ at QCon London which highlights the manner by which development is executed within the EnergizedWork stable. 

It’s worth reviewing the slides (available via ‘No Excuses’ link above) to get a sense of how using such methods can help achieve the following

  • Create and maintain an energized, engaged and fun development team
  • Getting into production fast, deploying to production weekly
  • Total test coverage ensures minimal ongoing production problems
  • Continuous QA, customer/product owner feedback assures fitness to requirements
  • No bug databases means -> kill all bugs immediately, ALWAYS
  • Continuous environmenting: the dev team creates, administers and supports all environments whether test, QA or production (why? No silos, eg: systems admin team)
  • Tracking your released features delivered against fiscal metrics
  • Showing the client that project is maximising profit with each weekly release and thus keeping them excited

Well done guys and keep it real ;) (And see you in BC again next year hopefully for more snowsports fun!)