We have a task to take a number and convert it into Roman numerals. That’s easy, right? Lets work through the problem.
Continue reading “Thinking Like a Programmer – Roman Numerals”
Moonlight Coding
We have a task to take a number and convert it into Roman numerals. That’s easy, right? Lets work through the problem.
Continue reading “Thinking Like a Programmer – Roman Numerals”
When upgrading to the next release of PHP it’s nice to be able to test it in place. Continue reading “Run Multiple Versions of PHP in a Single Apache Vhost”
Recently I had need to shuffle an array, but keep the associative keys. Here’s the simple function to do that. Continue reading “PHP Array Key Value Shuffle”
Keeping the server spec up to date take regular effort. In this post we will discuss how to set up and enable some of the most recent web technologies.
Continue reading “Enabling TLS v1.3, HTTP2, and Push on Apache 2”
The Monty Hall paradox is a paradox because it is counter-intuitive even though it is mathematically correct. This article demonstrates with PHP code how the paradox works.
What is the difference between static::
and self::
in a PHP object oriented reference?
The simple answer is that most of the time, they are the same. There is a small difference between the two that many PHP developers and programmers do not know.
One of the issues that I have faced is having and running multiple versions of PHP with ease. I currently have 6 versions of PHP on my development machine. Before, to invoke the non-primary version, I would have to call it by the full path. I’ve tried making a common directory with symlinks and with shortcuts to the executables, but that never worked.
Continue reading “Managing multiple versions of PHP (or other things too)”
Managing another website brings in some issues, like the setup. Surely this can be automated! I’ve had the site maker script working for a few months, but I just got the site unmaker script working, and I thought I would share those here.
In the last post, Generating Random Passwords 5 – Saving The Password, there was an issue with the passwords that were posted here. Did you catch it? They were not 32 characters long, even though I had specified that. Or rather, they had characters we could not see. These characters did not render, but were there.
Continue reading “Generating Random Passwords 6 – Fixing the Non-Printing Characters”
This is a continuation of previous post, Generating Random Passwords 4 – Emoji.
What we need to do now is to save the passwords we have been creating. As we have seen, the console does not always represent the characters correctly. Given that, we cannot rely that copy-and-paste will work correctly either.
Continue reading “Generating Random Passwords 5 – Saving The Password”