Wildbit

The Blog

Thoughts on building web apps, businesses, and virtual teams.

22 Jun Introducing Search in Beanstalk ← Go back

Posted by Ilya Sabanin on June 22, 2009 — 4 Comments

Ilya Sabanin

We’ve been working on a new search functionality in Beanstalk for a while and today I’m super excited to introduce it to you! Initially we thought about something simple for the first iteration, but I managed to make a full-featured indexed search of commits, scoped by repository or specific user. And there are a few tricks for power users also! Let me show you.

Overview

When you log in to your account you will notice a new search field at the top right corner of the interface. It will always be there across all pages. If you are on the Dashboard, it will search for commits across all repositories. If you are in repository Activity page or Browser, or any other repository-related page, it will search only in that repository. When you enter something in that field you will be redirected to a Search Results page with a list of all revisions found for your search term.

Beanstalk Search

Right now Search is only capable of finding your commits, searching for files contents is coming later. You can use Search to find by commit message, name of file or directory changed in commit, author name and revision number. Search is using stemming so it will treat words like “fishing”, “fish” and “fisher” as the same word.

And the search is blazing fast, because it’s using an industry standard Sphinx search engine.

Search Scopes

Ok, let’s do some advanced searching now. On the Search Results page you noticed a few options to adjust your search: select boxes for repository and user. Use these to search for commits only in some repository or made by a specific user. If you leave the search field empty and select some user, you will get a list of all commits made by him (or her). Very useful to get information about a user’s activity.

Tricks

There are two special triggers that you can use in the search field to adjust your search results: +by and +rev. +by is the same as the users select box on the Search Results page but it allows you to find by users that are not registered in your Beanstalk accounts. You can use that trigger like that (without quotes): “updating CSS +by gilbert”. Or you can use it without search term to get the list of all commits made by user: “+by ilya”.

The +rev trigger is my favorite. Using it you can quickly jump to a specific revisions in your repository. Say you are on Activity page and you want to see a changeset for revision 400 of your repository. Just enter this in the search field and you will get what you want: “+rev 400″ (again, without quotes). If you do that on the Dashboard you will get a list of revision 400 changesets for all repositories in your account.

How do you like it?

This implementation of Search is just iteration number one so it’s probably not ideal and won’t suit all your needs, but as we move forward we will continue improving it according to your feedback. So we would like to hear from you! Let us know how search works for you and what interesting ideas do you have about making it even better.

4 Comments

Very nice. Speed and accuracy are very good. The only thing that was a bit confusing was that the +by filter only works with username, not with the friendly names, while the friendly names are used throughout the site. I’m sure this is intended, but it’s a bit confusing at first. Maybe the firstname/lastname could also be searchable?

Adam — June 22, 2009, 1:48 pm

Fantastic! But if I may be so bold to offer a recommendation as someone who has had a search feature that goes beyond just searching the text. In Heap CRM and Torch we have something similar to what you are calling tricks (we call them bucket selectors, but that’s hardly the point). They were always a source of support issues because people will try guessing them, or put variations of them in, etc. This went on for a couple of years until we did the simplest thing: Right next to the search box we put a “?” that linked to the search help page (instead of them finding it under the help tab). This has dramatically lowered our support requests.

Ben Smith — June 22, 2009, 1:58 pm

Thanks for the feedback! This is our first take, so I am sure we will have lots of improvements.

Chris Nagele — June 22, 2009, 3:33 pm

Chris Nagele

Write a comment

* required
* required

← Go back

Get in Touch

Wildbit, LLC

Work 20 North 3rd St, 701
Philadelphia, PA 19106 USA

Google Maps
 
 
Fax
+1 (267) 200 0835
Email
IndyHall

We work at IndyHall. Coworking is more than just space.