Coggeshall.orgGDObjects 0.3 Initial Release (26.10.2004, 04:18 UTC)
By popular demand I've put together the example code I've used throughout some of my recent talks (most recently in my Object Oriented Programming in PHP 5 talk given at php|works) to highlight different features or functionality in PHP 5 / GD. I've released it under my self-dubbed Coggeshall.org License (Which is basically equals BSD) and gave it the very original name GDObjects.

The basic idea behind GDObjects is to provide an object-oriented wrapper library for the now very old (and relatively cumbersome) to use GD extension for PHP which is much easier to use and work with. Since I did write this code originally for the purpose of example, hopefully you'll also learn a thing or two about PHP 5 OO and advanced GD manipulations along the way. There are some neat things about it (such as centered cropping/text watermarking of images), and thanks to the wonders of PHPDocumentor there is even an API documentation for those interested. To me, one of the coolest things about this code is it unifies a lot of very similar things (different image and font formats) into a single easy to use API -- something I thought was sorely missing from the GD extension as it stands.

As with all of my code I release I am more than happy to hear your feedback. Moreover, I'm just tickled with excitement if you find the time to improve on them by submitting patches. (Okay, not quite that excited -- I just hope someone out there finds it useful).
Link
Jeff Moore's BlogStatus of WACT (25.10.2004, 21:33 UTC)

My last WACT post drew a couple questions from Marcus Baker:

Do you have a release date planned for the next version?

Ah, the release date question. We are certainly overdue. Here is where things stand.

The core framework in CVS is in very good shape. We have 3332 passing tests and 5 failing tests. The failing tests are relatively minor. I would like to fix them before release, but don't see it as absolutely necessary.

I feel the biggest obstacle right now is that many of the example programs that we have in WACT are either obsolete, broken or unfinished. They are mostly broken due to the incompatibility of changes within the controller layer from the last version. I would like to see working (and hopefully unit tested) examples for the release. I don't want to make a release with code that errors out.

The current controller architecture in the CVS version of WACT is very different from what is in the previously released version. After writing what is there now, i have modified my thinking on what a controller framework should look like. I've written up some of the theory of this on this Model View Controller page. I've been working on a proof of concept of this, which I think will become the final WACT controller layer.

As such, I am reluctant to go through the examples now and update them to the current controller when I know that I will have update them again. I am also reluctant to expose a brand new API in the release which I already know will go away.

I've decided I want to work on the controllers and not the examples right now. That of course doesn't preclude anyone else who wants to work on the examples from doing so and getting us into releasable condition. Thats just how I want to spend my time right now. If we are going to release with what we have now, which i am not opposed to, someone else will have to step up and push that.

Its possible that my controller ideas won't work out. I've just reviewed the 3.0.0dev version of Mojavi. I have to say I am impressed. I have looked at most of the controller frameworks on this page and i have to say that Mojavi is the only one that i would seriously consider using myself. It has the right combination of support, maturity, and good design. If my experiments with MVC don't pan out, i would seriously consider ditching the current WACT controller layer in favor of Mojavi integration.

So thats where I am at. I would personally like to see more of the controller issues resolved before the release goes out the door. I would like to feel as good about the controller layer of WACT as I do about the rest of it.

I should finish up with a project soon and have more time to devote to WACT.

When will the next WACT release be? I refer you here.

Marcus also asks:

The bit that I've never understood is, what is a DataSpace?

The DataSpace concept has evolved over time. in WACT, DataSource is an interface that allows an object to expose properties though a generic protocol. The DataSpace class is a convenience base class that helps implement this interface. The DataSource interface could be considered equivalent to the properties portion of the Java Beans specification. You could think of any object inheriting from DataSpace or implementing DataSource as a bean in java terms. However, I would probably compare it to the more dynamic Key Value Coding from Objective-C.

Link
a programmer's best friendiX international edition available (25.10.2004, 17:31 UTC)
Heise, a German publisher that is most famous for its German magazines c't and iX, as well as a great news feed, decided to start an international edition of the iX magazine.
iX focusses on software development and programming languages and published some interesting articles on PHP and XML during the last years. The english version will be available as PDF and the first issue can be downloaded free of charge.
Topics include SQL, XML schema as well as the influence of a doctype on the browser.
As this issue is free, I recommend reading it, the German version is always worth its money.
Link
Tobias Schlitt - WeblogPHP World slides (25.10.2004, 16:32 UTC)

