Pivotal Tracker Does Some Things Really Well.....
It provides a very streamlined and convenient tool for managing story cards with clients. This is especially true when your client is not on site with you on an ongoing basis. It does a solid job of fostering collaborative ownership of project scope and allows clients to see their impact on the project in a very tangible fashion. These things are all great once there are stories in Pivotal Tracker. Sometimes getting stories into Pivotal Tracker can be a frustrating experience.
Pivotal Tracker Can Be Frustrating.....
When I found myself on the receiving end of a brain dump by a client or in a room with flaky wireless I frequently got burned by the limitation of how fast Pivotal Tracker's UI would let me create new stories or by lost stories when then internet fizzled out.
The Solution.....
One of my fellow Rocketeers, Wes Gibbs had the idea for and wrote a ruby script called slurper that allowed us to compose stories in a plain text file and then slurp them into Pivotal Tracker through the api. After a few iterations of improvements with contributions by myself, Tim Pope and Stephen Caudill it has been released as a gem.
Install the slurper gem

Save your file and slurp the stories into Pivotal Tracker.
It Gets Better.....
slurper is great. It's much faster than working through the Pivotal UI. It adds the additional bonuses of not having to worry about losing stories to flaky internet and being able to archive your story files in a dropbox folder or Basecamp for historical purposes.
Eventually I found having to compose the stories in the slurper format still wasn't fast enough. To solve this I wrote the slurper.vim plugin. The plugin generates story templates for you via key maps of CTRL-K and CTRL-L depending on whether or not you want to add acceptance criteria to your stories. Fill in the details for each story, wash, rinse and repeat.
There is a detailed readme available for both projects on their respective github pages with installation, configuration and usage information. They currently follow the Hashrocket Way format for writing stories.
slurper github.com/hashrocket/slurper
slurper.vim github.com/alowe/vim-slurper
Technorati Tags: agile, pivotal tracker, story carding, vim

It provides a very streamlined and convenient tool for managing story cards with clients. This is especially true when your client is not on site with you on an ongoing basis. It does a solid job of fostering collaborative ownership of project scope and allows clients to see their impact on the project in a very tangible fashion. These things are all great once there are stories in Pivotal Tracker. Sometimes getting stories into Pivotal Tracker can be a frustrating experience.
Pivotal Tracker Can Be Frustrating.....
When I found myself on the receiving end of a brain dump by a client or in a room with flaky wireless I frequently got burned by the limitation of how fast Pivotal Tracker's UI would let me create new stories or by lost stories when then internet fizzled out.
The Solution.....
One of my fellow Rocketeers, Wes Gibbs had the idea for and wrote a ruby script called slurper that allowed us to compose stories in a plain text file and then slurp them into Pivotal Tracker through the api. After a few iterations of improvements with contributions by myself, Tim Pope and Stephen Caudill it has been released as a gem.
Install the slurper gem
$ gem install slurperCreate a story_defaults.yml file in your working directory and add your configuration information.
project_id: 1234Create a stories.slurper file in your working directory and open in vim. Compose your stories in the slurper story format.
token: 123abc123abc123abc
requested_by: Jane Stakeholder

Save your file and slurp the stories into Pivotal Tracker.
$ slurp stories.slurper
It Gets Better.....
slurper is great. It's much faster than working through the Pivotal UI. It adds the additional bonuses of not having to worry about losing stories to flaky internet and being able to archive your story files in a dropbox folder or Basecamp for historical purposes.
Eventually I found having to compose the stories in the slurper format still wasn't fast enough. To solve this I wrote the slurper.vim plugin. The plugin generates story templates for you via key maps of CTRL-K and CTRL-L depending on whether or not you want to add acceptance criteria to your stories. Fill in the details for each story, wash, rinse and repeat.
There is a detailed readme available for both projects on their respective github pages with installation, configuration and usage information. They currently follow the Hashrocket Way format for writing stories.
slurper github.com/hashrocket/slurper
slurper.vim github.com/alowe/vim-slurper
Technorati Tags: agile, pivotal tracker, story carding, vim

10 comments:
Hey, haven't checked out slurper, but did you know that you can do csv import really easily? When I have a large chunk of stories to put in tracker, I just write them out one per line in a text file. Put the word "Story" at the top of the text file, then run import. Voila, all your stories are in tracker.
Importing/Exporting csv's can be helpful for archiving or moving projects between accounts. The value in using slurper is that you can compose stories much faster and in the format you would have them in in tracker. You also have the power of Vim so that when your client decides to rename a major part of the system you can easily change it in all your stories quickly.
I'm getting a "Failed with 400 Bad Request (ActiveResource::BadRequest)" error. Any ideas?
Justin what are you getting a Failed with 400 Bad Request error on? Slurping Stories Into Pivotal Tracker?
yup when I run "slurp stories.slurper" I get:
/Users/ippy04/.rvm/gems/ruby-1.8.7-p248/gems/activeresource-2.3.4/lib/active_resource/connection.rb:188:in `handle_response': Failed with 400 Bad Request (ActiveResource::BadRequest)
Here's my single story stories file:
==
Request private beta invitation
As an unregistered user
I am able to request to be included in the private beta.
In order for people to sign up without being invited
==
Am I missing something obvious? Thanks!
Justin it looks like your format is incorrect. I have posted a screenshot above of a sample story to clarify.
If you use slurper.vim it provides macros for inserting blank stories to fill in.
hrmm I changed the story format but am still getting the same error:
==
name
Request private beta invitation
description
As an unregistered user
I am able to request to be included in the private beta.
In order for people to sign up without being invited
labels
==
The whitespace got lost on the last post - this story is still failing.
==
name
Request private beta invitation
description
As an unregistered user
I am able to request to be included in the private beta.
In order for people to sign up without being invited
labels
==
Justin, remove the line between your name and the description line. Everything other than the dividers ==, name, description, and lables needs to be indented two spaces. Note this is not a tab. Also am working on an update to slurper.vim to provide support for bugs, chores etc and a proper indentation file.
Post a Comment
Constructive and informative comments are appreciated. They are also moderated. I review them as quickly as I can.