Technical Ramblings

Rants about programming and software in general.

For my more recent blog posts, please head over to my company blog.


Problems When Scaling Failsโ€“and Solutions

๐Ÿ—“ 13 May 2020
In: ๐Ÿ“ DevOps

Things were working fine a few days ago... and then traffic spiked for whatever reason and the system could not handle it. Everything is slow or just not working. Maybe deploying new code to your servers isn't working consistently either. It's just a hot mess. The application was working fine...

Reducing Operational Expenses by Going Serverless with AWS

๐Ÿ—“ 14 Apr 2020
In: ๐Ÿ“ DevOps ๐Ÿ“ AWS

This post may apply to you if you want to reduce infrastructure expenses. Though, I bet everyone identifies with that. But how about this: youโ€™re paying for a marketing website/some CMS server, and you are not actively doing anything with it (and really donโ€™t plan to). You should be thinking...

To Serve or Not to Serve: Amazon Aurora Serverless

๐Ÿ—“ 24 Sep 2019
In: ๐Ÿ“ DevOps ๐Ÿ“ AWS

Serverless is a borderline buzzword nowadays. Serverless websites! Serverless APIs! Serverlessโ€ฆeverything! And now serverless databases. Amazon Web Services has their own serverless database offering, which is semi-new, semi-old, depending on the โ€œcompatibility version.โ€ This is how you have to use Amazon Aurora, AWSโ€™s database engine, which has both MySQL and...

Remote Team Workflows

๐Ÿ—“ 28 May 2019
In: ๐Ÿ“ Remote ๐Ÿ“ Communications

Being in the same room as the people you are working with is not a luxury we all have. Sometimes we are remote from the people weโ€™re developing for and that we develop with. For the Managed Software Services team, thatโ€™s basically the rule rather than the exception. We often...

Diagnosing Problems Quickly

๐Ÿ—“ 21 May 2018
In: ๐Ÿ“ Support

Everything is on fire. Okay, not really. One thing is on fire. Or is it? You have no idea. The client knows. The client knows that everyone is screaming and nothing is happening and the dollar signs are evaporating. More are going to go the way of the dinosaur unless...

Basic Web App Architecture 101

๐Ÿ—“ 04 Apr 2018
In: ๐Ÿ“ Architecture ๐Ÿ“ Web App

Okay, so you want to build a web app. Letโ€™s use a very basic web application for instance. The user story is this: The user logs in. The user goes to another page, which has a form. When the user clicks submit, data is saved and they can view it...

Making a Static Website with Jekyll and S3

๐Ÿ—“ 14 Feb 2018
In: ๐Ÿ“ AWS ๐Ÿ“ Web Development ๐Ÿ“ Jekyll

If you need to make a marketing website for your business, aside from the branding and design aspect, your main concerns are probably: Will the site be fast and responsive for my potential clients/customers? How much will the site cost to make and maintain? Site speed and reliability is huge...

AWS Do's and Don'ts

๐Ÿ—“ 15 Sep 2017
In: ๐Ÿ“ DevOps ๐Ÿ“ AWS

So. Youโ€™re migrating to the cloud. Simple, right? Everything is basically the same. Youโ€™ve got a server with an operating system of your choice. Nothingโ€™s really different. Just launch an EC2 instance on AWS, do everything youโ€™ve always done, and boom. Done. Youโ€™re certifiably in the cloud. Yeah. No. Thatโ€™s...

A Case for Amazon's Elastic File System

๐Ÿ—“ 18 May 2017
In: ๐Ÿ“ DevOps ๐Ÿ“ AWS

Imagine this: Youโ€™re moving an application from a shared server to a cloud system. This application has a massive folder of files saved onto the server that is growing constantly. When you get to it, it is about thirty-five gigabytes. You could just move the application to a single server...

Ansible and AWS: Painless Deployment

๐Ÿ—“ 14 Mar 2017
In: ๐Ÿ“ DevOps ๐Ÿ“ AWS ๐Ÿ“ Ansible

