PHP Monitor 6.0 now available

May 28, 2023

PHP Monitor 6 is a major update that comes with a few important new features, including Standalone Mode, Instant Homebrew Response and the often requested PHP Version Manager.

I usually prefer less time between releases, so it has been a while since the last update, but I wanted to take my time to ensure you all have a great user experience with these new changes. I’ve been testing these changes a lot.

Especially the PHP Version Manager took a lot of time to get right, and might still not be an entirely flawless experience for everyone, but that’s unavoidable given how different people’s Homebrew setups can be.

Read blog post

A lot of the programming discussions I see on Twitter eventually boil down to the simple question of whether to be explicit about your code, or not.

If you prefer to be explicit, then things like using the final keyword with PHP will make a lot of sense, even in places where you could reasonably omit it. (The idea being: “This keyword indicates that no subclass of this parent class should ever exist.” This is a very explicit instruction or annotation.)

I’m personally in the camp of being explicit about things (generally), but I can certainly acknowledge that this leads to an increase in verbosity, and sometimes “bulky” code.

For example: Swift as a programming language can be far more verbose than its predecessor (Obj-C) but is, as a result, much safer in various ways. At times, this definitely does impact the readability of the code. I find this difficult to navigate at times.

In the PHP world I’ve been reading a bunch of interesting threads over the last few weeks with very opinionated folks saying all sorts of things about various language features. All reasonable, I assure you, yet consensus won’t ever be reached—because like most things in programming, the cardinal rule stands: “it depends”.

Conversely, if you prefer to be implicit, then some language features may seem overkill, or you’ll only want to use them in very specific situations.

Read blog post

Revisiting Writing

April 26, 2023

It’s safe to say I haven’t written a proper story in many years.

Next year it’s probably been close to a decade when I finished the last NaNoWriMo edition I participated in where I wrote a sci-fi story about a bunch of revolutionaries set in the 2080’s (the distant future… after a major historical divergence in the early 2000’s in-universe). Yes, I wrote that manuscript in 2014.

Like my other NaNoWriMo manuscripts, I was both stunned by how simultaneously good and bad these are. I was re-reading the introductory chapter for three of my most important manuscripts, and I really liked what I was reading.

Read blog post

An observation: The too-little-text problem that Twitter has historically faced, and too-much-text-generated problem caused by ChatGPT are two sides of the same coin.

With the popularization of generative neural networks and large language models, we’ve opened quite the Pandora’s Box, haven’t we? We can now generate content faster than we can consume it, and it’s going to be relatively high quality text content, too. We can now generate bullshit without abandon.

However, even with systems like ChatGPT and the like, one of the key problems we face is that people are fundamentally lazy. Even with a model that spews out lots of text, if your prompt is lazy, you won’t see good results. And whether eloquent or not, lazy communication is often not helpful, not to mention easy to pick out.

Read blog post