Alan's Blog

Strategies for making CiviCRM look different

1 month ago
Why is CiviCRM so ugly?Out of the box, a CiviCRM public contribution page is surprisingly ugly. Worse, if you ask your designer to make it look better, they are likely to take a long time, grumble loudly, and then maybe a year later it starts looking ugly again.It's a bit tragic that this is sometimes the first experience of people with CiviCRM, and since it's not likely to get fixed any
Alan Dixon

Refactoring My Backup Process

9 months 3 weeks ago
A couple of weeks ago, I decided to spend a few hours on a Friday afternoon improving my backup process for my Blackfly managed hosting service. Two weeks later, I've published my ongoing work as an update to my backup-rsync project and have decided to share it with you.You might think I'm trying to compete for "least click-bait like title ever", but I'm going to claim this topic and project
Alan Dixon

Welcome to Simuliidae, v2

1 year 5 months ago
Four years ago, I started a github project to share my Drupal + CiviCRM container hosting solutions/ideas. It’s called “Simuliidae”, because that’s the family name of the species we know as black flies.What’s HappenedLike so many open source projects, it was ambitious. I claimed four goals. Four years later, here’s my evaluation of those goals:1. A simple way for evaluators to launch their own
Alan Dixon

A Strange Passion for Security

2 years 4 months ago
I'm not a computer security expert, but it's been part of my work for many years, in different forms.  A very long time ago, a friend hired me to write up a primer for internet security, and ever since then it's been a theme that's sat in the background and pops up every now and then.But lately, it's started to feel like more than a theme, and but indeed a passion. You may consider computer
Alan Dixon

I'm wrestling with a monster

2 years 7 months ago
 I consider myself a rational person. By that, I mean that I make important decisions in my life based on weighing pros and cons, similar to a chess game.So what to make of my decision to confront Koodoo over their exorbitant charges for my spouse's mobile phone use? This one. It would be reasonable to look at the legalities, and the likelihood of them caring what I think, and decide
Alan Dixon

Trust and your mobile phone service provider

2 years 11 months ago
Do you trust your service provider? What does that even mean?For an individual with a relationship with a corporation, trust is not the same as trust with a person.Particularly with a complex service model, you have to have some trust in your service provider, even if you are reluctant about that, because you don't have a choice.For example, you don't have a much of a choice about what kind of
Alan Dixon

Managed Services: A Creative Tension

3 years 1 month ago
What Are Managed Services?"Managed services" is an offering of many businesses that provide Internet services. In the past couple of years, it's a term I've used to describe what I offer in my Blackfly Solutions Drupal and CiviCRM hosting business.You may not know whether you would want such a thing, since it's a very badly named thing.  This post will try and give a reason for why managed
Alan Dixon

Successful mass mailing

3 years 4 months ago
Happy families are all alike; every unhappy family is unhappy in its own way.- Leo TolstoyLike happy families, successful mass mailings are easily taken for granted as normal, but they are more an exception than a rule.Most mass mailings fail in one or more ways. And the ways that a mass mailing can fail are probably more diverse and interesting than you think. So when you ask "why am I not
Alan Dixon

An apache OOM (out of memory) emergency in a container

3 years 6 months ago
On Sunday last, a (Linux) server in my infrastructure that was running a fairly conservative number of docker containers in production was brought to its knees. The monitoring data (from prometheus) showed that cpu was all gobbled up (from an average of less than 2% to a steady 75%-ish) and remained gobbled up until the server was rebooted. Notably, the disk usage and throughput went down during
Alan Dixon

Rebuilding the Garage, v. 2

4 years 7 months ago
13 years ago, I spent a few weeks rebuilding my garage, as documented on this blog. At the time, I chose the less expensive clear plastic roofing tiles, because I wasn't really convinced the project was going to work and I imagined I'd have to tear it all down and replace it with a real garage in a few years. But sure enough, some projects last a lot longer than you expect,
Alan Dixon

Orchestrating Drupal + CiviCRM containers into a working site: describing the challenge

4 years 11 months ago
In my previous posts, I've provided my rationale for making use of Docker and the microservices model for a boutique-sized Drupal + CiviCRM hosting service. I've also described how to build and maintain images that could be used for the web server (micro) service part of such a service. The other essential microservice for a Drupal + CiviCRM website is a database, and fortunately, that's
Alan Dixon

Building and maintaining Drupal + CiviCRM application containers

5 years ago
In my previous two posts, I provided some background into why I decided on using containers for a boutique Drupal + CiviCRM hosting platform, and why Docker and its micro-services approach is a good choice for building and maintaining containers. Although I promised to talk about orchestration, that was getting ahead of the story - first I'm going to look at the challenge of keeping your
Alan Dixon

Docker: Putting things together and pulling them apart

5 years 5 months ago
Why microservices is a good idea My favourite fictional scenes involve groups of people eating around a table, behaving badly. I think of Margaret Atwood's Edible Woman, or the movie "August: Osage County". Or the tea party in Alice in Wonderland. What works well in narrative is often the opposite of what works for computers - the worst computer mess-ups often involve a collection of badly
Alan Dixon

My Journey into Containers

5 years 5 months ago
This is a short story about how I've ended up learning more about Docker and it's associated technologies than I had planned. I'm not calling it "my docker journey" because, while Docker has done a great job of making Linux containers useable, there's no need to conflate container technology with the company. I'm a late-bloomer kind of person, not an early adopter, so it's a bit surprising to
Alan Dixon

Beware the PCI compliance salesperson!

5 years 9 months ago
I've been having a conversation with a client about PCI compliance and realised that there's a basic fact that really should be made very clear. Any provider that tells you that they're going to solve all your PCI compliance issues only by switching payment providers is lying. PCI compliance cannot be solved purely by switching providers. PCI compliance involves how you handle credit card
Alan Dixon

Ontario PCs, get your email domain straight!

5 years 10 months ago
I've been working with SCI Ontario on a campaign to engage the candidates in the upcoming Ontario election on issues related to spinal cord injuries. Take a look at the main campaign page. Part of the campaign is to provide a form that allows the public to send emails to the candidates of their riding. I've been using OpenNorth to get the candidate data, and it's great. Except for the Ontario
Alan Dixon

Upgrading to Drupal 8 with Varnish, Time to Upgrade your Mental Model as well

6 years 10 months ago
I've been using Varnish with my Drupal sites for quite a long while (as a replacement to the Drupal anonymous page cache). I've just started using Drupal 8 and naturally want to use Varnish for those sites as well. If you've been using Varnish with Drupal in the past, you've already wrapped your head around the complexities of front-end anonymous page caching, presumably, and you know that the
Alan Dixon

CiviCRM's invoice_id field and why you should love the hash

6 years 11 months ago
I've been banging my head against a distracted cabal of developers who seem to think that a particular CiviCRM core design, which I'm invested in via my contributed code, is bad, and that it's okay to break it. This post is my attempt to explain why it was a good idea in the first place. The design in question is the use of a hash function to populate a field called 'invoice_id' in
Alan Dixon

What to do in the age of Trump?

7 years 2 months ago
Well, that's the question of the day. If you're part of an organization that does advocacy work, rather than waiting to see what happens first, might as well get yourself ready, even if the details are sketchy still. Here's one opportunity that's ready for you now, message courtesy of Steve Anderson of OpenMedia. OpenMedia, David Suzuki Foundation, SumOfUs and a range of other organizations are
Alan Dixon
Checked
16 minutes 15 seconds ago
Subscribe to Alan's Blog feed