Ansible is a fantastic way to orchestrate deployments that arenโ€™t exactly trivial. In a complex deployment, there are dozens of players and they all need to act at a specific moment. It is no wonder then that Ansible calls the deployment scripts playbooks. It makes it sound so artistic. You...

Ansible Dynamic Inventory Thoughts

๐Ÿ—“ 03 Feb 2017
In: ๐Ÿ“ DevOps ๐Ÿ“ Ansible

My DevOps experience is varied but limited. Iโ€™ve done some Chef, packer, and now Ansible. The latter of which is my most recent dive into scripting deployments and probably the most enjoyable. What Ansible was being used for in my case was to: Deploy Infrastructure Stack onto AWS. In this...

Comparing Common LISP and Clojure: Cons Cells

๐Ÿ—“ 24 Jan 2017
In: ๐Ÿ“ Coding ๐Ÿ“ Clojure

The existence (or lack thereof) of cons cells in Clojure might be one of the first things LISPers notice when switching to Clojure. It was for me, anyway. In Common LISP and other LISP languages, cons cells are two element structures that are the basis of all lists and essentially...

Assimilating with Clojure: REDUX

๐Ÿ—“ 27 Oct 2016
In: ๐Ÿ“ Clojure

Functional Programming nowadays is seen as kind of sexy by some sects of programmers and developers. Object Oriented Programming has for so long been a crutch, and using functional programming languages seems liberating and more efficient. It feels like a new toy. Which it really isnโ€™t, but, programming styles, like...

Emacs Kill Buffer Hydra of Power

๐Ÿ—“ 21 Oct 2016
In: ๐Ÿ“ Emacs

Iโ€™ve just started to get into using the Emacs Hydra package by abo-abo, a true saint among Emacs users. Hydra is an Emacs package that allows you to create chained commands. It is kind of hard to explain without a concrete example. The example I am going to use is...

iOS10 Music App

๐Ÿ—“ 16 Sep 2016
In: ๐Ÿ“ iOS ๐Ÿ“ Apple ๐Ÿ“ QA ๐Ÿ“ Bugs

I used the iOS music app pretty religiously. I have over three thousand songs. The music apps I use are very important to me. I need clear organization, design, and structure to be able to listen effectively. So when the iOS 10 music app rolled out I was pretty furious....

ElasticSearch Queries

๐Ÿ—“ 16 Sep 2016
In: ๐Ÿ“ ElasticSearch

Elasticsearch is a tool for searching. Elastic being a part of its name, it is rather flexible. Whatever you need to search on and how, it can probably do. Say you wanted to do an exact match on a value or any value of an array of values to a...

Moving Emacs to a Server setup

๐Ÿ—“ 13 Sep 2016
In: ๐Ÿ“ Emacs

This is one of the big leaps of my Emacs configuration: Getting it run as a โ€˜serverโ€™ with โ€˜clients.โ€™ AKA a Daemon. So you load it up once and never again. Great reduction in start up times. Basically, you start emacs in the background and then new instances will be...

My Hack Emacs Configuration

๐Ÿ—“ 29 Aug 2016
In: ๐Ÿ“ Emacs

Okay so Iโ€™ve been using Emacs for a couple months now and have created a pretty intense configuration. Not that intense. Justโ€ฆsort of all over the place. I use the GUI version of Emacs, so it is more tailored for that than the console version. I have some conditionals set...

Database Views

๐Ÿ—“ 26 Aug 2016
In: ๐Ÿ“ SQL

Database views are a type of stored query that create a pseudo-โ€˜tableโ€™. Instead of doing the same join table mish-mash to get the relationship of data needed, you can create a view that will store the query to get that data. This query is run every time so the data...

Systemd Services

๐Ÿ—“ 19 May 2016

To use systemd one must use service files to run the particular script. These โ€˜servicesโ€™ can be slightly unwieldy. But they do eventually work. We were trying to get a service to start up a unicorn process with rbenv. Our service file came to work something similar to this (pretend...