Is That My Book? : Technology

I’ve already spoken a little about trends in the software world but for me, I want to do something that I will finds interesting or new if it’s my pet project.

The first thought that comes to mind is to use ASP.NET Core. Version 2 is now available so many of the initial niggles are out of the way and that looks really cool. The whole idea that I can write software which will run on Linux, Mac, Windows etc, sounds really appealing. I’ve also been doing lots with Azure at work, so I can see some good synergies. There’s lots of free tooling, heaps of libraries and I have a lot of experience with .NET.

What about PHP? One of the things I like about PHP is that there is practically a function for everything but then, a function for everything means it’s quite a beast, not least because there are some glaring inconsistencies in how it was designed! As a lingua-franca of the web though, it can’t be beaten in terms of numbers and there are some intriguing frameworks I would like to use such as Laravel and Slim. I’ve also got a fully paid up hosting account which means I can run anything I create for free – that’s
hard to argue with! PHP also executes on a variety of platforms, there are lots of free IDEs and a plethora of packages.

Choices, choices. There are arguments for both but since I am about to embark on a big project to migrate a legacy PHP application into the cloud, that language and stack makes a lot of sense right now – so, PHP it is.

After much consideration, calculations involving algebraic formulae and gnashing of teeth, this is what I plan on using:

  • PHP (1&1, my hosting provider, offer up to version 7)
  • Apache (Again, pretty standard for Linux hosting)
  • Slim (a micro framework)
  • MySQL for the database (I can have an almost unlimited amount – I will need precisely one!)

No big earth tremors there, but why Slim?

Their web page sums it all up in one sentence: “Slim is a PHP micro framework that helps you quickly write simple yet powerful web applications and APIs.

This mini-project is planned from the outset to be pretty simple. Plus, I really don’t need a huge amount of infrastructure to heave around when ultimately, what I plan on doing is just adding a few books and querying them. It also has PSR-7 support so is keeping up with standards and has dependency injection baked in so I ought to be able to use PHPUnit with it (something I quite fancy trying and comparing to NUnit in the .NET world).

There’s one other reason I quite like the idea of Slim – I have come across a YouTuber called David Connelly who I think is hilarious. I watched one of his videos recently which I am still thinking about and smiling over – go check out his channel, he’s great! Oh, but
why Slim? He has a great 8 part introduction on it involving writing an API for a book-like service – that should get me started nicely. Bear in mind that not all 8 are within the playlist though; you will need to hunt around his channel and pop over to his website
for one.

Here’s the code on GitHub with the first post here and the next one there.


Written by Stephen Moon
email: stephen at

Leave a Reply

Your email address will not be published. Required fields are marked *