A guest blog post that I wrote for the Startup Product Summit’s blog. It lays out how we were able to focus on the right set of features for Sprint.ly 1.0 based on objective data.
Stories in Sprint.ly are special. You can create sub-items underneath them and independently assign them to other people on your team.
This video shows you the entire lifecycle of an item in Sprint.ly. See how to create items and follow them through the entire process from Backlog to Accepted.
A little more than a year ago we released Sprint.ly into private beta. In June we removed the invite code. Today we’re removing the beta tag. Over the last year we’ve been actively listening to our current (and former) customers’ major pains.
Those recurring and systemic pains could be summed up as follows:
- Once your backlog has too many items in it it becomes very difficult to manage and organize things.
- Sprint.ly makes it very easy for anyone in the company to create items, but non-technical users often create tickets with the wrong assignee, improper tags, etc. This can cause confusion as it keeps managers out of the normal flow of items.
- Sub-items are regularly pointed out as one of our killer features, but they often get lost in the shuffle.
- Sprint.ly’s UI, while very pretty, can make it very difficult to see everything that is going on.
- Mentions, comments, attachments, and other activity can get lost in the shuffle.
I’m happy to report that we’ve addressed all of the above and more with Sprint.ly 1.0.
Introducing the New Item Card
Our new item card is a massive update over the old one. It’s 40% slimmer and includes 40% more information than our old item card. Additionally, it is 100% click-to-edit. You can modify tags, assignee, and score directly from the card. The edit and delete link are always present as are the various workflow buttons.
This new card design has been rolled out across the site. The dashboard view, items view, and all popovers now use this design (and, yes, the popovers are fully editable).
Introducing Someday and the new Items View
A big problem with the items view was that you could rarely see more than 10-15 items, even on a big monitor. That, suffice it to say, is no longer an issue. Our new item card is 40% slimmer, but our new ultra slim view sports an even slimmer single line view. We have also switched to a two column layout. With the ultra slim view I can easily see 30+ cards on my 11” MacBook Air.
Along the top you’ll notice a new flow with four steps: Triage (Someday + Backlog), Underway (Backlog + Current), Pending (Current + Complete), and Done (Complete + Accepted).
“Someday? What’s that?!” We have switched our old feature into a new status that all new items will default to. This allows you to keep an unorganized list of everything you might want to do “someday” while keeping your backlog lean and mean. If you’ve already been using our archive feature for this purpose, there’s nothing left to do. If you haven’t, don’t worry as we’ve automatically marked any item that hasn’t been active for 30 days as Someday.
Sub-Items are Always Visible in Items View
A major update to the items view, besides all of the other goodies above, is that sub-items are always shown. This manifests itself in two ways:
- Sub-items that match your filters that share the same status as their parent show up underneath them.
- Sub-items that do not share their parent’s status (e.g. they haven’t been started or were completed before their parent) will show up in their appropriate column with a slim view of their parent above.
Introducing Activity Feeds
Our new activity feeds are a powerful new addition to Sprint.ly. You can filter for activity using our items filter interface, which means you can find activity by tag, by type, assigne, and your saved filters. Additionally, you can facet the results by activity type. At the top of the activity feeds is a simple spark line of activity so you can see at a glance how work is progressing.
One more thing, it’s entirely real-time push enabled. As new activity matching your query happens within Sprint.ly, they will be pushed to the top of your feed. So sit back and watch the team work. We think activity feeds look great on the big board.
So if you’ve found yo =urself wondering what your team is up to, wonder no more. All it takes to find out now is a simple click over to your product’s activity feed.
Sprint.ly 1.0 is the result of two months of coding and nearly a year of customer development. If you’re already one of our customers, we hope we’ve made Sprint.ly damn near perfect for you. If you’re not a customer of ours yet, give us a try for 30 days for free.
NOTE: All customers can sign up for a free, live training webinar on Sprint.ly 1.0.
Starting today, you can now reference and close tickets from within your GitHub pull requests. To make it work, you will need to link your Github account with Sprint.ly and mention an item using our SCM command syntax. We’ll update the ticket with a link back to the relevant pull request. When that branch gets merged, we’ll mark any closed tickets as complete.
For folks who use a branch-based git workflow, pull requests represent an important event in the lifecycle of an item which is why we have made them first class objects in Sprint.ly. By embedding Sprint.ly into your existing workflow we hope to reduce the need for process and let you focus on shipping code. We have a lot more ideas in this vein which we’re excited to start exploring. As always, if there’s something you’d like to see, please let us know!
Since the day we launched Sprint.ly into private beta, we’ve been committed to helping automate collaboration across teams within a company. Until now, one way we’ve done this is by allowing developer’s to use their natural GitHub workflow to comment on and manipulate tickets from the comfort of their commit messages.
Today, GitHub is announcing a new status API for commits which enables tools like Travis CI and Sprint.ly to surface external statuses associated with a given commit (e.g. “This commit didn’t pass tests”). We’ve been working with the fine folks at GitHub to ensure Sprint.ly is ready to take advantage of this great feature today.
So how does it work?
- A developer makes a commit that closes a Sprint.ly ticket. e.g. “Added some missing LESS styles. Fixes item:55”
- Sprint.ly marks the ticket as complete, emails the team, attaches the commit message as a comment on item #55, etc.
- Sprint.ly then marks the commit SHA corresponding to the fix as “pending” via GitHub’s new status API.
- Someone reviews the commit and then accepts the ticket in Sprint.ly as having been verified.
- Sprint.ly then marks the commit SHA corresponding to the fix as “success” via the status API.
Keeping everyone on the same page can be difficult, but we hope this addition will help close the gaps in communication that can surface between what us developers are doing and what the business people are doing.
Have you ever wished Sprint.ly would push events to 3rd party services? Yeah, us too. Above is a screenshot of our newly created outbound services integrations, which are available on the site starting now.
We currently support:
If the service you’re looking for isn’t in the above list, fear not, you’re in luck! Following our friend at GitHub’s lead, we’ve open sourced our integrations. Included in the repository are detailed instructions on how to contribute your own services integration.
PS We’re particularly excited to see what people cook up by combining outbound services with our item annotations API.
The main data object at Sprint.ly is the item. This is the core unit of collaboration in our software. All comments, code commits, etc. all map back, in some way, to an item. Items in Sprint.ly are usually well represented throughout the organization. You might chat about them in your Campfire or HipChat. Your Jenkins environment likely double checks your work against them. You get the idea.
Until now, however, there wasn’t an easy way to link these other representations of your Sprint.ly items back into Sprint.ly. Often times they are lost due to their ephemeral nature or, worse, the email alerts aren’t going to the entire team working on the item.
Today we’re happy to introduce a simple and flexible way to integrate these external events related to Sprint.ly items directly into Sprint.ly: item annotations.
What is an item annotation? It is an external event related to an item that is comprised of a user, a label, an action, and a free-form Markdown body. Once an item annotation is posted to the API two things happen:
- It is added to that item’s activity feed.
- The entire item’s team is alerted to the new annotation.
Here’s a peak at what a Jenkins bot might post back to an items referenced in commits that ended up breaking the build.
You can think of item annotations as a mini alert system so that actions in external systems that affect your items are surfaced to people working on those items. We’re excited to see what kinds of integrations people come up with.
Today is just like any other day at Sprint.ly; we’re answering your support requests, fixing bugs, and working on the next big feature. The only thing that’s changing is that we’re letting everyone in on a secret, which is that we’ve raised a small warchest and assembled an amazing list of advisors to help us make Sprint.ly the product that we and our customers have always dreamed of.
Our primary focus was ensuring we had enough funds to aggressively pursue some of our biggest goals, while surrounding ourselves with investors who would work with, and for, us. We had three objective filters that all of our investors had to meet:
- Must have founded a company at some point in their career.
- Must be investing their own money – in whole or in part.
- Must do less than 5 deals per year.
As for our advisors, we were looking for people who met one or more of the following criteria
- Has considerable experience managing all kinds of software development teams and products.
- Has considerable design experience.
- Has expert knowledge in a field that we, as developers, do not (e.g. branding, advertising, operations, sales, business development).
So who are our investors? Freestyle Capital, Andrew Bosworth (Director of Engineering at Facebook), Stan Chudnovsky (Founder of Ooga Labs), Blaine Cook (Former Lead Architect at Twitter and Cofounder of Poetica), Ross Dargahi (Cofounding VP of Engineering at Zimbra), Ryan Freitas (Cofounder of About.me), Tony Haile (CEO of Chartbeat), Michael Levit (Managing Partner at Founders Den), Eamon Leonard (VP of Engineering at Engine Yard, Cofounder of Orchestra.io), Matt Mullenweg (Creator of WordPress, Founder and CEO of Automattic), Alex Payne (Former API Lead at Twitter, Cofounder & CTO of Simple), Jason Shellen (Cofounder of Brizzly and Tapedeck), and Rick Webb (Cofounder of The Barbarian Group).
And who are these advisors? Chris Lea (Author and VP at Media Temple), Michael Lopp (Renown as @rands, Formerly Apple, Director of Engineering of Palantir), John Quinn (Former VP of Engineering at Digg, VP of Engineering at Gilt Group), Evan Henshaw-Plath (Formerly Yahoo! Brickhouse, Fire Eagle, Odeo, and Founder of Cubox), Alex Hunter (Former Head of Global Digital Brand Strategy for Virgin), Marc Hemeon (Designer at YouTube, Cofounder of fflick & teefury, Director of UX at Oakley), Jeffrey Kalmikoff (Head of Product & Design at Betable, Former Chief Creative Officer at Threadless), and David Bill (Cofounder and CTO of CoTweet).
We announce our funding, not as a triumphant achievement per se, but as a public declaration that we’re 100% committed to helping our customers achieve development-Zen with Sprint.ly. This announcement shows that we are not only pushing forward with Sprint.ly, the product, but also setting up Sprint.ly, the company, to live a long, happy, and prosperous life.
Finally, we want to thank you, our customers, for cheering us on, reporting bugs (in some cases submitting patches!), building tools on top of our software, and supporting us with your hard earned dollars every month.