Tag Archives: PL2018

#PlanetLotus2025

Huge changes happened to Planet Lotus last week. It’s safe to say it’s been rebuilt from the ground up.

TL;DR: PL has been stripped down, rebuilt, and upgraded. Please let me know if you see any odd behavior.

I had originally set out to find a more cost effective home for Planet Lotus. That home has always required some sort of virtualized server due to basic functions the site relies on, features normally turned off on lower cost shared hosting accounts. If I’m going to move to yet another VM, I might as well update everything. As you can imagine, porting 10 year old code to a brand new LAMP server will require some work, like a lot of work, like it’s a whole new site, at least under the hood.

If you haven’t noticed, the update started with stripping it down to it’s core. After years of experimenting with ideas, it’s always been about the Feed, wait that’s Facebook, but yes, for Planet Lotus too. My approach, less is more. With less it’s easier it is to maintain and with that comes longevity. My goal is to maintain this site as long as there is a Lotus in some way shape or form.

What was stripped?

Blog post content/body is no longer stored, resulting in the removal of content preview. The only values stored for each post is pubdate, title, guid and author. This will impact the quality of search results but Google is way better at this. Search results have also been stripped down as well. For example, I removed the score of the return, way over engineered.

The “blogs” page is gone. The list on the front page is good enough.

The profile page has been radically reduced. Hit count, is still a rolling 7 days if you notice your blog posts getting less hits over time. The refresh button now lets you know what items are skipped because they’re already in the system and which are new.

What’s been Updated?

GoDaddy to Google Cloud Platform
I’d love to think this move will help out the folks in EMEA due to Google’s insane fiber infrastructure; let me know if anyone’s noticed a performance bump.

CentOS to Debian
Planet Lotus is now on it’s 3rd distro. Fedoria > CentOS > Debian. I have no favorites; all 3 are awesome.

cPanel/WHM to command line
For years, I’ve suck with GoDaddy for hosting, 10 in fact, and I still LOVE godaddy’s virtual dedicated servers for one very awesome reason, cPanel. A ~$20US a month VDS includes cPanel which, for someone like me is a requirement. I’ve never considered myself a LAMP admin and cPanel makes admin tasks very easy. This all changed when a new project I’m working on required me to become a LAMP admin. Relearning command line with an older more patient mind turned out to be very rewarding and not all that difficult to grasp. This and the fact that any tidbit is out there, a quick search away. Knowing command line has it’s advantages. On the day Specter and Meltdown broke I was able to do the mitigation on my phone, in bed, 3 minutes into first reading about it.

Self hosted MySQL 5.6 to Google managed MySQL 5.7 via Google Cloud SQL
This will be the single biggest noticeable change to long time readers. I’m sure you’ve all seen brief outages over the years, this was always due to MySQL blowing out the servers memory, good riddance managing that end of things, and hello stability. (yes, my fingers are still crossed.)

phpMyAdmin to MySQL Workbench
Google Cloud SQL doesn’t provide phpMyAdmin. After a short time working with the desktop based Workbench, I really like it.

PHP 5.5 to 7.1
This update caused every database call to be slightly updated. The only way I was going to attempt this was if I completely stripped down the site down to it’s basics. Ther

MyISAM to InnoDb
This change was uneventful and simple.

mysql_connect to mysqli
This PHP connection function was depreciated and required updating before moving to 7.1. Over all, the site is more secure as I was able to add a ton of security best practices I’ve picked up over the years, in addition to moving to moving to mysqli.

MySQL tables from utf8 to utf8mb4
My war on blog titles is over. The war consisted of a hand full of regex expressions I’ve collected over the years to make sure the title is escaped to death. Now I’m using mysqli_real_escape_string to handle everything and it’s paying off with more accurate display of titles in all languages.

MagpieRSS to PHP-RSS & SimplePie
So long and thank you for all the magic you provided, MagpieRss and thank you @kellan for your work in creating it.

The use of both engines is able to parse 100% of the valid blogs on the site. Actually, there is only one blog that SimplePie couldn’t process, but there could be more in the future.
Both engines are also configured with Composer, which should make updates into the future easier.

Update frequencies changes…

The more often you post the more frequently your blog is checked for updates. All blogs are queried and sorted based on their latest blog post. This list is split into 4 groups and the frequency is as follows.

Group 1, every 15 minutes
Group 2, once an hour
Group 3, every 3 hours
Group 4, every 7 hours.

Summary

So there it is, version 2018 of Planet Lotus and a path to a smooth 2025. If you enjoy this site, if it’s helped you in any way, please consider saying thank you here… http://pmcdad.com