Drupal vs Joomla Research & Comparison

A while back I had to research CMS options to compliment our work with WordPress. At the time I was looking at the two main competitors to WordPress in the PHP CMS category, Joomla and Drupal. Both of these choices are solid, established and flexible options. There isn’t a clear ‘winner’ between them, however I figured this summary might be helpful for others.

Continue reading “Drupal vs Joomla Research & Comparison”

What Happened To DarkLang?

Three years ago I wrote a post exploring the new integrated programming language, environment, online editor and pipeline called Dark. I thought it looked pretty cool but lacked a lot of necessary features that would make it useful at business scale, and it also came with major vendor lock-in risk. I concluded by planning to look back at it in a year or two. I did so and, woo, do I have some concerns.

Continue reading “What Happened To DarkLang?”

Baldur’s Gate 3 on Ubuntu Linux

It’s difficult to be a gamer or a D&D fan these days and not be inundated with news and information about how great Baldur’s Gate 3 is. Happily I have a great group of gamer friends always up for trying new games. My husband was a big fan of the Divinity games so we’re giving BG3 a go. Since I use a Ubuntu PC there’s always a bit of stress and tinkering required for games, although thanks to Valve’s incredible work on their Proton compatibility layer, it’s now rare to encounter a game I want to play but can’t get working through Steam. Baldur’s Gate however is $80 CAD so I definitely had to make sure I could get it working before the refund period passes (less than 2 weeks or 2 hours of gameplay). I did end up having to pour through the info for BG3 on ProtonDB to get it working.

Continue reading “Baldur’s Gate 3 on Ubuntu Linux”

Backyard Ninja Warrior Course – DIY Project

This summer we tackled the largest DIY project that I’ve ever done in my life. My husband and I and our 3 sons are big fans of the American Ninja Warrior tv show, and last winter I installed gym rings in the rafters of our basement so the kids could swing through the laundry room and get some mid-winter exercise. This was such a hit that more rings and a pullup bar followed shortly after. With our kids starting to outgrow our modest (and rotting) backyard wood jungle gym, along with a trampoline starting to rust… it was time for a new backyard play structure of some kind. Something that could grow with the kids and still be used when they’re teens. So the plan was hatched to build our own ninja warrior structure. This became a massive, expensive and months-long project with (if I do say so myself) stunning results!

Continue reading “Backyard Ninja Warrior Course – DIY Project”

Convert Symfony Auth Scaffolding Login to use Form Builder

If you follow various tutorials (like this one) to set up some basic user authentication steps like a login form, logout route, user registration form… you’ll use commands like php bin/console make:registration and php bin/console make:registration which will generate login and registration forms for you. When I did this in Symfony 6, I ended up with a registration form created with Symfony’s Form Builder method and a login form created with a typical html form in the twig templates. Later when adding the symfonycasts/reset-password-bundle flow to add a ‘forgot my password’ step, this created another form using Form Builder. Eventually I ended up with all of my auth steps using Form Builder except the login form. Inconsistency- yuck!

I’m using Symfony 6.2 as of this writing.

Here’s how to switch the login form so it works like the rest.

Continue reading “Convert Symfony Auth Scaffolding Login to use Form Builder”

Disable Doctrine Migrations Check in Symfony

I wanted to set up my own Symfony Skeleton project and get all my favourite packages and configuration set up. One need I have is to have Doctrine and Doctrine Migrations packages installed but I don’t want them to be used (yet). The problem is that I was finding a lot of errors in my logs like this:

app.ERROR: error while trying to collect executed migrations {...} (File: /vendor/doctrine/doctrine-migrations-bundle/Collector/MigrationsCollector.php | Line: 41)

doctrine.INFO: Connecting with parameters array{...} (File: /vendor/doctrine/dbal/src/Logging/Driver.php | Line: 31)
Continue reading “Disable Doctrine Migrations Check in Symfony”

RPG In A Box – A Game Dev Tool For Everyone

One recent evening, my husband grabbed my attention, to show me a newly free title on Epic Games, called RPG In A Box. On a brief read of the description I figured it sounds interesting, so he added it to his library so we can try it for free later.

Fast forward about a week, and my oldest son -10 years old- starts excitedly telling me about a game that he’s making. With a shop, and different weapons based on which class you are going to be, that he’s building inside of… Minecraft. Now, this is not very unusual. He’s had a strong interest in making games for a couple years now. From printouts and leftover minis turned into board games – my favourites being “Don’t Wake Mom!” and “AmongUs Ants: Board Game Edition”. To game authoring tools aimed at children like level editors in games like Mario Brothers and Battle Block Theatre, to more recently Game Builder Garage which we own on the Switch. He’s constantly building things in these tools. He even play tests and tweaks them repeatedly to get the balance just right.

Continue reading “RPG In A Box – A Game Dev Tool For Everyone”

RunCloud, PHP 8, And WordPress Update Errors

If you are provisioning servers using Runcloud.io, you may encounter an error with WordPress updates of core or plugins due to the following error:

Fatal error: Uncaught Error: Call to undefined function set_time_limit()

This error occurs in the WordPress file wp-admin/includes/class-core-upgrader.php and for me it only occurred when the web app was set to use PHP 8.0, yet worked fine on PHP 7.4.

Continue reading “RunCloud, PHP 8, And WordPress Update Errors”