Feed: Evil, as in Dr. - AggScore: 74.7


Visitor Rating: 7.7 (13) (Rate)
Story Clicks: 0
Lenses: (Add|?)
Comments: (Log in to add)
Log in to add feed to you bookmarks.


Lukas is making another attempt at jumpstarting PDO development.  I welcome this effort, and will do what I can to help fill in details and make suggestions.  Unfortunately, I'm just way too busy with work to be able to commit to more than that.

I also wanted to share some of my thoughts on why PDO has been in a holding pattern for a while, so that more people are aware of it and can work to avoid repeating the same mistakes.

The first thing to note is that the guts of PDO were hard to develop.  The PHP script facing API sounds simple enough, but the underlying libraries for each different databases work in different ways, and it was and is a challenge to build PDO in such a way that it can work in the most efficient way.

The second thing, which is really a follow-on from the first, is that the database libraries are complex and nuanced.  Some are relatively simple (especially SQLite and MySQL) and others are complex in divergent ways (ODBC and Oracle).  Making a great PDO necessitates having experts in each of those APIs and databases around as contributors, both for the core implementation and for unit tests.

Thirdly, there are a lot of databases out there. That requires a lot of resources for the PDO developers to do a good job; not just different database products, but also different versions of those products, need to be tested against.  This is also very time consuming.

continue reading …



Date Published: Oct 25, 2009 - 11:35 am

I've opened up the code behind EvilDesk, my Windows Shell replacement, and made it available on BitBucket under the terms of the GPLv2.

Enjoy!

http://bitbucket.org/wez/evildesk/



Date Published: Jun 07, 2009 - 10:00 pm

A few of my friends and associates may have heard me talk about the media server I've been running in my basement; I used to automatically transfer content from my tivo to a hard-disk in my basement so that I had more space for recordings on the tivo.  Since most of the recordings that I want to keep are now available via Hulu, I haven't had much call to use it in the last 6 months.

So, what is CouchShare?  It's a UPnP server that can share content from folder to an XBox 360 on your network.

It's written in PHP (and requires a tiny PHP extension to enable multicast support) and is written using the eventing framework that is part of the Alexandria codebase.

I wrote the code back in 2007 and it has served me well for a couple of years; it felt like it was about time I got off my backside and shared it with the world.

It is by no-means a polished bit of code; I think it's probably the sloppiest code I've written in quite some time, and it may well need a couple of tweaks to make an easier application out of it.

continue reading …



Date Published: Jun 07, 2009 - 8:56 pm

Update: moved code to http://bitbucket.org/wez/toshutils/

Friday evening I sat down and wrote my first piece of solaris kernel code and an associated user-space application that activates the brightness up/down hotkeys for the LCD on my Toshiba Satellite M30.

I implemented a tosh_hci driver that can perform Toshiba Hardware Configuration Interface traps via an ioctl(2). This driver is really simple; the hardest part being the intel assembly needed to perform the trap (technically an inb instruction, not a trap).

The userspace code is a really slimmed down version of the code that I previously made available in my patch to the linux acpid. It currently only handles the LCD brightness keys because none of the features that the other hotkeys are supposed to invoke are currently supported by solaris/opensolaris.

Anyhoo, I've made the source available, under the CDDL, in a bundle here for any other toshibans that might like to get a bit more comfort factor back when running solaris.



Date Published: Jun 07, 2009 - 7:13 pm

Update2: moved code to http://bitbucket.org/wez/toshkey/overview/

Update acpid now handles the brightness controls, displays the battery status in the ps list and emits power warnings once you're down to 15 minutes of power. I've also added a little non-root acpid client that will allow you to run your own stuff in response to hotkey events.

