August 12, 2007

GSoC 2007 Mentor

For those that don’t know already, I’m a Google Summer of Code 2007 mentor for one Igor Feghali on this project.

I must say I just totally forgot to blog about it so bare with me ;-)

Anyway this project is a pretty exciting one for couple of reasons, one thing being that I use MDB2_Schema in just about everything I do at the moment and I was a little involved in the whole thing when Lukas Smith was heading it or so I like to believe *crosses fingers*, another is that I’ve always enjoyed working with Igor, a feisty young fellow he is and constantly has some new ideas and another major factor is that the DBAL in ezc uses the XML format MDB2_Schema has as well as a project called Doctrine (well at least it did use the MDB2 code as base so I’m hoping they also used MDB2_Schema) and I do hope at least ezc will sync with these Forgein Key additions :-)

Since I’m blogging about this so late in the game then I think it would take me all night to jot down everything Igor has done so instead I encourage everyone to just head over to his blog and read about it there even tho recently he was added to planet-php, Igor has done a terrific job of keeping me up to date via his blog as well via emails/IM but the gist of it and the important things are on the blog anyway.

Looks like we made a good decision about picking Igor and it seems that he will manage to finish his project second year in a row! :-) Hopefully he’s up for a hat trick next year ;-)

June 8, 2007

PEAR Installer 1.6.0 and XDebug code coverage

One thing I’ve always missed in phpt is code coverage reports, not lcov since I’m talking about testing userland code, kinda like we have in PHPUnit so I decided to implement it in pear run-tests so that I could check out how much code I’ve made tests for in PEAR and other projects where I utilize the phpt format.

So the first thing I had to figure out was the RunTest code in PEAR, it’s a old port of php run-tests and hadn’t really been updated to any real extent, mostly just adding features here and there, so what I did was to split it up into multiple functions so that it would be easier to understand the beast, run() was 700+ lines IIRC and in this process I managed to find a good amount of redundant code that we could throw out, yay! :) So the next step was to figure out how to make XDebug only provide coverage reports for only the tests and the code they run and not to include the RunTest code in the equation with out me having to filter it out, and then a very ugly solution dawned on me, I’d have to inject the XDebug start / stop / get coverage code into RunTest, OH MY GOD! :-/

But for those that understand how we execute tests this will make a lot of sense, because each test gets it’s own php process, we use proc_* for that, and why might one ask and the answer is simple, mainly to test PHP fatal errors and code that uses exit/die as well as being able to define our own ini options that the process will use (enable safe mode, disable magic quote and things like that) … There might be some other reasons but these are the most important IMHO.

Tho the first two reasons caused me some headache, since of course fetching the coverage info and throwing it into a file won’t work if a PHP Fatal error occurs or if a die/exit get processed in the test since it’s done at the end of each test, so I had a little chat with Derick to see if we could find some proper solution for that challenge and he said he was going to look into it for XDebug 2.1, yay for Derick :-D So to sum up a little I take the FILE part, detect the first and inject the start / get coverage / stop XDebug code as well as var_export($xdebug, true); and write that to a file in the same dir as the test with the file ending .xdebug (name can change, just seemed the most straight forward at the time :P) and hurray we have a file that contains a valid PHP array with the coverage info! :D

This isn’t a silver bullet, it needs some more work and a renderer package to make those pretty graphs and progress bars, like we have at gcov.php.net or similar but at least it’s progressing into the right direction and I’m pretty happy if it becomes useful to only handful of people, if more use it then I’ll be thrilled.

So anyone up to helping with the renderer package ? :-)

Tags: , , ,
April 12, 2007

Mentoring a Google Summer of Code project

So it seems a project I will be co-mentoring with David C. managed to slip in :-)

David already blogged about this here but I’d like to correct one thing, I don’t see Jaws as a framework per say, it’s not like ZF, eZC, symfony, prado or fellows … i.e. you can’t really rip a component out and use it in a completely other env. well for the most parts anyway, at least that’s how I see it :-) So it’s not yet another framework just like every single one of them.

Continue reading

April 6, 2007

Useful Firefox extension

I’ve been following a little Firefox extension that Daniel Glazman has been writing for the past weeks called Fullscreen.

What it does it do enchance the fullscreen experience people get by pressing F11 and thus making the usage of online apps like GMail much more, well, readable :)

The idea is that it the ext gets rid of the location/toolbar + tab bar when you are in fullscreen (opposed to what the default behaviour in FF is) plus you can configure couple of things, like wether to show the status bar or not, how close the mouse has to be near the edge to popup the toolbars.

ctrl + l gives you the location bar, ctrl + k gives you the search feature but oddly enough I haven’t gotten it to work yet but well I’m on linux (fedora) using the fedora shipped FF so go figure :)

Anyway do give it a whirl, download it via the mozilla addon page

