<?xml version="1.0"?>
<?xml-stylesheet 
 href="http://www.w3.org/2000/08/w3c-synd/style.css" type="text/css"
?>
<rss version="0.91"><channel><title>Planet PHP</title><link>http://planet-php.net</link><description>People blogging about PHP</description><language>en</language><item><title>iX international edition available</title><link>http://blog.php-tools.de/index.php?/archives/77_iX_international_edition_available.html</link><description><![CDATA[
        <a href="http://blog.php-tools.de/exit.php?url=aHR0cDovL3d3dy5oZWlzZS5kZS8=" title="http://www.heise.de/" onmouseover="window.status='http://www.heise.de/';return true;" onmouseout="window.status='';return true;">Heise</a>, a German publisher that is most famous for its German magazines <a href="http://blog.php-tools.de/exit.php?url=aHR0cDovL3d3dy5oZWlzZS5kZS9jdC8=" title="http://www.heise.de/ct/" onmouseover="window.status='http://www.heise.de/ct/';return true;" onmouseout="window.status='';return true;">c't</a> and <a href="http://blog.php-tools.de/exit.php?url=aHR0cDovL3d3dy5oZWlzZS5kZS9peC8=" title="http://www.heise.de/ix/" onmouseover="window.status='http://www.heise.de/ix/';return true;" onmouseout="window.status='';return true;">iX</a>, as well as a great news feed, decided to start an <a href="http://blog.php-tools.de/exit.php?url=aHR0cDovL3d3dy5oZWlzZS5kZS9peC9lbi8=" title="http://www.heise.de/ix/en/" onmouseover="window.status='http://www.heise.de/ix/en/';return true;" onmouseout="window.status='';return true;">international edition of the iX magazine</a>.<br />
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 <a href="http://blog.php-tools.de/exit.php?url=aHR0cDovL3d3dy5oZWlzZS5kZS9peC9lbi9paTA0MDAucGRm" title="http://www.heise.de/ix/en/ii0400.pdf" onmouseover="window.status='http://www.heise.de/ix/en/ii0400.pdf';return true;" onmouseout="window.status='';return true;">downloaded</a> free of charge.<br />
Topics include SQL, XML schema as well as the influence of a doctype on the browser.<br />
As this issue is free, I recommend reading it, the German version is always worth its money.    ]]></description></item><item><title>PHP World slides</title><link>http://www.schlitt.info/applications/blog/index.php?/archives/270-PHP-World-slides.html</link><description><![CDATA[
<p>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 <a target="_BLANK" href="http://www.schlitt.info/applications/blog/exit.php?url_id=896&amp;entry_id=270" title="http://www.schlitt.info/index.php/content.publications_phpworld2004" onmouseover="window.status='http://www.schlitt.info/index.php/content.publications_phpworld2004';return true;" onmouseout="window.status='';return true;">online</a>.</p>

    ]]></description></item><item><title>Missing the Wood for the Trees: Choosing a Programming Language</title><link>http://phplens.com/phpeverywhere/?q=node/view/126</link><description><![CDATA[<p>
