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”

Keeping Symfony Projects Up To Date

Keeping any project which uses a framework or a collection of 3rd party libraries up to date is an exercise in continuous upgrades. In my situation, I have dozens of projects on a variety of internal and 3rd party frameworks, so keeping everything updated – from the PHP version to the framework and library versions – is an important and time consuming process. Here are some strategies and techniques.

Continue reading “Keeping Symfony Projects Up To Date”

Custom Error Pages in Symfony Framework

As I make my way through some tutorials on SymfonyCasts and begin a re-write of my SyntaxSeed website from CodeIgniter to Symfony… I occasionally encounter something that took a bit more struggle than a simple web search. This is one of those tasks.

Symfony gives you some generic built in error pages, for example when you get a 404 missing resource error or a 500 error. When working in your dev environment you don’t see these, you instead get the nice Whoops error pages with extra details. Customizing the error pages requires a few steps.

Continue reading “Custom Error Pages in Symfony Framework”

Freelancing In Canada: Form T2125

If you are self-employed in Canada, meaning you’re a freelance developer or operate a small business where the business itself doesn’t report income as a separate entity and pay you a salary… ie the money coming into the business is yours (even if you keep it in a separate bank account), then you must report your business income along side any other source of income when you file your income taxes. So if you still have a regular job, but you freelance on the side – you might have regular income and self-employed income. This applies even if you haven’t registered a business name and just operate as yourself. This also includes the value of barter (trading services with someone) and also sales made outside of Canada (ie if you have American clients or clients in other countries).

Continue reading “Freelancing In Canada: Form T2125”

Learn PHP For Experienced Developers

In my efforts to help a colleague, I discovered that there are few resources for people who are already programmers in other languages to learn PHP. Something that isn’t beginner level, doesn’t explain basic programming concepts… just get to the heart of what makes PHP unique, and some suggested quality resources to learn more.

This is what I’ve written here. It’s a high-level overview of the language, and some vetted resources to get set up and learn more.

Let’s get started…

Continue reading “Learn PHP For Experienced Developers”

Let’s Talk About: Coercive Software Design

We become developers with the understanding that our mission with the software we create is to meet the needs of users. But what happens when the software we create is being used to change or coerce the behaviour of users, rather than help them work, play and behave the way they want to? What are the ethical considerations of developing software that tries to manipulate users? Where does the profit-driven motivation go too far?

Coercive: using force to persuade people to do things that they are unwilling to do. (Cambridge Dictionary)

Continue reading “Let’s Talk About: Coercive Software Design”

Board Games For Couples & Families

I’ve had a number of people ask me for board game recommendations for couples, families or friends who want to have fun while trapped in the house. My husband and I have a growing collection and a very specific focus on co-operative and indirectly-competitive board games. Here’s a quick write-up and details of our favourites.

Disclaimer – husband & I run on the nerdy side so many of these are not mainstream at all.

Continue reading “Board Games For Couples & Families”