A bit late to announce but since thursday last week (i've been offline again until today) the slides of my little PEAR introduction are online.

Link
PHP Everywhere - Thoughts on PHP an ...Missing the Wood for the Trees: Choosing a Programming Language (25.10.2004, 10:44 UTC)

I sympathize with Rick Kitts. He writes in his blog about Java and software development in general:

I think I can safely say that none of the real problems I face have much to do with the fact that I need to do casts, or the fact that I can't express something with less typing or whatever. In fact, none of the problems I face have much at all to do with the language I'm using. No, the problems I have now are the same problems I had 15 years ago. Reducing complexity, increasing robustness, enhancing expressiveness. Stuff like that. I suppose it's possible I'm missing something, but I don't see any language that helps me with those things at the fundamental level I'm looking for.

Developers need to remember that programming is the easy part. The hard parts are getting the user-requirements in the face of users who have only a vague idea of the benefits of the new computer system, or understanding how to interface to complicated backends where over 10 years of hard-coding by maintenance programmers has resulted in spaghetti systems.

That's why i don't even bother to respond to these anal why php sucks posts anymore. They fail to address the real issues when choosing a programming language:

  • Will our programmers be more productive with Language X relative to other languages?
  • Will errors be reduced and time to delivery be reduced?
  • Can I easily find or train competent Language X programmmers?
  • Will Language X be around and supported for a long time?
  • Is Language X robust, easy to deploy and cost-effective for our needs?
  • Does Language X scale in terms of project size and server utilization?
  • Can Language X connect to my backend servers running something like DB2 or Oracle or SAP?

If Java or PHP or Cobol fits the above criteria, then go for it. Arguing about the lack of namespaces or call-by-reference issues is just silly. All languages have problems. The fact that Java is complicated, or PHP is inconsistent, or Cobol is verbose should not be the main consideration.

Link
PHP: Hypertext PreprocessorZend's PHP 5 Coding Contest winners announced (24.10.2004, 22:00 UTC)
Congratulations to Qiang Xue, whose application 'PRADO' earned high votes both from the public and from the judges' panel! There are 49 other prizewinning applications in Zend's contest gallery - too many to list here. Some of them are ongoing projects, bringing PHP 5 a small armoury of useful open source tools. The top 50 applications will remain on display until the end of this year, giving you the chance to take a leisurely look through the code and see how the new features in PHP 5 should be used.
Link
Chris Shiflett's BlogFoxylicious - Firefox Finally Groks del.icio.us (24.10.2004, 21:47 UTC)

Someone finally wrote a good Firefox extension for del.icio.us. It's called Foxylicious. What makes it good? It does exactly what I described in my previous comments about del.icio.us:

Now, if only there were browser plugins for Firefox and Safari that integrated del.icio.us into the standard bookmark mechanism (with some intelligent caching to minimize traffic).

This extension adds my del.icio.us bookmarks to my standard bookmarks menu in Firefox, organizes them by tags (alphabetizing these would be a nice improvement), and lets me choose when to update them (so that it's not an abusive client). Other extensions just never seemed to grok it, as I mentioned before:

I've looked at this Firefox extension, but I fail to see what it offers that I don't already have. Giving me the ability to post is great and all, but this bookmarklet already does that (I use the popup version).

Well done, Dietrich. Foxylicious is exactly what I needed.

Link
Derick RethansTransliteration Extension (24.10.2004, 21:44 UTC)
I just released the first version of a transliteration extension in PECL . This extension for examples allows you to transliterate greek text into latin characters.

Read more...
Link
sebastian's weblogPHPUnit2-2.1.2 Released (24.10.2004, 20:00 UTC)
PHPUnit2-2.1.2 adds compatibility with Xdebug 2.0.0b2 and fixes a bug in PHPUnit2_Framework_Assert::assertContains() and PHPUnit2_Framework_Assert::assertNotContains().
Link
NuCleuZphp unicode support and 5.1 (24.10.2004, 18:14 UTC)
in a interesting discussion on the 5.1 roadmap Wez maps out some of the plans that will become PHP5.1, one thing that is really interesting is the the following regarding unicode support: ....it would be nice if we had some kind of "String" class (would be nice to use that as the class name...) that used the overloading features of the engine to make it smell like a regular string. It would be aware of, at least, the most common charset encodings (and perhaps be able to load in tables for others at runtime) and have methods to concatentate, split, index by character position (not byte position) etc. etc. and handle differences in character encodings transparently. quote from Wez. Unicode support for strings on a engine-level ...
Link
LinksRSS 0.92   RDF 1.
Atom Feed   100% Popoon
PHP5 powered   PEAR
ButtonsPlanet PHP   Planet PHP
Planet PHP