I sympathize with Rick Kitts. He writes in his blog <a href=http://www.artima.com/weblogs/viewpost.jsp?thread=76603>about Java and software development in general</a>:
<blockquote>
<p>
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.
</blockquote>
<p>
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.
<p>
That's why i don't even bother to respond to these anal <a href=http://www.bitstorm.org/edwin/en/php-sucks/>why php sucks</a> posts anymore. They fail to address the real issues when choosing a programming language:
<ul>
<li>Will our programmers be more productive with Language X relative to other languages? 
<li>Will errors be reduced and time to delivery be reduced?
<li>Can I easily find or train competent Language X programmmers?
<li>Will Language X be around and supported for a long time?
<li>Is Language X robust, easy to deploy and cost-effective for our needs?
<li>Does Language X scale in terms of project size and server utilization?
<li>Can Language X connect to my backend servers running something like DB2 or Oracle or SAP?
</ul>
<p>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.
<p>
<img src=http://phplens.com/phpeverywhere/icons/astin.gif>]]></description></item><item><title>Foxylicious - Firefox Finally Groks del.icio.us</title><link>http://shiflett.org/archive/73</link><description><![CDATA[<p>Someone finally wrote a good <a href="http://http://www.mozilla.org/products/firefox/">Firefox</a> extension for <a href="http://del.icio.us">del.icio.us</a>. It's called <a href="http://dietrich.ganx4.com/foxylicious/">Foxylicious</a>. What makes it good? It does exactly what I described in my previous <a href="http://shiflett.org/archive/59">comments about del.icio.us</a>:</p>
<blockquote>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).</blockquote>
<p><a href="http://dietrich.ganx4.com/foxylicious/">This extension</a> 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 <a href="http://shiflett.org/archive/59">mentioned before</a>:</p>
<blockquote>I've looked at <a href="http://delicious.mozdev.org/installation.html">this Firefox extension</a>, 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 <a href="javascript:location.href='http://del.icio.us/shiflett?url='+escape(location.href)+'&title='+escape(document.title)">this bookmarklet</a> already does that (I use the <a href="javascript:q=location.href;p=document.title;void(open('http://del.icio.us/shiflett?noui=yes&jump=close&url='+escape(q)+'&title='+escape(p),'delicious',%20'toolbar=no,width=700,height=250'));">popup version</a>).</blockquote>
<p>Well done, <a href="http://dietrich.ganx4.com/">Dietrich</a>. <a href="http://dietrich.ganx4.com/foxylicious/">Foxylicious</a> is exactly what I needed.</p>]]></description></item><item><title>Transliteration Extension</title><link>http://www.derickrethans.nl/month-2004-10.php?item=200410242344#200410242344</link><description><![CDATA[
			I just released the first version of a 
<a href="/translit.php">transliteration extension</a>

			in 
<a href="http://pecl.php.net/translit">PECL</a>
.
			This extension for examples allows you to transliterate greek text
			into latin characters.
		
			<br /><br />
			<a href="http://www.derickrethans.nl/month-2004-10.php?item=200410242344#200410242344">Read more...</a>
		]]></description></item><item><title>PHPUnit2-2.1.2 Released</title><link>http://www.sebastian-bergmann.de/blog/archives/420-PHPUnit2-2.1.2-Released.html</link><description><![CDATA[
<a href="http://www.sebastian-bergmann.de/blog/exit.php?url_id=5433&amp;entry_id=420" title="http://pear.php.net/package/PHPUnit2/download/2.1.2" onmouseover="window.status='http://pear.php.net/package/PHPUnit2/download/2.1.2';return true;" onmouseout="window.status='';return true;">PHPUnit2-2.1.2</a> adds compatibility with <a href="http://www.sebastian-bergmann.de/blog/exit.php?url_id=5434&amp;entry_id=420" title="http://www.xdebug.org/" onmouseover="window.status='http://www.xdebug.org/';return true;" onmouseout="window.status='';return true;">Xdebug 2.0.0b2</a> and fixes a bug in <tt>PHPUnit2_Framework_Assert::assertContains()</tt> and <tt>PHPUnit2_Framework_Assert::assertNotContains()</tt>.    ]]></description></item><item><title>php unicode support and 5.1</title><link>http://phpvolcano.com/wp/index.php?p=171</link><description><![CDATA[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 ...]]></description></item><item><title>Shame on you Paypal</title><link>http://www.schlossnagle.org/~george/blog/archives/301_Shame_on_you_Paypal.html</link><description><![CDATA[
        There should be no place for this sort of <a href="http://www.washblade.com/print.cfm?content_id=4060">shit</a>.    ]]></description></item><item><title>PDO Design Evolution</title><link>http://www.procata.com/blog/archives/2004/10/23/pdo/</link><description><![CDATA[	<p>Alan Knowles has an interesting post <a href='http://blog.akbkhome.com/archives/55_PDO__Why_it_should_not_be_part_of_core_PHP.html'>on PDO</a>.</p>
	<p>I really don't know much about PDO, i haven't used it yet.  Most of what I know comes from:<br />