Just a short note in the end, this could be a great way to give your clients a better way to fully use the screen, give them something to go “woooww” about :) If you get them to use FF + this ext that is

Tags: ,
March 24, 2007

Where are web apps heading ?

Updated: Here’s a link to DOM Storage that’s a little bit easier to read compared to the WHATWG one :)

I just finished reading this excellent article by Matthew Gertner of AllPeers that gives people a fair idea on how the applications world might look like in the next 5 years or so.

In retrospect he hit the nail straight on the head but I think he down plays the web app future just a tad because frankly I think that’s the future, since probably none of the big players will come through and get anything widespread enough compared to a web browser without having some serious drawbacks.

Continue reading

March 24, 2007

I'm back, once again :-/

Update: dotClear 2 doesn’t seem to be smart when it comes to excerpts and feeds, it doesn’t do the “continue reading X post” just shows the whole post in the feeds and uses the excerpt on the actual blog, doesn’t seem like best solution so sorry about seeing the whole post on Planet-PHP :/

So I’m back, again sigh I always seem to manage to have my blog taken down for X amount of time and then come back 6 months later or so.

I finally decided to upgrade my blog to dotClear 2 and a worthwhile upgrade that was, I’m freaking loving it :D I’m even using the default theme and it’s sooooo pretty just big hurray to the theme designer.

A lot of things have happend since I last blogged (18th July 2006, sheese), I moved, changed jobs, pulled away from PEAR, pulled back into PEAR etc etc etc.

I’ll make couple of separated posts about various issues I’d like to share with everyone :P

Continue reading

Tags:
July 18, 2006

The Zend devzone blog

After having accepted the Zend devzone blog to Planet-PHP without checking how often per day they post nor rememering it then I got complaints that it’s polluting the Planet-PHP feed, granted people could filter it out and what not but I thought that to be too much hazzle so I decided to remove it, just subscribe to the devzones feeds: (RSS) (Atom)

My apologizes to everyone! :-/

One thing I must add tho, the devzones blog seems a bit useless, it’s mostly only 2 or 3 line entries pointing to other external entries which are more often than not also on Planet-PHP tho it does have some longer articles, there, had to get this thought of my cheast :-)

Cal, maybe if you put tags on the longer and … more interesting posts so that we can use that tag to subscribe Planet-PHP to that :P

Tags: , ,
July 17, 2006

News about Planet-PHP

Been a while since I blogged but here I go, I’m now one of the people that handles the blog accept/reject on Planet-PHP and as is Pierre in addition to Toby and Christian S. (if there are more people then excuse me for my ignorance)

One exciting thing has already happened to Planet-PHP since I joined, Christian Stocker added a new way to submit your blog to Planet-PHP instead of the old and somewhat crude way of sending email (they often get lost, forgotten, etc.), behold the new way of life: http://planet-php.org/submit/ a very simple form where you provide essential information so that we can decide if you shall prevail and be amongst the star or fall hard on your head ;-)

We have already gotten 2 submissions via the new form so people seem to be picking up on it but if you’ve emailed us before and haven’t been added then please submit via the new form and you’ll be added for sure (well if your blog is PHP related, just read the FAQ on the site if you are in doubt :P) and also if you know of any good ones then I’d say that you should also submit those since we’re always interested in getting in good material.

So well, submit away! :-) And kudos to Christian to making this even easier for everyone.

Tags: ,
December 12, 2005

People and feature requests.

Update: Apperently some people lost their sense of humor along the way, so to make it clear, this was meant to be more of a joke post than serious! :-) Just like the bloody last sentence says (in a way).

Who hasn’t gotten a utterly stupid feature request before ? Or even a request that you constantly say no to. This is just bound to happen if you help maintain a open source project (probably even more so in a commerical entity)

Well I have found the perfect answer to such requests with the courtesy of the yum wiki

No. Just no. If you don’t like it, go have a conversation with yourself about it. Alone. At home. In your closet.

I’ve even been pondering about adding this as an answering option in pear/pecl/php bug system, I can just see Jani doing the happy dance if this kind of thing would ever be added. ;-)

A slightly modified version of this quote could even be used on reports like this one: http://bugs.php.net/35625

All jokes aside, I had a good laugh when I read this quote and the bug report :-)

Tags: ,
November 29, 2005

Clash of the titans

As many have noticed 5.1.0 had some issue when it was released, like for starters it introduced a empty date class by default which effectively killed scripts that used PEAR::Date (I admit, it’s rather silly to give a pear package such generic name) or any other scripts that uses a class called Date, which I imagine are quite a lot since it’s seems rather convenient to pick the shortest name possible and many people look passed the fact that they need to prefix their classes.

Continue reading

Tags: , ,
Design a site like this with WordPress.com
Get started