Sarcasm (updated)
After years of complaining that the internet lacked a sarcasm font it seems we’ve decided on random mixed case for denoting sarcasm. Clearly we need a shell script to do this. Or rather, “cLearLY wE neeD a SheLl sCrIpT to do tHiS.” But I do find it useful, hence this recent addition to my home dir - ~/bin/sarcasm: 1 2 3 4 5 6 7 8 9 10 11 12 13 14 #! Read moreShebang
The Laravel PHP framework uses environment variables to configure itself. There are ways to set envirnment variables for Apache but then you also need to set them for cron and for CLI scripts as well. On Ubuntu this is usually done with /etc/environment which is read by the pam_env PAM module when a PAM session is created. I wanted this to work on FreeBSD which was a bit of a learning experience into where free unixes are diverging. Read moreThe Three Problems with EVs
Since I’ve had this conversation in person a few times, I thought I’d write it down. The are three problems with EVs that people talk about that aren’t really problems. However, the reality of EVs that makes those issues not-exist causes a number of problems. The three non-problems people talk about are cost, charging times and range. Costs are coming down and as time goes on the used EV car market is growing. Read moreGit http Serve
Sometimes it’s really handy to be able to serve out a git repo from your laptop. Say you’re at a conference or on a plane and lack an external net connection but can make a local network connection between you. Or you want to do some sort of local testing of a git clone or pull. I needed to do that recently and came across this article which described a really quick way to do it - though it’s instructions were a bit off. Read moreCI for your home dir
Once you start putting your home dir in version control, some more options start coming up. And with something like a personal gitlab instance those options multiply even more. Here I’m going to explore using gitlab’s CI features. I already discussed using gitlab’s ticketing feature to keep track of tasks. And previously I wrote about an update script for my home dir to keep the various tools I use current. However gitlab also offers a CI system which allows me to automate those updates. Read moreSurround
Every now and then I come across a new vim plugin that makes life way easier. Yesterday I came across one that I’ve already made use of twice. Which kind of indicates it solves a problem pretty well. The idea is that sometimes you have a thing surrounded by delimiters - double quotes, html tags, whatever. And you want to change or remove them. The surround plugin lets you do that with a few simple steps. Read moreBash Letter Fun
For some reason I thought sorting the letters of the alphabet by the words we use to pronounce them would be amusing. So i wrote this. Column 2 is American-English, column 3 is Hiberno-English. Since it might be interesting to do other languages - at least ones that use these 26 letters - I wrote the script so it can handle more columns. The current results are: 1 2 3 A H R B D W E F L M N S X G I J K O P Q C T V Y U Z A B D W E F L M N S X H I J G K O R P Q C T V Y U Z The script is here: Read moreReframing tic-tac-toe
A while back I recorded my high school tic tac toe program. I notice I failed to paste up the code, but I’ll do that in a later part of this. For now I got distracted by this video which reframed tic tac toe as a magic square problem. Which means I could just use math to see if a winning move had been made. So now I rewrote it in javascript here. Read moreTerraform and dynamodb
This post is mainly a reminder to myself, but if you work with terraform and AWS it might help you too. This is specific to storing the state file in an s3 bucket and using dynamodb. Say you decide to completely reset a terraform project. All AWS resources had been deleted outside of terraform and now you just need to delete the state file in s3 so you can start all over. Read moreGamifying tedious work
I’m currently implementing a client library for a REST API. There are around 150 endpoints and while I automated a lot of the code generation there’s still a lot to do.
To make that easier I decided to gamify it a bit. I wrote a little shell script to show me some progress numbers:
Read more