Speech Freer: Working Under PHP safe_mode

So I’ve mentioned I’d really like to migrate from WordPress to Drupal, for a number of reasons. One of those reasons was that my WordPress has, over time, become gunked up with errors about write access that I kind of understand but have been unable to resolve. Particularly, the awesome automatic updating of WordPress and its plugins had ceased to work, and every update had to be applied manually, which was never going to happen. I was hoping starting from scratch with Drupal would let me keep everything running smoothly.

However in trying to fix a similar issue with my new Drupal install, I can across a post detailing a solution for How to Get WordPress Working Under PHP safe_mode on NearlyFreeSpeech.net, and believe it or not it works. Thank you, Sarah Pin! It’s a long process written out, but really just SSH and 4 shell commands to change the group of everything to web rather than my account. This allows WordPress scripts to write to the server, and hence allows automatic updates. The name of the site, “I Am Completely Serious“, inspired some confidence that I might just be able to fix this mess, and I’m so happy with the results that I’m definitely reconsidering the value of switching to Drupal.

Now the main drawcard of Drupal is the integrated forum module which, while not as full-featured as say phpBB, is plenty good enough for me to offer simple support, and integrates natively with the Drupal user database. In addition, I like the way Drupal is engineered; it’s a programmer’s CMS. Everything is extremely decoupled and customisable, and although that may not add much to the site itself, I suspect it would be more extensible in the future. WordPress is positively rigid in comparison. Finally, I’d just like to learn Drupal for future use, so what better place to start.

One last thing, you’ll notice the theme of Piemaster.net has changed as well. I was so eager to update everything that I didn’t really consider the consequences. The Mystique theme I was using had been customised a bit, and it turns out that since my last update a while back a bunch of features were removed and moved to “Mystique 3+”, leaving the site a bit of a mess. Reverting to the WordPress default theme Twenty Eleven is quite serviceable for now, however.

So in conclusion, I’m actually pretty happy with WordPress for the minute now that it’s all smooth sailing again. Migrating to Drupal is possible (I’ve more or less done it locally), but inevitably hits a few snags. The menus need to be reconstructed, the themes aren’t very pretty, users will need to re-register (not that there really is any atm), etc. I will get around to it, but maybe not just yet.

Forgbook Progress Report

As you can see, there has not been any Forgbook updates for quite some time (a month), despite my resolve to post some. This is for a few reasons, some more interesting than others.

The least interesting is that I’m back at university, which doesn’t leave me quite as much time to work on things, though I’ve been giving what time I can.

More interestingly, I’ve recently stumbled across Pinax, a very smart extension of the Django application framework that offers a bunch of links to reusable Django applications, allowing the user to create the generic skeleton of a web site in a single line, along the lines of pinax-admin setup_project mysite. This provides you with a standard project layout and a collection of full-featured applications for basic capabilities such as user account management, notifications and wikis. Succinctly enough, “Pinax takes care of the things that many sites have in common so you can focus on what makes your site different”.

So I’ve been working on developing a reusable application for activity management within the Pinax environment, and have actually made considerable progress. It’s currently in a usable state where activities can be created, edited, viewed, deleted, completed (various amounts), paused, cancelled, and scored, and these operations propagate through the activity hierarchy. Relatively more advanced features such as categories, tagging, friendships, messaging, commenting, and email notifications are not implemented, but the beautiful thing is that reusable Pinax apps for these tasks exist already, and it should just be a matter of plugging them in with a little configuration. More Forgbook-specific features such as privileges and JavaScript-driven views will take a bit of work, but really Forgbook can function quite happily without them.

Having made that progress, I turned to investigating where such an application could be deployed and hosted so I could start testing it as a legitimate user. The traditional option is just to host all the files on a regular Web server, and connect the Python framework via WSGI. This is not going to be compatible with my current host NearlyFreeSpeech however, because of the rather idiosyncratic nature of their shared hosting setup. Furthermore, a basic Pinax project by itself typically sits in a virtual environment and weighs in at about 50MB, making it unwieldy to just copy, paste and host.

