<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	>

<channel>
	<title>Yann's Blog</title>
	<atom:link href="http://yannramin.com/feed/" rel="self" type="application/rss+xml" />
	<link>http://yannramin.com</link>
	<description>Software and life</description>
	<pubDate>Thu, 20 Nov 2008 09:13:14 +0000</pubDate>
	<generator>http://wordpress.org/?v=2.6</generator>
	<language>en</language>
			<item>
		<title>EVE Quantum Rise - Registration problems and updates</title>
		<link>http://yannramin.com/2008/11/20/eve-quantum-rise-registration-problems-and-updates/</link>
		<comments>http://yannramin.com/2008/11/20/eve-quantum-rise-registration-problems-and-updates/#comments</comments>
		<pubDate>Thu, 20 Nov 2008 09:13:14 +0000</pubDate>
		<dc:creator>Yann</dc:creator>
		
		<category><![CDATA[EVE-Central]]></category>

		<guid isPermaLink="false">http://yannramin.com/?p=112</guid>
		<description><![CDATA[It appears registration is currently broken for EVE-Central.com for the new Quantum Rise expansion. Bear with me while I update the needed backend to fix the issue with the registration boxes not appearing.
CCP should really invest in a real HTML renderer. WebKit is really easy to integrate after all&#8230; Plus it would be orders of [...]]]></description>
			<content:encoded><![CDATA[<p>It appears registration is currently broken for EVE-Central.com for the new Quantum Rise expansion. Bear with me while I update the needed backend to fix the issue with the registration boxes not appearing.</p>
<p>CCP should really invest in a real HTML renderer. WebKit is really easy to integrate after all&#8230; Plus it would be orders of magnitude faster. But alas, that is not the case and registration is broken.</p>
<p>On the upside, this does allow me to pose an interesting question. What else would you like to see for registered users? New tools? A clean up of the corporate web hosting? Better security through the EVE API? </p>
<p>One feature I&#8217;ve been mulling over is wallet order uploads and/or transaction pulling. Either see your own orders while you&#8217;re offline and aggregate the statistics into a much better pricing model for the market. The current approach of using posted orders is flawed as it only provides a glimpse into what all commodities are trading at. After all, an order is not a transaction.</p>
<p>Thoughts?</p>
]]></content:encoded>
			<wfw:commentRss>http://yannramin.com/2008/11/20/eve-quantum-rise-registration-problems-and-updates/feed/</wfw:commentRss>
		</item>
		<item>
		<title>yyafl Release Soon</title>
		<link>http://yannramin.com/2008/10/24/yyafl-release-soon/</link>
		<comments>http://yannramin.com/2008/10/24/yyafl-release-soon/#comments</comments>
		<pubDate>Fri, 24 Oct 2008 08:25:09 +0000</pubDate>
		<dc:creator>Yann</dc:creator>
		
		<category><![CDATA[Python]]></category>

		<category><![CDATA[Software]]></category>

		<category><![CDATA[yyafl]]></category>

		<guid isPermaLink="false">http://yannramin.com/?p=110</guid>
		<description><![CDATA[I&#8217;m just about ready to push out the first release of yyafl, if you&#8217;re not already running it from the repository.
Stay tuned in the next 3 days 
]]></description>
			<content:encoded><![CDATA[<p>I&#8217;m just about ready to push out the first release of yyafl, if you&#8217;re not already running it from the repository.</p>
<p>Stay tuned in the next 3 days <img src='http://yannramin.com/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' /></p>
]]></content:encoded>
			<wfw:commentRss>http://yannramin.com/2008/10/24/yyafl-release-soon/feed/</wfw:commentRss>
		</item>
		<item>
		<title>Quick Maintenance on EVE-Central - Back up</title>
		<link>http://yannramin.com/2008/10/23/quick-maintenance-on-eve-central/</link>
		<comments>http://yannramin.com/2008/10/23/quick-maintenance-on-eve-central/#comments</comments>
		<pubDate>Fri, 24 Oct 2008 07:47:59 +0000</pubDate>
		<dc:creator>Yann</dc:creator>
		
		<category><![CDATA[EVE-Central]]></category>

		<guid isPermaLink="false">http://yannramin.com/?p=107</guid>
		<description><![CDATA[I&#8217;m going to be bringing the site down for a few hours to clean out some lingering database issues.
Be back soon. 
Edit: We&#8217;re back up
]]></description>
			<content:encoded><![CDATA[<p>I&#8217;m going to be bringing the site down for a few hours to clean out some lingering database issues.</p>
<p>Be back soon. </p>
<p><strong>Edit:</strong> We&#8217;re back up</p>
]]></content:encoded>
			<wfw:commentRss>http://yannramin.com/2008/10/23/quick-maintenance-on-eve-central/feed/</wfw:commentRss>
		</item>
		<item>
		<title>yyafl now has layout support, with decorators</title>
		<link>http://yannramin.com/2008/09/29/yyafl-now-has-layout-support-with-decorators/</link>
		<comments>http://yannramin.com/2008/09/29/yyafl-now-has-layout-support-with-decorators/#comments</comments>
		<pubDate>Tue, 30 Sep 2008 07:35:17 +0000</pubDate>
		<dc:creator>Yann</dc:creator>
		
		<category><![CDATA[Python]]></category>

		<category><![CDATA[Software]]></category>

		<category><![CDATA[yyafl]]></category>

		<guid isPermaLink="false">http://yannramin.com/?p=103</guid>
		<description><![CDATA[Just finished adding in a flexible layout system to yyafl, my reimplementation of Django newforms for other Python web frameworks or WSGI adapters. Now its simple to add default layouts or render a different layout on demand.
For example, to add a simple TableLayout() to a form:

class Form1&#40;yyafl.Form&#41;:
    name = fields.CharField&#40;label = &#34;User [...]]]></description>
			<content:encoded><![CDATA[<p>Just finished adding in a flexible layout system to <a href="http://www.stackfoundry.com/yyafl/">yyafl</a>, my reimplementation of Django newforms for other Python web frameworks or WSGI adapters. Now its simple to add default layouts or render a different layout on demand.</p>
<p>For example, to add a simple TableLayout() to a form:</p>

<div class="wp_syntax"><div class="code"><pre class="python"><span style="color: #ff7700;font-weight:bold;">class</span> Form1<span style="color: black;">&#40;</span>yyafl.<span style="color: black;">Form</span><span style="color: black;">&#41;</span>:
    name = fields.<span style="color: black;">CharField</span><span style="color: black;">&#40;</span>label = <span style="color: #483d8b;">&quot;User name&quot;</span>, required = <span style="color: #008000;">True</span><span style="color: black;">&#41;</span>
    <span style="color: #dc143c;">email</span> = fields.<span style="color: black;">CharField</span><span style="color: black;">&#40;</span>label = <span style="color: #483d8b;">&quot;Your e-mail address&quot;</span>, required = <span style="color: #008000;">True</span><span style="color: black;">&#41;</span>
    hidden = fields.<span style="color: black;">CharField</span><span style="color: black;">&#40;</span>widget = HiddenInput, default = <span style="color: #483d8b;">&quot;123&quot;</span><span style="color: black;">&#41;</span>
    _layout = yyafl.<span style="color: black;">layout</span>.<span style="color: black;">TableLayout</span><span style="color: black;">&#40;</span><span style="color: black;">&#41;</span></pre></div></div>

<p>and to render the form to HTML:</p>

<div class="wp_syntax"><div class="code"><pre class="python"><span style="color: #808080; font-style: italic;"># Render using the layout specified in _layout above.</span>
content += f.<span style="color: black;">render</span><span style="color: black;">&#40;</span><span style="color: black;">&#41;</span>
<span style="color: #808080; font-style: italic;"># Or invoke the layout explicitly</span>
l = yyafl.<span style="color: black;">layout</span>.<span style="color: black;">TableLayout</span><span style="color: black;">&#40;</span><span style="color: black;">&#41;</span>
content += l.<span style="color: black;">render</span><span style="color: black;">&#40;</span>f<span style="color: black;">&#41;</span></pre></div></div>

<p>yyafl Layout()s also understand decorators:</p>

<div class="wp_syntax"><div class="code"><pre class="python">decorators = <span style="color: black;">&#123;</span> <span style="color: #483d8b;">'*'</span> : MarkRequiredDecorator<span style="color: black;">&#40;</span><span style="color: black;">&#41;</span>,
    <span style="color: #483d8b;">'name_field'</span> : HighlightDecorator<span style="color: black;">&#40;</span><span style="color: black;">&#41;</span> <span style="color: black;">&#125;</span>
layout = yyafl.<span style="color: black;">layout</span>.<span style="color: black;">TableLayout</span><span style="color: black;">&#40;</span>decorators = decorators<span style="color: black;">&#41;</span>
layout.<span style="color: black;">render</span><span style="color: black;">&#40;</span>f<span style="color: black;">&#41;</span></pre></div></div>

<p>Decorators can change attributes and wrap fields in markup blocks. In the above example, the &#8216;*&#8217; signifies the decorator should apply to all fields, and the HighlightDecorator should only apply to the field called &#8216;name_field&#8217;.</p>
<p>There are still some not yet implemented ideas:</p>
<ul>
<li>It doesn&#8217;t generated the &lt;form&gt; blocks yet, you need to roll your own.</li>
<li>Field reordering and grouping isn&#8217;t supported by the default layout engines yet, though you could write your own.</li>
<li>No AJAX form support (though its coming!)</li>
<li>Automatic CSRF prevention forms. </li>
<li>Error message printing in the form.</li>
</ul>
<p>You can find these latest changes in the Git repository linked from the <a href="http://www.stackfoundry.com/yyafl/">main yyafl web page.</a></p>
]]></content:encoded>
			<wfw:commentRss>http://yannramin.com/2008/09/29/yyafl-now-has-layout-support-with-decorators/feed/</wfw:commentRss>
		</item>
		<item>
		<title>Why I Use CherryPy, in someone elses words</title>
		<link>http://yannramin.com/2008/09/24/why-i-use-cherrypy-in-someone-elses-words/</link>
		<comments>http://yannramin.com/2008/09/24/why-i-use-cherrypy-in-someone-elses-words/#comments</comments>
		<pubDate>Thu, 25 Sep 2008 06:03:29 +0000</pubDate>
		<dc:creator>Yann</dc:creator>
		
		<category><![CDATA[Python]]></category>

		<category><![CDATA[Software]]></category>

		<guid isPermaLink="false">http://yannramin.com/?p=101</guid>
		<description><![CDATA[With the popularity of Django or Rails, people have asked before why I use CherryPy. The reason is simple, I love the flexibility. I get to pick what I want to use inside, CherryPy simply worries about how to get the information to a web browser. I found this post to be a good overview [...]]]></description>
			<content:encoded><![CDATA[<p>With the popularity of Django or Rails, people have asked before why I use CherryPy. The reason is simple, I love the flexibility. I get to pick what I want to use inside, CherryPy simply worries about how to get the information to a web browser. I found <a href="http://kaens.blogspot.com/2008/09/cherrypy-doesnt-get-enough-love.html">this post</a> to be a good overview of the strengths of CherryPy. Give it a good read. I completely agree with the author&#8217;s points, and wish CherryPy would get a bit more attention in the do everything web-framework era. </p>
]]></content:encoded>
			<wfw:commentRss>http://yannramin.com/2008/09/24/why-i-use-cherrypy-in-someone-elses-words/feed/</wfw:commentRss>
		</item>
		<item>
		<title>qsgen - The Quick Site Generator - Version 0.1 Released</title>
		<link>http://yannramin.com/2008/08/13/qsgen-01-released/</link>
		<comments>http://yannramin.com/2008/08/13/qsgen-01-released/#comments</comments>
		<pubDate>Thu, 14 Aug 2008 07:53:03 +0000</pubDate>
		<dc:creator>Yann</dc:creator>
		
		<category><![CDATA[Python]]></category>

		<category><![CDATA[Software]]></category>

		<guid isPermaLink="false">http://yannramin.com/?p=97</guid>
		<description><![CDATA[qsgen, the single-script static web-site generator has just hit the first release, version 0.1.
In short, qsgen is a pure Python functional wrapper around Mako templates and the Pygments library. It lets you build a hierarchical set of .html pages and associated base templates using Mako, which will be transformed into static pages for serving on [...]]]></description>
			<content:encoded><![CDATA[<p><a href="http://www.stackfoundry.com/other/qsgen/">qsgen</a>, the single-script static web-site generator has just hit the first release, version 0.1.</p>
<p>In short, qsgen is a pure Python functional wrapper around <a href="http://www.makotemplates.org/">Mako</a> templates and the Pygments library. It lets you build a hierarchical set of .html pages and associated base templates using Mako, which will be transformed into static pages for serving on the web. In addition, it also includes support for <a href="http://pygments.org/">Pygments </a> syntax highlighting in-line with the HTML or even with source code sourced from separate files. </p>
<p>I&#8217;m using qsgen on both <a href="http://www.stackfoundry.com">www.stackfoundry.com</a> and <a href="http://tomeapi.com">tomeapi.com</a>. If you feel making a dynamicaly scripted website just in order to display some simple content is silly, or feel the complexity and headaches of a true CMS system outweigh the benefits, then <a href="http://www.stackfoundry.com/other/qsgen/">qsgen</a> is for you.</p>
<p>(qsgen is very similar to a similar script called Maehan which I was using for many years. Consider qsgen a more feature packed and cleaner version of the old Perl Maehan).</p>
]]></content:encoded>
			<wfw:commentRss>http://yannramin.com/2008/08/13/qsgen-01-released/feed/</wfw:commentRss>
		</item>
		<item>
		<title>Some Instability</title>
		<link>http://yannramin.com/2008/08/11/some-instability/</link>
		<comments>http://yannramin.com/2008/08/11/some-instability/#comments</comments>
		<pubDate>Mon, 11 Aug 2008 18:58:43 +0000</pubDate>
		<dc:creator>Yann</dc:creator>
		
		<category><![CDATA[EVE-Central]]></category>

		<guid isPermaLink="false">http://yannramin.com/?p=93</guid>
		<description><![CDATA[Always fun here in server management land.
We&#8217;ve hit some instabilities recently, but so far been able to track them down. Sorry about the small bursts of downtime. If you do notice EVE-Central.com not responding, feel free to send me an e-mail just in case I haven&#8217;t noticed it yet.
For the technically curious, we&#8217;ve hit the [...]]]></description>
			<content:encoded><![CDATA[<p>Always fun here in server management land.</p>
<p>We&#8217;ve hit some instabilities recently, but so far been able to track them down. Sorry about the small bursts of downtime. If you do notice EVE-Central.com not responding, feel free to send me an e-mail just in case I haven&#8217;t noticed it yet.</p>
<p>For the technically curious, we&#8217;ve hit the following issues:</p>
<ol>
<li>Not checking ulimit -n for the gang of cherrypy servers. Ran out of file handles, didn&#8217;t recover well from that. Now we have plenty of file handles to go around <img src='http://yannramin.com/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' /> </li>
<li>Hit a bug in the tradefinder route planning software, which caused it to spin forever trying to compute routes to Black Rise. Once again, didn&#8217;t self-recover from that. There are still some questions on why it caused the gang of cherrypy instances to go belly up, but thats another story.</li>
<li>Hit a bug in cherrypy&#8217;s own FileSession code, which could cause deadlocks. Applied a patch and we&#8217;re back in the running.</li>
</ol>
<p>We value our visitors and want to keep EVE-Central.com going strong.</p>
]]></content:encoded>
			<wfw:commentRss>http://yannramin.com/2008/08/11/some-instability/feed/</wfw:commentRss>
		</item>
		<item>
		<title>Big Monitors, Window Management Frustration, and finding StumpWM</title>
		<link>http://yannramin.com/2008/08/07/big-monitors-window-management-frustration-and-finding-stumpwm/</link>
		<comments>http://yannramin.com/2008/08/07/big-monitors-window-management-frustration-and-finding-stumpwm/#comments</comments>
		<pubDate>Fri, 08 Aug 2008 06:08:32 +0000</pubDate>
		<dc:creator>Yann</dc:creator>
		
		<category><![CDATA[Hardware]]></category>

		<category><![CDATA[Linux]]></category>

		<category><![CDATA[Software]]></category>

		<category><![CDATA[monitor]]></category>

		<category><![CDATA[window manager]]></category>

		<guid isPermaLink="false">http://yannramin.com/?p=86</guid>
		<description><![CDATA[You may be like me, and have a large (20&#8243;+, or especially 30&#8243; in this case) monitor attached to your computer. You&#8217;re also a avid computer user and have more than one program open at a time which you want to view simultaneously. You also use the keyboard much more than the mouse (except when [...]]]></description>
			<content:encoded><![CDATA[<p>You may be like me, and have a large (20&#8243;+, or especially 30&#8243; in this case) monitor attached to your computer. You&#8217;re also a avid computer user and have more than one program open at a time which you want to view simultaneously. You also use the keyboard much more than the mouse (except when lazily surfing the web). How often have you noticed spending large amounts of time moving your windows around, resizing, moving, rearranging, and all the normal window management jazz? How often do you find yourself switching among windows with alt-tab, just to refer to some information which is currently obscured by the window you&#8217;re currently in? If your answer is very often, then you may be a candidate for what is known as a <a href="http://en.wikipedia.org/wiki/Tiling_window_manager">Tiling window manager</a>.</p>
<p>I&#8217;ve been using both KDE and Gnome on Linux for many years, and also use the Redmond user-interface (aka Windows). I also own a Mac. The Macintosh (OS X) and Windows are similar models, and Gnome and KDE are even more similar to Windows. Now, I am not saying that either interface is unusable, but it is an inefficient choice if you fall into the categories above. </p>
<p>Granted, the classic window management paradigms are very familiar. I won&#8217;t say natural, since computers are really not natural, they&#8217;re a learned behavior. Computers only feel natural when they operate in a similar fashion to other computers you&#8217;ve used or seen in the past. The problem with this user interface paradigm is becoming apparent as screen sizes grow (and shrink!). Your desktop is simply far too large to use properly in its overlapping window mode. Plus all the mouse work moves you away from your primary user interface device: the keyboard.</p>
<p>Many program designers have noticed this. They&#8217;ve moved away from the nightmare of MDI (multiple overlapping windows inside of your overlapping window), and developed <i>docking</i> elements. The toolbar you can dock and move. The properties editor on the right. You can&#8217;t (generally) overlap the dockable elements. But in all cases, the elements are on the side or around your document or main view. Stuff stays put, is intelligently placed, and doesn&#8217;t get in your way constantly. Why can&#8217;t a window manager work the same way? But it can! Enter the <a href="http://en.wikipedia.org/wiki/Tiling_window_manager">Tiling window manager</a>.</p>
<p>I like <a href="http://www.nongnu.org/stumpwm/">StumpWM</a>, which is a tiling window manager modeled after ratpoison (and all other tiling managers before it). Its command set is a good mix of GNU Screen and emacs. Its also written in pure Common Lisp. There are other tiling managers out there, such as my second favorite, <a href="http://www.xmonad.org/">XMonad</a>, which can even work flawlessly in Gnome and KDE (or mostly flawlessly anyway). XMonad has the advantage of automatic layout modes which StumpWM currently lacks. I didn&#8217;t particularly like Ion3 or WmII: the multi-monitor support is not as developed as StumpWM), plus Ion3 open-source development <a href="http://en.wikipedia.org/wiki/Ion_(window_manager)">could be at risk. </a>.</p>
<p>I&#8217;ve been using StumpWM for a couple of days. I am trying to quit Gnome cold-turkey, and so far have been successful. All of my applications work. The few gnome specific management applications I used I&#8217;ve managed to replace (such as NetworkManager for the laptop). My environment is lighter without the 50 background processes Gnome uses for automagic abilities (HAL, DBUS, etc). It doesn&#8217;t suffer the &#8220;users like simple, so lets not complicate stuff&#8221; philosophy Gnome uses in several places (an example: gnome-screensaver vs xscreensaver). Plus, <b>I can use the keyboard almost exclusively, only touching the mouse to use certain applications</b>. All window operations are entirely keyboard driven.</p>
<p>But if you&#8217;re not trying to quit Gnome completely, both window managers can show the normal Gnome panel for you. One thing you&#8217;ll have to scrap is the Desktop paradigm - you can put a picture on your root window, but the cluttered mass of icons isn&#8217;t available - you&#8217;ve put something far more useful there instead. Your applications.</p>
<p>It may seem scary at first, but I encourage you to try a tiling manager. Give yourself several hours of dedicated time. Will yourself not to switch back to the old familiar interface. Print out the quick reference or the whole manual, just in case you get lost in how to move around :). Its well worth the effort.</p>
]]></content:encoded>
			<wfw:commentRss>http://yannramin.com/2008/08/07/big-monitors-window-management-frustration-and-finding-stumpwm/feed/</wfw:commentRss>
		</item>
		<item>
		<title>Trade Tool: Sell Order Compare is now Public</title>
		<link>http://yannramin.com/2008/08/04/trade-tool-sell-order-compare-is-now-public/</link>
		<comments>http://yannramin.com/2008/08/04/trade-tool-sell-order-compare-is-now-public/#comments</comments>
		<pubDate>Mon, 04 Aug 2008 20:05:13 +0000</pubDate>
		<dc:creator>Yann</dc:creator>
		
		<category><![CDATA[EVE-Central]]></category>

		<category><![CDATA[eve]]></category>

		<category><![CDATA[trade]]></category>

		<guid isPermaLink="false">http://yannramin.com/?p=82</guid>
		<description><![CDATA[Just a quick note: I&#8217;ve removed the login requirement for the comparison trade tool. Its now quick and easy to use, but still not IGB compatible due to the use of Javascript and a little AJAX. You can get to it on the main trade page.
Enjoy!
]]></description>
			<content:encoded><![CDATA[<p>Just a quick note: I&#8217;ve removed the login requirement for the comparison trade tool. Its now quick and easy to use, but still not IGB compatible due to the use of Javascript and a little AJAX. You can get to it <a href="http://eve-central.com/tradetool/">on the main trade page.</a></p>
<p>Enjoy!</p>
]]></content:encoded>
			<wfw:commentRss>http://yannramin.com/2008/08/04/trade-tool-sell-order-compare-is-now-public/feed/</wfw:commentRss>
		</item>
		<item>
		<title>Weekend Glitch</title>
		<link>http://yannramin.com/2008/08/03/weekend-glitch/</link>
		<comments>http://yannramin.com/2008/08/03/weekend-glitch/#comments</comments>
		<pubDate>Mon, 04 Aug 2008 05:30:35 +0000</pubDate>
		<dc:creator>Yann</dc:creator>
		
		<category><![CDATA[EVE-Central]]></category>

		<guid isPermaLink="false">http://yannramin.com/?p=79</guid>
		<description><![CDATA[Looks like EVE-Central.com went off the air for a 24-hour period this weekend. My apologizes for the outage - I was out of town and not monitoring the site closely.
On another note, I&#8217;ve learned the virtues of making sure the environment the server was running in had enough available file handles  
We&#8217;re back in [...]]]></description>
			<content:encoded><![CDATA[<p>Looks like EVE-Central.com went off the air for a 24-hour period this weekend. My apologizes for the outage - I was out of town and not monitoring the site closely.</p>
<p>On another note, I&#8217;ve learned the virtues of making sure the environment the server was running in had enough available file handles <img src='http://yannramin.com/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' /> </p>
<p>We&#8217;re back in operation. If there any any problems, feel free to contact me in-game or by email. I try to pursue the forum thread, but its low on my reading and daily check list.</p>
]]></content:encoded>
			<wfw:commentRss>http://yannramin.com/2008/08/03/weekend-glitch/feed/</wfw:commentRss>
		</item>
	</channel>
</rss>

<!-- Dynamic Page Served (once) in 0.314 seconds -->
