We've merged with the Big Nerd Ranch! Learn More

our blog

The Highgroove blog. Sit pit-side with us to learn how we work. Sometimes technical, sometimes business-oriented, but always focused on simple solutions.

Posts by the author david

You are browsing posts by david. Check out all posts on our blog.

    SQL cups

    At Highgroove, we love working with the community, whether it's hosting hack nights, organizing ATLRUG, or contributing to open-source software. One of our key contributions involves auditing those ruby gems upon which we most rely, or the ones that present the most perceived risk. Ernie Miller's Squeel definitely piqued our security interest. Read on to hear about the results of our audit and how we worked with Mr. Miller to validate our results.

    → Read More

    by david

    Conference Roundup - Summercon 2012 and BarCampNYC

    Published July 02, 2012 tagged with: Community Conferences

    The Topics Wall at BarCampNYC

    One of the most amazing benefits of working at Highgroove is the yearly conference requirement. You are required to go to a conference of your choosing—on the company's dime—and report back with what you learned. What's even more amazing is that the conference you choose doesn't have to be something Ruby-centric or Railsy (though we do love those conferences too). Read on to see how I conned the company into letting me attend two conferences during my yearly outing in NYC.

    → Read More

    Locks

    For those following along at home, you know that we love to work iteratively, and as such, work towards our big-picture goals one small step at a time. We also take software quality seriously, and an important part of software quality, particularly when it comes to web applictations, is security. We've begun to develop a new process to address security in our applications. In the process we also want to contribute back to the community where we can because it will make the entire web ecosystem that much better. After the break we'll talk about our high-level process and how we implement it.

    → Read More

    GRCA 83608 Kolb Brothers Projector (front)

    At Highgroove we love giving presentations. We sponsor the Atlanta Ruby Users Group (ATLRUG), we each attend at least one conference per year where we are highly encouraged to speak rather than simply attend, and we give weekly tech talks at the office. Each Highgroover has their own presentation tool-stack ranging from extremely simple using nothing more than a web browser with various tabs they manually rotate through, to sophisticated Keynote slide-decks. One can also use a very editor and CLI-centric collection of tools to build flexible presentations using many of our everyday tools like git, guard, slim, and Github with Github Pages. If you like using those sorts of tools to speed things along read on after the jump.

    → Read More

    Tools on pegboard 2012-04-03 09.26.50

    At Highgroove we really like testing and are constantly looking for ways to improve our testing process, how quickly our tests run, and how exactly we execute our tests. How often during your Test Driven Development (TDD) cycle do your tests fail "mysteriously"? You've written your tests, written your code, and most of them pass but one or two stubbornly fail even though you are fairly certain they should pass given the testing setup you've provided? At Highgroove we bias towards action so we are likely to launch a debugger session or a pry session to get to the bottom of this. Another approach, which won't break your existing TDD workflow, is to use your test-suite in place of a more traditional debugger. After the jump we'll talk about how we've been using this strategy to dig into code quickly and easily.

    → Read More

    Empty Meeting room

    Meetings. Quick chats with our customers, daily if possible, don't count as meetings. They keep everyone on the same page to make sure good progress is being made for them, to address any questions or concerns they may have, and possibly to plan the next steps to take in developing their app. By "meetings" we mean that word that brings dread to the heart of anyone who has ever looked at their schedule and seen only two hours of their daily schedule available for actual work, and in fifteen minute blocks no less.

    At Highgroove we have a few tactics for avoiding just that. Firstly, we don't have many. Moreover, all meetings are optional, and you can come and go as you like. A quick glance at my calendar shows vastly more pairings, personal trainer sessions, hack nights, team dinners, and other informal team outings than it does meetings. We consider this a win. Like all companies we still need some variety of status updates, the kind of subject matter that would usually go into a weekly company or organization meeting. To address that need we "bring it in" for the weekly huddle emails.

    → Read More

    Tools

    It's easy to say "We're agile" and "We use Behavior/Test Driven Development" and thus "we use the right tools to empower our developers!" but what are those tools? For me that discussion is entirely about the tool stack you choose, how that stack empowers you as a developer to do things right the first time. Luckily thanks to the ruby community as a whole we have a large number of high-quality choice to choose between.

    → Read More

    by david

    Using Rails localization outside of your views

    Published December 21, 2011 tagged with: Ruby On Rails

    If recycling is using something, why is cycling riding a bike?

    When I went to Europe for the first time, first to England and then to France, I was deeply obsessed with track cycling. Since I was (kind of) writing my Masters Thesis while my wife was (actually) doing serious research for hers, I had plenty of spare time to hunt down every concrete or wood-banked oval in all of France. My process started out by simply looking for the famous ones like Roubaix and Vélodrome d'Hiver. I quickly realized that every town in France has a great website and they nearly always listed the address of their velodrome if they had one! With that in hand, I would then search for it in Google Earth and put a push-pin there. This was a strange and silly obsession but it taught me a few things. It taught me to read a bit of French, to provide correct accents to Google France's search site, and to do my best to search like I was actually a French speaker. I'm not sure if I succeeded, but this is the exact opposite of what we want our users to have to do with any of the sites we create. Luckily Ruby on Rails provides extensive support for Internationalization (i18n for short) via mechanisms such as Translation and Localization. The prior simply creates mappings between variables (and parameters) and some copy in the language to be displayed. The latter does things like format numbers, times and dates, and currencies correctly according to the language to which we are localizing. This alone should make us ecstatic but we can leverage the tools provided in even more exciting ways.

    More after the break.

    → Read More

    by david

    Scratching Your Own Itch in the Badgerworks

    Published December 05, 2011 tagged with: What We Wrote Open Source

    "With all of the people doing this, why hasn't anyone ever just made a ..."

    "I really like doing this, but everytime I get to this point I struggle. I need to make that better."

    "Man... what I really need is something that makes this job less tedious!"

    Philosoraptor scratces his itch

    Those sentiments have reared their ugly heads in some way or another with every crafty endeavour in which we at Highgroove have gotten involved. Sometimes those crafts are working on bikes (crafty and artisanal as well as mechanical), brewing beer (crafty, artisinal, and after some patience, tasty if you're careful), working on rails apps (crafty and often fun!), or pulling shots of espresso (crafty, tasty, and caffeinated. Sometimes with latte art.) Instead of simply wishing there was a solution, Highgroove encourages us to solve the problem, not just for ourselves, but for others.

    → Read More

    by david

    The Community is the Documentation, so are Highgroovers

    Published September 27, 2011 tagged with: Ruby

    Before getting the opportunity to work with the Highgroove team I spent considerable time checking out their website. It might have been embarrassing if it didn't have such a fun vibe to it. The picture on the front page of folks energetically making coffee certainly drew me to the site as much as having a good friend happily working there already. It definitely did not hurt that there was a Velociraptor craftily hidden behind the classic Konami code either. During my interviews I couldn't help but almost sound fanboy-ish in describing my own coffee-dorkdom and mentioning that I had read the blog and bios often during the preceding weeks. I did so just to get a feel for the team with and for whom I hoped to be working. What I didn't realize at the time was the breadth and depth of the knowledge base the crew has, and it is stunning!

    Early in my tenure at Highgroove someone offhandedly said "the community is the documentation" and proceeded to comment that this why participation in (not just attendance of) conferences, Ruby User Groups, and hackfests is so critical to being a successful ruby developer. This proves itself to be more and more true the more I learn about Ruby.

    → Read More