Hello world that doesn’t read this blog! I felt like being incredibly self-centered and pretend that for the moment, things I say and do about this certain project of mine are relatively important and impact more people than I know.
Now with that out of the way, let’s move on to WHY the name change has happened.
I was almost done with ShiftedBits. I had used it in production for a clients’ website, and all that really needed to happen after all that was a few more ideas put into practice and BAM! Version 1.0 release. Then something interesting happened: I grew up, and actually started to do some research. This research led me to realize that the set up of ShiftedBits was all wrong! Nothing was inherently testable, there were no mock-able objects, I couldn’t test the integration for crap. Not to mention User Security (which was one of the BIG topics I took on with SBCMS) was not really implemented correctly. It had its positives but it also had some major drawbacks in the design.
So I set about thinking. You know, as you do…
I was watching Harry Potter p.6 on the TV one morning (I was waiting for a job to start and had been out of school for a while, so this wasn’t necessarily uncommon), and eating a bowl of ice cream for breakfast. And it hit me. The changes I had to make were so drastic, that it was effectively going to be a new platform all together. The new name had to be something random. I looked at a box on the coffee table. At the rug underneath both, the couch I was on and then straight at my bowl of ice cream, and it hit me like the sweet sweet taste of Vanilla Bean (which is what I happened to be eating at that time as well.)
I knew what to call the project, and I automatically had a guiding principle based off of that name. It’s ice cream. Ice cream is sweet. Ice cream is good. Ice cream is for Real People. Now, that “Real People” shindig really got me. One of the major ideas of SBCMS was to be so simple, that a non-software developer could understand it. It fit so well to say that Real People were any one who WEREN’T software developers involved in the actual project (effectively, everyone not me…) and making it simple and easy for them to perform multiple actions, such as install the system, upgrade, install modules (and to their liking, write their own with little to no overhead.) was the best way to go about designing this over-glorified personal project.
So what has happened in the mean time? Well, in short I discovered Test Driven Development, Ant, Maven, Continuous Integration, SOLID, PCI-DSS, and OWASP among others. Got a job too, and moved, but that’s besides the point.
So things are moving on. The biggest actual paradigm shift in the code is that the CMS is now gonna follow more Java-like principles in design. Maybe one day I’ll finally figure out how to properly use namespaces in PHP, and then they’ll act like packages… or something.
But yeah! On the up and up, development is slow at the moment, as I’m still working on getting my “servers” built (yayVM’s), and the rest of the system actually designed. Hopefully one day soon I’ll have the actual process flow charted for you guys well enough for me to post it, as well as a UML diagram of the CMS as a whole.
Until next time!

Hooray for ANT! I love that tool for deployment.
I look forward to seeing how everything turns out!