Introduction So What Was The Phish? Lessons Learned Introduction So I nearly got scammed by a phisher posing as a recruiter on LinkedIn. I got a message from a recruiter on LinkedIn, it was a long job description, said I was a good fit and they purported to be hiring for Ripple. I read the job description, and told them I was not a good fit by pointing out I lacked some of the key experience they…
Introduction Playlist IDs All Videos No Shorts Credit Undocumented Introduction I consume quite a lot of content from YouTube, via their RSS feeds, and this was working fine until they added Shorts . I struggled to find a way to get the shorts out of my feed, eventually settling on scraping the YouTube API to query the video, and filtering out any that had a duration that was less than 61 seconds.…
Introduction Conditional Requests? Generate and Use a curl config Last-Modified / If-Modified-Since eTag / If-None-Match Grab The Latest curl Version with HTTP/3 Support Don’t Call It From cron Conclusion Introduction I am a member of the Church of RSS, though I’m quite a late convert (I missed the whole Google Reader thing). I use my own self-written Golang tools to parse the RSS/Atom…
My Email History circa 1996 - Present 1996 to 1999 - The Dial-Up Era 1999 - 2003 - @unn.ac.uk / @ntlworld.com 2004 - 2011 - @gmail.com + Spamgourmet tagged Why Did I Decide To Ditch Gmail? 2012 - Present - Self-hosted at my own domain Hardest Thing About Ditching Gmail? Challenge 1 - A Good Webmail Client Challenge 2 - Isn’t It Impossible To Email Google/Yahoo/Microsoft Though? Challenge 3 -…
This is the final part of a long series, click here to see all the parts . Handing In Your Notice To Get Your Expenses Paid Doing My Bit For IPv4 Exhaustion When A Planned Upgrade Leads To A Unplanned Trip To Hell Can You Pinpoint The Moment You Knew We Were Doomed? Suddenly I’m The Only Engineer Left 💁‍♀️ Using My Leverage Cisco Certified The End The Brief…
This is Part 4 of a long series, click here to see all the parts . Moving Our London DC When A Site Visit Takes You Offline Post-Outage The New DC Moving Offices New Office Tour (Failing To) Sell A Room Full Of Old Solaris Hardware on eBay Sorting Out The Ticketing Database Renaming A Company Conclusion We had three of the biggest projects, concurrently running, you could do to your…
This is Part 3 of a long series, click here to see all the parts . Introduction Hello DMON - Goodbye Sleep Killing DMON OK, My Partner’s Gonna Divorce Me If I Don’t Kill DMON… ..and I Did It! Reducing False Positives sms2email Denial Of Wallet Attack Principle of Most Surprise Happy New Years On-Call! When Your Monitoring Detects A Customer Ripping You Off Spooky Midnight…
This is Part 2 of a long series, click here to see all the parts . March 2008 – Oct 2009 Introduction Email Is On Fire Gnarliest Mail Outage The Not Fit For Purpose Email Set-Up Idea #1 - How About We Pay Google $500 a Year To Host Our Email? Idea #2 - How About We Pay One Full-Time Employee To Have A Go At This Whole Email Thing Instead? OpenBSD (and me) to the Rescue! Conclusion Introduction As…
This is Part 1 of a long series, click here to see all the parts . March 2008 – Oct 2009 Introduction My First Month They Dissolved The Company How To Piss Off A New Starter I Hope You Like Solaris.. The Quest For A Competent Sales Person To Be Continued Introduction As I said in the last part , this was a step up. A real step up. It was a tiny company, only 10 people, so a lot of responsibilities…
An annoying pattern about giving a company an email address (especially one that isn’t in a country subject to the GDPR ), is that I often will get opted-in, without my consent, to a spam list. I am pragmatic and accept that I’m going to hit unsubscribe once (and no more than once) before I block the tagged email address I’ve given the company… but often when I do click…
Oct 2007 – March 2008 Be Careful What You Wish For.. Worst Manager (So Far) Losing Database Administrator #1 Losing Database Administrator #2 New Technical Challenges (?!) Hurt Feelings (again) Be Careful What You Wish For.. So, in our last part I wrote about how I got promoted up to the halycon heights of the Infrastructure Team. I wrote about the Cons of the promotion: Cons: David would be my…
Blogging About My Blog Set-Up (Part 2) Build Step - Makefile GitHub Webhook Support Caddy Performance Blogging About My Blog Set-Up (Part 2) I’ve previously blogged about hosting this blog on Netlify . That was working perfectly fine, I had no issues with Netlify (and still use them for various projects! ❤️) but I’m a sysadmin at heart, and I got the urge to tinker and…
June 2006 – Sept 2007 (15 months) Going Back Desktop Management at Scale is Harder Than Server Management at Scale 99% Redundant Network Connections When Typing Your Password Incorrectly Gives You A Sinking Feeling Hurt Feelings… …and a Possible Promotion? Going Back I went back! To quote the end of Story Time: My First Tech Job In this role I quickly realised that I wanted to get a…
This covers March 2005 – May 2006. The Hidden Interview Within The Interview Shift Work 24/7 Ops Blinkenlights What Were You Monitoring, Tho? That Time They Accidentally Bricked Everything Night Shifts: The Art Of Killing Time Okay, I’ve waited 7 Hours.. Continued Good news : I managed to Escape The Damn Helpdesk ! Bad news : It looked impressive on paper, but I definitely lost skills rather…
This is Part 2 - if you haven’t already see Part 1 Annual Performance Review Quitting What Did You Learn From This Job? Annual Performance Review One of the benefits of being on the 24/7 shift team, was that you felt kinda disconnected and outside of the politics and day to day grind of the Mon-Fri 9-5 workers. You would phase in and out of sync with the Mon-Fri lot, you would have an…
This covers around September 2004 – March 2005. Introduction How Bad? Ship Your Hardware To Leeds For No Reason Taking Over A Botnet (..On Our LAN) More Like The UN-helpful Desk! Stealth Interview Mode What Did You Learn From This Job? Introduction This job was a mistake. I knew it was a big mistake after the first week. I only stayed 6 months. Even bad jobs teach you something. This job taught…
Introduction The Good The (Mundane) Bad The (Creative) Bad - IP Squatting The Ugly - Being Too Clever Postscript - What About IPv6? Introduction This is kind of a #storytime post, but also not. It’s a retrospective of the Good, the Bad, and the Ugly choices I’ve seen over my twenty years of work, in regards to how companies choose to use and abuse their internal network numbering. It…
This covers ~mid-2003 to 2004. Hello, Helpdesk. MacKenzie speaking (2003/04) Coffee + Laptop = 😂 zOMG $MOST_IMPORTANT_APPLICATION IS DOWN!!11 The False Economy of Inkjet Printers 🤬 My First On-Call Outgrowing The Helpdesk Hello, Helpdesk. MacKenzie speaking (2003/04) When I graduated in the Summer of 2003 I was hoping for a bit of time off, lazing around on the dole. That….…
Introduction Backstory My Placement Year (2001/02) Final Year Of University (2002/03) Introduction I have been working in tech for over twenty years 👴, and the last 4 have been fully remote. I prefer a lot of things about WFH vs In-Office, but one thing that I’ve realised I’m missing from #officelife is that I can no longer bore recount lessons, tell amusing anecdotes, cry into…
Introduction Set-Up Get A Random IP Address with OpenWrt How Often It Works Would You Recommend Doing This? Introduction I’m a bit of a privacy geek, and it would be nice if I could have a non-static home IP address without using a sketchy VPN service. With most cable/fibre home internet connections (BellAliant included) you end up with a fairly static IP address. The only times I can…
I have added a (semi)-random incoming mailto: link at the bottom of every post. This is a very basic way to allow readers to contact me. I’ve shyed away from putting any of my email addresses online due to spambots harvesting them. I host my own email and have managed to do so for over ten years without having to resort to any content-based spam filtering (eg, SpamAssassin, rspamd), and this…
Blogs about blogging software… such a cliché I know! For some reason Hugo defaults to outputting just the summary in the RSS feed, and annoyingly there isn’t a built-in way to enable it. Here is how I did it: Downloaded the upstream rss.xml to layouts/_default path in this Hugo repository. Modified it to change .Summary with .Content in the <item> loop. - <description>{{ .Summary |…
Introduction I followed this guide on Hugo’s website and it was pretty painless. I already had a GitHub Repository with my hugo project in it, and I already had a Netlify account, so I just had to fill in the gaps. Issue with Hugo Version The only issue I hit was my deploys were failing with a strange error: build.command from netlify.toml…
So I decided to start a blog.. and fell into the usual trap of allowing perfect to be the enemy of good, and went down a rabbit hole of “Which Blog Software To Use?”. I had used Hugo in the long-distant past to host a website for my (now defunct) Limited Company back in the day, but as I never posted anything on it after setting it up I feared that if I used something non-obvious and…