TAG | Plugin
For many weeks now I experience random 500 errors on this blog. Usually they happened whenever I saved a blog post but also during the day when I did nothing on it the blog would stop working until the web server has been restarted.
This problem is now solved.
Blogging on test.ical.ly is fun and a really cool experience for over 1.5 years now. Usually I write my posts in advance like the day before and schedule them to be published some random time between 4 and 5 am in the morning.
Then on the next morning I get up and promote my new article on Twitter and Facebook and Google+ and Forrst. This takes up 20 minutes every morning of copying and pasting over and over again.
So I thought why not write a WordPress plugin that can do that for you?
For a while I’ve been toying with the idea to set up a fully automated continuous deployment process for my symfony plugins. You can think of continuous deployment as a continuous integration process with automated deployment.
I just didn’t come round to do it as I couldn’t find the time so far. But then I read this article by Toni Schneider about CD at wordpress.com and it got me hooked again.
So I thought lets write down what it takes for a start.
It seemed a very easy thing to do when I first heard the requirement. Allow a user to upload a ZIP archive instead of an image and save multiple objects for the current form. One for each file contained in the archive.
And it is easy to do but most ways that I could think of weren’t very clean or easy to maintain. And then I thought: wouldn’t it be nice to allow this kind of stuff in a generic way? And so sfBulkUploadPlugin was born. (more…)
Usually the answer is a misconfiguration but sometimes of course they found one of the bugs I involuntarily put in the code.
In these cases I have to get down at the code level and try to fix it. This is how I usually do it.
Yesterday only two days after the previous release I uploaded sfImageTransformExtraPlugin version 1.0.12 to the symfony plugin page. Despite my efforts the optimisation for removing generated thumbnails whose original source was changed did still not meet the performance expectations.
But I had another idea which got rid of the expensive recursion of RecursiveDirectoryIterator and replaced it with something else entirely.
sfImageTransformExtraPlugin is an ORM independent symfony plugin which utilizes sfImageTransformPlugin to generate all sorts of thumbnails and perform other image manipulations. Instead of providing an API it allows you to configure each desired format in a configuration .yml file. This enables you to separate design and function and simplifies format changes. It also decouples the generation process from the uploading process which ensures a clean user experience with no hickups.
It’s been a little over three months now since sfImageTransformExtraPlugin saw the last release. Yesterday I fired up version 1.0.11 which solves a few problems around caching.
Today I am happy to announce that this plugin is now available in its first beta version!
Not only I managed to implement the basic idea of composing design and content elements on a canvas; by now the plugin became completely independent from your models and database structure!
For a while i am now working on a plugin to allow easy page composition. I wrote about the basic idea previously.
gjPositionsPlugin has seen quite some change since as it turned into a doctrine behaviour and symfony admin theme combination. Now the main thing left is some jQuery action to add usability.
Unfortunately the current structure does not allow easy collaboration as the plugin only defines functionalities that can be incorporated by your application. It does not work standalone. That’s why I had the idea of another plugin for demonstration purposes only. (more…)
To be honest I had little idea of what to write today. Fortunately I received an email from Benjamin (a.k.a. robo47) about my sfImageTransformExtraPlugin. He asked if there is any chance to retrieve the stable releases from GitHub as well as from the symfony website.
And he’s got a point. Many developers have switched to git by now while symfony (1.x) only provides subversion. So here are a few best practices for those symfony plugin developers who have switched their development to GitHub (like me). (more…)