<?xml version="1.0" encoding="UTF-8"?><rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	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/"
		>
<channel>
	<title>Comments on: What&#8217;s wrong with WordPress?</title>
	<atom:link href="http://www.noroute.de/blog/2009/09/whats-wrong-with-wordpress/feed/" rel="self" type="application/rss+xml" />
	<link>http://www.noroute.de/blog/2009/09/whats-wrong-with-wordpress/</link>
	<description>stating the obvious</description>
	<lastBuildDate>Sun, 15 Aug 2010 17:39:48 +0000</lastBuildDate>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.0.1</generator>
	<item>
		<title>By: Florian Thiel</title>
		<link>http://www.noroute.de/blog/2009/09/whats-wrong-with-wordpress/comment-page-1/#comment-9696</link>
		<dc:creator>Florian Thiel</dc:creator>
		<pubDate>Mon, 07 Sep 2009 14:43:13 +0000</pubDate>
		<guid isPermaLink="false">http://www.noroute.de/blog/?p=244#comment-9696</guid>
		<description>I&#039;m not talking about a programming language level type system. Web applications (or applications in general) need a &quot;rich type&quot; system that defines what (e.g.) constitutes a date (most applications can do that) or a name (most can&#039;t and fall back to a simple string). If you really have rich types you can delegate most checks and sanitations to the framework and you won&#039;t have to care for that manually.

Rich types is something that&#039;s generally not present in languages (be it non-strict, dynamically types ones or not) but is added in frameworks (Django&#039;s models go in that general direction.

The legacy code base seems to be another problem, that, combined with the unwillingness to make much-needed architectural changes (changes that break the &quot;plugin API&quot; (in fact, there is no plugin API) are a no-no), becomes a major hindrance for long-term robustness of WordPress.</description>
		<content:encoded><![CDATA[<p>I&#8217;m not talking about a programming language level type system. Web applications (or applications in general) need a &#8220;rich type&#8221; system that defines what (e.g.) constitutes a date (most applications can do that) or a name (most can&#8217;t and fall back to a simple string). If you really have rich types you can delegate most checks and sanitations to the framework and you won&#8217;t have to care for that manually.</p>
<p>Rich types is something that&#8217;s generally not present in languages (be it non-strict, dynamically types ones or not) but is added in frameworks (Django&#8217;s models go in that general direction.</p>
<p>The legacy code base seems to be another problem, that, combined with the unwillingness to make much-needed architectural changes (changes that break the &#8220;plugin API&#8221; (in fact, there is no plugin API) are a no-no), becomes a major hindrance for long-term robustness of WordPress.</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Konrad</title>
		<link>http://www.noroute.de/blog/2009/09/whats-wrong-with-wordpress/comment-page-1/#comment-9695</link>
		<dc:creator>Konrad</dc:creator>
		<pubDate>Mon, 07 Sep 2009 13:13:33 +0000</pubDate>
		<guid isPermaLink="false">http://www.noroute.de/blog/?p=244#comment-9695</guid>
		<description>“WordPress lacks important means for consistent type-checking“ – that’s the problem with all dynamic languages that do not provide strict type checking, be it PHP, Python, Ruby or any of these fancy dynamic languages. All good, dependable architectures written in these languages begin to re-implement a strict type checking manually. In my eyes, this really negates all the advantages of an overly dynamic type system.

WordPress has the additional problem of being a project with a huge legacy code base. A complete rewrite might be the only long-term solution to all of its problems.</description>
		<content:encoded><![CDATA[<p>“WordPress lacks important means for consistent type-checking“ – that’s the problem with all dynamic languages that do not provide strict type checking, be it PHP, Python, Ruby or any of these fancy dynamic languages. All good, dependable architectures written in these languages begin to re-implement a strict type checking manually. In my eyes, this really negates all the advantages of an overly dynamic type system.</p>
<p>WordPress has the additional problem of being a project with a huge legacy code base. A complete rewrite might be the only long-term solution to all of its problems.</p>
]]></content:encoded>
	</item>
</channel>
</rss>