I suffered a dead (nearly; it's on its way out) laptop disk almost a week ago, and have been clawing my way back to normality.

As a side effect, I now own a Toshiba Satellite M30, which apparently has slightly more linux friendly hardware than my other Satellite (the one that's having issues).

One of the cool things is the toshiba_acpi module; it works in this model and allows access to the hotkeys so you can map them exactly as you like. Since running a standalone daemon for this sucks (you can choose either a python script or a slightly-overweight fnfxd), and since there was a feature request on the ToshibaAcpiDriver page for it, I've written this patch that adds toshiba key support to acpid (1.0.3).

continue reading …



Date Published: Jun 07, 2009 - 7:09 pm

It's been a simultaneously long and fast week for me. I flew into Chicago last Sunday, ready for the PHP core developers meeting that we had planned for the Monday and Tuesday. My journey went like a charm; perfect timing had me parked at the airport, immediately on the shuttle bus to the terminal, straight through security and to my gate just in time to start boarding. The only minor hiccough was in finding the shuttle from Chicago to the hotel; it was extremely poorly sign-posted.

Anyway, I got to the hotel and ran into the British contingent of the conference, and we eventually found our way to a Mexican restaurant not far from the hotel, and then to the bar across several lanes of traffic from the hotel, where a fair quantity of alcohol was consumed by all.

The next day we headed downtown to the Microsoft offices for day 1 of the core developer meeting, where a number of internals issues around PHP 6 were discussed. This was a very productive session, and we earned the drinks that followed at the Map Room, although I opted out of the bulk of those and headed back to the hotel (yes, I'm getting old)

Tuesday was day 2 of the core developer meeting, and thankfully was held in the conference hotel; the journey downtown took the better part of an hour and I was glad to skip it. The agenda for this day was to look primarily at what we could clean up in the code for PHP 6 and whether we might need to introduce a PHP 5.4 to aid in that transition.

We also touched on PDO 2; the short of it is that it might be about time to see if the vendors are willing to play with us again, and where the original plan was to have all the major vendors on board, we may well be looking at cutting out the less flexible vendors from the baseline PHP distribution. I'll do what I can to help facilitate a PDO 2, but don't anticipate having much free time in the coming months.

continue reading …



Date Published: May 24, 2009 - 1:03 am

The slides from my "Getting IT Done" session at php|tek can be found on slideshare.net; Enjoy!

PS: I would be grateful if you were there and could rate the talk on joind.in



Date Published: May 23, 2009 - 4:54 pm
Technorati Tags:

I treated myself to a Kindle a couple of months ago, and I'm pleased to say that I've been enjoying it a lot.  I've read just over a half-dozen books on it so far; some at home and some while traveling.

At first, the page turning buttons are a little frustrating because it is very easy to accidentally press them.  This is something you train yourself not to do in pretty short order.

The screen is very clear and easy to read, and has a configurable font size to cater for the eagle eyed through to the bleary eyed.  There's no back light, so you need to provide your own illumination, just as you would for a regular dead-tree book.

I've found it very easy to read.  I'd read in some reviews that the visible page refresh takes a second or so when you turn a page, and that some people found that annoying.  I view that as being equivalent to actually turning a page and giving your eyes a moment or so to move back up to the top left of the screen.  I've started to press the "next page" button as I'm reading the last line; this is an unconscious action.

continue reading …



Date Published: Oct 21, 2008 - 10:03 pm

I'm looking for a senior-level engineer to help extend the web-based dashboards for our messaging infrastructure platform.

This position reports directly to me.

While we don't face the traditional scale-to-the-world types of problems in our web UI, we do face some difficult UI and data scalability challenges.

If you're interested, please contact me via jobs@messagesystems.com.

Job Description

continue reading …



Date Published: Sep 11, 2008 - 11:26 am

We at Message Systems are looking for someone to fill the position of "Technical Trainer / Curriculum Developer".

This position designs, develops and delivers online and in-person instructor led trainings on the Message Systems products and services for a variety of audiences including customers, partners and internal staff. You will design courses and instructional material for everything ranging from short informational quick-starts to multi-day workshops.

The audience for these training programs will primarily be mid-senior level Unix administrators, messaging anti-abuse operations staff, systems architects and other technical staff engaged in designing and maintaining corporate and carrier messaging infrastructure.

This is a full-time position based in Columbia, MD.

If you're interested, or know someone that might be, please read (or send them to read) the full job description.



Date Published: Aug 29, 2008 - 9:48 pm

Busy times here mean that I'm leaving it a bit late to say this, but I'll be at ZendCon this year too. I'll be giving the usual talk on PDO, but my main reason for attending this year is to sync up with other PHP folks and talk about where PHP is at and where it's going.

ZendCon has been consistently good, and I look forward to attending again this year... see you there?



Date Published: Aug 29, 2008 - 6:10 pm
u-mp1054 serv 7.6444 seconds to generate.