Lessons from 2017

A quick overview of interesting lessons, tips, and ideas from my journal.


  • How to disable GNOME global media keys to customize them in i3wm
  • Blazer is a great gem for ad-hoc SQL reporting in production 🎉
  • xdotool is very powerful for scripting GUIs in Linux


  • Keeping a professional and personal daily journal is incredibly valuable
  • Kernel bugs are real and can cause Postgres to be killed due to incorrect memory calculations
  • Upgrading from Rails v4.2 to v5.0 isn’t easy
  • Pair programming is a great interview technique, but calibrate your expectations
  • Now is the best time to make use of application feature flags like flipper
  • Using ActiveRecord::Base#default_scope has many pitfalls
  • Always plan for network downtime when building app integrations 🤔
  • Error tracking services, like Rollbar, are incredibly useful
  • Library code like activerecord-import can contain very subtle bugs

Interesting Facts

  • Setup a tiny vim function with xdotool to auto-refresh Firefox while writing markdown documents
  • Built a cache primer tool for ActiveAdmin views using ActionDispatch::Integration::Session directly
  • Trellis is super convenient for self-hosting a WordPress site with Ansible
  • WordPress has an incredibly feature-rich plugin community
  • With a small modification, AnyLogin can enable impersonation of users to test permissions in production
  • Built a restore_db script to automate restore and replace of development databases
  • Wrote interesting SQL to identify if a lead is auto-clicking emails from Marketo activities
  • Scripted and recorded a short video for a product feature using Screenflow
  • Discovered the horror that is the HTML/CSS generated from a purchased WordPress theme 😱
  • Participating in the 30-day Code Quality Challenge was fun
  • New projects on Postgres should start with pgsync as a means of data syncing


  • Tuning Postgres on AWS to achieve better I/O performance and increase cache hits is tricky
  • Learned about all things marketing in Marketo with smart campaigns, triggers, forms, landing pages, etc.
  • Brushed up on my Python skills for a short project
  • Researched the use and reporting of UTM parameters

This project is maintained by zorab47