<?xml version='1.0' encoding='UTF-8'?><?xml-stylesheet href="http://www.blogger.com/styles/atom.css" type="text/css"?><feed xmlns='http://www.w3.org/2005/Atom' xmlns:openSearch='http://a9.com/-/spec/opensearchrss/1.0/' xmlns:georss='http://www.georss.org/georss' xmlns:gd='http://schemas.google.com/g/2005' xmlns:thr='http://purl.org/syndication/thread/1.0'><id>tag:blogger.com,1999:blog-2768784216632887015</id><updated>2012-01-20T11:14:08.002+01:00</updated><category term='Poetry'/><category term='globalize2'/><category term='django deployment'/><category term='barcelona organic'/><category term='i18n'/><category term='Ceramics'/><category term='Dojo Toolkit'/><category term='Ruby on Rails'/><category term='aws'/><category term='multilingual models'/><category term='django'/><category term='IANA language codes'/><title type='text'>and other things</title><subtitle type='html'>programming, ceramics, art, life, spain.. and other things, by Thomas Gruner</subtitle><link rel='http://schemas.google.com/g/2005#feed' type='application/atom+xml' href='http://and-other-things.blogspot.com/feeds/posts/default'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2768784216632887015/posts/default?max-results=100'/><link rel='alternate' type='text/html' href='http://and-other-things.blogspot.com/'/><link rel='hub' href='http://pubsubhubbub.appspot.com/'/><author><name>Thomas Gruner</name><uri>http://www.blogger.com/profile/03549173101534896533</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><generator version='7.00' uri='http://www.blogger.com'>Blogger</generator><openSearch:totalResults>33</openSearch:totalResults><openSearch:startIndex>1</openSearch:startIndex><openSearch:itemsPerPage>100</openSearch:itemsPerPage><entry><id>tag:blogger.com,1999:blog-2768784216632887015.post-4943948560181031342</id><published>2010-03-06T19:45:00.005+01:00</published><updated>2010-08-07T21:03:35.586+01:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='django'/><category scheme='http://www.blogger.com/atom/ns#' term='i18n'/><title type='text'>i18n and l10n Django Improvements</title><content type='html'>One of the reasons I started making my own systems rather than sticking with wordpress / joomla etc was that about 6 years ago these systems had no idea how to go about internationalizaion. Now they have caught up quite a bit, but still don´t handle multilingual sites without extra plugins and even then it´s not pretty.&lt;br /&gt;&lt;br /&gt;So it´s nice to see the core of the django framework really coming along with internationalization (i18n) and localization (i10n)&lt;br /&gt;&lt;br /&gt;Some cool features in 1.2 are IDN support for Internationalized Domain Names. For a great summary of more feautres check out the recent Django Advent post by Jannis Leidel at &lt;a href="http://djangoadvent.com/1.2/i18n-l10n-improvements/"&gt;http://djangoadvent.com/1.2/i18n-l10n-improvements/&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;And if you haven´t caught up with the Django Advent, make sure you give it a read through!&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2768784216632887015-4943948560181031342?l=and-other-things.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://and-other-things.blogspot.com/feeds/4943948560181031342/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=2768784216632887015&amp;postID=4943948560181031342' title='2 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2768784216632887015/posts/default/4943948560181031342'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2768784216632887015/posts/default/4943948560181031342'/><link rel='alternate' type='text/html' href='http://and-other-things.blogspot.com/2010/03/i18n-and-l10n-django-imrpovements.html' title='i18n and l10n Django Improvements'/><author><name>Thomas Gruner</name><uri>http://www.blogger.com/profile/03549173101534896533</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>2</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2768784216632887015.post-788738036387040511</id><published>2010-02-23T09:56:00.004+01:00</published><updated>2010-02-23T10:25:24.054+01:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='django'/><category scheme='http://www.blogger.com/atom/ns#' term='django deployment'/><title type='text'>Best Cloud for Django?</title><content type='html'>&lt;a href="http://brianberliner.com/2008/04/09/google-app-engine-body-slams-amazon-web-services/"&gt;http://brianberliner.com/2008/04/09/google-app-engine-body-slams-amazon-web-services/&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;A slightly dated (2 years old) article on Google App Engine vs. AWS.&lt;br /&gt;&lt;br /&gt;I like the quote Brian Berliner:&lt;br /&gt;&lt;blockquote&gt;&lt;p&gt;&lt;em&gt;Amazon Web Services gives you the logs and asks you to build yourself a cabin. Amazon Web Services lets you change that cabin into a chateaux or a lodge, but you’ve got to wield the hammer.&lt;br /&gt;&lt;/em&gt;&lt;em&gt;   &lt;br /&gt;Google App Engine gives you a log cabin and asks you to move in, invite your friends, and start to party. When the party gets too big, Google App Engine builds you a bigger cabin, chateaux, or lodge. You keep partying.&lt;/em&gt;&lt;/p&gt;&lt;p&gt;&lt;br /&gt;&lt;em&gt;&lt;/em&gt;&lt;/p&gt;&lt;/blockquote&gt;It would be interesting to have a more up to date comparison now that both technologies have advanced much farther than they had in 2008.&lt;br /&gt;&lt;br /&gt;Or maybe just use both? App engine for the django part and Amazon Web Services for the CDN?&lt;br /&gt;&lt;br /&gt;&lt;a href="http://us.pycon.org/2009/conference/schedule/event/62/"&gt;http://us.pycon.org/2009/conference/schedule/event/62/&lt;/a&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2768784216632887015-788738036387040511?l=and-other-things.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://and-other-things.blogspot.com/feeds/788738036387040511/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=2768784216632887015&amp;postID=788738036387040511' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2768784216632887015/posts/default/788738036387040511'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2768784216632887015/posts/default/788738036387040511'/><link rel='alternate' type='text/html' href='http://and-other-things.blogspot.com/2010/02/best-cloud-for-django.html' title='Best Cloud for Django?'/><author><name>Thomas Gruner</name><uri>http://www.blogger.com/profile/03549173101534896533</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2768784216632887015.post-3267533599725542912</id><published>2010-02-22T17:29:00.006+01:00</published><updated>2010-02-24T12:31:15.087+01:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='django'/><category scheme='http://www.blogger.com/atom/ns#' term='django deployment'/><category scheme='http://www.blogger.com/atom/ns#' term='aws'/><title type='text'>Django Deployment on AWS Amazon Web Services</title><content type='html'>Updated: Just found a more recent article from usware technologies on setting up django on aws ec2 with mysql and apache.&lt;br /&gt;&lt;br /&gt;&lt;a href="http://uswaretech.com/blog/2009/03/django-with-mysql-and-apache-on-ec2/"&gt;http://uswaretech.com/blog/2009/03/django-with-mysql-and-apache-on-ec2/&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;Orig Post:&lt;br /&gt;&lt;br /&gt;Amazon Web Services seems to be a great alternative to my crappy little vps... and about the same price per year.&lt;br /&gt;&lt;br /&gt;&lt;a href="http://thomas.broxrost.com/2008/08/21/persistent-django-on-amazon-ec2-and-ebs-the-easy-way/"&gt;http://thomas.broxrost.com/2008/08/21/persistent-django-on-amazon-ec2-and-ebs-the-easy-way/&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;Hope to get a chance to do this here and migrate all of my sites to a AWS. Time to hit the books and study a bit.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2768784216632887015-3267533599725542912?l=and-other-things.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://and-other-things.blogspot.com/feeds/3267533599725542912/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=2768784216632887015&amp;postID=3267533599725542912' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2768784216632887015/posts/default/3267533599725542912'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2768784216632887015/posts/default/3267533599725542912'/><link rel='alternate' type='text/html' href='http://and-other-things.blogspot.com/2010/02/django-deployment-on-aws-amazon-web.html' title='Django Deployment on AWS Amazon Web Services'/><author><name>Thomas Gruner</name><uri>http://www.blogger.com/profile/03549173101534896533</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2768784216632887015.post-7652923228070423269</id><published>2010-02-19T16:28:00.004+01:00</published><updated>2010-02-22T17:31:19.523+01:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='django'/><category scheme='http://www.blogger.com/atom/ns#' term='django deployment'/><title type='text'>Django Deployement by the Jakobian</title><content type='html'>Django Deployement by the Jakobian&lt;br /&gt;&lt;br /&gt;&lt;a href="http://github.com/jacobian/django-deployment-workshop"&gt;http://github.com/jacobian/django-deployment-workshop&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;p&gt;This is code and configuration for Jakobian's Django Deployment Workshop at PyCon 2010 (and beyond).&lt;/p&gt; &lt;p&gt;Here you'll find example config used to set up an example deployment environment for a Python WSGI stack, including: A Django site deployed with Fabric and Buildout Apache/mod_wsgi application serversNginx load balancers and media servers Memcached PostgreSQL with pg_standby&lt;/p&gt;&lt;span&gt;&lt;span&gt;&lt;/span&gt;&lt;/span&gt;&lt;a href="http://www.postgresql.org/docs/current/static/pgstandby.html" class="reference external"&gt;&lt;/a&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2768784216632887015-7652923228070423269?l=and-other-things.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://and-other-things.blogspot.com/feeds/7652923228070423269/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=2768784216632887015&amp;postID=7652923228070423269' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2768784216632887015/posts/default/7652923228070423269'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2768784216632887015/posts/default/7652923228070423269'/><link rel='alternate' type='text/html' href='http://and-other-things.blogspot.com/2010/02/django-deployement-by-jakobian.html' title='Django Deployement by the Jakobian'/><author><name>Thomas Gruner</name><uri>http://www.blogger.com/profile/03549173101534896533</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2768784216632887015.post-3176316751098976065</id><published>2010-02-08T09:41:00.001+01:00</published><updated>2010-02-08T09:43:11.467+01:00</updated><title type='text'>Django - Web and Mobile at the same time</title><content type='html'>Interesting strategy for having a mobile and regualr site at the same time using django with interesting discussion in the comments about thread safe deployment requirements.&lt;br /&gt;&lt;br /&gt;&lt;a href="http://www.codekoala.com/blog/2010/how-i-have-mobile-desktop-site-django/"&gt;http://www.codekoala.com/blog/2010/how-i-have-mobile-desktop-site-django/&lt;/a&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2768784216632887015-3176316751098976065?l=and-other-things.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://and-other-things.blogspot.com/feeds/3176316751098976065/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=2768784216632887015&amp;postID=3176316751098976065' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2768784216632887015/posts/default/3176316751098976065'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2768784216632887015/posts/default/3176316751098976065'/><link rel='alternate' type='text/html' href='http://and-other-things.blogspot.com/2010/02/django-web-and-mobile-at-same-time.html' title='Django - Web and Mobile at the same time'/><author><name>Thomas Gruner</name><uri>http://www.blogger.com/profile/03549173101534896533</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2768784216632887015.post-3903417924620721687</id><published>2009-12-01T15:00:00.002+01:00</published><updated>2009-12-01T15:04:43.592+01:00</updated><title type='text'>Modular search arrives for django</title><content type='html'>Haystack 1.0 has just been released to provide an easy way to search through your models via modular search.&lt;br /&gt;&lt;br /&gt;&lt;a href="http://toastdriven.com/fresh/haystack-10-final-released/"&gt;http://toastdriven.com/fresh/haystack-10-final-released/&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;Looks exciting and really quick to plug a search into a new site.&lt;br /&gt;&lt;br /&gt;Check haystack out here:&lt;br /&gt;&lt;a href="http://haystacksearch.org/"&gt;&lt;br /&gt;http://haystacksearch.org/&lt;/a&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2768784216632887015-3903417924620721687?l=and-other-things.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://and-other-things.blogspot.com/feeds/3903417924620721687/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=2768784216632887015&amp;postID=3903417924620721687' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2768784216632887015/posts/default/3903417924620721687'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2768784216632887015/posts/default/3903417924620721687'/><link rel='alternate' type='text/html' href='http://and-other-things.blogspot.com/2009/12/modular-search-arrives-for-django.html' title='Modular search arrives for django'/><author><name>Thomas Gruner</name><uri>http://www.blogger.com/profile/03549173101534896533</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2768784216632887015.post-2154718392401762902</id><published>2009-09-21T13:32:00.002+01:00</published><updated>2009-09-21T13:34:45.330+01:00</updated><title type='text'>The Django Community Blogs List</title><content type='html'>An excellent resource for up to date information about what is happening with django:&lt;br /&gt;&lt;br /&gt;&lt;a href="http://www.djangoproject.com/community/"&gt;http://www.djangoproject.com/community/&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;I don´t know how I missed this for so long, and also why is there not a link through from the front page of the Django website with the latest entries to promote the community space more?&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2768784216632887015-2154718392401762902?l=and-other-things.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://and-other-things.blogspot.com/feeds/2154718392401762902/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=2768784216632887015&amp;postID=2154718392401762902' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2768784216632887015/posts/default/2154718392401762902'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2768784216632887015/posts/default/2154718392401762902'/><link rel='alternate' type='text/html' href='http://and-other-things.blogspot.com/2009/09/django-community-blogs-list.html' title='The Django Community Blogs List'/><author><name>Thomas Gruner</name><uri>http://www.blogger.com/profile/03549173101534896533</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2768784216632887015.post-5874073769469165145</id><published>2009-09-17T14:06:00.003+01:00</published><updated>2009-09-17T14:11:57.534+01:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Dojo Toolkit'/><title type='text'>Dojo gets Dialogs for Dialogs</title><content type='html'>For my web apps, I often need one pop up dialog to open another, both being modal. Up to and including Dojo 1.3 this wasn´t possible, but as of Dojo 1.4 or in the current subversion  trunk it has been added. See ticket &lt;a href="http://trac.dojotoolkit.org/ticket/6759"&gt;http://trac.dojotoolkit.org/ticket/6759&lt;/a&gt; for more information. Nice work to the Dojo team, I have been upgrading from .4 to the current svn release and am impressed by the framework. I even find lots of documentation.&lt;br /&gt;&lt;br /&gt;Before I had considered switching to jQuery UI, but the jQuery UI is not mature or complete enough for large scale rich applications. Dojo´s stability and huge offering of premade widgets convinced me to stay with Dojo, and I think it was a good choice.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2768784216632887015-5874073769469165145?l=and-other-things.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://and-other-things.blogspot.com/feeds/5874073769469165145/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=2768784216632887015&amp;postID=5874073769469165145' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2768784216632887015/posts/default/5874073769469165145'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2768784216632887015/posts/default/5874073769469165145'/><link rel='alternate' type='text/html' href='http://and-other-things.blogspot.com/2009/09/dojo-gets-dialogs-for-dialogs.html' title='Dojo gets Dialogs for Dialogs'/><author><name>Thomas Gruner</name><uri>http://www.blogger.com/profile/03549173101534896533</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2768784216632887015.post-2424137854199888289</id><published>2009-09-17T09:40:00.002+01:00</published><updated>2009-09-17T09:42:53.085+01:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='django'/><category scheme='http://www.blogger.com/atom/ns#' term='Dojo Toolkit'/><title type='text'>Dojango = Dojo + Django</title><content type='html'>I am happy to find out my favorite server side web application framework is already linked to my favorite browser app framework.&lt;br /&gt;&lt;br /&gt;&lt;a href="http://code.google.com/p/dojango/"&gt;http://code.google.com/p/dojango/&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;One really cool feature is the middle ware that lets you use Dojo by default for the Django admin inputs. Nice!&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2768784216632887015-2424137854199888289?l=and-other-things.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://and-other-things.blogspot.com/feeds/2424137854199888289/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=2768784216632887015&amp;postID=2424137854199888289' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2768784216632887015/posts/default/2424137854199888289'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2768784216632887015/posts/default/2424137854199888289'/><link rel='alternate' type='text/html' href='http://and-other-things.blogspot.com/2009/09/dojango-dojo-django.html' title='Dojango = Dojo + Django'/><author><name>Thomas Gruner</name><uri>http://www.blogger.com/profile/03549173101534896533</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2768784216632887015.post-4092470877017270216</id><published>2009-08-13T16:24:00.005+01:00</published><updated>2009-08-13T16:58:02.082+01:00</updated><title type='text'>Django 1.1 What´s New?</title><content type='html'>It was exciting to see that Django 1.1 has been released. It seems like one of the last bugs that was holding up the project was more complex than it seems. The bug had to do with properly reversing urls, which led to the creation of url namespaces, which seems like an excellent solution to me.&lt;br /&gt;&lt;br /&gt;From the Django Site:&lt;br /&gt;&lt;br /&gt;&lt;p&gt;&lt;/p&gt;&lt;blockquote&gt;&lt;p&gt;Django 1.1 improves &lt;a class="reference external" href="http://docs.djangoproject.com/en/dev/topics/http/urls/#naming-url-patterns"&gt;&lt;em&gt;named URL patterns&lt;/em&gt;&lt;/a&gt; with the introduction of URL "namespaces."&lt;/p&gt; &lt;p&gt;In short, this feature allows the same group of URLs, from the same application, to be included in a Django URLConf multiple times, with varying (and potentially nested) named prefixes which will be used when performing reverse resolution. In other words, reusable applications like Django's admin interface may be registered multiple times without URL conflicts.&lt;/p&gt;&lt;/blockquote&gt;&lt;p&gt;&lt;/p&gt;&lt;p&gt;This is fundamental if you start building large sites and need to customize various admin panels, or reuse applications accross a large site.&lt;br /&gt;&lt;/p&gt;You can view the Django 1.1 release notes here:&lt;br /&gt;&lt;a href="http://docs.djangoproject.com/en/dev/releases/1.1/#editable-fields-on-the-change-list"&gt;http://docs.djangoproject.com/en/dev/releases/1.1/&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;Other big enhancements seem to be in stretching the capabilities of the ORM and the way that models can be used with forms via proxy models.&lt;br /&gt;&lt;br /&gt;The GeoDjango project has also been integrated into the django core for applications that need to use spatial data.&lt;br /&gt;&lt;br /&gt;Another change on the Django site is that comments have been removed entirely. It does seem to take away a bit of the community feel that the project had in the past, and it would be nice to know what prompted the change.&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;Elsewhere on the web:&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;WebMonkey&lt;/span&gt; -  &lt;a href="http://www.webmonkey.com/blog/Django_1DOT1_Arrives_Just_in_Time_for_DjangoCon_2009"&gt;Django 1.1 Arrives Just in Time for DjangoCon 2009&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;Excess.org&lt;/span&gt; - &lt;a href="http://excess.org/article/2009/05/django-1-1-talk-text/"&gt;Django 1.1 Talk Text&lt;/a&gt;, &lt;a href="http://excess.org/article/2009/06/django-1-1-talk-video/"&gt;Django 1.1 Talk Video&lt;/a&gt;&lt;br /&gt;(prerelease overview, but interesting for those new to Django)&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;MoreThanSeven.com &lt;/span&gt;- &lt;a href="http://morethanseven.net/2009/07/23/whats-new-django-11/"&gt;What´s new in Django 1.1&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;DjangoRocks.com&lt;/span&gt; - &lt;a href="http://www.djangorocks.com/blog/2009/08/03/django-11-now-live.html"&gt;Django 1.1 now live&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;h2&gt;&lt;a href="http://www.webmonkey.com/blog/Django_1DOT1_Arrives_Just_in_Time_for_DjangoCon_2009" rel="bookmark" title="Permanent Link: Django 1.1 Arrives Just in Time for DjangoCon 2009"&gt;&lt;/a&gt;&lt;/h2&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2768784216632887015-4092470877017270216?l=and-other-things.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://and-other-things.blogspot.com/feeds/4092470877017270216/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=2768784216632887015&amp;postID=4092470877017270216' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2768784216632887015/posts/default/4092470877017270216'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2768784216632887015/posts/default/4092470877017270216'/><link rel='alternate' type='text/html' href='http://and-other-things.blogspot.com/2009/08/django-11-whats-new.html' title='Django 1.1 What´s New?'/><author><name>Thomas Gruner</name><uri>http://www.blogger.com/profile/03549173101534896533</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2768784216632887015.post-6111271396914535512</id><published>2009-04-14T22:52:00.012+01:00</published><updated>2009-11-18T17:24:49.455+01:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='django'/><title type='text'>Django Best Practice Guides and Interesting Blogs</title><content type='html'>&lt;span&gt;A personal list of some good guides and blogs as I find them&lt;/span&gt;&lt;span style="font-weight: bold;"&gt;&lt;br /&gt;&lt;br /&gt;Guides&lt;/span&gt;&lt;br /&gt;&lt;ul&gt;&lt;li&gt;&lt;a href="http://lincolnloop.com/django-best-practices/"&gt;A nice list of django best practices by Lincoln Loop in Colorado&lt;/a&gt;&lt;/li&gt;&lt;li&gt;&lt;a href="http://www.ibm.com/developerworks/opensource/library/os-django/"&gt;Setting up Django on a production server by IBM&lt;/a&gt;&lt;/li&gt;&lt;li&gt;&lt;a href="http://www.pointy-stick.com/blog/2009/02/03/some-simple-django-debugging-tools/"&gt;Debugging Django&lt;/a&gt;&lt;/li&gt;&lt;li&gt;&lt;a href="http://www.saltycrane.com/blog/2009/05/notes-using-pip-and-virtualenv-django/"&gt;Notes on using pip and virtualenv with Django&lt;/a&gt;&lt;/li&gt;&lt;li&gt;&lt;a href="http://www.gawel.org/weblog/en/2009/08/buildout_vs_pip_why_i_choose_buildout"&gt;Pip vs. Buildout&lt;/a&gt;&lt;br /&gt;&lt;/li&gt;&lt;/ul&gt;&lt;span style="font-weight: bold;"&gt;Blogs&lt;/span&gt;&lt;br /&gt;&lt;ul&gt;&lt;li&gt;&lt;a href="http://jacobian.org/writing/"&gt;Jakob Kaplan-Moss&lt;/a&gt;&lt;/li&gt;&lt;li&gt;&lt;a href="http://ericholscher.com/blog/"&gt;Eric Holscher&lt;/a&gt;&lt;br /&gt;&lt;/li&gt;&lt;li&gt;&lt;a href="http://thisweekindjango.com/"&gt;Pointy-Stick&lt;/a&gt;&lt;br /&gt;&lt;/li&gt;&lt;li&gt;&lt;a href="http://www.b-list.org/weblog/categories/django/"&gt;The B-List&lt;/a&gt;&lt;/li&gt;&lt;li&gt;&lt;a href="http://blog.awarelabs.com/"&gt;Django Aware Blog&lt;/a&gt;&lt;/li&gt;&lt;li&gt;&lt;a href="http://uswaretech.com/blog/"&gt;Uswaretech Blog&lt;/a&gt;&lt;/li&gt;&lt;/ul&gt;&lt;span style="font-weight: bold;"&gt;Books&lt;/span&gt;&lt;br /&gt;&lt;ul&gt;&lt;li&gt;&lt;a href="http://www.djangobook.com/"&gt;The Official Django Book online&lt;/a&gt;&lt;/li&gt;&lt;li&gt;&lt;a href="http://www.packtpub.com/django-1-0-website-development-2nd-edition/book"&gt;Django 1.0 Website Development from Packt Publishing&lt;/a&gt;&lt;br /&gt;&lt;/li&gt;&lt;/ul&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;Have a good django blog, guide, or tutorial? Send me an email at tom.gruner@gmail.com and I will review it and add it.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2768784216632887015-6111271396914535512?l=and-other-things.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://and-other-things.blogspot.com/feeds/6111271396914535512/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=2768784216632887015&amp;postID=6111271396914535512' title='1 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2768784216632887015/posts/default/6111271396914535512'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2768784216632887015/posts/default/6111271396914535512'/><link rel='alternate' type='text/html' href='http://and-other-things.blogspot.com/2009/04/django-best-practice-guides.html' title='Django Best Practice Guides and Interesting Blogs'/><author><name>Thomas Gruner</name><uri>http://www.blogger.com/profile/03549173101534896533</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2768784216632887015.post-7309229247310880258</id><published>2009-04-14T06:29:00.010+01:00</published><updated>2009-04-24T09:47:17.760+01:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='django'/><title type='text'>Setting up Django on a vps</title><content type='html'>It´s not often that I have really nice experiences with linux. But I have to say, installing django on a vps has really been a pleasure, no compatability problems and quick to do.&lt;br /&gt;&lt;br /&gt;My choice of hosting was a openvz basic vps from a2hosting.com. I chose the centos 5 afull linux distribution, because  I had a conflict with the centos 5 lamp version one when I tried yum update.&lt;br /&gt;&lt;br /&gt;You have to install a few thing on it, but if you follow the tutorial for setting up the server here:&lt;br /&gt;&lt;br /&gt;http://www.rayheffer.com/linux%20web%20server.shtml&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;and install mysql yourself (if you choose the afull version)&lt;br /&gt;&lt;pre&gt;&lt;code&gt;yum install mysql mysql-server&lt;br /&gt;/sbin/chkconfig --levels 235 mysqld on&lt;br /&gt;/etc/init.d/mysqld start&lt;br /&gt;&lt;/code&gt;&lt;/pre&gt;Then you get a nice empty vps to play with ready for your aps! And no control panel like plesk or cpanel that makes it confusing on how to set up vhosts, just go ahead with the normal vhosts on apache.&lt;br /&gt;&lt;br /&gt;The one real gotcha that happened to me is that mysqld confilcts with yum for some reason and yum complains about not being able to start a new thread. There is a work around about turning off the yum plugin that allows the nearest host lookup. Or, if it´s an option you can just stop mysqld for a moment.&lt;br /&gt;&lt;br /&gt;The error I got with yum was:&lt;br /&gt;&lt;code&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="color: rgb(51, 51, 51);font-family:courier new;" &gt;File "/usr/lib/python2.4/threading.py", line 416, in start&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(51, 51, 51);font-family:courier new;" &gt;    _start_new_thread(self.__bootstrap, ())&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(51, 51, 51);font-family:courier new;" &gt;thread.error: can't start new thread&lt;/span&gt;&lt;br /&gt;&lt;/code&gt;&lt;br /&gt;and the fix was to this:&lt;br /&gt;&lt;br /&gt;&lt;span style="color: rgb(51, 51, 51);font-family:courier new;font-size:85%;"  &gt;cd /etc/yum&lt;/span&gt;&lt;span style="font-size:85%;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="color: rgb(51, 51, 51);font-family:courier new;font-size:85%;"  &gt;# ls&lt;/span&gt;&lt;span style="font-size:85%;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="color: rgb(51, 51, 51);font-family:courier new;font-size:85%;"  &gt;pluginconf.d  yum-daily.yum&lt;/span&gt;&lt;span style="font-size:85%;"&gt;&lt;br /&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="color: rgb(51, 51, 51);font-family:courier new;font-size:85%;"  &gt;# cd pluginconf.d/&lt;/span&gt;&lt;span style="font-size:85%;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="color: rgb(51, 51, 51);font-family:courier new;font-size:85%;"  &gt;# ls&lt;/span&gt;&lt;span style="font-size:85%;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="color: rgb(51, 51, 51);font-family:courier new;font-size:85%;"  &gt;downloadonly.conf  fastestmirror.conf&lt;/span&gt;&lt;span style="font-size:85%;"&gt;&lt;br /&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="color: rgb(51, 51, 51);font-family:courier new;font-size:85%;"  &gt;# mv fastestmirror.conf fastestmirror.conf.unused&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family: arial;"&gt;&lt;span style="color: rgb(0, 0, 0);"&gt;After a bit more experience, I suspected as well that I needed to optimize mysql memory usage a bit and followed some ideas on this blog post for mysql:&lt;br /&gt;&lt;a href="http://www.satchmoproject.com/blog/2007/sep/25/optimizing-django-vps-setup/"&gt;http://www.satchmoproject.com/blog/2007/sep/25/optimizing-django-vps-setup/&lt;/a&gt; &lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;/span&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2768784216632887015-7309229247310880258?l=and-other-things.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://and-other-things.blogspot.com/feeds/7309229247310880258/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=2768784216632887015&amp;postID=7309229247310880258' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2768784216632887015/posts/default/7309229247310880258'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2768784216632887015/posts/default/7309229247310880258'/><link rel='alternate' type='text/html' href='http://and-other-things.blogspot.com/2009/04/setting-up-django-on-vps.html' title='Setting up Django on a vps'/><author><name>Thomas Gruner</name><uri>http://www.blogger.com/profile/03549173101534896533</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2768784216632887015.post-6710273541547389194</id><published>2009-04-09T09:58:00.004+01:00</published><updated>2009-04-09T10:09:39.898+01:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='django'/><title type='text'>The Washington Post releases it´s open source django apps</title><content type='html'>I´m really impressed to see that the Washinton Post &lt;a href="http://opensource.washingtontimes.com/blog/post/coordt/2009/02/washington-times-releases-open-source-projects/"&gt;has released some interesting Django Apps.&lt;br /&gt;&lt;/a&gt;&lt;br /&gt;They are things which seem quite useful and include a media project that sounds quite advanced. Here are the projects all under the friendly Apache 2.0 license:&lt;br /&gt;&lt;br /&gt;&lt;ul&gt;&lt;li&gt; &lt;p&gt;&lt;a href="http://opensource.washingtontimes.com/projects/django-projectmgr/"&gt;django-projectmgr&lt;/a&gt;, a source code repository manager and issue tracking application. It allows threaded discussion of bugs and features, separation of bugs, features and tasks and easy creation of source code repositories for either public or private consumption.&lt;/p&gt; &lt;/li&gt;&lt;li&gt; &lt;p&gt;&lt;a href="http://opensource.washingtontimes.com/projects/django-supertagging/"&gt;django-supertagging&lt;/a&gt;, an interface to the &lt;a href="http://www.opencalais.com/"&gt;Open Calais&lt;/a&gt; service for semantic markup.&lt;/p&gt; &lt;/li&gt;&lt;li&gt; &lt;p&gt;&lt;a href="http://opensource.washingtontimes.com/projects/django-massmedia/"&gt;django-massmedia&lt;/a&gt;, a multi-media management application. It can create galleries with multiple media types within, allows mass uploads with an archive file, and has a plugin for &lt;a href="http://www.fckeditor.net/"&gt;fckeditor&lt;/a&gt; for embedding the objects from a rich text editor.&lt;/p&gt; &lt;/li&gt;&lt;li&gt; &lt;p&gt;&lt;a href="http://opensource.washingtontimes.com/projects/django-clickpass/"&gt;django-clickpass&lt;/a&gt;, an interface to the &lt;a href="http://www.clickpass.com/"&gt;clickpass.com&lt;/a&gt; OpenID service that allows users to create an account with a Google, Yahoo!, Facebook, Hotmail or AIM account.&lt;/p&gt;&lt;/li&gt;&lt;li&gt;&lt;a href="http://opensource.washingtontimes.com/projects/django-contenteditor/"&gt;django-contenteditor&lt;/a&gt;: &lt;p&gt;Allows editing of model content fields (non relational) using your favorite text editor. Works kind of like VCS commits when they need a message. It fetches the models you select, serializes the objects into a temporary text file, and then loads that file with a specified text editor (eg vi,nano,emacs). Once you are done editing, quit the text editor and the changes are committed to your database. Very quick and easy way to update content without going into the admin. I use it to get around the WYSIWYG editor in the admin.&lt;/p&gt;&lt;/li&gt;&lt;li&gt;&lt;a href="http://opensource.washingtontimes.com/projects/django-apibuilder/"&gt;django-apibuilder&lt;/a&gt;: &lt;p&gt;Provides a data interface for external applications outside of Django. Supports Authorization/Authentication against existing Django User objects. Comes with example libraries in Python and JavaScript (more to come)&lt;/p&gt;&lt;/li&gt;&lt;/ul&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2768784216632887015-6710273541547389194?l=and-other-things.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://and-other-things.blogspot.com/feeds/6710273541547389194/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=2768784216632887015&amp;postID=6710273541547389194' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2768784216632887015/posts/default/6710273541547389194'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2768784216632887015/posts/default/6710273541547389194'/><link rel='alternate' type='text/html' href='http://and-other-things.blogspot.com/2009/04/washington-post-releases-its-open.html' title='The Washington Post releases it´s open source django apps'/><author><name>Thomas Gruner</name><uri>http://www.blogger.com/profile/03549173101534896533</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2768784216632887015.post-470464338804556692</id><published>2009-04-08T17:32:00.016+01:00</published><updated>2009-05-02T20:57:07.011+01:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='django'/><title type='text'>Interesting Ways to Extend Django</title><content type='html'>I´m compiling a list of interesting ways to extend Django. It´s based on things I will need at some point as I develop my first real Django application.&lt;br /&gt;&lt;ul&gt;&lt;li&gt;&lt;a href="http://kunxi.org/archives/2009/01/how-to-put-a-file-in-django/"&gt;Use PUT http verb to upload a file&lt;/a&gt;&lt;/li&gt;&lt;li&gt;&lt;a href="http://github.com/luddep/django-imagehandler/tree/master"&gt;Admin Visual Image Cropping&lt;/a&gt;&lt;/li&gt;&lt;li&gt;&lt;a href="http://github.com/drogus/jquery-upload-progress/tree/master"&gt;File Upload Progress Bar&lt;/a&gt;&lt;br /&gt;&lt;/li&gt;&lt;li&gt;&lt;a href="http://biohackers.net/wiki/Django1.0/Thumbnail"&gt;Django 1.0 Thumbnail creation&lt;/a&gt;&lt;/li&gt;&lt;li&gt;&lt;a href="http://code.google.com/p/django-thumbs/issues/detail?id=4#c4"&gt;Flexible sizes and thumbnails with custom admin widget&lt;/a&gt;&lt;br /&gt;&lt;/li&gt;&lt;li&gt;&lt;span style="font-size:100%;"&gt;&lt;a href="http://squarefactor.com/words/2009/jan/06/django-custom-model-fields-with-custom-widget/"&gt;Django Custom Model Field With Custom Admin Widget (Geolocation)&lt;/a&gt;&lt;/span&gt;&lt;/li&gt;&lt;li&gt;&lt;span style="font-size:100%;"&gt;&lt;a href="http://www.kryogenix.org/days/category/software/web/django"&gt;Change Admin widget for a field&lt;/a&gt;&lt;br /&gt;&lt;/span&gt;&lt;/li&gt;&lt;li&gt;&lt;a href="http://code.djangoproject.com/wiki/GoFlow"&gt;Workflow&lt;/a&gt;&lt;/li&gt;&lt;li&gt;&lt;a href="http://blog.awarelabs.com/?p=84" rel="bookmark" title="Permanent Link: Digg Style Pagination In Django Revisited"&gt;Digg Style Pagination In Django Revisited&lt;/a&gt;&lt;/li&gt;&lt;li&gt;&lt;a href="http://code.google.com/p/django-localeurl/"&gt;Add the language or locale to an URL (essential for multilingual site seo)&lt;/a&gt;&lt;/li&gt;&lt;li&gt;&lt;a href="http://www.google.com/url?sa=t&amp;amp;source=web&amp;amp;ct=res&amp;amp;cd=1&amp;amp;url=http%3A%2F%2Fcode.google.com%2Fp%2Fdjango-filebrowser%2F&amp;amp;ei=rUjoSYS7LZq7jAenrPz2Aw&amp;amp;usg=AFQjCNFgSsvh_3Kd7yynZUlMmrDqqV75Ug&amp;amp;sig2=LxCfIMrafsxPZI1L8o1kBA"&gt;Django File Brower&lt;/a&gt;&lt;/li&gt;&lt;li&gt;&lt;a href="http://code.google.com/p/django-tinymce/"&gt;Django TinyMCE&lt;/a&gt;&lt;/li&gt;&lt;li&gt;&lt;a href="http://code.google.com/p/django-grappelli/"&gt;Django Grapelli Admin Template&lt;/a&gt; (beta)&lt;/li&gt;&lt;li&gt;&lt;a href="http://www.b-list.org/weblog/2008/nov/09/dynamic-forms/"&gt;Customizing contact form fields with new forms&lt;/a&gt;&lt;/li&gt;&lt;li&gt;&lt;a href="http://rob.cogit8.org/blog/2008/Oct/29/a-django-management-command-for-amazon-s3/"&gt;Amazon S3 Sync&lt;/a&gt;&lt;/li&gt;&lt;li&gt;&lt;a href="http://code.google.com/p/django-openid-auth/"&gt;Open ID Auth&lt;/a&gt;&lt;/li&gt;&lt;li&gt;&lt;a href="http://www.arnebrodowski.de/blog/507-Add-and-remove-Django-Admin-Inlines-with-JavaScript.html"&gt;Add and remove inlines in the admin using jQuery&lt;/a&gt;&lt;br /&gt;&lt;/li&gt;&lt;li&gt;&lt;a href="http://code.djangoproject.com/wiki/DjangoResources#Djangoapplicationcomponents"&gt;The big list at the Django Wiki&lt;/a&gt;&lt;br /&gt;&lt;/li&gt;&lt;/ul&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2768784216632887015-470464338804556692?l=and-other-things.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://and-other-things.blogspot.com/feeds/470464338804556692/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=2768784216632887015&amp;postID=470464338804556692' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2768784216632887015/posts/default/470464338804556692'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2768784216632887015/posts/default/470464338804556692'/><link rel='alternate' type='text/html' href='http://and-other-things.blogspot.com/2009/04/interesting-ways-to-extend-django.html' title='Interesting Ways to Extend Django'/><author><name>Thomas Gruner</name><uri>http://www.blogger.com/profile/03549173101534896533</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2768784216632887015.post-7264588368735060676</id><published>2009-04-08T10:13:00.005+01:00</published><updated>2009-04-08T11:58:08.886+01:00</updated><title type='text'>Is racism still alive and well in the age of Obama?</title><content type='html'>For me, applying different standards of justice to people based on their ethnic background is racism. So, I find it quite scary to have to ask if in the U.S. racism is not a thing of the past. It is scary to me what irrational fear can motivate those with power and disort the justice system of the U.S.&lt;br /&gt;&lt;br /&gt;Youssef Megahed was found not guilty by a jury of bomb charges only to be surrounded three days later by plain clothes officers to be deported. It must have been terrifying to be arrested in a Walmart parking lot by people without badges and put in a car with darkened windows. Listen to the story told by Youssef´s father Samir:&lt;br /&gt;&lt;br /&gt;&lt;b&gt;SAMIR MEGAHED: &lt;/b&gt;What happened yesterday or starting from Friday? Starting from Friday, I am very happy, and I am proud for my son, because he is innocent. After the judge, Steven Merryday, said twice that my son is not guilty, I feel happiness, and I’m very proud, because the work system—the systems work, sorry. And I feel happiness because the jury choose the right end for the bad story, which upon my son for two years. After that, I took my son from the court, and we returned to our house, and we started to celebrate his win in this case. We go to the beach Saturday and Sunday.&lt;br /&gt;&lt;p&gt;Yesterday around noon o’clock, I took my son to buy something from Wal-Mart, which is in Bruce B. Downs, when we received a call from our lawyer that we must meet him immediately for some reason. That’s why we left the shop. And when we got to the parking lot, we found ourselves surrounded by more than seven people. They dress in normal clothes without any badges, without any IDs, surrounded us and give me a paper. And they told me, “Sign this.” “Sign this for what?” I ask him. “This for what?” They told me, “We are going to take your son, because we are going to deport him.” I told him there is no penalty or anything upon my son to take him from me. And I told him, “Do have an Arabic translation for this paper to sign it for you?” He told me, “No.”&lt;br /&gt;&lt;/p&gt;&lt;p&gt;I asked him about the badge, but he refused to show me any badge or any ID, and they surrounded me and took my son from me and put him in a normal car, not a mini-van, not a police car. It is only a car with dark glass. You cannot see anybody inside it. But there is a driver on it, because when they put him in this car, they moved without anyone entering as the driver.&lt;br /&gt;&lt;/p&gt;I tried to stop in front of this car, because I asked this person who showed me this paper that we must speak to our lawyer and my son wants to speak to him to let him know that somebody took him. I don’t know if they are from FBI, from policemen or from immigration. I don’t know. But they refused. And when I tried to give my son his telephone, they surrounded me and pushed me in front of the car, and they moved quickly. But they are more than seven, and they have more than five cars, because when they surrounded us, they are in front of me, back of me and around me from all directions.&lt;br /&gt;&lt;br /&gt;&lt;a href="http://www.democracynow.org/2009/4/7/youseff"&gt;View the full story at Democracy Now &gt;&gt;&lt;/a&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2768784216632887015-7264588368735060676?l=and-other-things.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://and-other-things.blogspot.com/feeds/7264588368735060676/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=2768784216632887015&amp;postID=7264588368735060676' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2768784216632887015/posts/default/7264588368735060676'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2768784216632887015/posts/default/7264588368735060676'/><link rel='alternate' type='text/html' href='http://and-other-things.blogspot.com/2009/04/racism-still-alive-and-well-in-age-of.html' title='Is racism still alive and well in the age of Obama?'/><author><name>Thomas Gruner</name><uri>http://www.blogger.com/profile/03549173101534896533</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2768784216632887015.post-6817842712936676352</id><published>2009-04-08T09:02:00.009+01:00</published><updated>2009-04-09T09:07:34.476+01:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='django'/><category scheme='http://www.blogger.com/atom/ns#' term='i18n'/><category scheme='http://www.blogger.com/atom/ns#' term='multilingual models'/><title type='text'>List of Django Multilingual Model Solutions</title><content type='html'>A list of multilingual solutions for Django. Do you know of some more?&lt;br /&gt;&lt;ul&gt;&lt;li&gt;&lt;a href="http://code.google.com/p/django-multilingual-model/"&gt;django-multilingual-model&lt;/a&gt;&lt;br /&gt;&lt;/li&gt;&lt;li&gt;&lt;a href="http://github.com/foxbunny/django-i18n-model/tree/master"&gt;django-18n-model&lt;/a&gt;&lt;/li&gt;&lt;li&gt;&lt;a href="http://code.google.com/p/django-multilingual/"&gt;django-multilingual&lt;/a&gt;&lt;/li&gt;&lt;li&gt;&lt;a href="http://code.google.com/p/django-transmeta/"&gt;django-transmeta&lt;/a&gt;&lt;/li&gt;&lt;li&gt;&lt;a href="http://code.google.com/p/django-pluggable-model-i18n/"&gt;django-pluggable-model-i18n&lt;/a&gt;&lt;/li&gt;&lt;li&gt;&lt;a href="http://code.google.com/p/django-modeltranslation/wiki/InstallationAndUsage"&gt;django-modeltranslation&lt;/a&gt;&lt;/li&gt;&lt;li&gt;&lt;a href="http://www.rafaljonca.org/blog/2009/03/08/third-style-django-multilingual-data-handling/"&gt;third-style TranslationModel&lt;/a&gt;&lt;/li&gt;&lt;li&gt;&lt;a href="http://github.com/nshah/django-translatable-model/tree/master"&gt;django-translatable-model&lt;/a&gt;&lt;/li&gt;&lt;li&gt;&lt;a href="http://snippets.dzone.com/posts/show/2979"&gt;all in one table&lt;/a&gt;&lt;br /&gt;&lt;/li&gt;&lt;/ul&gt;This really speaks about the flexibility of the django model api as all use different solutions to the same problem. It´s hard to say which is the best, as it depends a lot on your project requirements, but I am drawn to the simple ones like django-multilingual-model.&lt;br /&gt;&lt;br /&gt;With django-multilingual-model you need to create one translation model per base model. But, this has a huge advantage to be able to control non text translations like attached files and images or publish per language settings. And it is the easiest to understand, making it really worth looking at before creating your next multilingual app.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2768784216632887015-6817842712936676352?l=and-other-things.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://and-other-things.blogspot.com/feeds/6817842712936676352/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=2768784216632887015&amp;postID=6817842712936676352' title='4 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2768784216632887015/posts/default/6817842712936676352'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2768784216632887015/posts/default/6817842712936676352'/><link rel='alternate' type='text/html' href='http://and-other-things.blogspot.com/2009/04/list-of-django-multilingual-model.html' title='List of Django Multilingual Model Solutions'/><author><name>Thomas Gruner</name><uri>http://www.blogger.com/profile/03549173101534896533</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>4</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2768784216632887015.post-5786747125894965861</id><published>2009-03-29T15:58:00.001+01:00</published><updated>2009-03-29T15:59:36.407+01:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='django'/><title type='text'>Setting Up Eclipse for Editing Django</title><content type='html'>Here is a nice post about setting up eclipse for Django and installing Pydev.  Couldn´t be easier.&lt;br /&gt;&lt;br /&gt;&lt;a href="http://penkin.wordpress.com/2007/08/20/django-with-pydev/"&gt;http://penkin.wordpress.com/2007/08/20/django-with-pydev/&lt;/a&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2768784216632887015-5786747125894965861?l=and-other-things.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://and-other-things.blogspot.com/feeds/5786747125894965861/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=2768784216632887015&amp;postID=5786747125894965861' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2768784216632887015/posts/default/5786747125894965861'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2768784216632887015/posts/default/5786747125894965861'/><link rel='alternate' type='text/html' href='http://and-other-things.blogspot.com/2009/03/setting-up-eclipse-for-editing-django.html' title='Setting Up Eclipse for Editing Django'/><author><name>Thomas Gruner</name><uri>http://www.blogger.com/profile/03549173101534896533</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2768784216632887015.post-4407548831616153622</id><published>2009-03-28T19:34:00.003+01:00</published><updated>2009-04-08T09:22:24.424+01:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='django'/><category scheme='http://www.blogger.com/atom/ns#' term='Ruby on Rails'/><title type='text'>Rails/Django Comparison</title><content type='html'>&lt;a title="View Rails/Django Comparison on Scribd" href="http://www.scribd.com/doc/121814/RailsDjango-Comparison" style="margin: 12px auto 6px; font-family: Helvetica,Arial,Sans-serif; font-style: normal; font-variant: normal; font-weight: normal; font-size: 14px; line-height: normal; font-size-adjust: none; font-stretch: normal; display: block; text-decoration: underline;"&gt;Rails/Django Comparison&lt;/a&gt;&lt;br /&gt;Coming from a PHP background myself, I find Python and Django to be a much more intuitive solution than Rails. The two platforms share a lot between them, but each has it´s advantages. From my background I can easily say Django is a better solution for me.&lt;br /&gt;&lt;br /&gt;One thing that really impressed me is both frameworks started in the fall of 2003 as a response  to or jumping ship from php.&lt;br /&gt;&lt;br /&gt;&lt;object codebase="http://download.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=9,0,0,0" id="doc_509689968550865" name="doc_509689968550865" classid="clsid:d27cdb6e-ae6d-11cf-96b8-444553540000" rel="media:document" resource="http://d.scribd.com/ScribdViewer.swf?document_id=121814&amp;amp;access_key=1jpceacgt80tz&amp;amp;page=1&amp;amp;version=1&amp;amp;viewMode=" media="http://search.yahoo.com/searchmonkey/media/" dc="http://purl.org/dc/terms/" align="middle" width="100%" height="500"&gt;&lt;param name="movie" value="http://d.scribd.com/ScribdViewer.swf?document_id=121814&amp;amp;access_key=1jpceacgt80tz&amp;amp;page=1&amp;amp;version=1&amp;amp;viewMode="&gt;   &lt;param name="quality" value="high"&gt;   &lt;param name="play" value="true"&gt;  &lt;param name="loop" value="true"&gt;   &lt;param name="scale" value="showall"&gt;  &lt;param name="wmode" value="opaque"&gt;   &lt;param name="devicefont" value="false"&gt;  &lt;param name="bgcolor" value="#ffffff"&gt;   &lt;param name="menu" value="true"&gt;  &lt;param name="allowFullScreen" value="true"&gt;   &lt;param name="allowScriptAccess" value="always"&gt;   &lt;param name="salign" value=""&gt;        &lt;embed src="http://d.scribd.com/ScribdViewer.swf?document_id=121814&amp;amp;access_key=1jpceacgt80tz&amp;amp;page=1&amp;amp;version=1&amp;amp;viewMode=" quality="high" pluginspage="http://www.macromedia.com/go/getflashplayer" play="true" loop="true" scale="showall" wmode="opaque" devicefont="false" bgcolor="#ffffff" name="doc_509689968550865_object" menu="true" allowfullscreen="true" allowscriptaccess="always" salign="" type="application/x-shockwave-flash" align="middle" width="100%" height="500"&gt;&lt;/embed&gt;             &lt;span rel="media:thumbnail" href="http://i.scribd.com/public/images/uploaded/14455/ghdfnuyn2t5yw_thumbnail.jpg"&gt;       &lt;span property="media:title"&gt;Rails/Django Comparison&lt;/span&gt;   &lt;span property="dc:creator"&gt;Pascal Van Hecke&lt;/span&gt;        &lt;span property="dc:description"&gt;Discussed: support for model and schema evolution, internationalisation, designer friendly templates, third party plugin support, javascript support and coding flavour.&lt;br /&gt;Source:http://www.bright-green.com/blog/2006_12_14/rails_vs_django_paper_and.html&lt;/span&gt;       &lt;span property="dc:type" content="Text"&gt;    &lt;/span&gt;&lt;/span&gt;&lt;/object&gt; &lt;div style="margin: 6px auto 3px; font-family: Helvetica,Arial,Sans-serif; font-style: normal; font-variant: normal; font-weight: normal; font-size: 12px; line-height: normal; font-size-adjust: none; font-stretch: normal; display: block;"&gt;    &lt;a href="http://www.scribd.com/upload" style="text-decoration: underline;"&gt;Publish at Scribd&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;a href="http://www.scribd.com/tag/presentation" style="text-decoration: underline;"&gt;&lt;/a&gt;       &lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2768784216632887015-4407548831616153622?l=and-other-things.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://and-other-things.blogspot.com/feeds/4407548831616153622/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=2768784216632887015&amp;postID=4407548831616153622' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2768784216632887015/posts/default/4407548831616153622'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2768784216632887015/posts/default/4407548831616153622'/><link rel='alternate' type='text/html' href='http://and-other-things.blogspot.com/2009/03/railsdjango-comparison.html' title='Rails/Django Comparison'/><author><name>Thomas Gruner</name><uri>http://www.blogger.com/profile/03549173101534896533</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2768784216632887015.post-1149022079691535962</id><published>2009-03-27T12:09:00.003+01:00</published><updated>2009-03-27T12:14:32.418+01:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='django'/><category scheme='http://www.blogger.com/atom/ns#' term='i18n'/><category scheme='http://www.blogger.com/atom/ns#' term='multilingual models'/><title type='text'>The Keep It Simple multilingual model for Django</title><content type='html'>I just came accross this multilingual model solution in Django:&lt;br /&gt;&lt;br /&gt;&lt;a href="http://code.google.com/p/django-multilingual-model/"&gt;http://code.google.com/p/django-multilingual-model/&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;The idea is Keep it Simple, nuf said.&lt;br /&gt;&lt;br /&gt;I wish this kind of solution would have been free and open source 4 years ago. Nicely done!&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2768784216632887015-1149022079691535962?l=and-other-things.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://and-other-things.blogspot.com/feeds/1149022079691535962/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=2768784216632887015&amp;postID=1149022079691535962' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2768784216632887015/posts/default/1149022079691535962'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2768784216632887015/posts/default/1149022079691535962'/><link rel='alternate' type='text/html' href='http://and-other-things.blogspot.com/2009/03/keep-it-simple-multilingual-model-for.html' title='The Keep It Simple multilingual model for Django'/><author><name>Thomas Gruner</name><uri>http://www.blogger.com/profile/03549173101534896533</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2768784216632887015.post-6682617147981447540</id><published>2009-03-20T19:09:00.007+01:00</published><updated>2009-03-27T12:15:00.622+01:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='django'/><category scheme='http://www.blogger.com/atom/ns#' term='i18n'/><category scheme='http://www.blogger.com/atom/ns#' term='multilingual models'/><title type='text'>A "third" solution to multilingual models using Django</title><content type='html'>I am on the line here between Django and Rails, or my own solution. My initial leaning is to Django to be honest, but both platforms leave me wanting something I can´t quite put my finger on.&lt;br /&gt;&lt;br /&gt;But it is good to see another solution to multilingual models in Django:&lt;br /&gt;&lt;br /&gt;Third Style Django Multilingual Data Handling&lt;br /&gt;&lt;a href="http://www.rafaljonca.org/blog/2009/03/08/third-style-django-multilingual-data-handling/"&gt;http://www.rafaljonca.org/blog/2009/03/08/third-style-django-multilingual-data-handling/&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;The author Rafał Jońca identifies the first two solutions (N being non-translatable data):&lt;br /&gt;&lt;ul&gt;&lt;li&gt;      The use of two tables -- general nontranslatable data + translatable data as 1:N relation.  &lt;/li&gt;&lt;li&gt;      Use of additional per language columns for translatable data.  &lt;/li&gt;&lt;/ul&gt;And proposes his&lt;br /&gt;&lt;ul&gt;&lt;li&gt;The use of many tables -- general nontranslatable data + one table per added language Many:N relation&lt;br /&gt;&lt;/li&gt;&lt;/ul&gt;&lt;br /&gt;I can see several advantages to this approach in terms of speed and flexibily, and far prefer it to the the first two.&lt;br /&gt;&lt;br /&gt;But, that said there is also a 4th solution that I have used for years on really high traffic sites. It´s a solution that allows for really easy site transaltion, and fallback.&lt;br /&gt;&lt;br /&gt;My solution so far has been this&lt;br /&gt;&lt;ul&gt;&lt;li&gt;The use of one text table for many models - each row in the table represents one field in one model in one language.  In the terms above this would be 1:Many(N) in tables.&lt;br /&gt;&lt;/li&gt;&lt;/ul&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2768784216632887015-6682617147981447540?l=and-other-things.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://and-other-things.blogspot.com/feeds/6682617147981447540/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=2768784216632887015&amp;postID=6682617147981447540' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2768784216632887015/posts/default/6682617147981447540'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2768784216632887015/posts/default/6682617147981447540'/><link rel='alternate' type='text/html' href='http://and-other-things.blogspot.com/2009/03/interessting-solution-to-multilingual.html' title='A &quot;third&quot; solution to multilingual models using Django'/><author><name>Thomas Gruner</name><uri>http://www.blogger.com/profile/03549173101534896533</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2768784216632887015.post-7327076138266069140</id><published>2009-03-17T17:28:00.002+01:00</published><updated>2009-03-27T12:15:23.439+01:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Ruby on Rails'/><category scheme='http://www.blogger.com/atom/ns#' term='i18n'/><title type='text'>Internationalization in Rails 2.2</title><content type='html'>Interesting overview of Rails internationalization &lt;div style="width: 425px; text-align: left;" id="__ss_1023634"&gt;&lt;a style="margin: 12px 0pt 3px; font-family: Helvetica,Arial,Sans-serif; font-style: normal; font-variant: normal; font-weight: normal; font-size: 14px; line-height: normal; font-size-adjust: none; font-stretch: normal; display: block; text-decoration: underline;" href="http://www.slideshare.net/jacobeus/internationalization-in-rails-22?type=presentation" title="Internationalization in Rails 2.2"&gt;Internationalization in Rails 2.2&lt;/a&gt;&lt;object style="margin: 0px;" width="425" height="355"&gt;&lt;param name="movie" value="http://static.slideshare.net/swf/ssplayer2.swf?doc=i18n-1234514610685091-1&amp;amp;stripped_title=internationalization-in-rails-22"&gt;&lt;param name="allowFullScreen" value="true"&gt;&lt;param name="allowScriptAccess" value="always"&gt;&lt;embed src="http://static.slideshare.net/swf/ssplayer2.swf?doc=i18n-1234514610685091-1&amp;amp;stripped_title=internationalization-in-rails-22" type="application/x-shockwave-flash" allowscriptaccess="always" allowfullscreen="true" width="425" height="355"&gt;&lt;/embed&gt;&lt;/object&gt;&lt;div style="font-size: 11px; font-family: tahoma,arial; height: 26px; padding-top: 2px;"&gt;View more &lt;a style="text-decoration: underline;" href="http://www.slideshare.net/"&gt;presentations&lt;/a&gt; from &lt;a style="text-decoration: underline;" href="http://www.slideshare.net/jacobeus"&gt;Nicolas Jacobeus&lt;/a&gt;.&lt;/div&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2768784216632887015-7327076138266069140?l=and-other-things.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://and-other-things.blogspot.com/feeds/7327076138266069140/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=2768784216632887015&amp;postID=7327076138266069140' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2768784216632887015/posts/default/7327076138266069140'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2768784216632887015/posts/default/7327076138266069140'/><link rel='alternate' type='text/html' href='http://and-other-things.blogspot.com/2009/03/internationalization-in-rails-22.html' title='Internationalization in Rails 2.2'/><author><name>Thomas Gruner</name><uri>http://www.blogger.com/profile/03549173101534896533</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2768784216632887015.post-6045240203595045724</id><published>2009-03-11T19:44:00.012+01:00</published><updated>2009-03-27T12:16:00.696+01:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='globalize2'/><category scheme='http://www.blogger.com/atom/ns#' term='Ruby on Rails'/><category scheme='http://www.blogger.com/atom/ns#' term='i18n'/><category scheme='http://www.blogger.com/atom/ns#' term='multilingual models'/><title type='text'>From PHP to Ruby on Rails Globalize2</title><content type='html'>Ok, so I am really interested in the new Globalize2 plugin for Ruby on Rails.&lt;br /&gt;&lt;br /&gt;Unitl now I´ve spent over 5 years working on my own cms in php5 with great i18n capabilities, but I am looking for some more ideas.&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;Step 1:  Learn a bit of Ruby&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;Ruby is the scripting language that rails is built on. If you don´t get the syntax of ruby, you will have a tough time with rails.&lt;br /&gt;&lt;br /&gt;Heade on over to &lt;a href="http://tryruby.hobix.com/"&gt;http://tryruby.hobix.com/ &lt;/a&gt;&lt;br /&gt;This great in browser tutorial will help you get the basics to rails in no time&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;Step 2: Download Ruby to your own pc&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;I did this on windows vista, and wow. You get the binary and you are all set. Installed, path added, easy east.&lt;br /&gt;&lt;br /&gt;Get is from the Ruby site:&lt;br /&gt;&lt;a href="http://www.ruby-lang.org/en/downloads/"&gt;http://www.ruby-lang.org/en/downloads/&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;For me I used the one click installer.&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;Step 3: Play some more with Ruby on your own pc&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;And finish up this tutorial:&lt;br /&gt;&lt;a href="http://www.ruby-lang.org/en/documentation/quickstart/"&gt;http://www.ruby-lang.org/en/documentation/quickstart/&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;Step 4: Get some Gems&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;Head on over to the Ruby on Rails site, and get Rails from the Get Started section, but&lt;br /&gt;when you get the gem, you should set the source to the ruby on rails site like this:&lt;br /&gt;&lt;br /&gt;gem install rails --source http://gems.rubyonrails.org&lt;br /&gt;&lt;br /&gt;If you don´t set the source to the gems.rubyonrails.org site, it may install a version of rails that is not up to date with the tutorial and you will like me spend a few hours figuring out why the tutorial doesn´t work for you&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;Step 5: Go through the Blog tutorial on the Rails site&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;This is a great tutorial for getting an idea about the internals of Rails.&lt;br /&gt;&lt;a href="http://guides.rubyonrails.org/getting_started.html"&gt;http://guides.rubyonrails.org/getting_started.html&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;It´s essential before you start internationalizing your models to figure out how they work with just one language!!&lt;br /&gt;&lt;br /&gt;After finishing the tutorial, keep the blog as it´s used again in step 7&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;Step 6: Learn how Rails is set up for i18n by default&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;Get an idea of how rails works for internationalization by default&lt;br /&gt;&lt;a href="http://guides.rubyonrails.org/i18n.html"&gt;http://guides.rubyonrails.org/i18n.html&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;Step 7: Get Git and install Globalize2&lt;/span&gt;&lt;br /&gt;It seems like the ruby crowd is into git for version control. As we want to be cool as well... Let´s get git!&lt;br /&gt;&lt;br /&gt;The best place to learn about git in the rails context is here:&lt;br /&gt;&lt;a href="http://github.com/guides/using-git-and-github-for-the-windows-for-newbies"&gt;http://github.com/guides/using-git-and-github-for-the-windows-for-newbies&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;Check out this blog post if you are using git on windows:&lt;br /&gt;&lt;a href="http://jamie.ideasasylum.com/2008/08/installing-rails-plugins-with-git-on-windows/"&gt;http://jamie.ideasasylum.com/2008/08/installing-rails-plugins-with-git-on-windows&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="color: rgb(255, 102, 0);"&gt;You must change the command a bit to install plugins on windows as in Jamie´s blog!&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;Once you do that, then go ahead and install Globalize2 into your blog app from step 5&lt;br /&gt;&lt;br /&gt;LINUX:&lt;br /&gt;&lt;code&gt;script/plugin install &lt;span style="color: rgb(51, 51, 255);"&gt;git:&lt;/span&gt;//github.com/joshmh/globalize2.git&lt;br /&gt;&lt;/code&gt;&lt;br /&gt;WINDOWS&lt;br /&gt;&lt;br /&gt;&lt;code&gt;ruby script/plugin install &lt;span style="font-weight: bold; color: rgb(255, 153, 0);"&gt;http&lt;/span&gt;&lt;span style="color: rgb(255, 153, 0);"&gt;:&lt;/span&gt;//github.com/joshmh/globalize2.git&lt;span style="font-weight: bold; color: rgb(255, 153, 0);"&gt;/&lt;/span&gt;&lt;/code&gt;&lt;br /&gt;&lt;br /&gt;Then read the instructions about Globalize2 provided by Josh and follow them.&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;Step 8: Take a big breath&lt;br /&gt;&lt;br /&gt;&lt;/span&gt;&lt;span&gt;If you have gotten this far, pat yourself on the back. Rails is hurting more than any other language I´ve tried so far other than Java.. But we will get there. &lt;/span&gt;&lt;span style="font-weight: bold;"&gt;&lt;br /&gt;&lt;br /&gt;Step 9: Learn about nested attributes&lt;br /&gt;&lt;/span&gt;&lt;span&gt;&lt;br /&gt;Learn about nested attribute in rails. The 2.3 version of rails has nested attributes, which allow you to edit several translations on one form&lt;/span&gt;&lt;span style="font-weight: bold;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;span&gt;&lt;a href="http://ryandaigle.com/articles/2009/2/1/what-s-new-in-edge-rails-nested-attributes"&gt;&lt;br /&gt;http://ryandaigle.com/articles/2009/2/1/what-s-new-in-edge-rails-nested-attributes&lt;/a&gt;&lt;/span&gt;&lt;span style="font-weight: bold;"&gt;&lt;br /&gt;&lt;br /&gt;Step 10: Put it all together&lt;br /&gt;&lt;/span&gt;&lt;span&gt;&lt;br /&gt;You can see my solution here on this discussion toward the bottom:&lt;br /&gt;&lt;a href="http://groups.google.com/group/rails-i18n/browse_thread/thread/42bf8417cc8a592a/6a069d8f7ba93608?hl=en#6a069d8f7ba93608"&gt;http://groups.google.com/group/rails-i18n/browse_thread/thread/42bf8417cc8a592a/6a069d8f7ba93608?hl=en#6a069d8f7ba93608&lt;/a&gt;&lt;/span&gt;&lt;span style="font-weight: bold;"&gt;&lt;br /&gt;&lt;br /&gt;In Review&lt;br /&gt;&lt;/span&gt;&lt;span&gt;For what is supposed to be a simpler solution, this was pretty hard. Really hard. Learning basic ruby was not intuitive. But in the end, the solution is workable, required very little code and could work for i18n in an application. Nice work by the Rails and i18n team. But, all in all I an a bit frustrated with the globalize2 plugin as it seems uneeded now that rails can accept nested attributes. Using nested attributes and creating a model translation class per model, you could easily create a multilingual app that would allow you to validate the translation fields individually while being able to edit all translations within one view. Also, you could then use other plugins like paperclip and attatch them per language to your translation model, which isn´t possible using globalize2&lt;/span&gt;&lt;span style="font-weight: bold;"&gt;.&lt;br /&gt;&lt;/span&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2768784216632887015-6045240203595045724?l=and-other-things.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://and-other-things.blogspot.com/feeds/6045240203595045724/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=2768784216632887015&amp;postID=6045240203595045724' title='1 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2768784216632887015/posts/default/6045240203595045724'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2768784216632887015/posts/default/6045240203595045724'/><link rel='alternate' type='text/html' href='http://and-other-things.blogspot.com/2009/03/from-php-to-ruby-on-rails-globalize2.html' title='From PHP to Ruby on Rails Globalize2'/><author><name>Thomas Gruner</name><uri>http://www.blogger.com/profile/03549173101534896533</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2768784216632887015.post-1931156023575151143</id><published>2008-06-25T11:38:00.003+01:00</published><updated>2008-06-25T11:51:21.242+01:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='barcelona organic'/><title type='text'>Xarxa de Consum Solidari - An organic and fair trade buying network in Barcelona</title><content type='html'>I was happy to learn about Xarxa de Consum Solidari &lt;a href="http://www.xarxaconsum.net/"&gt;www.xarxaconsum.net&lt;/a&gt; the other day.&lt;br /&gt;&lt;br /&gt;They are a organic food network that delivers to Barcelona weekly in four different locations. You go online, order what you want in the online shop, and then they brring it to you at selected drop off points inside the city.&lt;br /&gt;&lt;br /&gt;Teh advantage of going to pick up the food instead of going to a shop is the reduced cost in the food. Organic food in Barcelona is very expensive in the shops and the online catalouge from Xarxa de Consum Solidari does seem to be cheaper. One thing though... you will need a bit of catalan to make it through the shop as other languages aren't yet available.&lt;br /&gt;&lt;br /&gt;The minimum is 60 eur for one year. I'm quite interested to try it and will post again with some news about how it works!&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2768784216632887015-1931156023575151143?l=and-other-things.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://and-other-things.blogspot.com/feeds/1931156023575151143/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=2768784216632887015&amp;postID=1931156023575151143' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2768784216632887015/posts/default/1931156023575151143'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2768784216632887015/posts/default/1931156023575151143'/><link rel='alternate' type='text/html' href='http://and-other-things.blogspot.com/2008/06/xarxa-de-consum-solidari-organic-and.html' title='Xarxa de Consum Solidari - An organic and fair trade buying network in Barcelona'/><author><name>Thomas Gruner</name><uri>http://www.blogger.com/profile/03549173101534896533</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2768784216632887015.post-4969622485902743822</id><published>2008-05-16T22:15:00.012+01:00</published><updated>2009-04-08T09:28:19.606+01:00</updated><title type='text'>Resolution - Eating Meat and Fish</title><content type='html'>Through the past few years, I have gone from either being vegan to veggy, and now am bouncing around a bit. But, after eating a chicken kebab yesterday and being totally disgusted, I have decided to make a new plan.&lt;br /&gt;&lt;br /&gt;Lets look at some  facts:&lt;br /&gt;&lt;br /&gt;&lt;span style="font-size:130%;"&gt;&lt;/span&gt;How does meat consumption affect our planet?&lt;br /&gt;&lt;br /&gt;Excessive meat consumption is damaging our planet. It damages our planet by contaminating our rivers with run off from excessive agriculture. It is causing the destruction of rain forests by the demand for feed being met by giant soy farms in the amazon and in Argentina. I can´t support that.&lt;br /&gt;&lt;br /&gt;How does meat consumption affect animals?&lt;br /&gt;&lt;br /&gt;Excessive meat consumption means many animals live shorter less happy lives in smaller spaces pumped full of antibiotics. That´s disgusting and abusive. I can´t support that.&lt;br /&gt;&lt;br /&gt;How does meat consumption affect our bodies?&lt;br /&gt;&lt;br /&gt;Excessive meat consumption overloads our systems which are not designed for the high levels of protien and fat. When was the last time you saw a monkey or chimp dining on steak 5 nights a week.&lt;br /&gt;&lt;br /&gt;How does meat consumption affect our mentality?&lt;br /&gt;&lt;br /&gt;We are no longer linked to the animals that produce the meat that we consume. We don´t have any appreciation for the fact that an animal was killed to produce our meal.&lt;br /&gt;&lt;br /&gt;Are fish and chicken still meat?&lt;br /&gt;&lt;br /&gt;Well, yes. And in the case of fish overfishing of the mediterranean is causing a disbalance in the sea with plagues of jellyfish often driving tourists from beaches. Chicken might have a little bit less fat but... it´s still meat.&lt;br /&gt;&lt;br /&gt;Do we need meat to survive?&lt;br /&gt;&lt;br /&gt;Absolutely not. Attention to a balanced diet is essencial, but meat has nothing that can´t be provided by the vegetable world.&lt;br /&gt;&lt;br /&gt;So, after all that what is my resolution?&lt;br /&gt;&lt;ol&gt;&lt;li&gt;Decrease my meat and fish consumption to once or twice a month maximum.&lt;/li&gt;&lt;li&gt;Require no more than one degree of seperation between me and the person who killed or caught the animal or fish. Either I killed it, my friend killed it, or the person who is serving/selling  it to me bought it from the person who killed or fished it.&lt;/li&gt;&lt;li&gt;Ok.... had to modify #2 again. Decided that certified organic / free range sources, or stores that deal exclusively in local meat and fish need to be included. The reality of living in a city must mean you depend on other people for your daily food intake. Relying on a third party organization that certifies the quality of the meat or fish or vegetables seems reasonable.&lt;br /&gt;&lt;/li&gt;&lt;/ol&gt;If point 2 seems cruel to you... what kill it yourself? Well think about how impersonal a typical grocery store is, that´s cruel.Looks like in the future I will either be getting things from very small farms or fishing myself. But these are my ideas and those are the resolutions I will follow.&lt;br /&gt;&lt;br /&gt;&lt;span style="color: rgb(255, 102, 0);"&gt;UPDATE&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;I've decided to post how I do with these as well to help me keep u with following through.&lt;br /&gt;&lt;br /&gt;June: Not bad. I managed to avoid meat entirely and ate fish about 4 - 5 times, not ever from well known sources. The hardest times to follow through are in social events, in which cases I will need to be stronger about my resolve.&lt;br /&gt;&lt;br /&gt;June #2: Doing Better.... This week I've avoided both entirely opting for lots of yummy hummus, lentils, rice, veggies, and meat free foods.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-size:130%;"&gt;&lt;span style="font-size:100%;"&gt;&lt;br /&gt;&lt;br /&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style="font-size:130%;"&gt;&lt;span style="font-size:100%;"&gt;&lt;br /&gt;&lt;br /&gt;&lt;/span&gt;&lt;/span&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2768784216632887015-4969622485902743822?l=and-other-things.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://and-other-things.blogspot.com/feeds/4969622485902743822/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=2768784216632887015&amp;postID=4969622485902743822' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2768784216632887015/posts/default/4969622485902743822'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2768784216632887015/posts/default/4969622485902743822'/><link rel='alternate' type='text/html' href='http://and-other-things.blogspot.com/2008/05/resolution-eating-meat.html' title='Resolution - Eating Meat and Fish'/><author><name>Thomas Gruner</name><uri>http://www.blogger.com/profile/03549173101534896533</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2768784216632887015.post-6194932186062406293</id><published>2008-04-24T18:52:00.004+01:00</published><updated>2008-05-07T21:07:59.267+01:00</updated><title type='text'>Announcing SailingDreams.com</title><content type='html'>I'm happy to announce the launch of our new website &lt;a href="http://www.sailingdreams.com/"&gt;SailingDreams.com&lt;/a&gt;, &lt;a href="http://www.sailingdreams.es/"&gt;SailingDreams.es for Spanish&lt;/a&gt;&lt;br /&gt;My partner at Sailing Dreams, David Cochs, and I have been working very hard on the website and we are anxious to see how it does.  Also, we are looking to collaborate with  oranizations that help protect the sea, marine life, and coasts. Let us know if we can help with your charter needs!&lt;br /&gt;&lt;br /&gt;Here is a break down of the site structure:&lt;br /&gt;&lt;br /&gt;If you would like to Charter a sailboat:&lt;br /&gt;&lt;a href="http://sailingdreams.com/yachts-en.html?searchDestination=0&amp;amp;searchYachtType=1"&gt;Sailboat Charter&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;If you would like to Charter a  Catamaran:&lt;br /&gt;&lt;a href="http://sailingdreams.com/yachts-en.html?searchDestination=0&amp;amp;searchYachtType=5"&gt;Catamaran Charter&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;If you would like a yacht or a speedboat:&lt;br /&gt;&lt;a href="http://sailingdreams.com/yachts-es.html?searchDestination=0&amp;amp;searchYachtType=3"&gt;Yacht Charter and Speedboat Charter&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;Si quieres un Velero:&lt;br /&gt;&lt;a href="http://sailingdreams.es/yachts-es.html?searchDestination=0&amp;amp;searchYachtType=1"&gt;Alquiler de Veleros&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;Si quieres un catamaran:&lt;br /&gt;&lt;a href="http://sailingdreams.es/yachts-es.html?searchDestination=0&amp;amp;searchYachtType=5"&gt;Alquiler de Catamaranes&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;Si quieres un Yate o Lancha:&lt;br /&gt;&lt;a href="http://sailingdreams.es/yachts-es.html?searchDestination=0&amp;amp;searchYachtType=3"&gt;Alquiler de Yates y Lanchas&lt;/a&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2768784216632887015-6194932186062406293?l=and-other-things.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://and-other-things.blogspot.com/feeds/6194932186062406293/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=2768784216632887015&amp;postID=6194932186062406293' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2768784216632887015/posts/default/6194932186062406293'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2768784216632887015/posts/default/6194932186062406293'/><link rel='alternate' type='text/html' href='http://and-other-things.blogspot.com/2008/04/announcing-sailingdreamscom.html' title='Announcing SailingDreams.com'/><author><name>Thomas Gruner</name><uri>http://www.blogger.com/profile/03549173101534896533</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2768784216632887015.post-6326612467910456305</id><published>2007-06-16T14:42:00.002+01:00</published><updated>2008-11-13T18:43:30.117+01:00</updated><title type='text'></title><content type='html'>&lt;a href="http://1.bp.blogspot.com/_1Pm6X3FUt5E/RnPpIOqTdwI/AAAAAAAAABw/6nYoibi8wis/s1600-h/Imagen+044.jpg"&gt;&lt;img id="BLOGGER_PHOTO_ID_" style="margin: 0px 10px 10px 0px; clear: both; float: left;" alt="" src="http://1.bp.blogspot.com/_1Pm6X3FUt5E/RnPpIOqTdwI/AAAAAAAAABw/6nYoibi8wis/s320/Imagen+044.jpg" border="0" /&gt;&lt;/a&gt;  This is my kiln at the old studio before it was smashed.&lt;div style="clear: both; text-align: left;"&gt;&lt;a href="http://picasa.google.com/blogger/" target="ext"&gt;&lt;img src="http://photos1.blogger.com/pbp.gif" alt="Posted by Picasa" style="border: 0px none ; padding: 0px; background: transparent none repeat scroll 0% 50%; -moz-background-clip: -moz-initial; -moz-background-origin: -moz-initial; -moz-background-inline-policy: -moz-initial;" align="middle" border="0" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;br /&gt;&lt;br /&gt;But... The story is worth sharing.&lt;br /&gt;&lt;br /&gt;In 2005 just after the kiln was finished, the city of barcelona decided to install a pipeline to carry water from one part of the city to another. The incredible thing is that the decided to put the path of the new pipeline UNDER my kiln. Somwhere I have some photos of the whole under the kiln.. will dig them out. The kiln was in an industrial patio that was later destined to become a road.... even though that hasn't happened yet. But to make a long kiln story into a short one, a city worker accidentally smashed the kiln after REDIRECTING the pipe to pass just infront of the kiln... At least that was the story I got. I don't really believe the city smashed it though. I think something else happened... but that's another story.&lt;br /&gt;&lt;br /&gt;So... enjoy the photo and enjoy the moment because it's impossible to predict what will happen tomorrow.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2768784216632887015-6326612467910456305?l=and-other-things.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://and-other-things.blogspot.com/feeds/6326612467910456305/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=2768784216632887015&amp;postID=6326612467910456305' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2768784216632887015/posts/default/6326612467910456305'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2768784216632887015/posts/default/6326612467910456305'/><link rel='alternate' type='text/html' href='http://and-other-things.blogspot.com/2007/06/this-is-my-kiln-at-old-studio-before-it.html' title=''/><author><name>Thomas Gruner</name><uri>http://www.blogger.com/profile/03549173101534896533</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://1.bp.blogspot.com/_1Pm6X3FUt5E/RnPpIOqTdwI/AAAAAAAAABw/6nYoibi8wis/s72-c/Imagen+044.jpg' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2768784216632887015.post-1231149247025262436</id><published>2007-04-21T12:28:00.001+01:00</published><updated>2008-04-24T19:50:34.058+01:00</updated><title type='text'>Is there really a need to promote respect for other cultures?</title><content type='html'>When I first came up with the idea for icspace.org, it was because of my fascination with Japan and Japanese festivals, food, artists and so on.  Japan has gained a lot of respect for it's culture internationally in the last 50 years, but other countries like Afganistan have no respect from the eyes of westerners.&lt;br /&gt;&lt;br /&gt;What really got to me?&lt;br /&gt;&lt;br /&gt;Check out this video from Youtube.... good to know our troups are up to some good wherever they go. To cocky to even wonder why a kid would ask for a pen...  maybe it's because they want to write and don't have one?&lt;br /&gt;&lt;br /&gt;The rampant disrespect for the people there got to me. Who knows if I would be the same in their situation, but as I have the privelege of watching things from Spain, I think another version of Afganistan needs to be promoted, one that is capable of taking care of itself with a rich cultural heritage of thousands of years. An Afganistan where foreign powers don't create people like Bin Laden to wage wars and promote radical factions to get a short term advantage, but maybe that's just me.&lt;br /&gt;&lt;br /&gt;&lt;span style="color: rgb(153, 0, 0);"&gt;NOTE: The video for this post was removed from Youtube and is no longer available&lt;/span&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2768784216632887015-1231149247025262436?l=and-other-things.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://and-other-things.blogspot.com/feeds/1231149247025262436/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=2768784216632887015&amp;postID=1231149247025262436' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2768784216632887015/posts/default/1231149247025262436'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2768784216632887015/posts/default/1231149247025262436'/><link rel='alternate' type='text/html' href='http://and-other-things.blogspot.com/2007/04/is-there-really-need-to-promote-respect.html' title='Is there really a need to promote respect for other cultures?'/><author><name>Thomas Gruner</name><uri>http://www.blogger.com/profile/03549173101534896533</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2768784216632887015.post-3741483967832661869</id><published>2007-04-03T12:55:00.003+01:00</published><updated>2009-04-08T09:30:19.547+01:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Dojo Toolkit'/><title type='text'>Creating a Custom Dojo Build with Dojo 0.4.2</title><content type='html'>&lt;span style="color: rgb(255, 153, 0);"&gt;Note: I noticed a lot of people arrive to this post from google. This post is about Dojo .4.2. If you are using 1.0 or above the system has changed entirely and you will be happier with the information from dojotoolkit.org. I recomment to check google for "site:dojotoolkit.org custom build" for 1.0 and above. Otherwise continue reading!&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;The Dojo toolkit has some really great stuff. I am convinced that by te time they reach 1.0 it will be one of the best javascript toolkits around, and the fact that it is open source and not propietery is very attractive.&lt;br /&gt;&lt;br /&gt;However, it can tak a long time for the browser to load all of the files needed to use the fancy widgets and so which are normally loaded after the page loads to preserve flexibility. To solve this, the dojo developers have made a way to create a custom dojo build, which lets you put everything in on js file that the browser can cache.&lt;br /&gt;&lt;br /&gt;Here is a link to the section in the Dojo Book&lt;br /&gt;&lt;a href="http://www.dojotoolkit.org/node/18"&gt;http://www.dojotoolkit.org/node/18&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;Since I still develop on Windows, I had to start with installing Apache Ant from &lt;a href="http://ant.apache.org/"&gt;http://ant.apache.org/&lt;/a&gt; on Windows, and came accross these simple instructions:&lt;br /&gt;&lt;br /&gt;&lt;a href="http://dita-ot.sourceforge.net/doc/installguide/installingant.html"&gt;http://dita-ot.sourceforge.net/doc/installguide/installingant.html&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;I decided as instructed to put ant in c:\ant and added c:\ant\bin to my PATH and added ANT_HOME set to c:\ant in my environmental variables.&lt;br /&gt;&lt;br /&gt;Why not have an ant comiling a dojo?  I get a vision of a bunch of ants in white aikido outfits meditating and ready to enter the dojo for combat, but that's probably just me.&lt;br /&gt;&lt;br /&gt;Anyway, back at cmd let's try a few things.&lt;br /&gt;&lt;br /&gt;c:\&gt;ant -help&lt;br /&gt;Prints out a help message, wild. Looks like it's basically there.&lt;br /&gt;&lt;br /&gt;Now let's get a copy using subversion of dojo 4.2 and put it in the c:\dojo folder.&lt;br /&gt;For this you will need tortoise subversion: &lt;a href="http://tortoisesvn.tigris.org/"&gt;http://tortoisesvn.tigris.org/&lt;br /&gt;&lt;/a&gt;&lt;br /&gt;c:\&gt;mkdir dojo&lt;br /&gt;c:\&gt;cd dojo&lt;br /&gt;c:\dojo\&gt;svn co http://svn.dojotoolkit.org/dojo/tags/release-0.4.2&lt;br /&gt;&lt;br /&gt;After a few minutes of downloading that should give you a few meg of files in&lt;br /&gt;c:\dojo\release-0.4.2\&lt;br /&gt;&lt;br /&gt;Now let's try making a profile, mine ended up being this:&lt;br /&gt;&lt;br /&gt;&lt;pre&gt;var dependencies = [&lt;br /&gt;"dojo.io.*",&lt;br /&gt;"dojo.io.BrowserIO",&lt;br /&gt;"dojo.event.*",&lt;br /&gt;"dojo.xml.*",&lt;br /&gt;"dojo.widgets.*",&lt;a href="http://www2.blogger.com/post-create.g?blogID=2768784216632887015"&gt;&lt;/a&gt;&lt;br /&gt;"dojo.widgets.Button",&lt;br /&gt;"dojo.widget.LayoutContainer",&lt;br /&gt;"dojo.widget.FloatingPane",&lt;br /&gt;"dojo.widget.ResizeHandle",&lt;br /&gt;"dojo.io.IframeIO",&lt;br /&gt;"dojo.widget.Dialog",&lt;br /&gt;"dojo.dnd.HtmlDragMove",&lt;br /&gt;"dojo.widget.Slider"&lt;br /&gt;];&lt;br /&gt;&lt;br /&gt;load("getDependencyList.js");&lt;/pre&gt;&lt;br /&gt;And  save that profile as  c:\dojo\cms.profile.js&lt;br /&gt;&lt;br /&gt;Now let's ant it up....&lt;br /&gt;c:\dojo\release-0.4.2\buildscripts\&gt;ant -DprofileFile=c:\dojo\cms.profile.js clean release intern-strings strip-resource-comments&lt;br /&gt;&lt;br /&gt;No dice, I get this error:&lt;br /&gt;Unable to locate tools.jar. Expected to find it in C:\Archivos de programa\Java\&lt;br /&gt;jre1.5.0_11\lib\tools.jar&lt;br /&gt;Buildfile: build.xml does not exist!&lt;br /&gt;Build failed&lt;br /&gt;&lt;br /&gt;After a bit of reading it looks like I need the full J2SE, not just the Runtime Edition (J2RE), so off  to download one more thing to get this dojo ant java voodoo to go.&lt;br /&gt;&lt;br /&gt;&lt;div style="text-align: left;"&gt;So I got the J2SE SDK from http://java.sun.com/j2se/1.4.2/download.html&lt;a style="font-weight: bold;" href="http://javashoplm.sun.com/ECom/docs/Welcome.jsp?StoreId=22&amp;amp;PartDetailId=j2sdk-1.4.2_14-oth-JPR&amp;amp;SiteId=JSC&amp;amp;TransactionId=noreg"&gt;&lt;/a&gt;&lt;br /&gt;&lt;/div&gt;And I needed to set JAVA_HOME  to c:\j2sdk1.4.2_14 to get Ant to find tools.jar.&lt;br /&gt;&lt;br /&gt;After that whoooopie!!&lt;br /&gt;&lt;br /&gt;Ant created a new directory c:\dojo\release-0.4.2\release\dojo with my nice compressed release, and I copied that dojo folder into my app.&lt;br /&gt;&lt;br /&gt;** IMPORTANT&lt;br /&gt;You have to copy the entire release folder, since just copying dojo.js does not make all of the template paths work, especially for widgets.&lt;br /&gt;&lt;br /&gt;The Results:&lt;br /&gt;From 145 requests down to 115 requests on a refresh. And much quicker loading.&lt;br /&gt;&lt;br /&gt;The dojo.js file went from about 140kb to over 300kb though, so we really need to gzip it. For this I would recommend mod_deflate or using another gzip solution.&lt;br /&gt;&lt;br /&gt;As noted before though, the best part is that the browser can now cache all of the dojo widgets and templates so that the editing process is much faster for the end user.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2768784216632887015-3741483967832661869?l=and-other-things.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://and-other-things.blogspot.com/feeds/3741483967832661869/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=2768784216632887015&amp;postID=3741483967832661869' title='2 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2768784216632887015/posts/default/3741483967832661869'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2768784216632887015/posts/default/3741483967832661869'/><link rel='alternate' type='text/html' href='http://and-other-things.blogspot.com/2007/04/creating-custom-dojo-build.html' title='Creating a Custom Dojo Build with Dojo 0.4.2'/><author><name>Thomas Gruner</name><uri>http://www.blogger.com/profile/03549173101534896533</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>2</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2768784216632887015.post-1957693983242213012</id><published>2007-03-25T16:51:00.001+01:00</published><updated>2009-03-27T12:17:22.520+01:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='i18n'/><category scheme='http://www.blogger.com/atom/ns#' term='IANA language codes'/><title type='text'>Going Multilingual - Where to get your language codes from?</title><content type='html'>While working on the &lt;span class="blsp-spelling-error" id="SPELLING_ERROR_0"&gt;cms&lt;/span&gt; today, I started searching for where to find language codes for declaring the language a web page is served in. Seems simple right?&lt;br /&gt;&lt;br /&gt;After about 15 minutes of reading about different specifications, I decided it wasn't actually that simple. Luckily, I stumbled on an article explaining about the situation at the w3c pages :&lt;br /&gt;&lt;br /&gt;&lt;a href="http://www.w3.org/International/questions/qa-lang-2or3" target="_blank"&gt;Two-letter or three-letter language codes&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;In the early days of the web there were just a few ASCII characters around and two letters was enough to specify the languages that most software was published in. As the web has grown to become part of the lives of people world wide, so has the need to accommodate more languages and character sets. The two letter codes didn't really cut it anymore. For example would ca be for Catalan or Cantonese? This leaves developers choosing from tons of standards and options for languages and &lt;span class="blsp-spelling-error" id="SPELLING_ERROR_1"&gt;encodings&lt;/span&gt;.&lt;br /&gt;&lt;br /&gt;To make choosing the language code easy for developers, there is now the &lt;a href="http://www.w3.org/International/articles/language-tags/Overview.en.php" target="_blank"&gt;&lt;span class="blsp-spelling-error" id="SPELLING_ERROR_2"&gt;IANA&lt;/span&gt; Language &lt;span class="blsp-spelling-error" id="SPELLING_ERROR_3"&gt;Subtag&lt;/span&gt; Registry&lt;/a&gt;. No more needing to choose between ISO 639-1 and ISO 639-2. Party!!! Almost... The ISO 639-3 is still currently in development, so things are still far from being fixed in stone.&lt;br /&gt;&lt;br /&gt;Since that list looks like plain &lt;span class="blsp-spelling-corrected" id="SPELLING_ERROR_4"&gt;bejibberish&lt;/span&gt; when you see it, I wrote a script that makes it a little nicer to look at and understand. That script is here (but use the script by Richard Ishida noted in the next link instead of this one):&lt;br /&gt;&lt;br /&gt;&lt;a href="http://www.icspace.org/iana/registry.php"&gt;http://www.icspace.org/iana/registry.php&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;** NEW**&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;Richard Ishida at the w3c responded to one of my emails to the organization and has written an even friendlier version with the possibility of searching the tags!&lt;br /&gt;&lt;br /&gt;You can use his script here:&lt;br /&gt;&lt;a href="http://people.w3.org/rishida/utils/subtags/"&gt;http://people.w3.org/rishida/utils/subtags/&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;I was quite impressed with his quick reponse and integration of the utility to the w3c pages.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;Hope this helps someone a bit!&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2768784216632887015-1957693983242213012?l=and-other-things.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://and-other-things.blogspot.com/feeds/1957693983242213012/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=2768784216632887015&amp;postID=1957693983242213012' title='1 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2768784216632887015/posts/default/1957693983242213012'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2768784216632887015/posts/default/1957693983242213012'/><link rel='alternate' type='text/html' href='http://and-other-things.blogspot.com/2007/03/going-multilinugal-where-to-get-your.html' title='Going Multilingual - Where to get your language codes from?'/><author><name>Thomas Gruner</name><uri>http://www.blogger.com/profile/03549173101534896533</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2768784216632887015.post-1830855090690704334</id><published>2007-03-14T20:16:00.001+01:00</published><updated>2009-04-08T09:30:48.691+01:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Dojo Toolkit'/><title type='text'>The mysterious world of dojo.io file uploads together with a php 5.2 progress bar</title><content type='html'>Trying to make my upload form a bit more user friendly by adding a progress bar. And to make the whole thing more difficult, the upload form is part of a media manager built using the dojo toolkit and has no screen refresh.&lt;br /&gt;&lt;br /&gt;Here are the basic  requirements I found that were not expected. See the resource list at the bottom for links to this stuff.&lt;br /&gt;&lt;br /&gt;&lt;ol&gt;&lt;li&gt;PECL module php_acl installed&lt;/li&gt;&lt;li&gt;apc.rfc1867 = on in your php.ini&lt;/li&gt;&lt;li&gt;php 5.2 installed&lt;/li&gt;&lt;li&gt;a copy of dojo 4.1&lt;/li&gt;&lt;li&gt;Don't be using Zend Optimizer because it conflicts with APC&lt;br /&gt;&lt;/li&gt;&lt;/ol&gt;&lt;br /&gt;&lt;br /&gt;To find out what is happening with our upploaded file we need some code like this:&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;The values contained in the serialized json object that gets sent back to the browser look like this:&lt;br /&gt;&lt;div selected="true" class="netInfoResponseText netInfoText"&gt;&lt;pre&gt;({"total":62828,&lt;br /&gt;"current":62828,&lt;br /&gt;"rate":502624,&lt;br /&gt;"filename":"royalcrown_main.sql.zip",&lt;br /&gt;"name":"mediaUpload",&lt;br /&gt;"temp_filename":"C:\\WINDOWS\\TEMP\\php2B.tmp",&lt;br /&gt;"cancel_upload":0,&lt;br /&gt;"done":1})&lt;/pre&gt;&lt;/div&gt;&lt;br /&gt;&lt;br /&gt;Some php.ini values that affect file uploads (assuming 100MB here):&lt;br /&gt;post_max_size  = 100M&lt;br /&gt;upload_max_filesize = 100M&lt;br /&gt;memory_limit = 128M&lt;br /&gt;max_input_time = 360&lt;br /&gt;&lt;br /&gt;(to be continued)&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;Resources:&lt;br /&gt;&lt;ul&gt;&lt;li&gt;&lt;a href="http://es2.php.net/manual/en/ref.apc.php"&gt;PECL apc at php.net&lt;/a&gt;&lt;br /&gt;&lt;/li&gt;&lt;li&gt;&lt;a href="http://viewcvs.php.net/viewvc.cgi/pecl/apc/INSTALL?revision=3.53&amp;amp;view=markup"&gt;How to install PECL apc&lt;/a&gt;&lt;/li&gt;&lt;li&gt;&lt;a href="http://www.dinke.net/blog/2006/11/04/php-52-upload-progress-meter/en/"&gt;Caught in a Web article on doing the same using the Yahoo UI&lt;/a&gt;&lt;br /&gt;&lt;/li&gt;&lt;/ul&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2768784216632887015-1830855090690704334?l=and-other-things.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://and-other-things.blogspot.com/feeds/1830855090690704334/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=2768784216632887015&amp;postID=1830855090690704334' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2768784216632887015/posts/default/1830855090690704334'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2768784216632887015/posts/default/1830855090690704334'/><link rel='alternate' type='text/html' href='http://and-other-things.blogspot.com/2007/03/mysterious-world-of-dojoio-file-uploads.html' title='The mysterious world of dojo.io file uploads together with a php 5.2 progress bar'/><author><name>Thomas Gruner</name><uri>http://www.blogger.com/profile/03549173101534896533</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2768784216632887015.post-2010269284673911565</id><published>2007-03-03T17:00:00.000+01:00</published><updated>2007-03-25T17:22:42.922+01:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Ceramics'/><title type='text'>Enfanga`T 2007. Ceramic Festival in Spain</title><content type='html'>Enfanga`T 2007. Ceramic Festival in Spain. From the            4th-7th April in the town of Celra, in North-Eastern            Spain a ceramic festival covering various aspects of            pottery will be held. It is organized by The Girona Potters Association. A ceramic artist who I met in Japan, Wali Haws has been invited to demonstrate "Le Four Mobile" and            a "Flying Kiln".&lt;br /&gt;&lt;br /&gt;Another great spanish ceramic artist Enric Mestre, who I also met in Japan in Shigarki at Togei no Mori will also be showing some of his recent works.&lt;br /&gt;&lt;br /&gt;After all Japan and Spain aren't really that far apart.&lt;br /&gt;&lt;br /&gt;More about Enric Mestre: &lt;a href="http://www.manises.com/diez/mestre.htm"&gt;www.manises.com &lt;/a&gt;&lt;br /&gt;More about the event: &lt;a href="http://www.enfangat.net/"&gt;www.enfangat.net&lt;/a&gt;&lt;br /&gt;More about Wali Hawes here: &lt;a href="http://www.walihawes.com/"&gt;www.walihawes.com&lt;br /&gt;&lt;/a&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2768784216632887015-2010269284673911565?l=and-other-things.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://and-other-things.blogspot.com/feeds/2010269284673911565/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=2768784216632887015&amp;postID=2010269284673911565' title='1 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2768784216632887015/posts/default/2010269284673911565'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2768784216632887015/posts/default/2010269284673911565'/><link rel='alternate' type='text/html' href='http://and-other-things.blogspot.com/2007/03/enfangat-2007-ceramic-festival-in-spain.html' title='Enfanga`T 2007. Ceramic Festival in Spain'/><author><name>Thomas Gruner</name><uri>http://www.blogger.com/profile/03549173101534896533</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2768784216632887015.post-3167362869915989022</id><published>2007-02-21T01:57:00.000+01:00</published><updated>2007-03-25T17:23:10.402+01:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Poetry'/><title type='text'>Eyengui of the Baka, and el Gran Azul of Chihuailaf  and the Mapuche (part 1)</title><content type='html'>Part 1 My Intro then a Poem from Elicura Chihuailaf&lt;br /&gt;&lt;br /&gt;Years past I awoke alone watching the world turn in the shadow of a sunrise far above the clouds in Apu Ausangate in Peru and I knew what it was like to feel the earth.&lt;br /&gt;&lt;br /&gt;Nothing of that in Barceona unless the wind picks up the waves and throws them on the shore in a rare moment of fury in the Mediteranean. Here the buildings are quite stone surrounded by noisy cars and the most exiting thing is the people and the life in the city.&lt;br /&gt;&lt;br /&gt;I always yearn to feel that connection with the earth in it's rawest awe inspiring moments.&lt;br /&gt;&lt;br /&gt;One of the best places I have ever seen this feeling expressed in literature is in the poetry of Elicura Chihuailaf.  Here is a peice by Chihuailaf first in Mapudungún, the language of the Mapuche. Elicura writes many of his poems in both Spanish and Mapudungún, following is my transaltion from Spanish to English.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;ÑI PEWMA MEW GÜMAN&lt;br /&gt;ñi pewma mew&lt;br /&gt;rofülenew ti pu wechun wenu&lt;br /&gt;ñi pu mawidantu mew&lt;br /&gt;Müte alütuwlay ti rüpü&lt;br /&gt;pu lamgen, pu peñi&lt;br /&gt;ka witralen mülen tüfachi Ko&lt;br /&gt;mew, pifiñ&lt;br /&gt;Küpalelmu chi tamün Kallfü&lt;br /&gt;Kawell wirafkülen wiñotuan&lt;br /&gt;Kamapu küpan, welu ñi kümel&lt;br /&gt;kaley ñi piwke&lt;br /&gt;Eymün mew ta choyügen&lt;br /&gt;Femgechi duguafiñ taiñ ayin&lt;br /&gt;pu Che.&lt;br /&gt;&lt;br /&gt;-Elicura Chihuailaf (orig in Mapudungún)&lt;br /&gt;&lt;br /&gt;EN MIS SUEÑOS&lt;br /&gt;Lejos de mi tierra añoro&lt;br /&gt;cuando en mis sueños&lt;br /&gt;me abrazan las altas cumbres&lt;br /&gt;de mis montañas.&lt;br /&gt;No es tan ancho el mar&lt;br /&gt;hermanas, hermanos&lt;br /&gt;y de pie estoy sobre estas aguas,&lt;br /&gt;les digo.&lt;br /&gt;Envíenme vuestro caballo&lt;br /&gt;azul, galopando volveré&lt;br /&gt;De lejos vengo, pero mi&lt;br /&gt;corazón resplandece&lt;br /&gt;De ustedes soy hijo, pues&lt;br /&gt;Así hablaré a nuestra Gente&lt;br /&gt;Amada.&lt;br /&gt;&lt;br /&gt;-Elicura Chihuailaf (orig in Spanish)&lt;br /&gt;&lt;br /&gt;IN MY DREAMS&lt;br /&gt;Far from the land that I long for&lt;br /&gt;while I am in my dreams&lt;br /&gt;I am embraced by the highest peaks&lt;br /&gt;of my mountains&lt;br /&gt;The sea is not so wide&lt;br /&gt;sisters, brothers&lt;br /&gt;and afoot I am on these waters,&lt;br /&gt;I say to them.&lt;br /&gt;Send to me your horse,&lt;br /&gt;blue,  galloping I will return&lt;br /&gt;From far away I come, but my&lt;br /&gt;heart shines&lt;br /&gt;Of you I am the son, so&lt;br /&gt;In that way I will speak to our Loved&lt;br /&gt;People.&lt;br /&gt;-Elicura Chihuailaf (translation by T.G. to English)&lt;br /&gt;&lt;br /&gt;If you can read in Spanish, or have google handy for translation, here are a few links:&lt;br /&gt;&lt;a href="http://es.geocities.com/kuifike/elicura/elicura.html"&gt;http://es.geocities.com/kuifike/elicura/elicura.html&lt;/a&gt;&lt;br /&gt;&lt;p&gt;&lt;a href="http://www.letrasdechile.cl/modules.php?name=News&amp;file=article&amp;amp;sid=189"&gt;http://www.letrasdechile.cl/modules.php?name=News&amp;file=article&amp;amp;sid=189&lt;/a&gt;&lt;br /&gt;&lt;/p&gt;&lt;p&gt;&lt;br /&gt;&lt;/p&gt; &lt;p&gt;  &lt;/p&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2768784216632887015-3167362869915989022?l=and-other-things.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://and-other-things.blogspot.com/feeds/3167362869915989022/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=2768784216632887015&amp;postID=3167362869915989022' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2768784216632887015/posts/default/3167362869915989022'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2768784216632887015/posts/default/3167362869915989022'/><link rel='alternate' type='text/html' href='http://and-other-things.blogspot.com/2007/02/eyengui-of-baka-and-el-gran-azul-of.html' title='Eyengui of the Baka, and el Gran Azul of Chihuailaf  and the Mapuche (part 1)'/><author><name>Thomas Gruner</name><uri>http://www.blogger.com/profile/03549173101534896533</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2768784216632887015.post-6135567984517478476</id><published>2007-02-19T22:45:00.001+01:00</published><updated>2009-04-08T09:29:49.483+01:00</updated><title type='text'>Creating</title><content type='html'>I'm a junky for creating things, I have to admit it. And this is the newest thing on the list, a blog. Probably if I had learned about blogs a few years back when I lived in Japan, there is little chance I would have decided to start programming my own websites and I just would have started blogging instead!&lt;br /&gt;&lt;br /&gt;and other things is a space for ideas about programming, art, travel, culture, ceramics, internet and so on. Maybe I will finally put up links to a few websites I have made and even link to some open source stuff I make..... if it ever gets done! But I want to see what this blogging thing is all about and I'm going to give it a whirl.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2768784216632887015-6135567984517478476?l=and-other-things.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2768784216632887015/posts/default/6135567984517478476'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2768784216632887015/posts/default/6135567984517478476'/><link rel='alternate' type='text/html' href='http://and-other-things.blogspot.com/2007/02/creating.html' title='Creating'/><author><name>Thomas Gruner</name><uri>http://www.blogger.com/profile/03549173101534896533</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author></entry></feed>
