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

<channel>
	<title>dot.Using &#187; Uncategorized</title>
	<atom:link href="http://blog.kesor.net/category/uncategorized/feed/" rel="self" type="application/rss+xml" />
	<link>http://blog.kesor.net</link>
	<description>Making technology about computers, and computers about usability.</description>
	<lastBuildDate>Tue, 30 Aug 2011 00:30:09 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.3.1</generator>
		<item>
		<title>I think I really dislike Python</title>
		<link>http://blog.kesor.net/2009/04/21/i-think-i-really-dislike-python/</link>
		<comments>http://blog.kesor.net/2009/04/21/i-think-i-really-dislike-python/#comments</comments>
		<pubDate>Tue, 21 Apr 2009 11:49:19 +0000</pubDate>
		<dc:creator>kesor</dc:creator>
				<category><![CDATA[Uncategorized]]></category>

		<guid isPermaLink="false">http://blog.kesor.net/?p=32</guid>
		<description><![CDATA[Ruby: > irb irb(main):001:0> a = [1,2,3] => [1, 2, 3] irb(main):002:0> a[10] = 20 => 20 irb(main):003:0> a => [1, 2, 3, nil, nil, nil, nil, nil, nil, nil, 20] Perl: > perl @a = (1,2,3); $a[10] = 20; use Data::Dumper; print Dumper(@a); $VAR1 = 1; $VAR2 = 2; $VAR3 = 3; $VAR4 = [...]]]></description>
			<content:encoded><![CDATA[<h3>Ruby:</h3>
<pre>> irb
irb(main):001:0> a = [1,2,3]
=> [1, 2, 3]
irb(main):002:0> a[10] = 20
=> 20
irb(main):003:0> a
=> [1, 2, 3, nil, nil, nil, nil, nil, nil, nil, 20]
</pre>
<p><br/></p>
<h3>Perl:</h3>
<pre>> perl
@a = (1,2,3);
$a[10] = 20;
use Data::Dumper;
print Dumper(@a);
$VAR1 = 1;
$VAR2 = 2;
$VAR3 = 3;
$VAR4 = undef;
$VAR5 = undef;
$VAR6 = undef;
$VAR7 = undef;
$VAR8 = undef;
$VAR9 = undef;
$VAR10 = undef;
$VAR11 = 20;
</pre>
<p><br/></p>
<h3>Python:</h3>
<pre>> python
>>> a = [1,2,3]
>>> a[10] = 20
<span style="color:red">Traceback (most recent call last):
  File "<stdin>", line 1, in ?
IndexError: list assignment index out of range</span>
>>> a
[1, 2, 3]
</pre>
]]></content:encoded>
			<wfw:commentRss>http://blog.kesor.net/2009/04/21/i-think-i-really-dislike-python/feed/</wfw:commentRss>
		<slash:comments>4</slash:comments>
		</item>
		<item>
		<title>A bright idea in the middle of the day</title>
		<link>http://blog.kesor.net/2008/12/01/a-bright-idea-in-the-middle-of-the-day/</link>
		<comments>http://blog.kesor.net/2008/12/01/a-bright-idea-in-the-middle-of-the-day/#comments</comments>
		<pubDate>Mon, 01 Dec 2008 10:45:28 +0000</pubDate>
		<dc:creator>kesor</dc:creator>
				<category><![CDATA[Uncategorized]]></category>
		<category><![CDATA[nagios unix monitoring cruisecontrol automation]]></category>

		<guid isPermaLink="false">http://blog.kesor.net/?p=23</guid>
		<description><![CDATA[I was reading a blog yesterday about &#8220;The sad state of open source monitoring tools&#8221; and was thinking about it for some time. Coincidently today I had a chance to look at my CruiseControl configuration files, which I wrote quite a long time ago. I really love the DSL that CruiseControl is using for it&#8217;s [...]]]></description>
			<content:encoded><![CDATA[<p>I was reading a blog yesterday about &#8220;<a href="http://agiletesting.blogspot.com/2008/11/sad-state-of-open-source-monitoring.html">The sad state of open source monitoring tools</a>&#8221; and was thinking about it for some time. Coincidently today I had a chance to look at my <a href="http://cruisecontrol.sf.net">CruiseControl</a> configuration files, which I wrote quite a long time ago.</p>
<p>I really love the DSL that CruiseControl is using for it&#8217;s configuration, it&#8217;s extremely powerful at describing how to build projects. Especially powerful are the variables, that unlike in Ant are not immutable, and the way plugins can be pre-configured with your own defaults, as well as renamed to other names. It&#8217;s really easy to configure it in such a way that adding a new version for a project is just 1-3 lines of XML, for example
<pre>&lt;xxx-project name="XXX v6.66"&gt;
  &lt;property name="version" value="6.66"/&gt;
&lt;/xxx-project&gt;</pre>
<p><br/></p>
<p>Just in those 3 lines, the pre-configuration already includes all the information about the project. Where it is at, who to send e-mail to, where is the version control, EVERYTHING! If the only variable that changes over time is the version number, then that is all you need to leave as a variable &#8230; everything else is just a template that can be re-used. And these templates are extremely easy to combine from smaller templates, it&#8217;s a template-in-the-template kind of configuration.</p>
<p>IMHO this would very much apply to configuration of monitoring software, like <a href="http://www.nagios.org">nagios</a> for example. And the way the (CC) plugins are written in java &#8211; adding new plugins that check all kinds of esoteric things is really easy to do.</p>
<p>If it would also have the XML/XSLT configuration of how the web-interface looks like (the way CruiseControl does), and the super-easy installation (again like in CruiseControl). It would be a really really really great product, extremely powerful, easy to configure, and potentially great looking.</p>
<p>If only <a href="http://www.thoughtworks.com/">ThoughtWorks </a>would write such a thing &#8230; I would be thrilled!</p>
<p>Actually nagios is already extremely similar to what I described, but for some strange reason I find the <em>rigid</em> configuration of nagios a large PITA. Maybe some-day when time stops and I will have unlimited time to code, I will do it myself.</p>
]]></content:encoded>
			<wfw:commentRss>http://blog.kesor.net/2008/12/01/a-bright-idea-in-the-middle-of-the-day/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
	</channel>
</rss>

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

