26 Jul, 07
You may or may not know that I’m terribly busy at work at the moment, rewriting a large application that has its roots in PHP3 (oh yeah) and is a crazy mix of HTML and PHP. Things like ‘abstraction’, ‘layers’, or even just ‘separating code and presentation’ are completely alien concepts there.
So I decided to do the rewrite using one of the many PHP frameworks - CodeIgniter, CakePHP, Symfony, etc. - and decided on CakePHP (and, maybe more important, against Symfony). Doing the ‘reading’ parts of the app was simple enough, despite me being a complete newbie to CakePHP and using the 1.2 alpha versions which is mostly undocumented. But the actual data input and saving part, I hit a wall. Hard.
The problem I have is this (models are in bold):
To enter a Venue, you first select a Location. Then you add the Venue data, which is a lot of fields. Then, you add 0..n Images (which you upload just then). Then, 0..n Organs (as in music), either from a list of existing ones, or you can add one on the fly. Then, optionally, Ensembles (dito); and then you finally get to review your data and finalize the Transaction. All this should be on a wizard-like form, with multiple steps/pages.
Editing a venue is pretty much the same, except the data is already there. So the record and all associated records get copied as needed, with a reference to the original.
Then, the admin can either approve your Transaction and merge your changes into the DB, or deny it and delete the Transaction and all associated rows.
The problems start with getting everything wizard-like. There is a FormWizard component, but that seems to randomly overwrite or clear $this->data. I don’t know what to do with my data when I hit the ‘add 0..n images’ step, or when adding organs or ensembles. I have no clue what “the Cake way” would be here, since all examples I can find are rather simplistic with only a few fields, all on one page, and at most one relation (which always fits a select box).
Can any cake baker out there help me get back on track before I lose my mind?
21 May, 07
Dear Lazyweb,
I need a new Laptop, preferably a Convertible or Tablet PC. Minimum requirements are:
- long battery time (4h+, ideally ~8h (with additional battery if neccessary))
- >= 1GB RAM
- >= 80GB harddisk, 120GB preferred (or if the laptop is cheap, I’ll just upgrade it myself)
- display > XGA (1024x768), old-school, not one of those mirrors (ew)
I’m thinking these things should not cost more than €1200, but the real world is strongly disagreeing. I will not pay more than €2000, and would prefer a price of €1500 or less. It’s a laptop with a display you can turn, fer chrissakes!
Do you have recommendations?
01 Apr, 07
Okay, seriously. Habari 0.1.1 Developer Release is now available for download and hacking:
The 0.1.1 version includes a fix for the search XSS problem and removes the misleading warning in the installer.
I don’t recommend using it on a public site without being aware of the problems! At the very least, you should put your Habari install on a different domain that does not hold any important data.
You’re welcome to drop by on irc.freenode.net #habari and join us in our inspired fork… barbe… hacking!
01 Apr, 07
Hey, don’t worry! We’re just kidding! You’re reading Habari’s April Fools joke.
Update: ForkPress made 20,070,401 downloads already! I can’t believe it!
It started with great promise, great promises, and at an opportune time. Everyone and their mother were starting to get disgruntled with WordPress - it had its share of scandals, its codebase contained a lot of baggage from ye olde times, some of Matt’s decisions didn’t go over so well with people, and some didn’t like the whole dot-com stuff going on.
Habari promised everything - a complete rewrite, using today’s technology, under a truly free license, and with a meritocratic development process. And it had a number of big names behind it.
It was a nice idea while it lasted.
It is now obvious to me that both the meritocratic process as well as truly free licenses absolutely and utterly fail to produce open, free software.
You might think this to be a strange thing to say, considering Habari finally released the Developer Review version today. Well, see for yourselves:
If I appear to be angry, it’s because I am! Scott (skippy) and Owen - both cofounders of Habari - have left the very project they founded in the dust, choosing to pursue commercial interests instead. The best part is that the codebase for their fork is probably Habari, and our choice of license allowed - encouraged - them to just take the code! Considering the timing of this decision, and the polish that went into their new projects already, it seems obvious to me that this move has been planned since quite some time — taking the hard work of volunteers, and going dot-com. And the worst part? They probably won’t hire me either, just like Automattic didn’t! In short: WTF BBQ.
I must say I feel happy about Habari’s Development Review release, but at the same time, I feel utterly betrayed. On the bright side, it is a statement about Habari’s quality, but still…
Skippy, Owen… good luck with your new ventures — ForkPress and bbqPress.
Hire me?
Update: Chris J. Davis also talks about the topic.
01 Apr, 07
I kid, I kid. I have no intention of changing operating systems, at least until Linux finally is ready for the Deskop.
Plan 9 still is nice, though!
Much is foul in the state of computing today. Proprietary software is used throughout the industry as well as on the majority of personal computers. The promised Linux Desktop revolution, announced since years, has not happened so far, and people are beginning to doubt it ever will happen.
This madness must end.
No longer can we use proprietary software! Be it the proprietary operating system we use, or closed source drivers, protocols that are neither open nor standardized, or even embedded firmware in devices.
No longer must people get away with “I use Mac OS X because it’s userfriendly”, when large parts of their OS are completely closed and locking them in.
No longer can “Well, I use Windows XP, but it’s ok, I run Cygwin under it!” be tolerated, lest we all lose our GNU-given freedom.
No longer can we just watch the proliferation of patents, software or otherwise, spreading like a cancer and trying to smother our liberty.
We must stand up and fight! We must retake our freedom! We can not stand and watch as the walls grow closer, not wait until they suffocate us!
Today I’m doing the first step towards my personal free software freedom. And this freedom can not, it must not depend only on some license, or development model considerations. Licenses are manmade. The Tao of Operating Systems is bigger than that.
I’m switching to an Operating System that is pure in itself, whose radiant beauty enlightens the galaxy of computing. One which treats all resources equally, in its infinite wisdom. One which uses the only true encoding - UTF-8 - everywhere. One whose name is funny, and not some ego boosting thing (say what, Linus?).
UNIX may be dying. BSD may be dead. But from the ashes of sockets and ioctl rose the phoenix that is Plan 9.
Replacing a tried-and-true installation of Windows XP with an equally able setup of Plan 9 is easy. You just install Plan 9 — there is no need to bother with backups, partitioning, or selecting packages. After an installation procedure taking some twenty minutes, you reboot into a new, blissful existence. Plan 9 is the Tao, and the Tao is Plan 9.
I want to take this opportunity to ask everyone of you, my readers, to get yourself a Plan 9 installation/live CD. In the month of April, set yourself the task of converting at least five computers from a proprietary, egoistically named, or user-friendly Operating System to the salvation that is Plan 9. Do not try to reason with the unbelievers you encounter, for you will encounter them, and they shall not be swayed from the path of darkness. Only through force can you rescue them from this downward spiral, the lefthand path, the path of usable systems and working devices. By the sword you shall spread the righteousness and glory of the path of light. Plan 9 is the Tao, and the Tao is Plan 9.
Go forth, and spread it.
Remember: The open source zealot’s blood is the seed of Freedom’s tree. This is madness, you say? Madness? This is Plan 9!
Screenshots of my new Plan 9 system will follow as soon as I get my screenshot file working.
Plan 9 is the Tao, and the Tao is Plan 9.
15 Dec, 06
Twaingle is a tool that allows you to search for images on flickr or yahoo and insert them directly into an application.
Where ‘application’ means ‘anything TWAIN-aware’. TWAINgle installs itself into the system (Windows XP only at the moment) as a TWAIN driver. Thus, all applications that have an option to “scan” images via TWAIN become web-enabled instantly. And how!
15 Nov, 06
Windows Update does this annoying “you absolutely must restart now, or later, by which I mean that I’ll keep nagging you every 5 minutes” thing. It’s a pain in the ass since the popup usually occurs only after you have just settled in to work - once all your programs are open and the windows arranged, WU pops up in the middle of your screen with a default button of “Restart now”, which is also mapped to “N” (like “No”). I can see what Microsoft are hoping to do, but honestly? I think this behaviour is completely unacceptable.
Luckily, there are several ways to fix it. The simplest solution to stop the nagging for the remainder of your login session is to just stop the Windows Update Automatic Updates Service, either per GUI or just by running
net stop wuauserv
You can also use a registry setting to disable automatic rebooting when there is a user logged on, plus set a high ‘respawn timer’ for the nag screen:
Run regedit
Open HKEYLOCALMACHINE\SOFTWARE\Policies\Microsoft\Windows\WindowsUpdate\AU
Create a DWORD value named ‘NoAutoRebootWithLoggedOnUsers’ and set it to 1
Create a DWORD value named ‘RebootRelaunchTimeoutEnabled’ and set it to 1
Create a DWORD value named ‘RebootRelaunchTimeout’ and set it to 600
If you’re on Windows XP Professional or any Server OS, you can also use the Group Policy Editor to do the same thing:
Run gpedit.msc
Navigate to Local Computer Policy > Computer Configuration > Administrative Templates > Windows Components > Windows Update
Activate No auto-restart for schedule Automatic Updates installations, AND
Set Re-prompt for restart with scheduled installations to a high number.
21 Jun, 06
This is why Perl rocks: sub max{(sort{$b<=>$a}@_)[0];}
15 Jun, 06
Auch ohne $DEITY sind the broadband ganz lustig. “Net Neutrality” (or the lack thereof) ist leider kein gar so lustiges Thema, aber von hier aus können die meisten von uns nur Daumen drücken. Also!