<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>/dev/null &#187; PHP</title>
	<atom:link href="http://www.nulldevice.de/tag/php/feed/" rel="self" type="application/rss+xml" />
	<link>http://www.nulldevice.de</link>
	<description>Elite is stupid. Back to the roots.</description>
	<lastBuildDate>Thu, 15 Jul 2010 09:39:20 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.0</generator>
		<item>
		<title>It&#8217;s really hard to talk about JavaScript best practices and JMVC</title>
		<link>http://www.nulldevice.de/2010/07/its-really-hard-to-talk-about-javascript-best-practices-and-jmvc/</link>
		<comments>http://www.nulldevice.de/2010/07/its-really-hard-to-talk-about-javascript-best-practices-and-jmvc/#comments</comments>
		<pubDate>Thu, 15 Jul 2010 09:36:32 +0000</pubDate>
		<dc:creator>Michael</dc:creator>
				<category><![CDATA[Uncategorized]]></category>
		<category><![CDATA[Best Practices]]></category>
		<category><![CDATA[JavaScript]]></category>
		<category><![CDATA[JavaScriptMVC]]></category>
		<category><![CDATA[OpenAjax]]></category>
		<category><![CDATA[PHP]]></category>

		<guid isPermaLink="false">http://www.nulldevice.de/?p=1136</guid>
		<description><![CDATA[I was totally enthusiastic, when I first learned about JavaScriptMVC &#8211; because it brings all the best practices you are accustomed to into the JavaScript world. That means the MVC architecture, Object-oriented development with simulated inheritance, EJS templates, easy testing, OpenAjax support, powerful event delegation and so on. However, I often have a hard time to [...]]]></description>
			<content:encoded><![CDATA[<p>I was totally enthusiastic, when I first learned about JavaScriptMVC &#8211; because it brings all the best practices you are accustomed to into the JavaScript world. That means the MVC architecture, Object-oriented development with simulated inheritance, EJS templates, easy testing, OpenAjax support, powerful event delegation and so on.</p>
<p>However, I often have a hard time to convince other developers about those advantages. I guess <strong>testing </strong>is the easiest one, because no developer would dare to argue against testing, even though many developers don&#8217;t do it or don&#8217;t do it right. Questions and discussions about testing seem to be very rare. Developers just discuss it with their non-technical managers, if they want to get around that &#8220;effort&#8221;.</p>
<p>But it already starts with <strong>OpenAjax</strong>. I rarely find a developer that knows what it is and what it is good for and why you might need an event hub in JS at all. Zend, W3C, IBM and Google are some of the more well-known members of the OpenAjax Alliance. If you hear about it the first time now, take the time to have a look.</p>
<p>Just yesterday I was talking to an obviously experienced JS dev (who was working for a well known mobile phone company), that was browsing through the JavaScriptMVC documentation and stopped in the chapter about <strong>EJS templates</strong>: &#8220;Yeah, I saw something similar in our own project and removed it. It is confusing, if the JS code and the HTML are in separate files, because you don&#8217;t see the code together in one file. HTML should only be edited by developers who know the JS code very well&#8221;. Not sure what to say about that. Why not give up separation of concerns at all and put everything in one big file? Then you see the big picture on your hopefully big screen. Also you always need to check the full version control system diff after each change because the file name alone doesn&#8217;t tell you what was changed and you probably have more of those exciting conflicts to resolve. And: You REALLY need to be an expert to understand what is going on. The company can never fire you, because no one else would ever understand that kind of code. Sorry for being sarcastic, but that kind of attitude can seriously damage the health of innocent other people who need to clean up the mess in 20h work days afterwards, to meet the deadline of the project. Or the project is so small that it doesn&#8217;t matter. Or the company you work for can afford to pay a lot of developers who have the time to maintain a JS app without templates.</p>
<p>Convincing people about the usefulness of <strong>controllers </strong>is not easy too. Either you start showing an OpenAjax subscribe action &#8211; then the developer most likely won&#8217;t understand what that is good for (see above). Or you talk about <strong>event delegation</strong>, then the developer will point to jQuery&#8217;s live() method, which does event delegation too. In fact, JavaScriptMVC&#8217;s event delegation used to be one of the strong points and I admit that I am not totally up to date with the whole <a href="http://groups.google.com/group/jquery-dev/browse_thread/thread/e3bb36f8a9dae2b5/7e3bc980cd327a74">discussion</a> right now, because I was busy with a PHP project during the last 6 months. I know Justin Meyer is/was working on the controller code so that it makes more use of jQuery, he contributes code to jQuery and he is in contact with John Resig. Anyways, the whole point about controllers again is <a href="http://en.wikipedia.org/wiki/Separation_of_concerns">separation of concerns</a> and not so much the technical details behind the scenes. The JavaScript world is moving very fast and implementation details change a lot, but separation of concerns is not really something that you can look at as something you probably don&#8217;t need. The JS world sometimes feels like the PHP world about 10 years ago.</p>
<p>Ok, after getting rid of those thoughts, I will return to work now. The next 2 weeks will be quite relaxed with very little work. So maybe, I can read through the new JavaScriptMVC code and update my knowledge. It really feels uncomfortable not the be able to answer questions in detail. Also I start confusing PHP and JS syntax *lol*</p>
<p>See also: <a href="http://jupiterjs.com/news/talkin-javascriptmvc-is-hard">http://jupiterjs.com/news/talkin-javascriptmvc-is-hard</a></p>
]]></content:encoded>
			<wfw:commentRss>http://www.nulldevice.de/2010/07/its-really-hard-to-talk-about-javascript-best-practices-and-jmvc/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>Ihr habt das Scrum falsch gemacht!</title>
		<link>http://www.nulldevice.de/2010/05/ihr-habt-das-scrum-falsch-gemacht/</link>
		<comments>http://www.nulldevice.de/2010/05/ihr-habt-das-scrum-falsch-gemacht/#comments</comments>
		<pubDate>Mon, 03 May 2010 12:11:46 +0000</pubDate>
		<dc:creator>Michael</dc:creator>
				<category><![CDATA[Uncategorized]]></category>
		<category><![CDATA[PHP]]></category>

		<guid isPermaLink="false">http://www.nulldevice.de/?p=1095</guid>
		<description><![CDATA[Das PHP BarCamp in Salzburg dieses Wochenende war super. Herzlichen Dank an Evelyne Selak, die scheinbar die Organisation zum Großteil auf sich gezogen hat. Ich könnte sowas nicht leisten und hätte Angst, dass Hotel &#38; Sponsoren absagen und niemand kommt. Nett fand ich mal wieder Sebastian Bergmanns Vorstellungen zu testbarer Software zu hören. Im Wesentlichen [...]]]></description>
			<content:encoded><![CDATA[<p>Das <strong>PHP BarCamp</strong> in <strong>Salzburg </strong>dieses Wochenende war super. Herzlichen Dank  an Evelyne Selak, die scheinbar die Organisation zum Großteil auf sich gezogen hat. Ich könnte sowas nicht leisten und hätte Angst, dass Hotel &amp; Sponsoren absagen und niemand kommt.</p>
<p>Nett fand ich mal wieder <strong>Sebastian Bergmann</strong>s Vorstellungen zu testbarer Software zu hören. Im Wesentlichen basierte seine Argumentation in letzter Konsequenz auch auf „<em>man will ja dieses und darum muss man jenes so und so machen</em>“. Finde ich nicht falsch und für mich gut verständlich. Nur: Wenn man das so einem normalen Entwickler erzählt, schaut dieser nur befremdlich und sagt dann, dass es anders doch auch geht und viel einfacher ist.</p>
<p>In der Praxis ist es so, dass man schon vor einer großen Herausforderung steht,  wenn man Entwickler nur dazu bringen muss, nicht allen Code in eine Klasse zu schreiben. Von „<em>Separation of Concerns</em>“  haben gefühlte 30% der Entwickler schon was gehört. In Büchern wie „<strong>PHP Quick and Dirty</strong>“ wird es als tolle Idee angesehen, einen PHP-Interpreter herauszubringen der deutsche Keywords versteht, weil man Entwicklern nicht zumuten kann, Englisch zu lernen oder ein Wörterbuch zu verwenden. Alles Zeitverschwendung. In einem anderen Buch zu objektorientiertem PHP wird auf endlosen Seiten auf die Implementierung des Countable-Interfaces aus der SPL eingegangen um dann zum Fazit zu kommen: „<strong>Ohne Countable geht es nicht</strong>“. Damn, ich habe das in den letzten 10 Jahren nicht gebraucht.</p>
<p>Wenn man auf so ein BarCamp geht, entsteht der Eindruck, alle Anwesenden würden fast immer das richtige Design Pattern verwenden und streng nach Test-Driven-Development (TDD) und Extreme-Programming (XP) Grundsätzen arbeiten. Dass das nicht so ist, ist anzunehmen, zumindest hinterlässt meine berufliche Praxis ein schmerzhaft anderes Bild. Insbesondere problematisch finde ich solche in den Raum gestellten Statements, wenn der Source-Code (wie bei fast allen Web Anwendungen) nicht einsehbar ist.  Lieber wird an Open-Source Projekten wie <strong>Zend Framework</strong> und <strong>Magento </strong>kleinteilig herumkritisiert. Bei Magento gibt es keine Tests, im Source sind dumme Fehler zu finden, langsam ist es eh und die meisten Zend Framework Klassen seien auch nur schnell zusammengehackt worden. Leider sind die meisten Closed-Source Anwendungen noch sehr viel schlimmer!</p>
<p>Um diesem Problem zu begegnen wird von verschiedener Seite „<strong>Scrum</strong>“ als Lösung propagiert. Insbesondere wird in dem Zusammenhang die niedrige Fehlerrate und der hohe Grad an Selbstorganisation, die durch Vertrauen und Eitelkeit ermöglicht wird, hochgehalten. Im Nebensatz werden dann noch schnell XP und TDD erwähnt, und schnell ist klar, dass es sich hier um ein Rezept für erfolgreiche Projekte handelt.</p>
<p>Zunächst einmal sollte man TDD, XP und das eigentliche Scrum-Projekt-Management auseinander halten. Das Tests die Qualität erhöhen, hat zunächst nichts mit agilem Projekt-Management zu tun. Häufig wird das in einen Topf geworfen, und dann heißt es pauschal, Scrum würde die Qualität erhöhen. <strong>Agiles Projekt-Management soll flexibel auf geänderte Anforderungen reagieren</strong> und daher in kurzen Iterationen arbeiten. Dabei sind Tests nicht nur hilfreich, sondern wegen der laufenden Refactorings dringend notwendig – deswegen wird beides zu Recht zusammen genannt. Nur Vertrauen alleine schafft noch lange keine guten Tests, selbst wenn ein Team tatsächlich schafft welche zu schreiben, was IMO auch eine Seltenheit ist. Ich kenne es auch so herum, dass die Entwickler vor lauter Eitelkeit in Panik verfallen und gezielt schlampig arbeiten, um am Iterationsende ein Stück schlechten Code mit schlechten Tests vorweisen zu können. Traut sich dann wirklich immer jemand die Wahrheit auszusprechen, die Arbeit von ein oder zwei Wochen zu verwerfen und neu anzufangen? Eventuell sogar den Mitarbeiter zu kündigen, obwohl seine Familie das Geld dringend benötigt, weil gerade Nachwuchs gekommen ist? Das ist doch so realistisch wie die freie Marktwirtschaft.</p>
<p>Formale Methoden verfolgen das gleiche Ziel der Fehlerfreiheit, werden jedoch oft gar nicht erwähnt oder auch nur in Erwägung gezogen. Weiter sollte es klar sein, dass es Entwickler gibt, die sich selbst organisieren können und andere, die mehr Unterstützung benötigen und nicht die Erfahrung haben um an allem arbeiten zu können. Man hat oft kein Team, das nur aus Senior Entwicklern besteht und selbst diese unterscheiden sich untereinander. <strong>Am Ende des Tages kommt es einzig und allein auf die Kompetenz der Projekt-Beteiligten auf allen Ebenen an und nicht so sehr darauf, welche trendige Management-Methode man angewendet hat. </strong>Siehe dazu auch <a title="IEEE Software, March/April 2000" href="http://www.stevemcconnell.com/ieeesoftware/eic10.htm">Cargo Cult Software Engineering</a>. Statt das anzuerkennen, wird gegenüber Scrum-Kritikern polemisch das Bild vom autoritären Chef gezeichnet, der boshaft Befehle verteilt, so dass dann natürlich nur die offensichtlich bessere Option der magischen Selbst-Organisation bleibt. Von eiserner Disziplin will niemand gerne reden, das wäre am Ende ja noch anstrengend und würde mit alternativen oder hybriden Ansätzen, die nicht der reinen Scrum-Lehre entsprechen, möglicherweise genauso gut funktionieren.</p>
<blockquote><p>„Most teams purporting to be doing agile software development are not applying the level of technical rigor necessary to succeed at it. Most “agile” teams have actually only adopted Scrum’s project-management practices and have failed to effectively adopt “the hard disciplines” like test-driven development, refactoring, pair programming, simple design, and continuous integration.” <em><a title="September 2009 (vol. 42 no. 9)" href="http://www.computer.org/portal/web/csdl/doi/10.1109/MC.2009.283">Jean-Raymond Abrial, Faultless systems: Yes we can!, IEEE Computer 9/2009</a></em></p></blockquote>
<p>Niemand ist ein Gegner von Vertrauen, Selbstorganisation, Selbstmotivation und Agilität. Soweit ich sehe funktioniert agiles Vorgehen gut in kleinen Teams mit sehr erfahrenen Entwicklern oder wenn die grundsätzliche Architektur zentral vorgegeben ist  und nur noch konkrete Details von den einzelnen Entwicklern mit Hilfe eines bereits fertigen Frameworks implementiert werden. Zudem muss man gnadenlos konsequent sein, was je nach Team viel Kraft und Zeit kosten kann bis alles rund läuft. Was nicht geht, ist sich vorne hin zu stellen und zu erzählen, wie toll und einfach alles ist (&#8220;klar gibt es hin und wieder Probleme, aber dann redet man halt&#8221;). Diejenigen bei denen es wie zu erwarten nicht gut ausgeht, haben es dann einfach falsch gemacht. Solche Totschlag-Argumente erinnern einen an religiöse Gemeinschaften.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.nulldevice.de/2010/05/ihr-habt-das-scrum-falsch-gemacht/feed/</wfw:commentRss>
		<slash:comments>2</slash:comments>
		</item>
		<item>
		<title>Microsoft the PHP company</title>
		<link>http://www.nulldevice.de/2008/10/microsoft-the-php-company/</link>
		<comments>http://www.nulldevice.de/2008/10/microsoft-the-php-company/#comments</comments>
		<pubDate>Mon, 27 Oct 2008 10:29:27 +0000</pubDate>
		<dc:creator>Michael</dc:creator>
				<category><![CDATA[Uncategorized]]></category>
		<category><![CDATA[Microsoft]]></category>
		<category><![CDATA[PHP]]></category>

		<guid isPermaLink="false">http://www.nulldevice.de/2008/10/microsoft-the-php-company/</guid>
		<description><![CDATA[Entwickler sollen PHP-Unterstützung unter Windows verbessern Microsoft hat in Unterschleißheim ein &#8220;Open Source Interop Technology Center&#8221; eröffnet. Microsoft will hier an der besseren Unterstützung verschiedener Open-Source-Software unter Windows arbeiten. Den Anfang macht PHP. http://www.golem.de/0810/63176.html]]></description>
			<content:encoded><![CDATA[<h4 class="artikelsubhead">Entwickler sollen PHP-Unterstützung unter Windows verbessern<!--/content--></h4>
<p class="teaser"><!--content-->Microsoft hat in Unterschleißheim ein &#8220;Open Source Interop Technology Center&#8221; eröffnet. Microsoft will hier an der besseren Unterstützung verschiedener Open-Source-Software unter Windows arbeiten. Den Anfang macht PHP.</p>
<p class="teaser"><a href="http://www.golem.de/0810/63176.html">http://www.golem.de/0810/63176.html</a></p>
]]></content:encoded>
			<wfw:commentRss>http://www.nulldevice.de/2008/10/microsoft-the-php-company/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>ZendCon: Best Practices</title>
		<link>http://www.nulldevice.de/2008/09/zendcon-best-practices/</link>
		<comments>http://www.nulldevice.de/2008/09/zendcon-best-practices/#comments</comments>
		<pubDate>Mon, 15 Sep 2008 17:19:43 +0000</pubDate>
		<dc:creator>Michael</dc:creator>
				<category><![CDATA[Conferences]]></category>
		<category><![CDATA[PHP]]></category>
		<category><![CDATA[Zend]]></category>
		<category><![CDATA[Best Practices]]></category>
		<category><![CDATA[Golem]]></category>
		<category><![CDATA[ZendCon2008]]></category>

		<guid isPermaLink="false">http://www.nulldevice.de/?p=882</guid>
		<description><![CDATA[I found three useful ideas in the PHP Developer Best Practices tutorial by Matthew Weier O&#8217;Phinney (Zend Technologies, Ltd.), Mike Naberezny (Maintainable Software): Add something like PHP_CodeSniffer to pre-commit in Subversion to reject code that doesn&#8217;t follow standards Run tests in a Subversion post-commit script Try to switch to git, because you can also do [...]]]></description>
			<content:encoded><![CDATA[<p>I found three useful ideas in the <span class="summary"><a class="url uid" href="http://www.zendcon.com/ZendCon08/public/schedule/detail/95">PHP Developer Best Practices</a></span> tutorial by<span class="description"> Matthew Weier O&#8217;Phinney (Zend Technologies, Ltd.), Mike Naberezny (Maintainable Software):</span></p>
<ul>
<li>Add something like PHP_CodeSniffer to pre-commit in Subversion to reject code that doesn&#8217;t follow standards</li>
<li>Run tests in a Subversion post-commit script</li>
<li>Try to switch to git, because you can also do commits when offline</li>
</ul>
<p>Sadly, there were also less good ideas like</p>
<ul>
<li>Prefix private/protected class methods and properties with an underscore (makes refactoring very difficult; instead you should start with all properties being protected anyway and only make properties public, that need to be public)</li>
<li>Limit line length to 85 chars (120 chars are ok &#8211; nobody uses a 80 char text console for coding anymore &#8211; wide screens are standard, even for developers)</li>
<li>Use PHP_CodeSniffer (I like ZendCodeAnalyzer)</li>
</ul>
<p>Look at this, if you wanna see bad practices:</p>
<p><a href="http://www.nulldevice.de/wp-content/uploads/2008/09/bad-practices.png"><img class="alignnone size-medium wp-image-883" title="Golem.de: PHP Bad Practices" src="http://www.nulldevice.de/wp-content/uploads/2008/09/bad-practices-500x319.png" alt="" width="500" height="319" /></a></p>
]]></content:encoded>
			<wfw:commentRss>http://www.nulldevice.de/2008/09/zendcon-best-practices/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Simple is hard</title>
		<link>http://www.nulldevice.de/2008/09/simple-is-hard/</link>
		<comments>http://www.nulldevice.de/2008/09/simple-is-hard/#comments</comments>
		<pubDate>Thu, 04 Sep 2008 19:31:21 +0000</pubDate>
		<dc:creator>Michael</dc:creator>
				<category><![CDATA[PHP]]></category>
		<category><![CDATA[FrOSCon]]></category>
		<category><![CDATA[Rasmus Lerdorf]]></category>

		<guid isPermaLink="false">http://www.nulldevice.de/?p=879</guid>
		<description><![CDATA[Check out these slides by Rasmus Lerdorf presented at FrOSCon 2008: http://talks.php.net/show/froscon08 Yes, PHP frameworks do suck in terms of performance. CakePHP is the slowest while Zend Framework seems to be the most complex, in terms of include dependencies.]]></description>
			<content:encoded><![CDATA[<p>Check out these slides by Rasmus Lerdorf presented at FrOSCon 2008:</p>
<p><a href="http://talks.php.net/show/froscon08">http://talks.php.net/show/froscon08</a></p>
<p>Yes, PHP frameworks do suck in terms of performance. CakePHP is the slowest while Zend Framework seems to be the most complex, in terms of include dependencies.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.nulldevice.de/2008/09/simple-is-hard/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>Is PHP the future of Microsoft?</title>
		<link>http://www.nulldevice.de/2008/08/is-php-the-future-of-microsoft/</link>
		<comments>http://www.nulldevice.de/2008/08/is-php-the-future-of-microsoft/#comments</comments>
		<pubDate>Fri, 29 Aug 2008 10:12:46 +0000</pubDate>
		<dc:creator>Michael</dc:creator>
				<category><![CDATA[Facebook]]></category>
		<category><![CDATA[Microsoft]]></category>
		<category><![CDATA[PHP]]></category>
		<category><![CDATA[Yahoo]]></category>

		<guid isPermaLink="false">http://www.nulldevice.de/?p=829</guid>
		<description><![CDATA[It&#8217;s not that MS already made an official statement, but from what I read in the news, Microsoft not only started supporting PHP on Windows/IIS. Much more important is, that they are buying companies that use PHP (they could not close some deals yet, but at least they try to): Yahoo! Inc. Ciao.com Facebook The [...]]]></description>
			<content:encoded><![CDATA[<p><span class="defaultfont">It&#8217;s not that MS already made an official statement, but from what I read in the news, Microsoft not only started <a href="http://www.iis.net/php">supporting PHP on Windows/IIS</a>. Much more important is, that they are buying companies that use PHP (they could not close some deals yet, but at least they try to):</span></p>
<ul>
<li><a href="http://developer.yahoo.com/php/">Yahoo! Inc.</a></li>
<li><a href="http://www.ciao-group.com/">Ciao.com</a></li>
<li><a href="http://developers.facebook.com/">Facebook</a></li>
</ul>
<p>The next logical step is, that Microsoft runs PHP applications and employs a lot of PHP developers. I really don&#8217;t think, they will port all those apps to their own technologies like .net, C# or Visual Basic. So, be prepared. You will soon be able to start a career at Microsoft as PHP developer.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.nulldevice.de/2008/08/is-php-the-future-of-microsoft/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Memory wasting Zend_Mail</title>
		<link>http://www.nulldevice.de/2008/08/memory-wasting-zend_mail/</link>
		<comments>http://www.nulldevice.de/2008/08/memory-wasting-zend_mail/#comments</comments>
		<pubDate>Tue, 19 Aug 2008 00:54:51 +0000</pubDate>
		<dc:creator>Michael</dc:creator>
				<category><![CDATA[Fun]]></category>
		<category><![CDATA[Zend Framework]]></category>
		<category><![CDATA[Bug]]></category>
		<category><![CDATA[PHP]]></category>

		<guid isPermaLink="false">http://www.nulldevice.de/?p=813</guid>
		<description><![CDATA[I just wrote a small script to manage my mails&#8230; turns out that Zend_Mail uses some special trick that causes a fatal error: Reading 3274 messages&#8230; Fatal error: Out of memory (allocated 11534336) (tried to allocate 18446744073709551615 bytes) in /usr/share/php/libzend-framework-php/Zend/Mail/Storage/Mbox.php on line 198 That&#8217;s around 17179869183 TB of memory&#8230; to read 3274 mails&#8230; makes 5247363 [...]]]></description>
			<content:encoded><![CDATA[<p>I just wrote a small script to manage my mails&#8230; turns out that Zend_Mail uses some special trick that causes a fatal error:</p>
<blockquote><p>Reading 3274 messages&#8230;</p>
<p>Fatal error: Out of memory (allocated 11534336) (tried to allocate 18446744073709551615 bytes) in /usr/share/php/libzend-framework-php/Zend/Mail/Storage/Mbox.php on line 198</p></blockquote>
<p>That&#8217;s around 17179869183 TB of memory&#8230; to read 3274 mails&#8230; makes 5247363 TB per message&#8230; not bad <img src='http://www.nulldevice.de/wp-includes/images/smilies/icon_wink.gif' alt=';)' class='wp-smiley' /> </p>
]]></content:encoded>
			<wfw:commentRss>http://www.nulldevice.de/2008/08/memory-wasting-zend_mail/feed/</wfw:commentRss>
		<slash:comments>2</slash:comments>
		</item>
	</channel>
</rss>
