<?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>Konstruktors &#187; Web</title>
	<atom:link href="http://konstruktors.com/blog/topic/the-web/feed/" rel="self" type="application/rss+xml" />
	<link>http://konstruktors.com</link>
	<description>Web Design, WordPress and Performance Services</description>
	<lastBuildDate>Wed, 25 Apr 2012 12:08:22 +0000</lastBuildDate>
	<language>en-US</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.4-beta4-20790</generator>
<atom:link rel="hub" href="http://konstruktors.superfeedr.com/"/><atom:link rel="hub" href="http://pubsubhubbub.appspot.com/"/>		<item>
		<title>Rasmus Lerdorf on the History and Future&#160;of&#160;PHP</title>
		<link>http://konstruktors.com/blog/the-web/3543-rasmus-lerdorf-on-the-history-and-future-of-php/</link>
		<comments>http://konstruktors.com/blog/the-web/3543-rasmus-lerdorf-on-the-history-and-future-of-php/#comments</comments>
		<pubDate>Tue, 21 Feb 2012 21:03:47 +0000</pubDate>
		<dc:creator>Kaspars</dc:creator>
				<category><![CDATA[Web]]></category>
		<category><![CDATA[open source]]></category>
		<category><![CDATA[php]]></category>
		<category><![CDATA[video]]></category>
		<category><![CDATA[Web Development]]></category>

		<guid isPermaLink="false">http://konstruktors.com/?p=3543</guid>
		<description><![CDATA[Etsy Code as Craft on LiveStream]]></description>
			<content:encoded><![CDATA[<p><iframe width="500" height="310" src="http://cdn.livestream.com/embed/etsycodeascraft?layout=4&#038;clip=pla_e00bfe34-e377-42d1-b859-ccf97b12c519&#038;color=0xe7e7e7&#038;autoPlay=false&#038;mute=false&#038;iconColorOver=0x888888&#038;iconColor=0x777777&#038;allowchat=true&#038;height=310&#038;width=500" frameborder="0" scrolling="no"></iframe></p>
<p><a href="http://www.livestream.com/etsycodeascraft">Etsy Code as Craft on LiveStream</a></p>
]]></content:encoded>
			<wfw:commentRss>http://konstruktors.com/blog/the-web/3543-rasmus-lerdorf-on-the-history-and-future-of-php/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Check Who is Tweeting About Your Blog or&#160;Website</title>
		<link>http://konstruktors.com/blog/the-web/3308-mentioning-your-blog-on-twitter/</link>
		<comments>http://konstruktors.com/blog/the-web/3308-mentioning-your-blog-on-twitter/#comments</comments>
		<pubDate>Mon, 24 Oct 2011 16:16:32 +0000</pubDate>
		<dc:creator>Kaspars</dc:creator>
				<category><![CDATA[Meta]]></category>
		<category><![CDATA[Web]]></category>
		<category><![CDATA[how to]]></category>
		<category><![CDATA[snippet]]></category>
		<category><![CDATA[tips]]></category>
		<category><![CDATA[twitter]]></category>

		<guid isPermaLink="false">http://konstruktors.com/?p=3308</guid>
		<description><![CDATA[Knowing who is talking about your blog or website on Twitter is easy &#8212; simply subscribe to the following RSS feed: http://search.twitter.com/search.rss?q=konstruktors.com Replace konstruktors.com with your own domain. Related posts How to Add Post Categories and Tags as #Hashtags to Tweets Automatically with the Simple Twitter Connect&#160;Plugin Widget Context Update &#8212; Word Count&#160;Check Rewrite WP-Minify [...]]]></description>
			<content:encoded><![CDATA[<p>Knowing who is talking about your blog or website on Twitter is easy &#8212; simply subscribe to the following RSS feed:</p>
<pre>http://search.twitter.com/search.rss?q=konstruktors.com</pre>
<p>Replace <code>konstruktors.com</code> with your own domain.</p>
<h4>Related posts</h4><ol>
<li><a href='http://konstruktors.com/blog/wordpress/3478-add-post-categories-tags-as-hashtags-to-tweets-automatically-stc-plugin/' rel='bookmark' title='How to Add Post Categories and Tags as #Hashtags to Tweets Automatically with the Simple Twitter Connect&nbsp;Plugin'>How to Add Post Categories and Tags as #Hashtags to Tweets Automatically with the Simple Twitter Connect&nbsp;Plugin</a></li>
<li><a href='http://konstruktors.com/blog/wordpress/944-widget-context-update-word-count-check/' rel='bookmark' title='Widget Context Update &#8212; Word Count&nbsp;Check'>Widget Context Update &#8212; Word Count&nbsp;Check</a></li>
<li><a href='http://konstruktors.com/blog/wordpress/2752-rewrite-wp-minify-urls-for-css-and-js-offloading/' rel='bookmark' title='Rewrite WP-Minify URLs for CSS and JS&nbsp;Offloading'>Rewrite WP-Minify URLs for CSS and JS&nbsp;Offloading</a></li>
</ol>]]></content:encoded>
			<wfw:commentRss>http://konstruktors.com/blog/the-web/3308-mentioning-your-blog-on-twitter/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Self-hosted HTML5 Notepad App With&#160;Synchronization</title>
		<link>http://konstruktors.com/blog/the-web/2991-hosted-html5-notepad-app-sync/</link>
		<comments>http://konstruktors.com/blog/the-web/2991-hosted-html5-notepad-app-sync/#comments</comments>
		<pubDate>Fri, 27 May 2011 09:41:03 +0000</pubDate>
		<dc:creator>Kaspars</dc:creator>
				<category><![CDATA[Web]]></category>
		<category><![CDATA[localstorage]]></category>
		<category><![CDATA[php]]></category>

		<guid isPermaLink="false">http://konstruktors.com/?p=2991</guid>
		<description><![CDATA[Update: On February 12, 2012 I released an updated version of this app with new UI, support for Markdown syntax (incl. editor) and a few bug fixes. Please see the project page for more screenshots and downloads. Ever since the days of Google Gears which enabled local storage and offline syncing for online applications such [...]]]></description>
			<content:encoded><![CDATA[<p><strong>Update:</strong> On February 12, 2012 I released an updated version of this app with new UI, support for Markdown syntax (incl. editor) and a few bug fixes. Please see the <a title="Self-hosted HTML5 Notepad App" href="http://konstruktors.com/projects/html5-notepad/">project page</a> for more screenshots and downloads.</p>
<p>Ever since the days of Google Gears which enabled local storage and offline syncing for online applications such as Google Reader and Docs, I have always wished for <strong>a very simple and instantly accesible notepad application that I could host on my server and use also without an internet connection</strong>. A place where I could instantly write down an idea or paste a link or a quote from an article.</p>
<p>Google Docs and Evernote is great but they have way more features than I would normally use. WordPress is fine, but it takes several steps to get to the actual writing, and you must be connected to the internet to use it.</p>
<h3>The Solution</h3>
<p>Now that we have HTML5 with support for <code>localStorage</code> and offline apps in all of the modern browsers, it seems to be the perfect solution. All that is needed is a little PHP script that <strong>synchronizes</strong> the content of <code>localStorage</code> with the server. Here is how it looks:</p>
<div id="attachment_3439" class="wp-caption aligncenter" style="width: 510px"><a href="http://konstruktors.com/wp-content/uploads/2011/05/html5-notepad-2012-index.png"><img class="size-medium wp-image-3439" title="HTML5 Notepad lists all notes" src="http://konstruktors.com/wp-content/uploads/2011/05/html5-notepad-2012-index-500x316.png" alt="HTML5 Notepad lists all notes" width="500" height="316" /></a><p class="wp-caption-text">HTML5 Notepad version 2012</p></div>
<div id="attachment_2976" class="wp-caption aligncenter" style="width: 510px"><a href="http://konstruktors.com/wp-content/uploads/2011/05/hifive.png" rel="fancybox"><img class="size-medium wp-image-2976" title="Self-hosted HTML5 Notepad (with Sync)" src="http://konstruktors.com/wp-content/uploads/2011/05/hifive-500x304.png" alt="" width="500" height="304" /></a><p class="wp-caption-text">Version 0.1 of HTML5 Notepad with Sync</p></div>
<p>You have your files on the left and a very big plain text editor on the right.</p>
<h3>How Does it Work</h3>
<p>The app consists of the following:</p>
<ul>
<li>One HTML file with enabled offline access (cache manifest).</li>
<li>jQuery for all the Javascript and AJAX magic.</li>
<li>One PHP file with HTTP authentication for syncing with the server.</li>
</ul>
<p>The files are stored in browser&#8217;s <code>localStorage</code> as key/value pairs with unique timestamp IDs as key and JSON formated content as value. An index of all files and their version timestamps is kept and used for synchronization during which all the content of <code>localStorage</code> is sent to <code>sync.php</code> in a POST request. The server reads its own index file and determines which new or edited entries need to be stored and which returned to the browser. All entries are stored on the server as JSON strings in simple text files.</p>
<h3>Demo, Download and Installation</h3>
<p>Please visit the <a href="http://konstruktors.com/projects/html5-notepad/">project page of the HTML5 Notepad App</a>. There is also a sample Chrome app.</p>
<h4>Related posts</h4><ol>
<li><a href='http://konstruktors.com/blog/web-design/3451-html5-notepad-app-update/' rel='bookmark' title='HTML5 Notepad App&nbsp;Update'>HTML5 Notepad App&nbsp;Update</a></li>
<li><a href='http://konstruktors.com/blog/wordpress/2538-automatic-updates-for-plugins-and-themes-hosted-outside-wordpress-extend/' rel='bookmark' title='Automatic Updates for Plugins and Themes Hosted Outside WordPress&nbsp;Extend'>Automatic Updates for Plugins and Themes Hosted Outside WordPress&nbsp;Extend</a></li>
</ol>]]></content:encoded>
			<wfw:commentRss>http://konstruktors.com/blog/the-web/2991-hosted-html5-notepad-app-sync/feed/</wfw:commentRss>
		<slash:comments>12</slash:comments>
		</item>
		<item>
		<title>A Simple PHP Utility to Migrate Emails Between Two IMAP/POP&#160;Accounts</title>
		<link>http://konstruktors.com/blog/the-web/2915-php-migrate-emails-imap-pop/</link>
		<comments>http://konstruktors.com/blog/the-web/2915-php-migrate-emails-imap-pop/#comments</comments>
		<pubDate>Wed, 16 Mar 2011 18:53:46 +0000</pubDate>
		<dc:creator>Kaspars</dc:creator>
				<category><![CDATA[Web]]></category>
		<category><![CDATA[code]]></category>
		<category><![CDATA[how to]]></category>
		<category><![CDATA[php]]></category>

		<guid isPermaLink="false">http://konstruktors.com/?p=2915</guid>
		<description><![CDATA[I wrote this little (quick &#38; dirty) PHP command line utility to migrate around 10 email accounts from my IMAP server to Google Apps. Related posts How to Add Simple Google Site Search to Any&#160;Website OpenID Plugin and WordPress&#160;2.8 Self-hosted HTML5 Notepad App With&#160;Synchronization]]></description>
			<content:encoded><![CDATA[<p>I wrote this <a title="Migrate / transfer email from IMAP/POP to Google Apps" href="http://t.co/9qrMZZU">little (quick &amp; dirty) PHP command line utility</a> to migrate around 10 email accounts from my IMAP server to Google Apps.</p>
<h4>Related posts</h4><ol>
<li><a href='http://konstruktors.com/blog/web-design/2865-how-to-add-google-site-search/' rel='bookmark' title='How to Add Simple Google Site Search to Any&nbsp;Website'>How to Add Simple Google Site Search to Any&nbsp;Website</a></li>
<li><a href='http://konstruktors.com/blog/wordpress/1241-openid-plugin-and-wordpress-2-8/' rel='bookmark' title='OpenID Plugin and WordPress&nbsp;2.8'>OpenID Plugin and WordPress&nbsp;2.8</a></li>
<li><a href='http://konstruktors.com/blog/the-web/2991-hosted-html5-notepad-app-sync/' rel='bookmark' title='Self-hosted HTML5 Notepad App With&nbsp;Synchronization'>Self-hosted HTML5 Notepad App With&nbsp;Synchronization</a></li>
</ol>]]></content:encoded>
			<wfw:commentRss>http://konstruktors.com/blog/the-web/2915-php-migrate-emails-imap-pop/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Regarding the &#8216;Like&#8217;&#160;Button</title>
		<link>http://konstruktors.com/blog/the-web/2171-regarding-the-like-button/</link>
		<comments>http://konstruktors.com/blog/the-web/2171-regarding-the-like-button/#comments</comments>
		<pubDate>Wed, 05 May 2010 12:56:38 +0000</pubDate>
		<dc:creator>Kaspars</dc:creator>
				<category><![CDATA[Web]]></category>

		<guid isPermaLink="false">http://konstruktors.com/blog/?p=2171</guid>
		<description><![CDATA[You can like something and there is nothing you have to do about it. It is an effortless act and there are no explanations required or expected. And people actually don&#8217;t care for what you like. They are interested in what you care for, because caring isn&#8217;t pointless, it means you take a stand. Related posts CSS @Imports&#160;Suck]]></description>
			<content:encoded><![CDATA[<p>You can <em>like</em> something and there is nothing you have to do about it. It is an effortless act and there are no explanations required or expected. And people actually don&#8217;t care for what you <em>like</em>. They are interested in what you <em>care for</em>, because caring isn&#8217;t pointless, it means you take a stand.</p>
<h4>Related posts</h4><ol>
<li><a href='http://konstruktors.com/blog/web-design/1159-css-imports-suck/' rel='bookmark' title='CSS @Imports&nbsp;Suck'>CSS @Imports&nbsp;Suck</a></li>
</ol>]]></content:encoded>
			<wfw:commentRss>http://konstruktors.com/blog/the-web/2171-regarding-the-like-button/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>Web Infinity</title>
		<link>http://konstruktors.com/blog/the-web/1877-web-infinity/</link>
		<comments>http://konstruktors.com/blog/the-web/1877-web-infinity/#comments</comments>
		<pubDate>Fri, 01 Jan 2010 05:27:18 +0000</pubDate>
		<dc:creator>Kaspars</dc:creator>
				<category><![CDATA[Random Musings]]></category>
		<category><![CDATA[Web]]></category>

		<guid isPermaLink="false">http://konstruktors.com/blog/?p=1877</guid>
		<description><![CDATA[Web has that enormous feeling of infinity &#8212; every word and though never lost or erased once it&#8217;s up there on the web. Incredible, isn&#8217;t it, that feeling of never loosing something you hold dear.]]></description>
			<content:encoded><![CDATA[<p>Web has that enormous feeling of infinity &#8212; every word and though never lost or erased once it&#8217;s up there on the web. Incredible, isn&#8217;t it, that feeling of never loosing something you hold dear.</p>
]]></content:encoded>
			<wfw:commentRss>http://konstruktors.com/blog/the-web/1877-web-infinity/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>Twitter’s Success</title>
		<link>http://konstruktors.com/blog/media-publishing/1468-twitters-success/</link>
		<comments>http://konstruktors.com/blog/media-publishing/1468-twitters-success/#comments</comments>
		<pubDate>Wed, 22 Jul 2009 03:36:50 +0000</pubDate>
		<dc:creator>Kaspars</dc:creator>
				<category><![CDATA[Media & Publishing]]></category>
		<category><![CDATA[Web]]></category>
		<category><![CDATA[idea]]></category>
		<category><![CDATA[publishing]]></category>

		<guid isPermaLink="false">http://konstruktors.com/blog/?p=1468</guid>
		<description><![CDATA[Twitter&#8217;s success is people discovering the excitement of publishing. The 140 character limit and the overall simplicity is exactly what attracts even those who didn&#8217;t think they had thoughts and ideas worth publishing. The rest of it is just a stripped down e-mail functionality. Related posts What Makes a Great&#160;Journalist]]></description>
			<content:encoded><![CDATA[<p>Twitter&#8217;s success is people discovering the <em>excitement of publishing</em>.</p>
<p>The 140 character limit and the overall simplicity is exactly what attracts even those who didn&#8217;t think they had thoughts and ideas worth publishing. The rest of it is just a stripped down e-mail functionality.</p>
<h4>Related posts</h4><ol>
<li><a href='http://konstruktors.com/blog/media-publishing/396-what-makes-a-great-journalist/' rel='bookmark' title='What Makes a Great&nbsp;Journalist'>What Makes a Great&nbsp;Journalist</a></li>
</ol>]]></content:encoded>
			<wfw:commentRss>http://konstruktors.com/blog/media-publishing/1468-twitters-success/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Comments and the Future of&#160;Blogging</title>
		<link>http://konstruktors.com/blog/the-web/449-comments-and-the-future-of-blogging/</link>
		<comments>http://konstruktors.com/blog/the-web/449-comments-and-the-future-of-blogging/#comments</comments>
		<pubDate>Thu, 21 Aug 2008 17:13:18 +0000</pubDate>
		<dc:creator>Kaspars</dc:creator>
				<category><![CDATA[Web]]></category>

		<guid isPermaLink="false">http://konstruktors.com/blog/?p=449</guid>
		<description><![CDATA[It has been revealed that the latest trend in pro blogging is comments &#8212; the new social and web 2.0 crowd powered interaction feature. How far are we from comment digging and rating? Related posts Fixing «PostPost» and «Ozh&#039; Absolute Comments»&#160;Plugins]]></description>
			<content:encoded><![CDATA[<p>It has been <a rel="nofollow" href="http://www.movabletype.com/blog/2008/08/movable-type-pro-42.html">revealed</a> that the latest trend in <em>pro</em> blogging is <em>comments</em> &#8212; the new social and web 2.0 crowd powered interaction feature. How far are we from comment digging and rating?</p>
<h4>Related posts</h4><ol>
<li><a href='http://konstruktors.com/blog/wordpress/277-fixing-postpost-and-ozh-absolute-comments-plugins/' rel='bookmark' title='Fixing «PostPost» and «Ozh&#039; Absolute Comments»&nbsp;Plugins'>Fixing «PostPost» and «Ozh&#039; Absolute Comments»&nbsp;Plugins</a></li>
</ol>]]></content:encoded>
			<wfw:commentRss>http://konstruktors.com/blog/the-web/449-comments-and-the-future-of-blogging/feed/</wfw:commentRss>
		<slash:comments>2</slash:comments>
		</item>
		<item>
		<title>OpenID SeatBelt plugin for&#160;Firefox</title>
		<link>http://konstruktors.com/blog/the-web/268-openid-seatbelt-firefox-plugin/</link>
		<comments>http://konstruktors.com/blog/the-web/268-openid-seatbelt-firefox-plugin/#comments</comments>
		<pubDate>Fri, 09 May 2008 08:38:19 +0000</pubDate>
		<dc:creator>Kaspars</dc:creator>
				<category><![CDATA[Web]]></category>
		<category><![CDATA[firefox]]></category>
		<category><![CDATA[openid]]></category>

		<guid isPermaLink="false">http://konstruktors.com/blog/?p=268</guid>
		<description><![CDATA[With OpenID SeatBelt plugin (developed by VeriSign) you can now manage your OpenID identities and delegations right inside Firefox. This plugin automatically fills-in OpenID input fields on websites and blogs that support OpenID authentication. It also enables fast identity provider (IdP) switching and protects against OpenID phishing attempts. In one of the future posts I [...]]]></description>
			<content:encoded><![CDATA[<p><a rel="attachment wp-att-269" href="http://konstruktors.com/blog/the-web/268-openid-seatbelt-firefox-plugin/attachment/phpmyid-firefox-openid-seatbelt/"><img class="size-thumbnail wp-image-269 withborder alignright" title="Using phpMyID with SeatBelt plugin for Firefox" src="/wp-content/uploads/2008/05/phpmyid-firefox-openid-seatbelt-150x89.png" alt="Using phpMyID with SeatBelt plugin for Firefox" width="150" height="89" /></a> With <a title="Get OpenID SeatBelt plugin for Firefox" href="https://pip.verisignlabs.com/seatbelt.do">OpenID SeatBelt</a> plugin (developed by VeriSign) you can now manage your OpenID identities and delegations right inside Firefox. This plugin automatically fills-in OpenID input fields on websites and blogs that support OpenID authentication. It also enables fast identity provider (IdP) switching and protects against OpenID phishing attempts.</p>
<p>In one of the future posts I will explain how to add a SeatBelt configuration file to <em><a title="Single user OpenID provider" href="http://siege.org/projects/phpMyID/">phpMyID</a> single indentity provider</em> software so that it can be used with your <a title="How to install your own local OpenID identity provider" href="http://konstruktors.com/blog/understanding-web/259-how-to-be-your-own-openid-provider-and-use-your-blogs-url-for-identification/">privately installed OpenID</a>.</p>
<h4>Related posts</h4><ol>
<li><a href='http://konstruktors.com/blog/wordpress/259-how-to-be-your-own-openid-provider-and-use-your-blogs-url-for-identification/' rel='bookmark' title='How to Be Your Own OpenID Provider and Use Your blog&#8217;s URL for&nbsp;Identification'>How to Be Your Own OpenID Provider and Use Your blog&#8217;s URL for&nbsp;Identification</a></li>
<li><a href='http://konstruktors.com/blog/wordpress/1241-openid-plugin-and-wordpress-2-8/' rel='bookmark' title='OpenID Plugin and WordPress&nbsp;2.8'>OpenID Plugin and WordPress&nbsp;2.8</a></li>
<li><a href='http://konstruktors.com/blog/wordpress/2534-openid-and-php-5-3/' rel='bookmark' title='OpenID and PHP&nbsp;5.3'>OpenID and PHP&nbsp;5.3</a></li>
</ol>]]></content:encoded>
			<wfw:commentRss>http://konstruktors.com/blog/the-web/268-openid-seatbelt-firefox-plugin/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
	</channel>
</rss>
