TeamSnap Logo
Log inFind My Team
  • Products
    • Organizations logoClubs & Leagues

      For clubs, leagues & associations with multiple teams

      • Sports
      • Features
      • Get a demo
    • Teams logoTeams

      The easiest way to manage a team

      • Sports
      • Features
    • Tournaments logoTournaments

      Build and manage your events in a snap

      • Scheduling
      • Registration
  • Pricing
  • Company
    • About
    • Careers Hiring!
  • Resources
    • Blog
    • Community Impact
    • Off-Season
    • Coaches’ Corner
    • Clubs & Leagues Resources
    • TeamSnap Updates
    • Help Center
    • API Docs
  • For Brands

Find My Team

Sign upLog in
Sign upLog in
  • Home
  • Ruby SDK
  • API
  • API Help / Feedback

Tech Blog

The Interplanetary SpaceBlag of TeamSnap Engineering.

Implementing pipe in Ruby | TeamSnap Ruby SDK


The unix pipe operator is an extremely powerful and simple tool. With it you can do amazing feats, like kill vagrant when it's misbehaving…

Continue Reading
Image of engineering blog author: Shane EmmonsShane Emmons
  • Ruby
  • Unix

Introducing Crosby


Recently, we've been working on migrating email from our 'Classic' codebase into our 'NextJenn' architecture. If you've ever worked with ActionMailer emails, you know that this is a bigger task than it sounds.

One issue in particular has proven very tricky. Due in part to differing regulations in different geographic locations (I'm looking at you, Canada) and in part to the team level customization possible, there are dozens of different permutations for many of the several dozen emails that...

Continue Reading
Image of engineering blog author: Dan MatthewsDan Matthews
  • Ruby
  • QA
  • Email
  • Open Source

Extracting Features into a Gem


Since the first gem was born, gem authors have had to toe the line between configurability and supportability. This post covers a facet of this conundrum - when and how to extract certain functionality from an app into a gem and how to support low level configurability. For those interested in a higher level discussion of gem configuration patterns, Brandon Hilkert does a good job covering this landscape in his blog post Ruby Gem Configuration Patterns.

So, what does “low level” configurability...

Continue Reading
Image of engineering blog author: Kyle RiesKyle Ries
  • Ruby
  • Metaprogramming
  • Open Source

Vagrant - A Developer's Best Friend


Have you ever broken your development environment and dreaded of the hours it will take to rebuild your environment? I certainly have, on multiple occasions. This is where Vagrant comes to the rescue! Vagrant is an excellent tool to build disposable, lightweight development environments. It leverages the power of Virtual Machines (VM) to allow you to easily build customizable images, so you can quickly bring up a custom environment.

To start, simply download…

Continue Reading
Image of engineering blog author: Tyler KnappeTyler Knappe
  • DevOps
  • Vagrant
  • Ruby

Implementing pipe in Ruby - Part 2


Last month, Shane Emmons did a post on implementing pipe in ruby. Check out his post here.
As Shane mentioned, the unix pipe operator is extremely powerful and simple to use / understand. The result of the first operation is passed as the argument for the next operation and so on. Last summer, shortly before I came onboard, Shane implemented our first version…

Continue Reading
Image of engineering blog author: Dan MatthewsDan Matthews
  • Ruby
  • Unix

Client Compression in mysql2


Recently our Ops team has wanted to experiment with client compression on MySQL to help alleviate some internal network congestion. After much trial and error we hit upon a solution for the mysql2 gem in Rails 2.x, 3.x, 4.x and Sequel. I hope this helps others struggling to find a way to do this. Comeback soon to see what effect Client Compression had on our network.

Continue Reading
Image of engineering blog author: Shane EmmonsShane Emmons
  • Ruby
  • MySQL
  • Rails
  • All Posts11
  • Shell 1
  • OS X 1
  • Ruby 6
  • Unix 2
  • QA 1
  • Email 1
  • Open Source 2
  • Metaprogramming 1
  • DevOps 1
  • Vagrant 1
  • Network 1
  • Hardware 1
  • remote work 1
  • github 1
  • knowledge base 1
  • MySQL 1
  • Rails 1
  • Pairing 1
  • Training 1
  • deployment 1
Products
Club or League Administrators
  • Get a demo
  • Features
  • Pricing
  • Tournaments
  • FAQs
Coaches or Team Managers
  • Features
  • Pricing
  • Tournaments
  • Get Started
Parents or Athletes
  • Features
  • Pricing
  • Find My Team
  • Get Started
Sports
Clubs & Leagues
  • Baseball
  • Basketball
  • Football
  • Ice Hockey
  • Lacrosse
  • Soccer
  • Softball
  • Volleyball
Teams
  • Baseball
  • Basketball
  • Football
  • Ice Hockey
  • Soccer
  • Softball
  • +100s more
Resources
  • Blog
  • Coaches’ Corner
  • Return To Play
  • Clubs & Leagues Resource Library
  • Skills & Drills
  • Press Releases
  • TeamSnap Updates
  • TeamSnap Help Center
  • Community
  • Why TeamSnap?
Company
  • About
  • CareersHiring!
  • For Brands
  • Partners
  • TeamSnap API
  • Responsible Disclosure Policy
  • Youth sports team and sports org app Apple App Store Logo
  • Youth sports team and sports org app Google Play Store Logo
  • social-media-facebook
  • social-media-twitter
  • social-pinterest
  • social-instagram
  • social-video-youtube
  • professional-network-linkedin
  • social-tiktok

TeamSnap Footer Logo

Copyright © 2005–2023 TeamSnap, Inc.

  • Sitemap
  • Terms
  • Privacy
  • California Privacy
  • Do not sell my personal information – CA resident only