<?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>Jan Meszaros</title>
	<atom:link href="http://www.meszaros.cz/feed/" rel="self" type="application/rss+xml" />
	<link>http://www.meszaros.cz</link>
	<description>reflections on technology and society</description>
	<lastBuildDate>Thu, 19 Nov 2009 11:30:25 +0000</lastBuildDate>
	<generator>http://wordpress.org/?v=2.8.6</generator>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
			<item>
		<title>Python virtual environment</title>
		<link>http://www.meszaros.cz/2009/11/python-virtual-environment/</link>
		<comments>http://www.meszaros.cz/2009/11/python-virtual-environment/#comments</comments>
		<pubDate>Thu, 19 Nov 2009 10:42:08 +0000</pubDate>
		<dc:creator>admin</dc:creator>
				<category><![CDATA[Uncategorized]]></category>
		<category><![CDATA[Django]]></category>
		<category><![CDATA[python]]></category>

		<guid isPermaLink="false">http://www.meszaros.cz/?p=119</guid>
		<description><![CDATA[Hosting multiple Django projects requires to keep deployment and libraries in control. Imagine, that an one year old Django application is written for Django 0.96, but new projects are written using the actual version 1.1.1. It is possible, of course, to rewrite the old applications to be compatible with the actual version, but rewriting many [...]]]></description>
			<content:encoded><![CDATA[<p>Hosting multiple Django projects requires to keep deployment and libraries in control. Imagine, that an one year old Django application is written for Django 0.96, but new projects are written using the actual version 1.1.1. It is possible, of course, to rewrite the old applications to be compatible with the actual version, but rewriting many projects might consume a lot of time.</p>
<p>There is a smart solution to deploy applications using different versions of Django on only one production server. This can be done easily using the "<a href="http://http://pypi.python.org/pypi/virtualenv">virtualenv</a>" library, which allows you to create unlimited number of python environments including the site-packages directory.</p>
<p>At first, install the virtualenv library with easy_install:</p>
<div class="geshi no bash">
<ol>
<li class="li1">
<div class="de1">easy_install virtualenv</div>
</li>
</ol>
</div>
<p>Then, create a new Python virtual environment:</p>
<div class="geshi no bash">
<ol>
<li class="li1">
<div class="de1">virtualenv --no-site-packages <span class="sy0">/</span>usr<span class="sy0">/</span><span class="kw3">local</span><span class="sy0">/</span>lib<span class="sy0">/</span>my_new_python_environment</div>
</li>
</ol>
</div>
<p>The --no-site-packages parameter avoids access to the global site-packages dir to the virtual environment. Finally, activate the new python environment with command:</p>
<div class="geshi no bash">
<ol>
<li class="li1">
<div class="de1"><span class="kw3">source</span> <span class="sy0">/</span>usr<span class="sy0">/</span><span class="kw3">local</span><span class="sy0">/</span>lib<span class="sy0">/</span>my_new_python_environment<span class="sy0">/</span>bin<span class="sy0">/</span>activate</div>
</li>
</ol>
</div>
<p>Deactivation of the activated environment is done by following command:</p>
<div class="geshi no bash">
<ol>
<li class="li1">
<div class="de1">deactivate</div>
</li>
</ol>
</div>
<p>Detailed how-to on deploying Django project using the new virtual environment through mod_wsgi is available at <a href="http://jmoiron.net/blog/deploying-django-mod-wsgi-virtualenv/" rel="nofollow">http://jmoiron.net/blog/deploying-django-mod-wsgi-virtualenv/</a></p>]]></content:encoded>
			<wfw:commentRss>http://www.meszaros.cz/2009/11/python-virtual-environment/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Apache as proxy for IIS 7</title>
		<link>http://www.meszaros.cz/2009/11/apache-as-proxy-for-iis-7/</link>
		<comments>http://www.meszaros.cz/2009/11/apache-as-proxy-for-iis-7/#comments</comments>
		<pubDate>Mon, 09 Nov 2009 16:55:22 +0000</pubDate>
		<dc:creator>admin</dc:creator>
				<category><![CDATA[Uncategorized]]></category>
		<category><![CDATA[Apache]]></category>
		<category><![CDATA[IIS]]></category>

		<guid isPermaLink="false">http://www.meszaros.cz/?p=114</guid>
		<description><![CDATA[Believe or not, a large scale AJAX application running on IIS 7 caused fragmentation issues at transport layer causing "connection timeout" error on the client side. An AJAX HTTP request passed to the IIS, which generated a proper response. The response was split to insufficient number of frames in the Windows net core: several frames [...]]]></description>
			<content:encoded><![CDATA[<p>Believe or not, a large scale AJAX application running on IIS 7 caused fragmentation issues at transport layer causing "connection timeout" error on the client side. An AJAX HTTP request passed to the IIS, which generated a proper response. The response was split to insufficient number of frames in the Windows net core: several frames were sent to client, but several frames were never send (and probably never generated).</p>
<p>The only practicable fix was to use Apache web server as proxy between the client and the IIS. There were no fragmentation issues and no timeout errors on the client side since applying and texting the proxy fix.</p>
<p>Apache rocks.</p>]]></content:encoded>
			<wfw:commentRss>http://www.meszaros.cz/2009/11/apache-as-proxy-for-iis-7/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Business process models with open-source tools and standards</title>
		<link>http://www.meszaros.cz/2009/11/business-process-models-with-open-source-tools-and-standards/</link>
		<comments>http://www.meszaros.cz/2009/11/business-process-models-with-open-source-tools-and-standards/#comments</comments>
		<pubDate>Tue, 03 Nov 2009 11:19:29 +0000</pubDate>
		<dc:creator>admin</dc:creator>
				<category><![CDATA[Uncategorized]]></category>
		<category><![CDATA[business process]]></category>
		<category><![CDATA[workflow]]></category>

		<guid isPermaLink="false">http://www.meszaros.cz/?p=101</guid>
		<description><![CDATA[Business processes are often described by workflow, which means a sequence of operations declared as work of a person, a group of people, an organization or staff, one or more simple or complex mechanisms [1]. From the analyst point of view, suitable visualisation is often needed for analysing, projection or presentation of workflow sequences. Programmer [...]]]></description>
			<content:encoded><![CDATA[<p>Business processes are often described by <em>workflow</em>, which means a sequence of operations declared as work of a person, a group of people, an organization or staff, one or more simple or complex mechanisms [1]. From the analyst point of view, suitable visualisation is often needed for analysing, projection or presentation of workflow sequences. Programmer of workflow sequence needs an effective process notation in form of source code.</p>
<p>There are the XPDL notation standard (XML Process Definition Language) [2] and several tools, which supports this standard fulfilling all the needs mentioned above. Please follow references at the bottom for details on XPDL standard. Let's look on several XPDL tools:</p>
<ul>
<li><a href="http://www.enhydra.org/workflow/jawe/index.html">Enhydra JaWE</a>: an open source visual editor for workflow processes definition written in Java. I have been successfully using this editor for enterprise processes analysis. This tool is available as paid "professional edition" which contains a lot of additional features.</li>
<li><a href="http://www.jped.org/index.html">JPEd</a>: a next one open source editor based on previous editor's source code. This editor offers basically quite the same functionality as Endydra plus some useful features in addition, e.g. PDF reports, plug-in interface and SVG graph outputs.</li>
</ul>
<p>I will appreciate comments with your own experiences and tools used for business process modeling.</p>
<p>References:</p>
<p>[1] <a href="http://en.wikipedia.org/wiki/Xpdl" rel="nofollow">http://en.wikipedia.org/wiki/Xpdl</a></p>
<p>[2] <a href="http://www.wfmc.org/xpdl.html" rel="nofollow">http://www.wfmc.org/xpdl.html</a></p>]]></content:encoded>
			<wfw:commentRss>http://www.meszaros.cz/2009/11/business-process-models-with-open-source-tools-and-standards/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Apache virtual host proxy</title>
		<link>http://www.meszaros.cz/2009/10/apache-virtual-host-proxy/</link>
		<comments>http://www.meszaros.cz/2009/10/apache-virtual-host-proxy/#comments</comments>
		<pubDate>Wed, 28 Oct 2009 21:18:58 +0000</pubDate>
		<dc:creator>admin</dc:creator>
				<category><![CDATA[Uncategorized]]></category>
		<category><![CDATA[Apache]]></category>

		<guid isPermaLink="false">http://www.meszaros.cz/?p=83</guid>
		<description><![CDATA[I had to move some virtual hosts from one server (server "A") to another server (server "B") without changing DNS records for affected domains yesterday. This can be done easily with Apache's mod_proxy module. An example configuration of the server "A" is shown below:



&#60;virtualhost *:*&#62;


ProxyPreserveHost On


ProxyPass / http://192.168.111.2/


ProxyPassReverse / http://192.168.111.2/


ServerName hostname.example.com


&#60;/virtualhost&#62;




The ProxyPreserveHost directive preserves the [...]]]></description>
			<content:encoded><![CDATA[<p>I had to move some virtual hosts from one server (server "A") to another server (server "B") without changing DNS records for affected domains yesterday. This can be done easily with Apache's mod_proxy module. An example configuration of the server "A" is shown below:</p>
<div class="geshi no text">
<ol>
<li class="li1">
<div class="de1">&lt;virtualhost *:*&gt;</div>
</li>
<li class="li1">
<div class="de1">ProxyPreserveHost On</div>
</li>
<li class="li1">
<div class="de1">ProxyPass / <a href="http://192.168.111.2/" rel="nofollow">http://192.168.111.2/</a></div>
</li>
<li class="li1">
<div class="de1">ProxyPassReverse / <a href="http://192.168.111.2/" rel="nofollow">http://192.168.111.2/</a></div>
</li>
<li class="li1">
<div class="de1">ServerName hostname.example.com</div>
</li>
<li class="li1">
<div class="de1">&lt;/virtualhost&gt;</div>
</li>
</ol>
</div>
<p>
The ProxyPreserveHost directive preserves the Host HTTP header, which is passed through to the proxied server configured by the ProxyPass directive. Virtual host's configuration on server "B" is the same, which was placed originally on server "A", e.g.:
</p>
<div class="geshi no text">
<ol>
<li class="li1">
<div class="de1">&lt;virtualhost *:*&gt;</div>
</li>
<li class="li1">
<div class="de1">ServerName hostname.example.com</div>
</li>
<li class="li1">
<div class="de1">DocumentRoot /var/www/html/hostname.example.com</div>
</li>
<li class="li1">
<div class="de1">&lt;/virtualhost&gt;</div>
</li>
</ol>
</div>
<p>
References:</p>
<ul>
<li><a href="http://httpd.apache.org/docs/2.0/vhosts/examples.html#proxy" rel="nofollow">http://httpd.apache.org/docs/2.0/vhosts/examples.html#proxy</a></li>
<li><a href="http://httpd.apache.org/docs/2.0/mod/mod_proxy.html" rel="nofollow">http://httpd.apache.org/docs/2.0/mod/mod_proxy.html</a></li>
</ul>]]></content:encoded>
			<wfw:commentRss>http://www.meszaros.cz/2009/10/apache-virtual-host-proxy/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Django REST applications and server with django-roa</title>
		<link>http://www.meszaros.cz/2009/10/django-rest-applications-and-server-with-django-roa/</link>
		<comments>http://www.meszaros.cz/2009/10/django-rest-applications-and-server-with-django-roa/#comments</comments>
		<pubDate>Sun, 25 Oct 2009 10:22:05 +0000</pubDate>
		<dc:creator>admin</dc:creator>
				<category><![CDATA[Uncategorized]]></category>
		<category><![CDATA[Django]]></category>
		<category><![CDATA[REST]]></category>

		<guid isPermaLink="false">http://www.meszaros.cz/?p=75</guid>
		<description><![CDATA[If you are looking for ready-to-use Django REST server and clients solution, I recommend you the David Larlet's  django-roa library. I have been using this library in testing environment from July 2009 with good testing results. The django-roa project is continuously improved, as can be seen on the project changelog.]]></description>
			<content:encoded><![CDATA[<p>If you are looking for ready-to-use Django REST server and clients solution, I recommend you the David Larlet's <a href="http://code.welldev.org/django-roa/wiki/Home"> django-roa</a> library. I have been using this library in testing environment from July 2009 with good testing results. The django-roa project is continuously improved, as can be seen on the <a href="http://code.welldev.org/django-roa/changesets/">project changelog</a>.</p>]]></content:encoded>
			<wfw:commentRss>http://www.meszaros.cz/2009/10/django-rest-applications-and-server-with-django-roa/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>VIM tab configuration for Django HTML templates</title>
		<link>http://www.meszaros.cz/2009/10/vim-configuration-for-django-html-templates/</link>
		<comments>http://www.meszaros.cz/2009/10/vim-configuration-for-django-html-templates/#comments</comments>
		<pubDate>Thu, 22 Oct 2009 16:08:08 +0000</pubDate>
		<dc:creator>admin</dc:creator>
				<category><![CDATA[Uncategorized]]></category>
		<category><![CDATA[Django]]></category>

		<guid isPermaLink="false">http://www.meszaros.cz/?p=59</guid>
		<description><![CDATA[This tiny trick allows you to set tabs (and anything else of course) for Django template filetype. VIM has build-in filetype named "htmldjango", which does all the magic shown in the example configuration below.
An example .vimrc configuration file uses the "autocmd" VIM command, whis must be available in your installation.



if has(&#34;autocmd&#34;)


&#160; &#160; autocmd FileType htmldjango [...]]]></description>
			<content:encoded><![CDATA[<p>This tiny trick allows you to set tabs (and anything else of course) for Django template filetype. VIM has build-in filetype named "htmldjango", which does all the magic shown in the example configuration below.</p>
<p>An example .vimrc configuration file uses the "autocmd" VIM command, whis must be available in your installation.</p>
<div class="geshi no text">
<ol>
<li class="li1">
<div class="de1">if has(&quot;autocmd&quot;)</div>
</li>
<li class="li1">
<div class="de1">&nbsp; &nbsp; autocmd FileType htmldjango set tabstop=4|set shiftwidth=4|set expandtab</div>
</li>
<li class="li1">
<div class="de1">endif</div>
</li>
</ol>
</div>]]></content:encoded>
			<wfw:commentRss>http://www.meszaros.cz/2009/10/vim-configuration-for-django-html-templates/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>Django multiple database support with DB switch feature</title>
		<link>http://www.meszaros.cz/2009/10/django-multiple-database-support-with-db-switch-feature/</link>
		<comments>http://www.meszaros.cz/2009/10/django-multiple-database-support-with-db-switch-feature/#comments</comments>
		<pubDate>Wed, 21 Oct 2009 17:36:17 +0000</pubDate>
		<dc:creator>admin</dc:creator>
				<category><![CDATA[Uncategorized]]></category>
		<category><![CDATA[database]]></category>
		<category><![CDATA[Django]]></category>
		<category><![CDATA[python]]></category>

		<guid isPermaLink="false">http://www.meszaros.cz/?p=51</guid>
		<description><![CDATA[Our Django installation is capable to connect to as many databases as desired and switch between databases in according to session data. We reached this feature overriding several internal Django classes, according to recommendations on http://groups.google.com/group/django-users/msg/d1d7e0af565cc444?. All multiple database features are done without changes in original Django code.
Partial how-to can be found on http://kfalck.net/2009/07/01/multiple-databases-and-sharding-with-django too.
The [...]]]></description>
			<content:encoded><![CDATA[<p>Our Django installation is capable to connect to as many databases as desired and switch between databases in according to session data. We reached this feature overriding several internal Django classes, according to recommendations on <a href="http://groups.google.com/group/django-users/msg/d1d7e0af565cc444?." rel="nofollow">http://groups.google.com/group/django-users/msg/d1d7e0af565cc444?.</a> All multiple database features are done without changes in original Django code.</p>
<p>Partial how-to can be found on <a href="http://kfalck.net/2009/07/01/multiple-databases-and-sharding-with-django" rel="nofollow">http://kfalck.net/2009/07/01/multiple-databases-and-sharding-with-django</a> too.</p>
<p>The solution is successfully tested for more than one month in real-world application and this application is going to be used into production environment soon.</p>
<p>For implementation details or questions leave a comment below.</p>]]></content:encoded>
			<wfw:commentRss>http://www.meszaros.cz/2009/10/django-multiple-database-support-with-db-switch-feature/feed/</wfw:commentRss>
		<slash:comments>2</slash:comments>
		</item>
		<item>
		<title>Hello world!</title>
		<link>http://www.meszaros.cz/2009/10/hello-world/</link>
		<comments>http://www.meszaros.cz/2009/10/hello-world/#comments</comments>
		<pubDate>Mon, 19 Oct 2009 13:37:44 +0000</pubDate>
		<dc:creator>admin</dc:creator>
				<category><![CDATA[Uncategorized]]></category>

		<guid isPermaLink="false">http://www.meszaros.cz/?p=1</guid>
		<description><![CDATA[Welcome to my first tech blog. This is my first post, which has established this website. Enjoy!]]></description>
			<content:encoded><![CDATA[<p>Welcome to my first tech blog. This is my first post, which has established this website. Enjoy!</p>]]></content:encoded>
			<wfw:commentRss>http://www.meszaros.cz/2009/10/hello-world/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
	</channel>
</rss>