There are a few other options, but I was attracted to Google App Engine, because it’s Google (<3), and it’s pretty much free until the application gets particularly popular. The trouble is that the database used at the backend is a non-relational database, which is a new-fangled way of saying it’s not compatible with every other database. As such, Django is very difficult to support, and Pinax is even more divergent. There are few attempts at workarounds (django-nonrel seemingly the most promising), but it’s otherwise developer hell even attempting to monkey-patch the systems together.

Those remaining options then are a little more pricey but seem as though they will take most of the pain out of Django hosting. There are a few start-ups (Gondor, ep.io and Djangy, all in private beta) specialising in Django hosting which I’m keeping an eye on, as well as a few hosts that are friendly to Django, such as WebFaction (detailed as supporting Pinax too).

Currently the plan is to wait until a couple more of these are available (hopefully sneak into a beta or two) and see what cheap options can be had. In the meantime, development will continue, though maybe not as rapidly with uni in full swing. There are few other interesting activities and possibilities in the air as well, but I’ll discuss those a little later.

In summary, Forgbook is alive and well and even usable, but can’t really come out and show off until it finds a home. Hopefully that won’t be too far away.

The Apps Cometh

So I figured some things out, and I can now host all my stuff on here! Unfortunately WordPress doesn’t want to let me embed things in pages, but I can happily store them just off to the side, leaving them accessible from a nice, static URL. I’ve quickly put up two examples to show them off before I get down to business, which you can see in the Projects menu above, but just briefly:

Forgbook (working title) is my primary project at the moment, though it doesn’t get nearly as much development love as it should. It’s the result of many factors, the main one being when I decided I had stop leaving loose ends everywhere and actually DO those little things that make the big things come together. It is in essence a glorified to-do list (especially in its current form), but it has a very exciting future ahead of it. It’s still in a very early alpha stage, but it’s at least fairly usable. Check out the version roadmap for a preview, and hit up the feedback form to land yourself in the credits!

Treetris (also working title) is something new that I came up with yesterday while waiting at Parliament Station. The idea is a survival-strategy game based on growing out tree branches, inspired by Tetris and another game I failed to coalesce a while ago. I want to keep it simple in rules and mechanics, but have a bit of depth in how it’s actually played. The Java applet I’ve got up is just a couple of hours of work and is more of a teaser than a preview; it’s just a tree that keeps growing out until your computer grinds to a halt :). It should give you some idea of what I’m going for though, and me something to work off.

It’s exciting enough at the moment to just see these two out in public on a decent web host, but there will be plenty more to come now that the foundations have come together. If you’re even a little interested in any of this, you can subscribe to any (or all!) of the RSS feeds up the top-right corner there to hear about future developments, and I promise there will be plenty. I rather like this site, and I’m itching to dump my mind on it as soon as I get the time!

Welcome To The New Piemaster

Hi! I’m Oliver Lade. You may remember me from such sites as http://piemaster.net/, my dump of Uni work, or a certain other site that no one that knows me seems to know about, despite it being by far the largest. It is the first of those, my old personal home page (more personal in that it was practice coding a web site from the ground up rather than the content on it), which is of most interest, since that is the site that is being shifted over here. “Here” refers to a new account with NearlyFreeSpeech.net, an eminently reasonable hosting provider that charges for usage, making it especially cheap for a small site such as this, so a big thanks to them.

As fun as the old Piemastery was, I simply don’t have the time to keep extending the primitive functionality, and I needed a site I could use easily. Why did I need such a thing? The reason is one I can’t discuss in detail right now because of the reason itself. Also because I don’t entirely know myself what that reason is. Ultimately, I plan to use this site for hosting various bits and pieces that I develop, but I also intend to make good use of the blogging strength of WordPress to get a few varieties of idea out of my head. I don’t expect anyone to read them, but I’m happy to be talking to myself, because then it just becomes a journal which is helpful enough in and of itself.

Some people may read some thoughts if I point hard enough, but at the very least, this will become my new staging ground for web development. The first item you will see is (a link to) (a properly-hosted) Forgbook (alpha) (working title), but more things great (hopefully) and small (definitely) will follow in its wake. Hopefully I can centralise the development coverage of these programs and applications with some project blogging, as well as clear my mind with some more personal content. How reality unfolds may well be a different story.

For now, it is the time for the sleeping. I’ll be back with more when there is more to be back with. There’s a lot of work to do around here, and I am honestly looking forward to all of it. See you when I see you.