Justin Abrahms
Principal Engineer and Technical Leader
Posts
- Using your (Backstage) service catalog for compliance
- Consul leader election issues
- A risk-based approach to open source strategy
- SREcon 2023 trip report
- Understanding Etsy's search service migration
- Feature Flags, Dynamic Config and Experimentation (oh my!)
- Git pre-receive hooks for deployment
- re: Zettelkasten concerns
- An attempt at defining an ideal pipeline
- My thoughts on crypto: 2022
- the function '..' is not known to be defined
- Governance versus Stewardship
- Federated GraphQL Ops with Apollo Studio
- Learning from Production Incidents
- First and Second order metrics
- Is web scraping ethical?
- Biogas Digestion system.
- How to make a font on Ubuntu with PPAs
- Whiteboard photo snapper
- Will binary always be the lowest level way to program?
- What is an algorithm?
- Understanding the formal definition of Big-O
- Stub Stewart Bike Ride
- Software engineering vs other engineering
- Serene Lake
- An overview of Guice
- Literate API Testing with Dredd
- Altruism in the job hunt
- MicroConf 2015 Recap
- Real-time code coverage analysis
- Why a community might want a Python Software Foundation
- Thinking like a programmer: Inputs & outputs
- Setuptools Entrypoints Explained
- Meaning of Community
- Inheritence versus Composition
- Imhotep helps you enforce your styleguide during code review
- PyCon 2014 was awesome
- Pull request templates make code review easier
- NodeConf 2014: A story of aspiration and community
- Obseletion through Programming
- Node Knockout: A chance to play & experiment
- Selenium's Page Object Pattern: The Key to Maintainable Tests
- Book Review: Backbone.js Testing by Ryan Roemer
- Javascript Refactoring without an IDE
- Thinking of Databases as an Excel file
- The State of GitHub's Code Review
- Pricing books as a function of risk
- Big-O is easy to calculate, if you know how
- A list of scary topics.
- Big-O notation explained by a self-taught programmer
- Why Pisces?
- setup.py, distutils and testing.
- PyATOM for static site syndication
- PyATOM for static site syndication
- Finding Unused files with Require.js imports
- Securing your email
- Meaning is not zero-sum
- Ignore Django, write testable code
- Converting from MySQL to Postgres
- Converting from MySQL to Postgres
- Project Structure for Advanced Beginners
- Why I changed my name
- Gittip: New, Interesting, Important
- Cellphone Plans for Geeks
- Personal Philosophy
- Literate programming with org-babel
- EasyMock for mere mortals
- Vim & Python: Making yourself at home
- Django at 30,000ft: A Manager's View
- Writing a static site generator using org-mode.
- Virtualenv Wrapper Helper
- Vim: My new IDE
- Vim Screencast: Selections
- Vim Screencast: Macros
- Vim Screencast: An Introduction
- Vim Screencast: % Operator
- Versioning Production Settings
- Using test generators to save time
- Using Database views with Django
- Top 5 Bookmarklets
- Speedy Google Code Checkouts
- psycopg2 Internal Error
- Piping to stdout when using BuildBot
- NameError: global name 'log' is not defined
- Most Used Programs: An Index
- Macports and PYTHONPATH
- Javascript unit tests with JS Test Driver
- Importance of Documentation
- Google account suspended: A post mortem
- Fixing your models subdirectory
- Emacs: The Mindset, A contextual shift
- Emacs: Introduction & Installation
- Emacs: Being Productive
- Emacs and Transmit: Remote edit Fix
- Domain Sniffing Middleware
- Django, PyISAPIe and IIS
- django-voting: A brief tutorial
- Django Portfolio Application
- Developing a Personal Brand
- Customizing Django Forms Multiwidgets
- Bash: Your forgotten friend (part 3)
- Bash: Your forgotten friend (part 2)
- Bash: Your forgotten friend (part 1)
- 6 things I learned about setuptools
- My motivations for choosing emacs
- GTD Excel File