The development team here at Chargify has started to do “lunch and learns” every other Friday, using Google Hangouts. These sessions provide an opportunity for us to talk shop. As a completely remote development team, it’s important to intentionally schedule time to share knowledge in this way. Here are some of the things we talked about last Friday:

Editors
vimcasts – a great resource if you want to level up in vim
Sublime Text 2 For Ruby – tips on how to get the most out of Sublime Text when doing Ruby development
Notational Velocity – for general note taking
nvALT – a Notational Velocity fork
Hackpad – another note taking app that is highly recommended; see also How To Use Hackpad

Development Tools
marco-polo – appends the current environment (e.g. “prod” or “dev”) to a Rails console prompt
jq – a lightweight and flexible command-line JSON processor
API dock – for API documentation; see also https://github.com/voloko/railsapi.com
Rubular – a Ruby regular expression editor
Ruby Toolbox – helpful for researching gems and how well supported they are
Ruby Weekly – newsletter that rounds up the latest informative blog posts in the Ruby world
HTTPie – “a cURL-like tool for humans”
Sidestep – automatically encrypts all of your Internet traffic when it detects you connecting to an unprotected wireless network

We also discussed how to think about using existing gems vs. writing your solution to a given problem.  One proposed rule of thumb was: “avoid gems that are functional model code that you can write. i.e. acts_as_state_machine, aasm, etc. Use the ideas but not the code. Instead, use gems that provide utilities that you leverage, like active_model_serializers.”

Look for more of these types of posts in the future.