Gaige B. Paulsen Articles


Larry Tesler at NCSA

Today I read of the passing of Larry Tesler, a computer scientist with a long and storied career, spanning Xerox PARC, Apple, Amazon, Yahoo, and others. He's considered the father of the modeless interaction model (think Cut/Copy/Paste on the Mac). I met Larry in the late 1980s, when …

Overwatch Leaves nVidia's GeForce Now

According to an article on PCWorld, Activision-Blizard has pulled all of their titles from nVidia's GeForce Now. In my days as CTO of Haste (a service that improves network connections for gamers), I had occasion to spend a fair amount of time playing Overwatch as part of our test regime …

Developing on a 2019 Mac Pro

There's been a lot of discussion about the 2019 Mac Pro and various assertions that it's over-designed, overpriced, or underpowered. Since I decided to replace my venerable 2013 Mac Pro[1] with a 2019 Mac Pro, I figured I'd write up my experience with the device as a developer. The …

gitignore as a service

When you're looking to quickly create an appropriate .gitignore file for a new repository, you can save yourself some time, and possibly aggravation, by using gitignore.io. Available as either a website with a very simple interface (and completion), or as a simple API-based service documentation for the API and …

Ansible become: useful and dangerous

OK, now that I have your attention with the catchy title, let me get right into the reason behind this post. Rob has been doing a lot of work lately on a set of roles to provision raspberry pi systems. I'm grateful for the work in this area, because frankly …

NetNewsWire rises again!

One of the very first posts on this blog (16 years ago in the beginning of 2003) was entitled All of your favorite sites at a glance which discussed a new pair of apps (NetNewsWire and NetNewsWire Lite) that I'd just started using. Considering the fallout for RSS from the …

Separating Ansible roles for fun and profit

At ClueTrust, we use a lot of automation to run our systems. It's mostly how just a couple of us can manage hundreds of virtual servers and keep them up-to-date and operational. A few years back, I moved from using Puppet to Ansible, mostly at the suggestion of RS, who …


Git subtrees for Perforce users

For many years, I was a happy Perforce user. Despite clearly not fitting their precise model, I had a three-user license which allowed me and my bots to appropriately work on my code base. I have a number of pretty complex projects, which often have overlapping code and I took …

Pelican plugin for NGINX redirection

When I set out to move Gaige's Pages to a static web generator, chronicled in Gaige's Pages moves to static generation, I stated one of the reasons that I favored Pelican was because it is written in python, which is a language that I'm intimately familiar with. Not surprisingly, that …

XCUITests and macOS

A number of years ago, I set out to automate a set of manual tests that we've been using for years to validate functionality and UI in Cartographica. I've been through a lot of technologies over the years, some expensive commercial tools, some open source technologies. I won't go through …

Dynamic XCTests

For a number of years, Cartographica has had a lot of tests-on the order of 1500+, but a few of them are quite a bit bigger than they should have been, owing mostly to their data-driven nature. This post describes the method used to provide dynamic test creation for Cartographica …

Fastlane + Jenkins Pipelines (Gaige gets his Java on)

Jenkins For years, I've been using Jenkins as a CI environment at ClueTrust. For those unfamiliar with Jenkins, it's a long-running open-source project built in Java for doing Continuous Integration. It'll work on just about any platform that can run Java (although it's most at home on Unix machines) and …

Follow-up on static pages

At the beginning of the month, I wrote about the move to convert Gaige's Pages to a static generation model. Today I'm following up with some performance graphs. There's absolutely nothing surprising here, but it's good to see nonetheless that things work as they should. Look to the right of …

Gaige's Pages moves to static generation

Gaige's Pages has been through a lot of changes over the last 15 years, since I did the first major revamp of the site. At that time, I was converting from a statically generated site that I was manually creating (with a little help from DreamWeaver) to Geeklog, a venerable …

Looking for a Nav system (Revisited: 2018)

If you want a good feel for the advancements in Navigation systems in the last 10 years, you should check out my piece Looking for a Nav system from 2008. The article went through my key issues that lead to my recommendation of the TomTom's in those days. TL;DR …

Codesigning ate my Sunday

I have a version of Cartographica that I need to push out before the end of the year, due to a certificate expiration on one of my long-term servers. As a bulwark against problems occurring just at the turn of the year and to make sure that users can use …

TPS Reports? (Testing PostgreSQL under SmartOS)

Rob and I are working on updating our standard environmnent in our data centers. As may be clear already, we're big proponents of SmartOS, which has been working really well for our needs. We've also big proponents of automation (and, in particular, Ansible). Due to a hardware failure this weekend …

Jumping a dead 2000 Boxster S

I'm generally extremely happy with my 17-year old 2000 Boxster S that I bought new. However, running back and forth between Atlanta means that I've not been driving it as much as I have recently (although quite a bit more than I did in the 2008-2010 period). Last year, I …

Sun SparcStation 20 vs Raspberry Pi

For those of us old timers, here's an amusing shootout between a SparcStation 20 and a Raspberry Pi, including both the Pi and the Pi2 (but unfortunately not the Pi0). For those unfamiliar with the SS20, it was a workhorse desktop in the 1990's. Early pizza-box design and pricing out …