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.