<a href='http://netevil.org/node.php?nid=44'>Wez Furlong's first steps with PDO examples</a><br />
<a href='http://www.oracle.com/technology/pub/articles/php_experts/otn_pdo_oracle5.html'>Wez's Oracle PDO Article</a><br />
<a href='http://phplens.com/phpeverywhere/?q=node/view/1'>John Lim's discussion of adodb and PDO</a><br />
<a href='http://www.sitepoint.com/forums/showthread.php?t=171535'>A sitepoint thread on PDO</a><br />
I haven't seen any API type docs yet.  I did download an older version of the PECL code and skim through it.</p>
	<p>Alan has some interesting things to say.  I have to agree with him on using libgda as a back end.  Using a more mature, existing, debugged code base seems very reasonable to me.  Could libgda be used as the PDO back end while retaining the PDO front end API?</p>
	<p>When I first looked at PDO, the parameter binding is one of the things that really jumped out at me.  It reminded me of register globals, a technique that didn't necessarily turn out well and was painful to back out of.  Now that Alan says it, this technique is a bit more reminiscent of C than PHP.  As i understand its an optional way to use PDO.  A way that I would not use.</p>
	<p>Wez <a href='http://blog.akbkhome.com/archives/55_PDO__Why_it_should_not_be_part_of_core_PHP.html#c186'>comments</a>:</p>
	<blockquote><p>
- copying C: I agree that bound parameters can lead to magic code. There are two things to keep in mind: a good coding style (with comments) is the best remedy for code that might be considered magic.
</p></blockquote>
	<p>I have to strongly disagree on the coding style point.  Salting magic code with comments does not make it palatable.  The solution is to remove the magic.</p>
	<p>I am not familiar enough with PDO to understand the iterator argument.  None of the examples I have seen actually use iterators.</p>
	<p>What I would like to see out of a basic OO DB API in PHP is better support for translating the database record into an object.  For example, the fetch(PDO_FETCH_OBJ) method returns an anonymous object.  I would like a way for this method to construct an object of a particular class along with an initialization protocol such as <a href='http://www.php.net/manual/en/function.unserialize.php'>unserialize</a> has with objects.</p>
	<p>I do think that PDO should be a part of core PHP, but perhaps one with a more mature libgda backend and a more evolved PHP front end API, influenced by Alan's feedback and DBDO efforts.</p>
	<p>I have noticed that sometimes the API design in PHP tends to simply wrap underlying 3rd party C libraries, even when that design doesn't make the most sense in PHP.  (for example the PHP wrapping of expat) PDO is a more of an attempt to design a PHP oriented API and then work the 3rd party libraries into the common design.  To me, this is a step forward.  However, the PDO API probably needs to go through a few iterations as Alan suggests before being frozen into core PHP.
</p>
]]></description></item><item><title>Java: How to Program</title><link>http://netevil.org/node.php?nid=141</link><description><![CDATA[<p>I was asked to review <a href="http://www.amazon.com/exec/obidos/ASIN/0131483986/qid=1098542552/sr=2-2/ref=pd_ka_b_2_2/002-5173820-1735208">this book</a> recently (with an eye on how it equates to PHP), and having just gone through it, I'm quite impressed.  It is well written, well structured (taking you from no knowledge and going from there) and teaches you good design principles, without beating you over the head with them.



</p>
<p>Having completed my review, it is apparent that PHP 5 has most of the good parts from java, without bogging you down in syntax.  I view this as a good thing, making it easier for programmers to drift between the two languages more easily.



</p>
<p>If I was asked to recommend a book on java programming, I wouldn't hesitate to recommend this one.  I would even consider recommending it to someone new to programming, because most of what it teaches applies equally well to other languages; it serves as a very useful primer, going into the right amount of detail, to make future employees useful regardless of the language that you're going to use.



</p>
<p>


</p>
]]></description></item></channel></rss>
