<?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>dotvoid.com &#187; Web</title>
	<atom:link href="http://www.dotvoid.com/tag/web/feed/" rel="self" type="application/rss+xml" />
	<link>http://www.dotvoid.com</link>
	<description>Experiments and thoughts in PHP and javascript</description>
	<lastBuildDate>Tue, 25 May 2010 21:53:20 +0000</lastBuildDate>
	<generator>http://wordpress.org/?v=2.9.2</generator>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
			<item>
		<title>Site architecture based on Zend Framework</title>
		<link>http://www.dotvoid.com/2009/10/site-architecture-based-on-zend-framework/</link>
		<comments>http://www.dotvoid.com/2009/10/site-architecture-based-on-zend-framework/#comments</comments>
		<pubDate>Fri, 09 Oct 2009 11:48:54 +0000</pubDate>
		<dc:creator>Danne</dc:creator>
				<category><![CDATA[PHP]]></category>
		<category><![CDATA[css]]></category>
		<category><![CDATA[Javascript]]></category>
		<category><![CDATA[jquery]]></category>
		<category><![CDATA[Web]]></category>
		<category><![CDATA[zend framework]]></category>

		<guid isPermaLink="false">http://www.dotvoid.com/?p=394</guid>
		<description><![CDATA[After working on the Swedish weather site klart.se for awhile I now work on my own projects again. So I have switched Codeigniter to Zend Framework again.
After a trip to Dublin I finally launched the beginning of a new social tourist Dublin guide. It is exactly the same site as both the Swedish Fuengirola guide [...]]]></description>
			<content:encoded><![CDATA[<p>After working on the Swedish weather site klart.se for awhile I now work on my own projects again. So I have switched Codeigniter to <a href="http://framework.zend.com">Zend Framework</a> again.</p>
<p>After a trip to Dublin I finally launched the beginning of a new <a href="http://www.dublincitymap.com/">social tourist Dublin guide</a>. It is exactly the same site as both the <a href="http://www.fuengirolaguide.com">Swedish Fuengirola guide</a> as well as the <a href="http://www.fuengirolamap.com">English Fuengirola guide</a> I launched after living there for five months. The functionality is somewhat basic as of yet but every now and then I&#8217;ll add something more.</p>
<p>Basing three different sites, even though they are very similar, using two different languages gives me the possibility to try out several parts of Zend Framework. It also requires a good design both in the backend and frontend to keep it maintainable. I thought maybe some people would be interested in a basic overview of the different parts needed to put everything together.</p>
<h2>Backend</h2>
<p>The sites aren&#8217;t really that complicated. On a basic level there is a MySQL database and a database layer using Zend_Db/Zend_Db_Table, there is a Zend Framework MVC architecture using models, controllers, views, layouts with Zend_Layout as well as a few view helpers and some HTML, CSS as well as Javascript. All commonly needed. There is more needed to make it a sitethough.</p>
<p>I want as little configuration per site as possible but I naturally still use Zend_Config_Ini for settings. Zend_Registry is needed to keep the global scope clean and is used to store instantiated objects that need to be available throughtout the website logic.</p>
<p>I have been a bit particular on using ZF as often as possible on these sites. With few exceptions. Thus I also use Zend_Form, Zend_Locale, Zend_Translate, Zend_Cache and more. Zend_Cache is really a no brainer and mainly used to speed up translations. This is extremely easy as Zend_Translate and Zend_Locale both are connected to the cache with one simple method call each. It is not complete but how simple this is to setup is illustrated by the below code.</p>
<pre>$configuration = new Zend_Config_Ini(
    APPLICATION_PATH .'/config/app.ini',
    APPLICATION_ENVIRONMENT
);
$frontendOptions = array(
    'lifetime' =&gt; $config-&gt;cache-&gt;lifetime,
    'automatic_serialization' =&gt; true
);
$backendOptions = array('cache_dir' =&gt; $config-&gt;cache-&gt;dir);
$cache = Zend_Cache::factory(
    'Core',
    'File',
    $frontendOptions,
    $backendOptions
);

$conf_locale = $configuration-&gt;locale;
$locale = new Zend_Locale($conf_locale);
$locale-&gt;setCache($cache);

Zend_Translate::setCache($cache);
$translate = new Zend_Translate(
    'array',
    APPLICATION_PATH .'/config/translation-' . $conf_locale . '.php',
    $conf_locale
);
$translate-&gt;setLocale($conf_locale);</pre>
<p>Zend_Form have had a few problems in many versions of ZF. In my opinion it is also a bit bloated and limiting to be used all the way. (Even though I like the automatic connection to the translation functionality in Zend_Translate and the validation through Zend_Validate) So I have settled for a simpler way where I use Zend_Form fully for validation (with Zend_Validate) and then give the view access to the form through a Zend_Form subclass to be able to print the fields individually. I think this is easier to handle than all the overloading and coding needed to fully make Zend_Form create forms as I want them. Another good thing with the form classes is that they too are locale aware and are translated automatically by connecting them to Zend_Translate through the simple line <em>Zend_Form::setDefaultTranslator($translate);</em>. The sub classed Form utility class looks like below. The generated elements are translated automatically. Very convenient.</p>
<pre>class Custom_Form extends Zend_Form  {
    /**
     * Render a field
     * @param string $name The name of the form element
     */
    public function _e($name) {
        $e = $this-&gt;getElement($name);
        return ($e) ? $e-&gt;render() : "&lt;dt&gt;Error&lt;/dt&gt;&lt;dd&gt;Missing &lt;$name&gt; field element&lt;/dd&gt;";
    }
}</pre>
<p>Another thing needed for these sites are to keep the urls understandable and thus translated into the language used on the site. For this the routes, or paths, are kept in the translation file as well. The translated paths are then registered to the router through the use of Zend_Controller_Router_Route and Zend_Controller_Router_Route_Regex objects.</p>
<pre>$frontController = Zend_Controller_Front::getInstance();
$router = $frontController-&gt;getRouter();
$router-&gt;addRoute(
    'route_review',
    new Zend_Controller_Router_Route(
        $translate-&gt;translate('route_review'),
        array('controller' =&gt; 'review', 'action' =&gt; 'index')
    )
);</pre>
<p>For image manipulation I haven&#8217;t looked further than ImageMagick. After a bit of tweaking you get very good quality when producing different image sizes.</p>
<h2>Search</h2>
<p>Last but not least, on the backend that is, there&#8217;s the search engine. ZF have an implementation of Lucene through Zend_Search_Lucene (derived from the Apache Lucene project). This is the one time I haven&#8217;t gone with ZF as I very much like the <a href="http://www.sphinxsearch.com/">open source Sphinx search engine</a> as it is so easy to integrate with MySQL. So Sphinx get to power the search.</p>
<p>This is convenient for several reasons. MySQL is not a great full text search engine, Sphinx give you better weighted results. The main reason though is the performance. Sphinx is very fast in itself but for a site with heavier traffic it is as simple as moving the search backend to it&#8217;s own machine to get a performance increase.</p>
<h2>Frontend</h2>
<p>On the frontend there is as clean html as possible to make it easy to change the design with only CSS as well as manipulate the client side with JQuery. If it wouldn&#8217;t be for the Google map the site would actually be pretty useful even without no css style at all.</p>
<p>A good practice I learned just recently (remember I&#8217;m mostly a backend developer) is to base all javascript functionality on modules that are instantiated depending on element ids present in the html. This makes it a lot simpler to split the javascript functionality into manageble pieces and also makes it a lot easier to maintain.</p>
<p>There are functionality in the client side javascript used to display error messages and information. This makes it necessary to create one javascript file with translation stirngs for each language. The correct javascript translation file is chosen in the layout (template/view file) depending on the current locale.</p>
<p>The map used is (are there any alternatives) <a href="http://code.google.com/apis/maps/">Google Maps API</a>. I chose to completely initiate the map by scanning the actual data displayed on the page. This is possible through clean html markup and also means that if I choose to list ten reviews on a page instead of five nothing need to be changed at all in the frontend. Only a loop limit on the backend.</p>
<h2>Conclusion</h2>
<p>Well. No conclusion. This was just a very basic walkthrough of most of the different pieces needed to create a fairly simple Zend Framework based website. Mostly it was a walkthrough of the bootstrap&#8230; I still hope it is useful or at least interesting.</p>
<p>I know I find it interesting to read about other sites and the architecture and design behind them.</p>


<div class="shr-bookmarks shr-bookmarks-expand shr-bookmarks-center shr-bookmarks-bg-knowledge">
<ul class="socials">
		<li class="shr-comfeed">
			<a href="http://www.dotvoid.com/2009/10/site-architecture-based-on-zend-framework/feed" rel="nofollow" class="external" title="Subscribe to the comments for this post?">Subscribe to the comments for this post?</a>
		</li>
		<li class="shr-delicious">
			<a href="http://delicious.com/post?url=http://www.dotvoid.com/2009/10/site-architecture-based-on-zend-framework/&amp;title=Site+architecture+based+on+Zend+Framework" rel="nofollow" class="external" title="Share this on del.icio.us">Share this on del.icio.us</a>
		</li>
		<li class="shr-facebook">
			<a href="http://www.facebook.com/share.php?v=4&amp;src=bm&amp;u=http://www.dotvoid.com/2009/10/site-architecture-based-on-zend-framework/&amp;t=Site+architecture+based+on+Zend+Framework" rel="nofollow" class="external" title="Share this on Facebook">Share this on Facebook</a>
		</li>
		<li class="shr-googlebuzz">
			<a href="http://www.google.com/buzz/post?url=http://www.dotvoid.com/2009/10/site-architecture-based-on-zend-framework/&amp;imageurl=" rel="nofollow" class="external" title="Post on Google Buzz">Post on Google Buzz</a>
		</li>
		<li class="shr-linkedin">
			<a href="http://www.linkedin.com/shareArticle?mini=true&amp;url=http://www.dotvoid.com/2009/10/site-architecture-based-on-zend-framework/&amp;title=Site+architecture+based+on+Zend+Framework&amp;summary=After%20working%20on%20the%20Swedish%20weather%20site%20klart.se%20for%20awhile%20I%20now%20work%20on%20my%20own%20projects%20again.%20So%20I%20have%20switched%20Codeigniter%20to%20Zend%20Framework%20again.%0D%0A%0D%0AAfter%20a%20trip%20to%20Dublin%20I%20finally%20launched%20the%20beginning%20of%20a%20new%20social%20tourist%20Dublin%20guide.%20It%20is%20exactly%20the%20same%20site%20as%20both%20the%20Swedish%20&amp;source=dotvoid.com" rel="nofollow" class="external" title="Share this on LinkedIn">Share this on LinkedIn</a>
		</li>
		<li class="shr-plaxo">
			<a href="http://www.plaxo.com/?share_link=http://www.dotvoid.com/2009/10/site-architecture-based-on-zend-framework/" rel="nofollow" class="external" title="Share this on Plaxo">Share this on Plaxo</a>
		</li>
		<li class="shr-stumbleupon">
			<a href="http://www.stumbleupon.com/submit?url=http://www.dotvoid.com/2009/10/site-architecture-based-on-zend-framework/&amp;title=Site+architecture+based+on+Zend+Framework" rel="nofollow" class="external" title="Stumble upon something good? Share it on StumbleUpon">Stumble upon something good? Share it on StumbleUpon</a>
		</li>
		<li class="shr-twitter">
			<a href="http://twitter.com/home?status=Site+architecture+based+on+Zend+Framework+-+http://b2l.me/wtxg5&amp;source=shareaholic" rel="nofollow" class="external" title="Tweet This!">Tweet This!</a>
		</li>
</ul>
<div style="clear:both;"></div>
</div>

]]></content:encoded>
			<wfw:commentRss>http://www.dotvoid.com/2009/10/site-architecture-based-on-zend-framework/feed/</wfw:commentRss>
		<slash:comments>3</slash:comments>
		</item>
		<item>
		<title>The web</title>
		<link>http://www.dotvoid.com/2006/06/the-web/</link>
		<comments>http://www.dotvoid.com/2006/06/the-web/#comments</comments>
		<pubDate>Thu, 29 Jun 2006 08:32:10 +0000</pubDate>
		<dc:creator>Danne</dc:creator>
				<category><![CDATA[Web]]></category>

		<guid isPermaLink="false">http://www.commodi.com/?p=189</guid>
		<description><![CDATA[
I&#8217;ve been busy writing agents for retreiving and parsing data in many different formats from many different sources the last couple of weeks. These agents fetch data for the Swedish city portal (actually almost 50 portals) that we are working on. The data sources are a big mess of free text, HTML, weird XML formats [...]]]></description>
			<content:encoded><![CDATA[<div class="preamble">
<p>I&#8217;ve been busy writing agents for retreiving and parsing data in many different formats from many different sources the last couple of weeks. These agents fetch data for the <a href="http://www.mittcity.se/">Swedish city portal</a> (actually almost 50 portals) that we are working on. The data sources are a big mess of free text, HTML, weird XML formats and CSV. PHP 5 is a wonderful language to work with when creating these agents.</p>
<p>Today I stumbled upon a quote I had written down many years ago from the science fiction book <a href="http://www.amazon.com/exec/obidos/ASIN/0312890230/dotvocomopens-20?creative=0&amp;camp=0&amp;adid=08M09Z8AR73XSSMQ4EDM&amp;link_code=as1">The Childgarden</a> written by Geoff Ryman and published early in 1994. Great book, great writer. The quote doesn&#8217;t really talk about the web as we know it but it felt so right.</p>
<p>&#8220;<span style="font-style: italic;">Below that, there&#8217;s the Web, That&#8217;s the memory. That&#8217;s where everything is stored, and the Web is a real mess. You can get tangled up in it.</span>&#8220;</div>


<div class="shr-bookmarks shr-bookmarks-expand shr-bookmarks-center shr-bookmarks-bg-knowledge">
<ul class="socials">
		<li class="shr-comfeed">
			<a href="http://www.dotvoid.com/2006/06/the-web/feed" rel="nofollow" class="external" title="Subscribe to the comments for this post?">Subscribe to the comments for this post?</a>
		</li>
		<li class="shr-delicious">
			<a href="http://delicious.com/post?url=http://www.dotvoid.com/2006/06/the-web/&amp;title=The+web" rel="nofollow" class="external" title="Share this on del.icio.us">Share this on del.icio.us</a>
		</li>
		<li class="shr-facebook">
			<a href="http://www.facebook.com/share.php?v=4&amp;src=bm&amp;u=http://www.dotvoid.com/2006/06/the-web/&amp;t=The+web" rel="nofollow" class="external" title="Share this on Facebook">Share this on Facebook</a>
		</li>
		<li class="shr-googlebuzz">
			<a href="http://www.google.com/buzz/post?url=http://www.dotvoid.com/2006/06/the-web/&amp;imageurl=" rel="nofollow" class="external" title="Post on Google Buzz">Post on Google Buzz</a>
		</li>
		<li class="shr-linkedin">
			<a href="http://www.linkedin.com/shareArticle?mini=true&amp;url=http://www.dotvoid.com/2006/06/the-web/&amp;title=The+web&amp;summary=%0D%0A%0D%0AI%27ve%20been%20busy%20writing%20agents%20for%20retreiving%20and%20parsing%20data%20in%20many%20different%20formats%20from%20many%20different%20sources%20the%20last%20couple%20of%20weeks.%20These%20agents%20fetch%20data%20for%20the%20Swedish%20city%20portal%20%28actually%20almost%2050%20portals%29%20that%20we%20are%20working%20on.%20The%20data%20sources%20are%20a%20big%20mess%20of%20free%20text%2C%20HTM&amp;source=dotvoid.com" rel="nofollow" class="external" title="Share this on LinkedIn">Share this on LinkedIn</a>
		</li>
		<li class="shr-plaxo">
			<a href="http://www.plaxo.com/?share_link=http://www.dotvoid.com/2006/06/the-web/" rel="nofollow" class="external" title="Share this on Plaxo">Share this on Plaxo</a>
		</li>
		<li class="shr-stumbleupon">
			<a href="http://www.stumbleupon.com/submit?url=http://www.dotvoid.com/2006/06/the-web/&amp;title=The+web" rel="nofollow" class="external" title="Stumble upon something good? Share it on StumbleUpon">Stumble upon something good? Share it on StumbleUpon</a>
		</li>
		<li class="shr-twitter">
			<a href="http://twitter.com/home?status=The+web+-+File: /data/app/webapp/functions.php<br />Line: 66<br />Message: Duplicate entry 'wwd4F' for key 'code'&amp;source=shareaholic" rel="nofollow" class="external" title="Tweet This!">Tweet This!</a>
		</li>
</ul>
<div style="clear:both;"></div>
</div>

]]></content:encoded>
			<wfw:commentRss>http://www.dotvoid.com/2006/06/the-web/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>I hate comment spam</title>
		<link>http://www.dotvoid.com/2006/04/i-hate-comment-spam/</link>
		<comments>http://www.dotvoid.com/2006/04/i-hate-comment-spam/#comments</comments>
		<pubDate>Sat, 22 Apr 2006 08:42:19 +0000</pubDate>
		<dc:creator>Danne</dc:creator>
				<category><![CDATA[Web]]></category>

		<guid isPermaLink="false">http://www.commodi.com/?p=180</guid>
		<description><![CDATA[The winter is finally over. Though it was really nice with a long hard winter, with lots of snow even here in the south of Sweden, eventually one start to long for some sun. The snow melted away a couple of weeks ago but it&#8217;s not until now it&#8217;s really starting to feel like spring. [...]]]></description>
			<content:encoded><![CDATA[<p>The winter is finally over. Though it was really nice with a long hard winter, with lots of snow even here in the south of Sweden, eventually one start to long for some sun. The snow melted away a couple of weeks ago but it&#8217;s not until now it&#8217;s really starting to feel like spring. The sun is up a lot longer and it&#8217;s getting warmer every day. My lawn is filled with snowdrops and other flowers. With spring &#8211; and sun &#8211; comes all that energy one seem to miss during the winter.</p>
<p>So today I decided to start doing something about dotvoid.com. The site is filled with comment spam. I hate it but I haven&#8217;t had the energy to do anything about it. So I cleaned out around 4500 comments with links to various &#8220;resources&#8221;. I still haven&#8217;t done anything about the main problem though &#8211; that it is so easy to spam the site.</p>
<p>I still use <a href="http://www.mesh.se/products.php">my own content management system</a> (CMS) based on PHP and MySQL. It is a great system in many ways but it is not a very good blogging tool.  It wasn&#8217;t my intention in the beginning but dotvoid.com has more or less become a blog. So either I start implementing <a href="http://en.wikipedia.org/wiki/Captcha">CAPTCHA</a>, pingbacks and all that other stuff into Firesite CMS &#8211; or I can start using another system or tool that already has this in place. As I said &#8211; I&#8217;m full of energy and I&#8217;ll investigate my options the following days. I use <a href="http://www.s9y.org/">s9y</a> on another site so maybe I&#8217;ll go for that. Suggestions are welcome. Anyway &#8211; it is time to do something more with dotvoid.com. But first I&#8217;ll have a nice walk into town in the warm sunny weather with my girlfriend and my three year old daughter.</p>


<div class="shr-bookmarks shr-bookmarks-expand shr-bookmarks-center shr-bookmarks-bg-knowledge">
<ul class="socials">
		<li class="shr-comfeed">
			<a href="http://www.dotvoid.com/2006/04/i-hate-comment-spam/feed" rel="nofollow" class="external" title="Subscribe to the comments for this post?">Subscribe to the comments for this post?</a>
		</li>
		<li class="shr-delicious">
			<a href="http://delicious.com/post?url=http://www.dotvoid.com/2006/04/i-hate-comment-spam/&amp;title=I+hate+comment+spam" rel="nofollow" class="external" title="Share this on del.icio.us">Share this on del.icio.us</a>
		</li>
		<li class="shr-facebook">
			<a href="http://www.facebook.com/share.php?v=4&amp;src=bm&amp;u=http://www.dotvoid.com/2006/04/i-hate-comment-spam/&amp;t=I+hate+comment+spam" rel="nofollow" class="external" title="Share this on Facebook">Share this on Facebook</a>
		</li>
		<li class="shr-googlebuzz">
			<a href="http://www.google.com/buzz/post?url=http://www.dotvoid.com/2006/04/i-hate-comment-spam/&amp;imageurl=" rel="nofollow" class="external" title="Post on Google Buzz">Post on Google Buzz</a>
		</li>
		<li class="shr-linkedin">
			<a href="http://www.linkedin.com/shareArticle?mini=true&amp;url=http://www.dotvoid.com/2006/04/i-hate-comment-spam/&amp;title=I+hate+comment+spam&amp;summary=The%20winter%20is%20finally%20over.%20Though%20it%20was%20really%20nice%20with%20a%20long%20hard%20winter%2C%20with%20lots%20of%20snow%20even%20here%20in%20the%20south%20of%20Sweden%2C%20eventually%20one%20start%20to%20long%20for%20some%20sun.%20The%20snow%20melted%20away%20a%20couple%20of%20weeks%20ago%20but%20it%27s%20not%20until%20now%20it%27s%20really%20starting%20to%20feel%20like%20spring.%20The%20sun%20is%20up%20a%20lo&amp;source=dotvoid.com" rel="nofollow" class="external" title="Share this on LinkedIn">Share this on LinkedIn</a>
		</li>
		<li class="shr-plaxo">
			<a href="http://www.plaxo.com/?share_link=http://www.dotvoid.com/2006/04/i-hate-comment-spam/" rel="nofollow" class="external" title="Share this on Plaxo">Share this on Plaxo</a>
		</li>
		<li class="shr-stumbleupon">
			<a href="http://www.stumbleupon.com/submit?url=http://www.dotvoid.com/2006/04/i-hate-comment-spam/&amp;title=I+hate+comment+spam" rel="nofollow" class="external" title="Stumble upon something good? Share it on StumbleUpon">Stumble upon something good? Share it on StumbleUpon</a>
		</li>
		<li class="shr-twitter">
			<a href="http://twitter.com/home?status=I+hate+comment+spam+-+http://b2l.me/wucg3&amp;source=shareaholic" rel="nofollow" class="external" title="Tweet This!">Tweet This!</a>
		</li>
</ul>
<div style="clear:both;"></div>
</div>

]]></content:encoded>
			<wfw:commentRss>http://www.dotvoid.com/2006/04/i-hate-comment-spam/feed/</wfw:commentRss>
		<slash:comments>2</slash:comments>
		</item>
		<item>
		<title>Form design</title>
		<link>http://www.dotvoid.com/2006/01/form-design/</link>
		<comments>http://www.dotvoid.com/2006/01/form-design/#comments</comments>
		<pubDate>Tue, 17 Jan 2006 22:42:27 +0000</pubDate>
		<dc:creator>Danne</dc:creator>
				<category><![CDATA[Web]]></category>

		<guid isPermaLink="false">http://www.commodi.com/?p=168</guid>
		<description><![CDATA[Over at ajaxian.com I stumbled upon a link to Swapnonil Mukherjee&#8217;s blog and an interesting article about right aligning form labels. I seldom (never) do these kinds of tests but it is still good to see that other people actually think hard about these things. Designing good forms and applications is not as simple as [...]]]></description>
			<content:encoded><![CDATA[<p>Over at <a href="http://www.ajaxian.com/">ajaxian.com</a> I stumbled upon a link to Swapnonil Mukherjee&#8217;s blog and an <a href="http://jroller.com/page/microarchitect?entry=why_you_should_right_align">interesting article</a> about right aligning form labels. I seldom (never) do these kinds of tests but it is still good to see that other people actually think hard about these things. Designing good forms and applications is not as simple as making it look good.</p>
<p>I personally prefer right aligned text but I still think left aligned text is better looking. I really like his formulas for the the eye movement over the different form designs. It almost make me wonder if it is a joke.</p>
<p>The formula for the Left Aligned Form<span style="color: #3333ff;"><br />
X*N + ((N-1)*(SQRT of( X^2 + Y^2))</span></p>
<p>The formula for the Right Aligned Form<br />
<span style="color: #3333ff;">(X/2)*N + ((N-1)*(SQRT of( (X/2)^2 + Y^2))</span></p>


<div class="shr-bookmarks shr-bookmarks-expand shr-bookmarks-center shr-bookmarks-bg-knowledge">
<ul class="socials">
		<li class="shr-comfeed">
			<a href="http://www.dotvoid.com/2006/01/form-design/feed" rel="nofollow" class="external" title="Subscribe to the comments for this post?">Subscribe to the comments for this post?</a>
		</li>
		<li class="shr-delicious">
			<a href="http://delicious.com/post?url=http://www.dotvoid.com/2006/01/form-design/&amp;title=Form+design" rel="nofollow" class="external" title="Share this on del.icio.us">Share this on del.icio.us</a>
		</li>
		<li class="shr-facebook">
			<a href="http://www.facebook.com/share.php?v=4&amp;src=bm&amp;u=http://www.dotvoid.com/2006/01/form-design/&amp;t=Form+design" rel="nofollow" class="external" title="Share this on Facebook">Share this on Facebook</a>
		</li>
		<li class="shr-googlebuzz">
			<a href="http://www.google.com/buzz/post?url=http://www.dotvoid.com/2006/01/form-design/&amp;imageurl=" rel="nofollow" class="external" title="Post on Google Buzz">Post on Google Buzz</a>
		</li>
		<li class="shr-linkedin">
			<a href="http://www.linkedin.com/shareArticle?mini=true&amp;url=http://www.dotvoid.com/2006/01/form-design/&amp;title=Form+design&amp;summary=Over%20at%20ajaxian.com%20I%20stumbled%20upon%20a%20link%20to%20Swapnonil%20Mukherjee%27s%20blog%20and%20an%20interesting%20article%20about%20right%20aligning%20form%20labels.%20I%20seldom%20%28never%29%20do%20these%20kinds%20of%20tests%20but%20it%20is%20still%20good%20to%20see%20that%20other%20people%20actually%20think%20hard%20about%20these%20things.%20Designing%20good%20forms%20and%20applications%20i&amp;source=dotvoid.com" rel="nofollow" class="external" title="Share this on LinkedIn">Share this on LinkedIn</a>
		</li>
		<li class="shr-plaxo">
			<a href="http://www.plaxo.com/?share_link=http://www.dotvoid.com/2006/01/form-design/" rel="nofollow" class="external" title="Share this on Plaxo">Share this on Plaxo</a>
		</li>
		<li class="shr-stumbleupon">
			<a href="http://www.stumbleupon.com/submit?url=http://www.dotvoid.com/2006/01/form-design/&amp;title=Form+design" rel="nofollow" class="external" title="Stumble upon something good? Share it on StumbleUpon">Stumble upon something good? Share it on StumbleUpon</a>
		</li>
		<li class="shr-twitter">
			<a href="http://twitter.com/home?status=Form+design+-+http://b2l.me/wwzse&amp;source=shareaholic" rel="nofollow" class="external" title="Tweet This!">Tweet This!</a>
		</li>
</ul>
<div style="clear:both;"></div>
</div>

]]></content:encoded>
			<wfw:commentRss>http://www.dotvoid.com/2006/01/form-design/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Silly web 2.0 application</title>
		<link>http://www.dotvoid.com/2005/11/silly-web-20-application/</link>
		<comments>http://www.dotvoid.com/2005/11/silly-web-20-application/#comments</comments>
		<pubDate>Tue, 22 Nov 2005 16:13:25 +0000</pubDate>
		<dc:creator>Danne</dc:creator>
				<category><![CDATA[Javascript]]></category>
		<category><![CDATA[Web]]></category>
		<category><![CDATA[ajax]]></category>
		<category><![CDATA[wysiwyg]]></category>

		<guid isPermaLink="false">http://www.commodi.com/?p=165</guid>
		<description><![CDATA[Sometimes people climb mountains because it&#8217;s cool. I can understand that.
Now ajax and web 2.0 is cool. So this ajax whois service wants to be web 2.0. In order to be web 2.0 it must be simple and things must be fetched asynchronously. The service is also using the captha technique &#8211; ajaxified. A service [...]]]></description>
			<content:encoded><![CDATA[<p>Sometimes people climb mountains because it&#8217;s cool. I can understand that.</p>
<p>Now ajax and web 2.0 is cool. So this <a href="http://www.ajaxwhois.com/">ajax whois service</a> wants to be web 2.0. In order to be web 2.0 it must be simple and things must be fetched asynchronously. The service is also using the captha technique &#8211; ajaxified. A service as basic as this, with only a search field, should allow the user to click &#8220;search&#8221; or &#8220;go&#8221; or whatever. Oh no. That&#8217;s not cool. Instead you have to wait for the forms to decide that you are finished typing. So stupid. If you are too slow with the captha form it is submitted anyway and then you have to start over again as the input field is cleared.</p>
<p>Just because something can be done doesn&#8217;t necessarily mean it is a good idea.</p>
<p>As a side note my wysiwyg editor, <a href="http://www.mesh.se/products.php">FireEditor</a>, is coming along nicely. It&#8217;ll soon be ready for a first release. As soon as the extension api is stable. It&#8217;ll be copyrighted to my <a href="http://www.mesh.se/">Swedish company Mesh</a> but under a free/gratis license.</p>


<div class="shr-bookmarks shr-bookmarks-expand shr-bookmarks-center shr-bookmarks-bg-knowledge">
<ul class="socials">
		<li class="shr-comfeed">
			<a href="http://www.dotvoid.com/2005/11/silly-web-20-application/feed" rel="nofollow" class="external" title="Subscribe to the comments for this post?">Subscribe to the comments for this post?</a>
		</li>
		<li class="shr-delicious">
			<a href="http://delicious.com/post?url=http://www.dotvoid.com/2005/11/silly-web-20-application/&amp;title=Silly+web+2.0+application" rel="nofollow" class="external" title="Share this on del.icio.us">Share this on del.icio.us</a>
		</li>
		<li class="shr-facebook">
			<a href="http://www.facebook.com/share.php?v=4&amp;src=bm&amp;u=http://www.dotvoid.com/2005/11/silly-web-20-application/&amp;t=Silly+web+2.0+application" rel="nofollow" class="external" title="Share this on Facebook">Share this on Facebook</a>
		</li>
		<li class="shr-googlebuzz">
			<a href="http://www.google.com/buzz/post?url=http://www.dotvoid.com/2005/11/silly-web-20-application/&amp;imageurl=" rel="nofollow" class="external" title="Post on Google Buzz">Post on Google Buzz</a>
		</li>
		<li class="shr-linkedin">
			<a href="http://www.linkedin.com/shareArticle?mini=true&amp;url=http://www.dotvoid.com/2005/11/silly-web-20-application/&amp;title=Silly+web+2.0+application&amp;summary=Sometimes%20people%20climb%20mountains%20because%20it%27s%20cool.%20I%20can%20understand%20that.%0D%0A%0D%0ANow%20ajax%20and%20web%202.0%20is%20cool.%20So%20this%20ajax%20whois%20service%20wants%20to%20be%20web%202.0.%20In%20order%20to%20be%20web%202.0%20it%20must%20be%20simple%20and%20things%20must%20be%20fetched%20asynchronously.%20The%20service%20is%20also%20using%20the%20captha%20technique%20-%20ajaxified.%20&amp;source=dotvoid.com" rel="nofollow" class="external" title="Share this on LinkedIn">Share this on LinkedIn</a>
		</li>
		<li class="shr-plaxo">
			<a href="http://www.plaxo.com/?share_link=http://www.dotvoid.com/2005/11/silly-web-20-application/" rel="nofollow" class="external" title="Share this on Plaxo">Share this on Plaxo</a>
		</li>
		<li class="shr-stumbleupon">
			<a href="http://www.stumbleupon.com/submit?url=http://www.dotvoid.com/2005/11/silly-web-20-application/&amp;title=Silly+web+2.0+application" rel="nofollow" class="external" title="Stumble upon something good? Share it on StumbleUpon">Stumble upon something good? Share it on StumbleUpon</a>
		</li>
		<li class="shr-twitter">
			<a href="http://twitter.com/home?status=Silly+web+2.0+application+-+http://b2l.me/wwzsd&amp;source=shareaholic" rel="nofollow" class="external" title="Tweet This!">Tweet This!</a>
		</li>
</ul>
<div style="clear:both;"></div>
</div>

]]></content:encoded>
			<wfw:commentRss>http://www.dotvoid.com/2005/11/silly-web-20-application/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Busy &#8211; taking a pause</title>
		<link>http://www.dotvoid.com/2005/11/busy-taking-a-pause/</link>
		<comments>http://www.dotvoid.com/2005/11/busy-taking-a-pause/#comments</comments>
		<pubDate>Wed, 02 Nov 2005 15:40:17 +0000</pubDate>
		<dc:creator>Danne</dc:creator>
				<category><![CDATA[PHP]]></category>
		<category><![CDATA[Web]]></category>
		<category><![CDATA[cms]]></category>
		<category><![CDATA[conference]]></category>
		<category><![CDATA[wysiwyg]]></category>

		<guid isPermaLink="false">http://www.commodi.com/?p=157</guid>
		<description><![CDATA[I have been way too busy the last couple of weeks. I&#8217;m working on a flashy new portal as well as my old content management system Firesite CMS. In Firesite I have always used a rather limited but ok wysiwyg editor for html content authouring. In a recent project I realized that the editor just [...]]]></description>
			<content:encoded><![CDATA[<p>I have been way too busy the last couple of weeks. I&#8217;m working on a flashy new portal as well as my old content management system Firesite CMS. In Firesite I have always used a rather limited but ok wysiwyg editor for html content authouring. In a recent project I realized that the editor just didn&#8217;t cut it anymore. I started looking at the alternatives.</p>
<p>I wasn&#8217;t very happy with wither either <a href="http://www.fckeditor.net/">FCKeditor</a> or any of the alternatives as they were either bloated or badly implemented or both. To be honest I didn&#8217;t do a very thorough analysis. But as stupid as I can be at time I told myself that I could do it better. Another voice (?) instantly challenged me with the words &#8220;prove it&#8221;.</p>
<p>Implementing things like a good and simple extensions api,  i18n and theming and still keep the total file size to a minimum is not that easy&#8230; Well it is finally starting to evolve into something really nice. I won&#8217;t release the source yet as I want the basic features to be rock solid but here is a nice little screenshot of the editor in Swedish using a Gnome theme.</p>
<div id="attachment_158" class="wp-caption aligncenter" style="width: 373px"><img class="size-full wp-image-158" title="FireEditor - wysiwyg editor in Firesite" src="http://www.dotvoid.com/wp-content/uploads/2008/09/fs__media_mod_action_006.png" alt="FireEditor - wysiwyg editor in Firesite" width="363" height="203" /><p class="wp-caption-text">FireEditor - wysiwyg editor in Firesite. The icons are made by my girlfriend for another project.</p></div>
<p>Starting this weekend I will take a couple of days off and attend the <a href="http://www.phpconference.com/">PHP Conference in Frankfurt</a>. I really hope it will be as good as when I was there in 2003. It would be fun to know if there are more people coming down from Sweden. If you&#8217;d fancy a beer or two in the bar with a fellow Swedish just send me an email through my contact form.</p>


<div class="shr-bookmarks shr-bookmarks-expand shr-bookmarks-center shr-bookmarks-bg-knowledge">
<ul class="socials">
		<li class="shr-comfeed">
			<a href="http://www.dotvoid.com/2005/11/busy-taking-a-pause/feed" rel="nofollow" class="external" title="Subscribe to the comments for this post?">Subscribe to the comments for this post?</a>
		</li>
		<li class="shr-delicious">
			<a href="http://delicious.com/post?url=http://www.dotvoid.com/2005/11/busy-taking-a-pause/&amp;title=Busy+-+taking+a+pause" rel="nofollow" class="external" title="Share this on del.icio.us">Share this on del.icio.us</a>
		</li>
		<li class="shr-facebook">
			<a href="http://www.facebook.com/share.php?v=4&amp;src=bm&amp;u=http://www.dotvoid.com/2005/11/busy-taking-a-pause/&amp;t=Busy+-+taking+a+pause" rel="nofollow" class="external" title="Share this on Facebook">Share this on Facebook</a>
		</li>
		<li class="shr-googlebuzz">
			<a href="http://www.google.com/buzz/post?url=http://www.dotvoid.com/2005/11/busy-taking-a-pause/&amp;imageurl=" rel="nofollow" class="external" title="Post on Google Buzz">Post on Google Buzz</a>
		</li>
		<li class="shr-linkedin">
			<a href="http://www.linkedin.com/shareArticle?mini=true&amp;url=http://www.dotvoid.com/2005/11/busy-taking-a-pause/&amp;title=Busy+-+taking+a+pause&amp;summary=I%20have%20been%20way%20too%20busy%20the%20last%20couple%20of%20weeks.%20I%27m%20working%20on%20a%20flashy%20new%20portal%20as%20well%20as%20my%20old%20content%20management%20system%20Firesite%20CMS.%20In%20Firesite%20I%20have%20always%20used%20a%20rather%20limited%20but%20ok%20wysiwyg%20editor%20for%20html%20content%20authouring.%20In%20a%20recent%20project%20I%20realized%20that%20the%20editor%20just%20didn%27&amp;source=dotvoid.com" rel="nofollow" class="external" title="Share this on LinkedIn">Share this on LinkedIn</a>
		</li>
		<li class="shr-plaxo">
			<a href="http://www.plaxo.com/?share_link=http://www.dotvoid.com/2005/11/busy-taking-a-pause/" rel="nofollow" class="external" title="Share this on Plaxo">Share this on Plaxo</a>
		</li>
		<li class="shr-stumbleupon">
			<a href="http://www.stumbleupon.com/submit?url=http://www.dotvoid.com/2005/11/busy-taking-a-pause/&amp;title=Busy+-+taking+a+pause" rel="nofollow" class="external" title="Stumble upon something good? Share it on StumbleUpon">Stumble upon something good? Share it on StumbleUpon</a>
		</li>
		<li class="shr-twitter">
			<a href="http://twitter.com/home?status=Busy+-+taking+a+pause+-+http://b2l.me/wyq3y&amp;source=shareaholic" rel="nofollow" class="external" title="Tweet This!">Tweet This!</a>
		</li>
</ul>
<div style="clear:both;"></div>
</div>

]]></content:encoded>
			<wfw:commentRss>http://www.dotvoid.com/2005/11/busy-taking-a-pause/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Web 2.0?</title>
		<link>http://www.dotvoid.com/2005/10/web-20/</link>
		<comments>http://www.dotvoid.com/2005/10/web-20/#comments</comments>
		<pubDate>Thu, 20 Oct 2005 22:41:08 +0000</pubDate>
		<dc:creator>Danne</dc:creator>
				<category><![CDATA[Web]]></category>

		<guid isPermaLink="false">http://www.commodi.com/?p=151</guid>
		<description><![CDATA[Am I the only one not oh-so-extremely-excited about the web 2.0? Or rather the applications that are usually mentioned together with the web 2.0 term. Technology wise I, as a developer, really enjoy seeing all those nifty applications experimenting with functionality traditionally only found in desktop apps. I&#8217;d even go so far as to say [...]]]></description>
			<content:encoded><![CDATA[<p>Am I the only one not oh-so-extremely-excited about the web 2.0? Or rather the applications that are usually mentioned together with the web 2.0 term. Technology wise I, as a developer, really enjoy seeing all those nifty applications experimenting with functionality traditionally only found in desktop apps. I&#8217;d even go so far as to say that &#8220;real&#8221; application development is finally taking off in the web sphere. <a href="http://maps.google.com/">Google maps</a> and some other applications are also well worth the attention. Google maps has a nice, clean interface and (probably) a really impressing backend.</p>
<p>However, there are a few applications lately that have received lots of attention. <a href="http://www.flock.com/">Flock</a> &#8211; what&#8217;s the deal with Flock? I&#8217;ve tried it and I like the way the back and forward buttons are joined together. But I suspect that is not what the buzz is all about. The idea of adding online tools in the browser, which Flock does, is not new. Flock is, to me, just another skin around gecko. If you think I just don&#8217;t get it &#8211; feel free to enlighten me.</p>
<p><a href="http://www.basecamphq.com/">Basecamp</a>, the project management application of the year it seems, must have a few people really good at marketing behind it. The application has a nice interface and is simple to use. Other than that &#8211; it&#8217;s just a very simple application.</p>
<p>Don&#8217;t take me wrong &#8211; both these examples are nice applications. They are just not that much of a revolution.</p>


<div class="shr-bookmarks shr-bookmarks-expand shr-bookmarks-center shr-bookmarks-bg-knowledge">
<ul class="socials">
		<li class="shr-comfeed">
			<a href="http://www.dotvoid.com/2005/10/web-20/feed" rel="nofollow" class="external" title="Subscribe to the comments for this post?">Subscribe to the comments for this post?</a>
		</li>
		<li class="shr-delicious">
			<a href="http://delicious.com/post?url=http://www.dotvoid.com/2005/10/web-20/&amp;title=Web+2.0%3F" rel="nofollow" class="external" title="Share this on del.icio.us">Share this on del.icio.us</a>
		</li>
		<li class="shr-facebook">
			<a href="http://www.facebook.com/share.php?v=4&amp;src=bm&amp;u=http://www.dotvoid.com/2005/10/web-20/&amp;t=Web+2.0%3F" rel="nofollow" class="external" title="Share this on Facebook">Share this on Facebook</a>
		</li>
		<li class="shr-googlebuzz">
			<a href="http://www.google.com/buzz/post?url=http://www.dotvoid.com/2005/10/web-20/&amp;imageurl=" rel="nofollow" class="external" title="Post on Google Buzz">Post on Google Buzz</a>
		</li>
		<li class="shr-linkedin">
			<a href="http://www.linkedin.com/shareArticle?mini=true&amp;url=http://www.dotvoid.com/2005/10/web-20/&amp;title=Web+2.0%3F&amp;summary=Am%20I%20the%20only%20one%20not%20oh-so-extremely-excited%20about%20the%20web%202.0%3F%20Or%20rather%20the%20applications%20that%20are%20usually%20mentioned%20together%20with%20the%20web%202.0%20term.%20Technology%20wise%20I%2C%20as%20a%20developer%2C%20really%20enjoy%20seeing%20all%20those%20nifty%20applications%20experimenting%20with%20functionality%20traditionally%20only%20found%20in%20desk&amp;source=dotvoid.com" rel="nofollow" class="external" title="Share this on LinkedIn">Share this on LinkedIn</a>
		</li>
		<li class="shr-plaxo">
			<a href="http://www.plaxo.com/?share_link=http://www.dotvoid.com/2005/10/web-20/" rel="nofollow" class="external" title="Share this on Plaxo">Share this on Plaxo</a>
		</li>
		<li class="shr-stumbleupon">
			<a href="http://www.stumbleupon.com/submit?url=http://www.dotvoid.com/2005/10/web-20/&amp;title=Web+2.0%3F" rel="nofollow" class="external" title="Stumble upon something good? Share it on StumbleUpon">Stumble upon something good? Share it on StumbleUpon</a>
		</li>
		<li class="shr-twitter">
			<a href="http://twitter.com/home?status=Web+2.0%3F+-+http://b2l.me/wvdf5&amp;source=shareaholic" rel="nofollow" class="external" title="Tweet This!">Tweet This!</a>
		</li>
</ul>
<div style="clear:both;"></div>
</div>

]]></content:encoded>
			<wfw:commentRss>http://www.dotvoid.com/2005/10/web-20/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Mail form crack attempt</title>
		<link>http://www.dotvoid.com/2005/08/mail-form-crack-attempt/</link>
		<comments>http://www.dotvoid.com/2005/08/mail-form-crack-attempt/#comments</comments>
		<pubDate>Mon, 29 Aug 2005 19:09:30 +0000</pubDate>
		<dc:creator>Danne</dc:creator>
				<category><![CDATA[PHP]]></category>
		<category><![CDATA[mail]]></category>
		<category><![CDATA[Web]]></category>

		<guid isPermaLink="false">http://www.commodi.com/?p=142</guid>
		<description><![CDATA[
I recently received two weird email messages. The first one, I could see, came from the contact form here on dotvoid.com. The second looked more like ordinary spam with faked from and to fields. The spam email was however curiously empty of any real content. I soon figured out what was happening. Someone was, successfully, [...]]]></description>
			<content:encoded><![CDATA[<div class="preamble">
<p>I recently received two weird email messages. The first one, I could see, came from the contact form here on dotvoid.com. The second looked more like ordinary spam with faked from and to fields. The spam email was however curiously empty of any real content. I soon figured out what was happening. Someone was, successfully, trying to crack my email form so he could use it to relay spam&#8230;</p></div>
<p>In my contact form I only let the visitor enter two fields, a message and his email address. The user supplied email address is then used to set the From header in the email that is going to be generated. The To header in the email is set to a hard coded &#8220;secret&#8221; value by the script.</p>
<p>Obviously I was sloppy when I created the contact form. I&#8217;m very much ashamed to admit I was not sanitizing the user entered email address properly. Not sanitizing user input is, as we all know, a disaster waiting to happen.</p>
<p>If you can add a newline/carriage return on the end of any value that is going to be written in the email headers you can also add any email header you would want. In this case  the attacker added Bcc headers. Suddenly my email contact form was effectively functioning as a spam relay.</p>
<p>I again learned the lesson I thought I knew. <span style="font-weight: bold;">Always sanitize user input!</span></p>
<p>More on this particluar issue:</p>
<ul>
<li><a href="http://securephp.damonkohler.com/index.php/Email_Injection">Email injection &#8211; Secure PHP<br />
</a></li>
<li><a href="http://www.anders.com/cms/75/Crack.Attempt/Spam.Relay">Interesting Crack Attempt to Relay Spam</a></li>
</ul>


<div class="shr-bookmarks shr-bookmarks-expand shr-bookmarks-center shr-bookmarks-bg-knowledge">
<ul class="socials">
		<li class="shr-comfeed">
			<a href="http://www.dotvoid.com/2005/08/mail-form-crack-attempt/feed" rel="nofollow" class="external" title="Subscribe to the comments for this post?">Subscribe to the comments for this post?</a>
		</li>
		<li class="shr-delicious">
			<a href="http://delicious.com/post?url=http://www.dotvoid.com/2005/08/mail-form-crack-attempt/&amp;title=Mail+form+crack+attempt" rel="nofollow" class="external" title="Share this on del.icio.us">Share this on del.icio.us</a>
		</li>
		<li class="shr-facebook">
			<a href="http://www.facebook.com/share.php?v=4&amp;src=bm&amp;u=http://www.dotvoid.com/2005/08/mail-form-crack-attempt/&amp;t=Mail+form+crack+attempt" rel="nofollow" class="external" title="Share this on Facebook">Share this on Facebook</a>
		</li>
		<li class="shr-googlebuzz">
			<a href="http://www.google.com/buzz/post?url=http://www.dotvoid.com/2005/08/mail-form-crack-attempt/&amp;imageurl=" rel="nofollow" class="external" title="Post on Google Buzz">Post on Google Buzz</a>
		</li>
		<li class="shr-linkedin">
			<a href="http://www.linkedin.com/shareArticle?mini=true&amp;url=http://www.dotvoid.com/2005/08/mail-form-crack-attempt/&amp;title=Mail+form+crack+attempt&amp;summary=%0D%0A%0D%0AI%20recently%20received%20two%20weird%20email%20messages.%20The%20first%20one%2C%20I%20could%20see%2C%20came%20from%20the%20contact%20form%20here%20on%20dotvoid.com.%20The%20second%20looked%20more%20like%20ordinary%20spam%20with%20faked%20from%20and%20to%20fields.%20The%20spam%20email%20was%20however%20curiously%20empty%20of%20any%20real%20content.%20I%20soon%20figured%20out%20what%20was%20happening&amp;source=dotvoid.com" rel="nofollow" class="external" title="Share this on LinkedIn">Share this on LinkedIn</a>
		</li>
		<li class="shr-plaxo">
			<a href="http://www.plaxo.com/?share_link=http://www.dotvoid.com/2005/08/mail-form-crack-attempt/" rel="nofollow" class="external" title="Share this on Plaxo">Share this on Plaxo</a>
		</li>
		<li class="shr-stumbleupon">
			<a href="http://www.stumbleupon.com/submit?url=http://www.dotvoid.com/2005/08/mail-form-crack-attempt/&amp;title=Mail+form+crack+attempt" rel="nofollow" class="external" title="Stumble upon something good? Share it on StumbleUpon">Stumble upon something good? Share it on StumbleUpon</a>
		</li>
		<li class="shr-twitter">
			<a href="http://twitter.com/home?status=Mail+form+crack+attempt+-+File: /data/app/webapp/functions.php<br />Line: 7<br />Message: Too many connections&amp;source=shareaholic" rel="nofollow" class="external" title="Tweet This!">Tweet This!</a>
		</li>
</ul>
<div style="clear:both;"></div>
</div>

]]></content:encoded>
			<wfw:commentRss>http://www.dotvoid.com/2005/08/mail-form-crack-attempt/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Country names and capitals in different languages</title>
		<link>http://www.dotvoid.com/2005/08/country-names-and-capitals-in-different-languages/</link>
		<comments>http://www.dotvoid.com/2005/08/country-names-and-capitals-in-different-languages/#comments</comments>
		<pubDate>Sat, 20 Aug 2005 23:00:44 +0000</pubDate>
		<dc:creator>Danne</dc:creator>
				<category><![CDATA[Web]]></category>

		<guid isPermaLink="false">http://www.commodi.com/?p=145</guid>
		<description><![CDATA[When working on a web portal project a couple of years ago I tried to find country names and capitals in different European languages. The portal never went live but the information was a bit hard to find without paying substantial money. I just stumbled upon the the old sql backup of the data I [...]]]></description>
			<content:encoded><![CDATA[<p>When working on a web portal project a couple of years ago I tried to find country names and capitals in different European languages. The portal never went live but the information was a bit hard to find without paying substantial money. I just stumbled upon the the old sql backup of the data I collected and thought that it might be useful to more people. Here is my list of country names in a few different European languages (<em>project is gone</em>) complete with ISO 2, ISO 3 and EU codes as well as the capitals.</p>
<p>It would be fun &#8211; and useful &#8211; to add more translations to the list. If you find this useful &#8211; please help out and I will add export possibilities in csv and xml.</p>


<div class="shr-bookmarks shr-bookmarks-expand shr-bookmarks-center shr-bookmarks-bg-knowledge">
<ul class="socials">
		<li class="shr-comfeed">
			<a href="http://www.dotvoid.com/2005/08/country-names-and-capitals-in-different-languages/feed" rel="nofollow" class="external" title="Subscribe to the comments for this post?">Subscribe to the comments for this post?</a>
		</li>
		<li class="shr-delicious">
			<a href="http://delicious.com/post?url=http://www.dotvoid.com/2005/08/country-names-and-capitals-in-different-languages/&amp;title=Country+names+and+capitals+in+different+languages" rel="nofollow" class="external" title="Share this on del.icio.us">Share this on del.icio.us</a>
		</li>
		<li class="shr-facebook">
			<a href="http://www.facebook.com/share.php?v=4&amp;src=bm&amp;u=http://www.dotvoid.com/2005/08/country-names-and-capitals-in-different-languages/&amp;t=Country+names+and+capitals+in+different+languages" rel="nofollow" class="external" title="Share this on Facebook">Share this on Facebook</a>
		</li>
		<li class="shr-googlebuzz">
			<a href="http://www.google.com/buzz/post?url=http://www.dotvoid.com/2005/08/country-names-and-capitals-in-different-languages/&amp;imageurl=" rel="nofollow" class="external" title="Post on Google Buzz">Post on Google Buzz</a>
		</li>
		<li class="shr-linkedin">
			<a href="http://www.linkedin.com/shareArticle?mini=true&amp;url=http://www.dotvoid.com/2005/08/country-names-and-capitals-in-different-languages/&amp;title=Country+names+and+capitals+in+different+languages&amp;summary=When%20working%20on%20a%20web%20portal%20project%20a%20couple%20of%20years%20ago%20I%20tried%20to%20find%20country%20names%20and%20capitals%20in%20different%20European%20languages.%20The%20portal%20never%20went%20live%20but%20the%20information%20was%20a%20bit%20hard%20to%20find%20without%20paying%20substantial%20money.%20I%20just%20stumbled%20upon%20the%20the%20old%20sql%20backup%20of%20the%20data%20I%20col&amp;source=dotvoid.com" rel="nofollow" class="external" title="Share this on LinkedIn">Share this on LinkedIn</a>
		</li>
		<li class="shr-plaxo">
			<a href="http://www.plaxo.com/?share_link=http://www.dotvoid.com/2005/08/country-names-and-capitals-in-different-languages/" rel="nofollow" class="external" title="Share this on Plaxo">Share this on Plaxo</a>
		</li>
		<li class="shr-stumbleupon">
			<a href="http://www.stumbleupon.com/submit?url=http://www.dotvoid.com/2005/08/country-names-and-capitals-in-different-languages/&amp;title=Country+names+and+capitals+in+different+languages" rel="nofollow" class="external" title="Stumble upon something good? Share it on StumbleUpon">Stumble upon something good? Share it on StumbleUpon</a>
		</li>
		<li class="shr-twitter">
			<a href="http://twitter.com/home?status=Country+names+and+capitals+in+different+languages+-+http://b2l.me/wyq33&amp;source=shareaholic" rel="nofollow" class="external" title="Tweet This!">Tweet This!</a>
		</li>
</ul>
<div style="clear:both;"></div>
</div>

]]></content:encoded>
			<wfw:commentRss>http://www.dotvoid.com/2005/08/country-names-and-capitals-in-different-languages/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Google page rank (somewhat) revealed</title>
		<link>http://www.dotvoid.com/2005/07/google-page-rank-somewhat-revealed/</link>
		<comments>http://www.dotvoid.com/2005/07/google-page-rank-somewhat-revealed/#comments</comments>
		<pubDate>Mon, 11 Jul 2005 14:25:30 +0000</pubDate>
		<dc:creator>Danne</dc:creator>
				<category><![CDATA[Web]]></category>

		<guid isPermaLink="false">http://www.commodi.com/?p=138</guid>
		<description><![CDATA[
It seems that Google has filed a patent regarding their search engine technology recently. In doing so Google have had to reveal more information on how they actually rank web sites and pages. Some things I knew to be important; like how many links to a site there is. That however is only partly true. [...]]]></description>
			<content:encoded><![CDATA[<div class="preamble">
<p>It seems that Google has filed a patent regarding their search engine technology recently. In doing so Google have had to reveal more information on how they actually rank web sites and pages. Some things I knew to be important; like how many links to a site there is. That however is only partly true. What I didn&#8217;t know is that they seem to weigh in how fast the number of links to your site increases. If they increase too fast Google might think it is search engine spam. There are many more tips&#8230;</p></div>
<p>Another weird thing they do, probably to prevent spam and malicious sites getting to much attention, is that they check the domain registration date as well as the domain contact and billing details. I have found two sites discussing this in more detail.</p>
<ul>
<li><a href="http://www.buzzle.com/editorials/6-10-2005-71368.asp">buzzle.com</a></li>
<li><a href="http://www.readwriteweb.com/archives/002756.php">readwriteweb.com</a></li>
</ul>
<p>The best thing, apart from having more details revealed, is that it actually looks like they are trying to prevent the impact of search engine spam and comment spam.</p>


<div class="shr-bookmarks shr-bookmarks-expand shr-bookmarks-center shr-bookmarks-bg-knowledge">
<ul class="socials">
		<li class="shr-comfeed">
			<a href="http://www.dotvoid.com/2005/07/google-page-rank-somewhat-revealed/feed" rel="nofollow" class="external" title="Subscribe to the comments for this post?">Subscribe to the comments for this post?</a>
		</li>
		<li class="shr-delicious">
			<a href="http://delicious.com/post?url=http://www.dotvoid.com/2005/07/google-page-rank-somewhat-revealed/&amp;title=Google+page+rank+%28somewhat%29+revealed" rel="nofollow" class="external" title="Share this on del.icio.us">Share this on del.icio.us</a>
		</li>
		<li class="shr-facebook">
			<a href="http://www.facebook.com/share.php?v=4&amp;src=bm&amp;u=http://www.dotvoid.com/2005/07/google-page-rank-somewhat-revealed/&amp;t=Google+page+rank+%28somewhat%29+revealed" rel="nofollow" class="external" title="Share this on Facebook">Share this on Facebook</a>
		</li>
		<li class="shr-googlebuzz">
			<a href="http://www.google.com/buzz/post?url=http://www.dotvoid.com/2005/07/google-page-rank-somewhat-revealed/&amp;imageurl=" rel="nofollow" class="external" title="Post on Google Buzz">Post on Google Buzz</a>
		</li>
		<li class="shr-linkedin">
			<a href="http://www.linkedin.com/shareArticle?mini=true&amp;url=http://www.dotvoid.com/2005/07/google-page-rank-somewhat-revealed/&amp;title=Google+page+rank+%28somewhat%29+revealed&amp;summary=%0D%0A%0D%0AIt%20seems%20that%20Google%20has%20filed%20a%20patent%20regarding%20their%20search%20engine%20technology%20recently.%20In%20doing%20so%20Google%20have%20had%20to%20reveal%20more%20information%20on%20how%20they%20actually%20rank%20web%20sites%20and%20pages.%20Some%20things%20I%20knew%20to%20be%20important%3B%20like%20how%20many%20links%20to%20a%20site%20there%20is.%20That%20however%20is%20only%20partly&amp;source=dotvoid.com" rel="nofollow" class="external" title="Share this on LinkedIn">Share this on LinkedIn</a>
		</li>
		<li class="shr-plaxo">
			<a href="http://www.plaxo.com/?share_link=http://www.dotvoid.com/2005/07/google-page-rank-somewhat-revealed/" rel="nofollow" class="external" title="Share this on Plaxo">Share this on Plaxo</a>
		</li>
		<li class="shr-stumbleupon">
			<a href="http://www.stumbleupon.com/submit?url=http://www.dotvoid.com/2005/07/google-page-rank-somewhat-revealed/&amp;title=Google+page+rank+%28somewhat%29+revealed" rel="nofollow" class="external" title="Stumble upon something good? Share it on StumbleUpon">Stumble upon something good? Share it on StumbleUpon</a>
		</li>
		<li class="shr-twitter">
			<a href="http://twitter.com/home?status=Google+page+rank+%28somewhat%29+revealed+-+http://b2l.me/wyq34&amp;source=shareaholic" rel="nofollow" class="external" title="Tweet This!">Tweet This!</a>
		</li>
</ul>
<div style="clear:both;"></div>
</div>

]]></content:encoded>
			<wfw:commentRss>http://www.dotvoid.com/2005/07/google-page-rank-somewhat-revealed/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
	</channel>
</rss>
