Active Breadcrumbs Gem

Now available – the active_breadcrumbs gem. It’s a light-weight utility gem for creating breadcrumbs for Ruby/Rails websites, a standard navigational aid for websites. Now available for downloading at RubyGems.org and GitHub.

This gem makes it easy to generate breadcrumb trails in a Rails application. The emphasis is on “structural” breadcrumbs, where a breadcrumb trail reflects the logical structure of a web site (as opposed to a “dynamic” trail, which reflects where the user has been – for which I humbbly suggest the user take advantage of the browser’s Back button). For more information, see the documentation on GitHub.

Speaking at GFIRST 2012

I will be speaking at the GFIRST (Government Forum of Incident Response and Security Teams) 2012 Conference, which is hosted by the Department of Homeland Security. The conference brings together speakers, vendors and more than 1500 attendees from the cyber security arena for a week-long event featuring industry-related presentations, product demonstrations and training.

Together with partners David Roberts and Jonathan Quigg, we will be giving an hour-long, intricately-choreographed presentation entitled, “Social Networking: The Next Weapon Against Bad Actors.” The talk details how social networking strategies can be applied to facilitate knowledge sharing within the cyber security community and empower the community to act even more effectively against bad actors, the people responsible for malware, viruses, identify theft, spam and other nefarious activities.

First GFIRST Dry Run

Just finished my first dry run of my GFIRST 2012 talk, “Social Networking: The Next Weapon Against Bad Actors,” with co-presenters Dave Roberts and Jonathan Quigg. Basically solid, but needs the expected amount of polish to be conference-worthy.

GFIRST Cyber Security Talk

I just finished my presentation for the GFIRST 2012 Conference, which will be hosted by the Department of Homeland Security in Atlanta from August 19 – 24. I’m really looking forward to the conference.

Viewing Aging Git Branches

This really simple shell script from my friend, Robb Kidd, system administrator extraordinaire, shows git branches in order based on their most recent check-in date. You’d be surprised how useful this script is.

As a developer, you may be working on multiple bug fixes, plus longer-term development tasks, at the same time on a particular project. With git as your source code repository, it’s common for developers to work on each fix or task in a different branch.

But then you have to remember those branch names, and which branches you worked in most recently.

The aging script creates a simple “report” showing all branches, in order based on how recently changes have been checked in. It also shows who committed the most recent check-in.

Here’s the script:

#!/bin/bash

git branch -a | grep -v HEAD | sed s/^..// | while read branch; do
  echo `git log -1
    --pretty=format:"%Cgreen%ci %Creset%h %Cblue%cr%Creset (%cn)" $branch`
    $branch ; 
done | sort

Note that the code has been tidied up for display. The two indented lines after the “echo” line should actually be on the same line.

The output looks like this:

2012-07-10 16:37:34 -0400 0e3ac28 11 days ago (David Keener) remotes/origin/breadcrumbs_fix
2012-07-11 11:25:42 -0400 57338ee 10 days ago (Chad Fowler) remotes/origin/fix_elevated_alarm
2012-07-12 13:47:56 -0400 c3e3df0 9 days ago (Jim Wierich) remotes/origin/disableNegativity
2012-07-12 15:25:38 -0400 270537c 9 days ago (Rich Kilmer) remotes/origin/updateXMLFile
2012-07-12 16:24:39 -0400 8ce5787 9 days ago (Yehuda Katz) remotes/origin/master
2012-07-13 10:28:13 -0400 9d56685 8 days ago (Yehuda Katz) remotes/origin/dns_error
2012-07-13 10:50:02 -0400 61525d5 8 days ago (Chad Fowler) remotes/origin/XYZ_fix
2012-07-16 12:07:39 -0400 d835f8d 5 days ago (David Keener) remotes/origin/search_widget_upgrade

Toastmasters Area Governor

I’m proud to have been selected as the Area 45 Governor For Toastmasters District 29. This area covers the Ashburn and Dulles areas of Northern Virginia. It features four corporate clubs and two community clubs.

Note: By the end of the Toastmasters year, which runs from July 1st to the following June 30th, I managed to achieve a level of “President’s Distinguished” for Area 45, which is the highest level achievable for an area within Toastmasters.

GFIRST 2012 Conference

I’m proud to have been selected as a speaker for the 8th Annual GFIRST Conference, which will be held August 19 – 24 in Atlanta, GA. This is a major cyber security conference with over 1500 attendees.

GFIRST 2012