<?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/"
	xmlns:georss="http://www.georss.org/georss" xmlns:geo="http://www.w3.org/2003/01/geo/wgs84_pos#" xmlns:media="http://search.yahoo.com/mrss/"
	>

<channel>
	<title>It can't rain forever...</title>
	<atom:link href="http://bbossola.wordpress.com/feed/" rel="self" type="application/rss+xml" />
	<link>http://bbossola.wordpress.com</link>
	<description>Life, Java, Whatever</description>
	<lastBuildDate>Tue, 03 Jun 2008 11:59:23 +0000</lastBuildDate>
	<generator>http://wordpress.com/</generator>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<cloud domain='bbossola.wordpress.com' port='80' path='/?rsscloud=notify' registerProcedure='' protocol='http-post' />
<image>
		<url>http://www.gravatar.com/blavatar/1bf780ac35cad3a7cfb93adeae04670d?s=96&#038;d=http://s.wordpress.com/i/buttonw-com.png</url>
		<title>It can't rain forever...</title>
		<link>http://bbossola.wordpress.com</link>
	</image>
			<item>
		<title>Software and conventional engineering</title>
		<link>http://bbossola.wordpress.com/2008/06/02/software-and-conventional-engineering/</link>
		<comments>http://bbossola.wordpress.com/2008/06/02/software-and-conventional-engineering/#comments</comments>
		<pubDate>Mon, 02 Jun 2008 20:55:00 +0000</pubDate>
		<dc:creator>bbossola</dc:creator>
				<category><![CDATA[Object Oriented]]></category>

		<guid isPermaLink="false">http://bbossola.wordpress.com/?p=43</guid>
		<description><![CDATA[&#8220;&#8230;the analogy to conventional engineering fails because the construction of an oil production platform is materially different from the production of a computer program. The detailed design specification of a program is its code; the actual building of the program is done automatically. One of the goals of almost all programming languages ever developed has [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=bbossola.wordpress.com&blog=309130&post=43&subd=bbossola&ref=&feed=1" />]]></description>
			<content:encoded><![CDATA[<div class='snap_preview'><br /><p><em>&#8220;&#8230;the analogy to conventional engineering fails because the construction of an oil production platform is materially different from the production of a computer program. The detailed design specification of a program is its code; the actual building of the program is done automatically. One of the goals of almost all programming languages ever developed has been that the code shall be self-documenting. When we look upon it this way, 100% of all programmers do detailed design.&#8221;</em></p>
<p>&#8220;Why Programmers Don&#8217;t Use Methods And What We Can Do About It&#8221;,  <span><a href="http://heim.ifi.uio.no/~trygver/1997/Why/970329why.pdf" target="_blank">a column</a> in ObjectEXPERT 				January 1997 by Trygve Reenskaug<br />
</span></p>
<img alt="" border="0" src="http://feeds.wordpress.com/1.0/categories/bbossola.wordpress.com/43/" /> <img alt="" border="0" src="http://feeds.wordpress.com/1.0/tags/bbossola.wordpress.com/43/" /> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/bbossola.wordpress.com/43/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/bbossola.wordpress.com/43/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/bbossola.wordpress.com/43/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/bbossola.wordpress.com/43/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/bbossola.wordpress.com/43/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/bbossola.wordpress.com/43/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/bbossola.wordpress.com/43/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/bbossola.wordpress.com/43/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/bbossola.wordpress.com/43/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/bbossola.wordpress.com/43/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=bbossola.wordpress.com&blog=309130&post=43&subd=bbossola&ref=&feed=1" /></div>]]></content:encoded>
			<wfw:commentRss>http://bbossola.wordpress.com/2008/06/02/software-and-conventional-engineering/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
	
		<media:content url="http://1.gravatar.com/avatar/b6ea5391cb7f1a490da07dbf0f033ae3?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">bbossola</media:title>
		</media:content>
	</item>
		<item>
		<title>The technology paradox</title>
		<link>http://bbossola.wordpress.com/2008/05/24/the-technology-paradox/</link>
		<comments>http://bbossola.wordpress.com/2008/05/24/the-technology-paradox/#comments</comments>
		<pubDate>Sat, 24 May 2008 10:52:38 +0000</pubDate>
		<dc:creator>bbossola</dc:creator>
				<category><![CDATA[Java]]></category>
		<category><![CDATA[Object Oriented]]></category>

		<guid isPermaLink="false">http://bbossola.wordpress.com/?p=42</guid>
		<description><![CDATA[&#8220;&#8230;the same technology that simplifies life by providing more functionality &#8230; also complicates life by making it hard to learn. This paradox of technology is often used by people as an excuse for poor design&#8230;&#8221;
Donald A. Norman &#8211;          The Design of Everyday Things, 1988 (pp. 30-31)
1988&#8230; [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=bbossola.wordpress.com&blog=309130&post=42&subd=bbossola&ref=&feed=1" />]]></description>
			<content:encoded><![CDATA[<div class='snap_preview'><br /><p><em>&#8220;&#8230;the same technology that simplifies life by providing more functionality &#8230; also complicates life by making it hard to learn. This paradox of technology is often used by people as an excuse for poor design&#8230;&#8221;</em><br />
<span style="font-family:Verdana;color:#000000;"><em>Donald A. Norman &#8211;          The Design of Everyday Things, 1988 (pp. 30-31)</em></span></p>
<p>1988&#8230; sounds actual? By &#8220;technology&#8221;, are you thinking, as I&#8217;m now doing, about the latest state-of-the-art framework you&#8217;ve been using on your last software project? And by &#8220;design&#8221;, are you thinking about the actual software design of such project?</p>
<p>Think about it.</p>
<img alt="" border="0" src="http://feeds.wordpress.com/1.0/categories/bbossola.wordpress.com/42/" /> <img alt="" border="0" src="http://feeds.wordpress.com/1.0/tags/bbossola.wordpress.com/42/" /> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/bbossola.wordpress.com/42/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/bbossola.wordpress.com/42/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/bbossola.wordpress.com/42/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/bbossola.wordpress.com/42/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/bbossola.wordpress.com/42/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/bbossola.wordpress.com/42/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/bbossola.wordpress.com/42/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/bbossola.wordpress.com/42/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/bbossola.wordpress.com/42/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/bbossola.wordpress.com/42/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=bbossola.wordpress.com&blog=309130&post=42&subd=bbossola&ref=&feed=1" /></div>]]></content:encoded>
			<wfw:commentRss>http://bbossola.wordpress.com/2008/05/24/the-technology-paradox/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
	
		<media:content url="http://1.gravatar.com/avatar/b6ea5391cb7f1a490da07dbf0f033ae3?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">bbossola</media:title>
		</media:content>
	</item>
		<item>
		<title>Don&#8217;t judge a book by its cover</title>
		<link>http://bbossola.wordpress.com/2008/05/16/dont-judge-a-book-by-its-cover/</link>
		<comments>http://bbossola.wordpress.com/2008/05/16/dont-judge-a-book-by-its-cover/#comments</comments>
		<pubDate>Fri, 16 May 2008 12:52:32 +0000</pubDate>
		<dc:creator>bbossola</dc:creator>
				<category><![CDATA[Java]]></category>
		<category><![CDATA[Object Oriented]]></category>

		<guid isPermaLink="false">http://bbossola.wordpress.com/?p=41</guid>
		<description><![CDATA[
This is not a spot. This is a book I&#8217;ve been leaving closed because of its cover&#8230; what a pity! This is the first book I&#8217;ve ever read that actually talks and explain object oriented in an easy and pleasant way. Most experienced programmers will find it not much useful, but for a newbie or [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=bbossola.wordpress.com&blog=309130&post=41&subd=bbossola&ref=&feed=1" />]]></description>
			<content:encoded><![CDATA[<div class='snap_preview'><br /><p><a title="Head First Object-Oriented Analysis and Desing (on Amazon.com)" href="http://www.amazon.com/Head-First-Object-Oriented-Analysis-Design/dp/0596008678//" target="_blank"><img class="alignleft" style="float:left;" border="0" src="http://ecx.images-amazon.com/images/I/51H8F665FAL._SS500_.jpg" alt="Head First Object-Oriented Analysis and Design" width="160" height="175" /></a><br />
This is not a spot. This is a book I&#8217;ve been leaving closed because of its cover&#8230; what a pity! This is the first book I&#8217;ve ever read that actually talks and explain object oriented in an easy and pleasant way. Most experienced programmers will find it not much useful, but for a newbie or an intermediate OO programmer this is a must read.</p>
<p>In case of doubt, just read it <img src='http://s.wordpress.com/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' />  It will worth the time you&#8217;re going to spend. Definitely. And it&#8217;s also quite amusing sometimes!</p>
<img alt="" border="0" src="http://feeds.wordpress.com/1.0/categories/bbossola.wordpress.com/41/" /> <img alt="" border="0" src="http://feeds.wordpress.com/1.0/tags/bbossola.wordpress.com/41/" /> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/bbossola.wordpress.com/41/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/bbossola.wordpress.com/41/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/bbossola.wordpress.com/41/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/bbossola.wordpress.com/41/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/bbossola.wordpress.com/41/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/bbossola.wordpress.com/41/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/bbossola.wordpress.com/41/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/bbossola.wordpress.com/41/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/bbossola.wordpress.com/41/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/bbossola.wordpress.com/41/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=bbossola.wordpress.com&blog=309130&post=41&subd=bbossola&ref=&feed=1" /></div>]]></content:encoded>
			<wfw:commentRss>http://bbossola.wordpress.com/2008/05/16/dont-judge-a-book-by-its-cover/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
	
		<media:content url="http://1.gravatar.com/avatar/b6ea5391cb7f1a490da07dbf0f033ae3?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">bbossola</media:title>
		</media:content>

		<media:content url="http://ecx.images-amazon.com/images/I/51H8F665FAL._SS500_.jpg" medium="image">
			<media:title type="html">Head First Object-Oriented Analysis and Design</media:title>
		</media:content>
	</item>
		<item>
		<title>DMRAID on Ubuntu with SATA fakeraid</title>
		<link>http://bbossola.wordpress.com/2008/03/07/dmraid-on-ubuntu-with-sata-fakeraid/</link>
		<comments>http://bbossola.wordpress.com/2008/03/07/dmraid-on-ubuntu-with-sata-fakeraid/#comments</comments>
		<pubDate>Fri, 07 Mar 2008 16:40:54 +0000</pubDate>
		<dc:creator>bbossola</dc:creator>
				<category><![CDATA[Linux]]></category>

		<guid isPermaLink="false">http://bbossola.wordpress.com/?p=40</guid>
		<description><![CDATA[The problem
Ubuntu (and Debian) doesn&#8217;t have support for the SATA RAID (also called FakeRAID since some of the functionality is provided by software) controllers being shipped on recent motherboards. The software to handle FakeRAID arrays in Linux is DMRAID.  How do I install such systems?
.
Preliminary Operations
You will need to configure your RAID using the [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=bbossola.wordpress.com&blog=309130&post=40&subd=bbossola&ref=&feed=1" />]]></description>
			<content:encoded><![CDATA[<div class='snap_preview'><br /><p><b>The problem</b><br />
Ubuntu (and Debian) doesn&#8217;t have support for the SATA RAID (also called FakeRAID since some of the functionality is provided by software) controllers being shipped on recent motherboards. The software to handle FakeRAID arrays in Linux is DMRAID.  How do I install such systems?</p>
<p>.<br />
<b>Preliminary Operations</b><br />
You will need to configure your RAID using the bios utility (Ctrl+M for me on startup) : just select your disks, create the logical unit selecting your desired raid mode (0 or 1 for me), save and boot with a desktop live CD.</p>
<p>Note: in this example I&#8217;m using Fujitsu Siemens Primergy RX100 S4 equipped with two 160Gb SATA drives, and I&#8217;m creating a RAID0 array, with Ubuntu Linux 7.10 Gutsy Gibbon<br />
<b></b></p>
<p><b>.<br />
1st phase &#8211; create your partitions</b><br />
To create your partitions you&#8217;ll need that your RAID is reconized from your system. Unfortunately, at the time I&#8217;m writing, Ubuntu does not include DMRAID  support in its install procedure, so you&#8217;ll need to start with a live CD,  activate DMRAID support and proceed to partitioning.</p>
<ul>
<li>start your system with an Ubuntu Desktop CD (select your language if needed)</li>
<li>open a terminal (CTRL-ALT-F1), set a new root password wih &#8220;sudo passwd root&#8221;</li>
<li>go on with &#8220;su &#8211; &#8221; (digit your password)</li>
<li>edit /etc/apt/sources.list, uncomment universe packages</li>
<li>&#8220;apt-get update&#8221;</li>
<li>install dmraid: &#8220;apt-get install dmraid&#8221;</li>
<li>Launch fdisk specifying the shorter device you find under /dev/mapper/dxxx (dxxx is the file device with shorted name, es.: dxxxa28 is the correct one, dxxxa281 the wrong one)</li>
<li>create a primary partition of 316GB, the other with the remaining space (we&#8217;ll use it for swap)
<ul>
<li>n &lt;enter&gt;</li>
<li>p &lt;enter&gt;</li>
<li>1&lt;enter&gt;</li>
<li>&lt;enter&gt;</li>
<li>+316GB <i></i></li>
</ul>
</li>
</ul>
<ul>
<li>create a primary partition with the remaining space:
<ul>
<li>n &lt;enter&gt;</li>
<li>p &lt;enter&gt;</li>
<li>2 &lt;enter&gt;</li>
<li>&lt;enter&gt;</li>
<li>&lt;enter&gt;</li>
</ul>
</li>
</ul>
<ul>
<li>change second partition type:
<ul>
<li>t &lt;enter&gt;</li>
<li>2 &lt;enter&gt;</li>
<li>82 &lt;enter&gt;</li>
</ul>
</li>
</ul>
<ul>
<li>save with &#8220;w&#8221;, &lt;enter&gt;</li>
<li>restart your system with &#8220;reboot&#8221;</li>
</ul>
<p><b>.</b></p>
<p><b>2nd phase &#8211; installing a minimal ubuntu</b><br />
To format your partitions you&#8217;ll need DMRAID module loaded. So you&#8217;ll need to repeat the first six previous steps.</p>
<ul>
<li>format your root partition
<ul>
<li>mkfs -t ext3 /dev/mapper/dxxx1 (select the device ending with 1)</li>
</ul>
</li>
</ul>
<ul>
<li>prepare a local area for the installation procedure: create a local folder, mount your formatted partition on that folder, bind and mount the necessary stuff
<ul>
<li>mkdir /target</li>
<li>mount /dev/mapper/dxxx1 /target</li>
<li>mkdir /target/dev</li>
<li>mount  &#8211; - bind /dev/ /target/dev</li>
<li>mkdir /target/proc</li>
<li>mount -t proc proc /target/proc</li>
<li>mkdir /target/sys</li>
<li>mount -t sysfs sys /target/sys</li>
</ul>
</li>
</ul>
<ul>
<li>proceed installing a minimal ubuntu
<ul>
<li>apt-get install debootstrap</li>
<li>debootstrap gutsy /target</li>
</ul>
</li>
</ul>
<ul>
<li>copy essential files on your partition
<ul>
<li>cp /etc/apt/sources.list /target/etc/apt/</li>
<li>cp /etc/resolv.conf /target/etc/</li>
<li>cp /etc/hosts /target/etc/</li>
<li>cp /etc/network/interfaces  /target/etc/network/</li>
</ul>
</li>
</ul>
<ul>
<li>switch on your new system, re-mount /proc, /sys, /dev
<ul>
<li>mount  &#8211; - bind /dev/ /target/dev</li>
<li>mount -t proc proc /target/proc</li>
<li>mount -t sysfs sys /target/sys</li>
<li>chroot /target</li>
</ul>
</li>
</ul>
<ul>
<li>install a basic ubuntu system
<ul>
<li>apt-get update</li>
<li>apt-get install language-pack-en</li>
<li>apt-get install ubuntu-standard linux-generic dmraid grub</li>
</ul>
</li>
</ul>
<ul>
<li>create a user, if you want
<ul>
<li>useradd pippo</li>
<li>passwd pippo</li>
<li>mkdir /home/pippo</li>
<li>chown pippo /home/pippo</li>
</ul>
</li>
</ul>
<ul>
<li>set root password
<ul>
<li>passwd root</li>
</ul>
</li>
</ul>
<p><b>.</b></p>
<p><b>3rd phase &#8211; boot loader configuration</b><br />
Yes, you&#8217;ll need to configure grub</p>
<ul>
<li>copy grub essential files
<ul>
<li>mkdir /boot/grub</li>
<li>cp /usr/lib/grub/i386-pc/stage1 /boot/grub/</li>
<li>cp /usr/lib/grub/i386-pc/stage2 /boot/grub/</li>
<li>cp /usr/lib/grub/-pc/* /boot/grub/<br />
This will copy the staging file for the various filesystem in your boot partition. In my example the directory is “/usr/lib/grub/i386-pc/” and the files that are copied are “e2fs_stage1_5″, “jfs_stage1_5″,…</li>
</ul>
</li>
</ul>
<ul>
<li>configure di grub
<ul>
<li>grub <i>(enters grub interactive shell)</i></li>
<li>device (hd0) /dev/mapper/dxxx <i>(the shorter, so the logical disk, <b>not</b> the partition)</i></li>
<li>root (hd0,0)</li>
<li>setup (hd0)</li>
<li>quit <i>(exit from grub shell)</i></li>
<li>update-grub <i>(update grub files)</i></li>
</ul>
</li>
</ul>
<ul>
<li>configure grub menu
<ul>
<li>edit grub menu.lst: &#8220;vi /boot/grub/menu.lst&#8221;</li>
<li>check groot is pointing to hd0,0 (it should be necessary to uncomment that line)</li>
<li>check that savedefault is commented (normally is)</li>
<li>modify, inside &#8220;kernel&#8221; items, the &#8220;root&#8221; value to &#8220;/dev/mapper/dxxx1&#8243; (your root partition)</li>
</ul>
</li>
</ul>
<ul>
<li>configure static mount under /etc/fstab</li>
</ul>
<p># /etc/fstab: static file system information.<br />
#<br />
# &lt;file system&gt; &lt;mount point&gt; &lt;type&gt;  &lt;options&gt;   &lt;dump&gt;  &lt;pass&gt;<br />
proc  /proc proc  defaults   0   0<br />
/dev/mapper/ddf1_LogicalDrive_01 /   ext3  defaults  0   1<br />
/dev/mapper/ddf1_LogicalDrive_02 none  swap  sw     0   0</p>
<ul>
<li>reboot <img src='http://s.wordpress.com/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' /> </li>
</ul>
<p><b>Bottom line</b><br />
Well, you&#8217;ve done! Remember that if you mounted a RAID0 device Linux at startup will probe your disks and he&#8217;ll wrongly detect a bad partition table: ignore error messages <a href="http://osdir.com/ml/linux.ataraid/2006-10/msg00019.html">http://osdir.com/ml/linux.ataraid/2006-10/msg00019.html</a></p>
<p>Little tips:</p>
<ul>
<li>if you need to reconfigure your keyboard use:<br />
<a href="http://www.basictrading.biz/2006/12/08/ubuntu-server-keyboard/">http://www.basictrading.biz/2006/12/08/ubuntu-server-keyboard/ </a>(&#8220;dpkg-reconfigure console-setup&#8221;)</li>
</ul>
<ul>
<li>if you need to reconfigure your locale:<br />
<a href="http://blog.andrewbeacock.com/2007/01/how-to-change-your-default-locale-on.html">http://blog.andrewbeacock.com/2007/01/how-to-change-your-default-locale-on.html</a></li>
</ul>
<ul>
<li>if you need to change hostname:<br />
&#8220;vi edit /etc/hostname&#8221; (reboot)<br />
.</li>
<li>if you need to check swap status:<br />
<a href="http://elleuca.blogspot.com/2006/11/swappature.html">http://elleuca.blogspot.com/2006/11/swappature.html</a><br />
(&#8221; swapon -s&#8221;)</li>
</ul>
<p><b>Links<br />
</b><a href="http://www.ubuntu-in.org/wiki/SATA_RAID_Howto">http://www.ubuntu-in.org/wiki/SATA_RAID_Howto</a><br />
<a href="https://help.ubuntu.com/community/FakeRaidHowto">https://help.ubuntu.com/community/FakeRaidHowto</a><br />
<a href="http://salaros.blogspot.com/2007/07/installare-ubuntu-704-su-raid0-in-dual.html">http://salaros.blogspot.com/2007/07/installare-ubuntu-704-su-raid0-in-dual.html</a></p>
<img alt="" border="0" src="http://feeds.wordpress.com/1.0/categories/bbossola.wordpress.com/40/" /> <img alt="" border="0" src="http://feeds.wordpress.com/1.0/tags/bbossola.wordpress.com/40/" /> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/bbossola.wordpress.com/40/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/bbossola.wordpress.com/40/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/bbossola.wordpress.com/40/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/bbossola.wordpress.com/40/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/bbossola.wordpress.com/40/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/bbossola.wordpress.com/40/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/bbossola.wordpress.com/40/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/bbossola.wordpress.com/40/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/bbossola.wordpress.com/40/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/bbossola.wordpress.com/40/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=bbossola.wordpress.com&blog=309130&post=40&subd=bbossola&ref=&feed=1" /></div>]]></content:encoded>
			<wfw:commentRss>http://bbossola.wordpress.com/2008/03/07/dmraid-on-ubuntu-with-sata-fakeraid/feed/</wfw:commentRss>
		<slash:comments>24</slash:comments>
	
		<media:content url="http://1.gravatar.com/avatar/b6ea5391cb7f1a490da07dbf0f033ae3?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">bbossola</media:title>
		</media:content>
	</item>
		<item>
		<title>JUG Torino March meeting!</title>
		<link>http://bbossola.wordpress.com/2008/03/03/jug-torino-march-meeting/</link>
		<comments>http://bbossola.wordpress.com/2008/03/03/jug-torino-march-meeting/#comments</comments>
		<pubDate>Mon, 03 Mar 2008 08:37:20 +0000</pubDate>
		<dc:creator>bbossola</dc:creator>
				<category><![CDATA[Java]]></category>
		<category><![CDATA[Speech]]></category>

		<guid isPermaLink="false">http://bbossola.wordpress.com/?p=39</guid>
		<description><![CDATA[March meeting of Java User Group Torino will take place on 7th with this schedule:

18.30: Check-in!
18.45: Seminar: &#8220;JetBrains, the IDE!&#8220; by Vaclav Pech (JetBrains)
20.00: EOF (as usual, maybe having a VeryBigPizza all together!)

You may find more info about the event here.
       <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=bbossola.wordpress.com&blog=309130&post=39&subd=bbossola&ref=&feed=1" />]]></description>
			<content:encoded><![CDATA[<div class='snap_preview'><br /><p><img src="http://www.jugtorino.it/logo.jpg" alt="JUG Torino logo" align="left" height="150" width="150" />March meeting of <a href="http://www.jugtorino.it" title="Java User Group Torino homepage!" target="_blank">Java User Group Torino </a>will take place on 7th with this schedule:</p>
<ul>
<li>18.30: Check-in!</li>
<li>18.45: Seminar:<b> &#8220;</b><b>JetBrains, the IDE!</b><b>&#8220;</b> by Vaclav Pech (JetBrains)</li>
<li>20.00: EOF (as usual, maybe having a <a href="http://www.jugtorino.it/vqwiki/jsp/Wiki?action=action_view_attachment&amp;attachment=25092002MeetFoto1.jpg" title="A real pizza, but the BIG one!" target="_blank">VeryBigPizza </a>all together!)</li>
</ul>
<p>You may find more info about the event <a href="http://www.jugtorino.it/vqwiki/jsp/Wiki?MeetingMarzo2008" title="Meeting detailed info (in italian!)" target="_blank">here</a>.</p>
<img alt="" border="0" src="http://feeds.wordpress.com/1.0/categories/bbossola.wordpress.com/39/" /> <img alt="" border="0" src="http://feeds.wordpress.com/1.0/tags/bbossola.wordpress.com/39/" /> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/bbossola.wordpress.com/39/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/bbossola.wordpress.com/39/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/bbossola.wordpress.com/39/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/bbossola.wordpress.com/39/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/bbossola.wordpress.com/39/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/bbossola.wordpress.com/39/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/bbossola.wordpress.com/39/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/bbossola.wordpress.com/39/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/bbossola.wordpress.com/39/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/bbossola.wordpress.com/39/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=bbossola.wordpress.com&blog=309130&post=39&subd=bbossola&ref=&feed=1" /></div>]]></content:encoded>
			<wfw:commentRss>http://bbossola.wordpress.com/2008/03/03/jug-torino-march-meeting/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
	
		<media:content url="http://1.gravatar.com/avatar/b6ea5391cb7f1a490da07dbf0f033ae3?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">bbossola</media:title>
		</media:content>

		<media:content url="http://www.jugtorino.it/logo.jpg" medium="image">
			<media:title type="html">JUG Torino logo</media:title>
		</media:content>
	</item>
		<item>
		<title>What&#8217;s happening at Savigano Irpino?</title>
		<link>http://bbossola.wordpress.com/2008/02/22/whats-happening-at-savigano-irpino/</link>
		<comments>http://bbossola.wordpress.com/2008/02/22/whats-happening-at-savigano-irpino/#comments</comments>
		<pubDate>Fri, 22 Feb 2008 10:12:58 +0000</pubDate>
		<dc:creator>bbossola</dc:creator>
				<category><![CDATA[Life]]></category>

		<guid isPermaLink="false">http://bbossola.wordpress.com/2008/02/22/whats-happening-at-savigano-irpino/</guid>
		<description><![CDATA[I can&#8217;t comment it&#8230; please watch the video  
       <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=bbossola.wordpress.com&blog=309130&post=38&subd=bbossola&ref=&feed=1" />]]></description>
			<content:encoded><![CDATA[<div class='snap_preview'><br /><p>I can&#8217;t comment it&#8230; please <a href="http://it.youtube.com/watch?v=Og1LWPVvVFk" title="Shame!" target="_blank">watch the video</a> <img src='http://s.wordpress.com/wp-includes/images/smilies/icon_sad.gif' alt=':(' class='wp-smiley' /> </p>
<img alt="" border="0" src="http://feeds.wordpress.com/1.0/categories/bbossola.wordpress.com/38/" /> <img alt="" border="0" src="http://feeds.wordpress.com/1.0/tags/bbossola.wordpress.com/38/" /> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/bbossola.wordpress.com/38/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/bbossola.wordpress.com/38/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/bbossola.wordpress.com/38/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/bbossola.wordpress.com/38/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/bbossola.wordpress.com/38/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/bbossola.wordpress.com/38/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/bbossola.wordpress.com/38/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/bbossola.wordpress.com/38/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/bbossola.wordpress.com/38/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/bbossola.wordpress.com/38/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=bbossola.wordpress.com&blog=309130&post=38&subd=bbossola&ref=&feed=1" /></div>]]></content:encoded>
			<wfw:commentRss>http://bbossola.wordpress.com/2008/02/22/whats-happening-at-savigano-irpino/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
	
		<media:content url="http://1.gravatar.com/avatar/b6ea5391cb7f1a490da07dbf0f033ae3?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">bbossola</media:title>
		</media:content>
	</item>
		<item>
		<title>JUG Torino January meeting!</title>
		<link>http://bbossola.wordpress.com/2008/01/26/jug-torino-january-meeting/</link>
		<comments>http://bbossola.wordpress.com/2008/01/26/jug-torino-january-meeting/#comments</comments>
		<pubDate>Sat, 26 Jan 2008 17:02:10 +0000</pubDate>
		<dc:creator>bbossola</dc:creator>
				<category><![CDATA[Java]]></category>
		<category><![CDATA[Speech]]></category>

		<guid isPermaLink="false">http://bbossola.wordpress.com/?p=37</guid>
		<description><![CDATA[January&#8217;s meeting of Java User Group Torino will take place on 30th with this schedule:

18.30: Check-in!
18.45: Quickie: &#8220;SopaUI&#8220; by Federico Fissore (JUG Torino)
19.00: Seminar: &#8220;Java6 update!&#8220; by Bruno Bossola (JUG Torino)
20.00: EOF (as usual, maybe having a VeryBigPizza all together!)

You may find more info about the event here.
       <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=bbossola.wordpress.com&blog=309130&post=37&subd=bbossola&ref=&feed=1" />]]></description>
			<content:encoded><![CDATA[<div class='snap_preview'><br /><p><img src="http://www.jugtorino.it/logo.jpg" alt="JUG Torino logo" align="left" height="150" width="150" />January&#8217;s meeting of <a href="http://www.jugtorino.it" title="Java User Group Torino homepage!" target="_blank">Java User Group Torino </a>will take place on 30th with this schedule:</p>
<ul>
<li>18.30: Check-in!</li>
<li>18.45: <b>Quickie: &#8220;</b><b>SopaUI</b><b>&#8220;</b> by Federico Fissore (JUG Torino)</li>
<li>19.00: <b>Seminar: &#8220;</b><b>Java6 update!</b><b>&#8220;</b> by Bruno Bossola (JUG Torino)</li>
<li>20.00: EOF (as usual, maybe having a <a href="http://www.jugtorino.it/vqwiki/jsp/Wiki?action=action_view_attachment&amp;attachment=25092002MeetFoto1.jpg" title="A real pizza, but the BIG one!" target="_blank">VeryBigPizza </a>all together!)</li>
</ul>
<p>You may find more info about the event <a href="http://www.jugtorino.it/vqwiki/jsp/Wiki?MeetingGennaio2008" title="Meeting detailed info (in italian!)" target="_blank">here</a>.</p>
<img alt="" border="0" src="http://feeds.wordpress.com/1.0/categories/bbossola.wordpress.com/37/" /> <img alt="" border="0" src="http://feeds.wordpress.com/1.0/tags/bbossola.wordpress.com/37/" /> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/bbossola.wordpress.com/37/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/bbossola.wordpress.com/37/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/bbossola.wordpress.com/37/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/bbossola.wordpress.com/37/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/bbossola.wordpress.com/37/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/bbossola.wordpress.com/37/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/bbossola.wordpress.com/37/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/bbossola.wordpress.com/37/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/bbossola.wordpress.com/37/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/bbossola.wordpress.com/37/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=bbossola.wordpress.com&blog=309130&post=37&subd=bbossola&ref=&feed=1" /></div>]]></content:encoded>
			<wfw:commentRss>http://bbossola.wordpress.com/2008/01/26/jug-torino-january-meeting/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
	
		<media:content url="http://1.gravatar.com/avatar/b6ea5391cb7f1a490da07dbf0f033ae3?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">bbossola</media:title>
		</media:content>

		<media:content url="http://www.jugtorino.it/logo.jpg" medium="image">
			<media:title type="html">JUG Torino logo</media:title>
		</media:content>
	</item>
		<item>
		<title>Business logic: how do you return on application errors?</title>
		<link>http://bbossola.wordpress.com/2008/01/23/business-logic-how-do-you-return-on-application-errors/</link>
		<comments>http://bbossola.wordpress.com/2008/01/23/business-logic-how-do-you-return-on-application-errors/#comments</comments>
		<pubDate>Wed, 23 Jan 2008 14:46:06 +0000</pubDate>
		<dc:creator>bbossola</dc:creator>
				<category><![CDATA[Java]]></category>
		<category><![CDATA[Object Oriented]]></category>

		<guid isPermaLink="false">http://bbossola.wordpress.com/2008/01/23/business-logic-how-do-you-return-on-application-errors/</guid>
		<description><![CDATA[(note: post will be translated in English as soon as possible)
Oggi qui siamo alle prese con una decisione di design che non ci decidiamo a prendere  , ho parlato un po&#8217; con il gruppo e con alcune vecchie conoscenze ma non ho ancora trovato una soluzione pienamente soddisfacente: cosi mi rivolgo a voi, magari [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=bbossola.wordpress.com&blog=309130&post=36&subd=bbossola&ref=&feed=1" />]]></description>
			<content:encoded><![CDATA[<div class='snap_preview'><br /><p>(note: post will be translated in English as soon as possible)</p>
<p>Oggi qui siamo alle prese con una decisione di design che non ci decidiamo a prendere <img src='http://s.wordpress.com/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' /> , ho parlato un po&#8217; con il gruppo e con alcune vecchie conoscenze ma non ho ancora trovato una soluzione pienamente soddisfacente: cosi mi rivolgo a voi, magari avete consigli &#8220;sbloccanti&#8221;.</p>
<p>Normalmente nelle applicazioni che disegno cerco sempre, come molti, di disaccoppiare la logica di presentazione da quella di business: la user interface si occupa di interagire con l&#8217;utente, mantenendo lo stato conversazionale, mentre nella business logic troviamo il domain model con le logiche di business che si applicano ad esso.Attenzione: non stiamo parlando di applicazioni CRUD che si limitano ad usare un interfaccia utente per scrivere su DB, ma di programmi con un domain model articolato, che eseguono elaborazioni di una certa complessità una volta che la richiesta dell&#8217;operazione è stata inserita tramite una user interface (web, swing, xul che sia, non è interessante). Dovendo quindi disaccoppiare questi due strati tendo ad esporre dal lato business un&#8217;insieme di &#8220;servizi&#8221;: non pensate alla tecnologia, è semplicemente una scelta di design, che poi potrà essere implementata con dei POJO, dei web services, degli EJB, qualunque cosa ci venga in mente poi di ficcarci in mezzo.(proprio perchè la tecnologia è un mezzo, non un fine <img src='http://s.wordpress.com/wp-includes/images/smilies/icon_biggrin.gif' alt=':D' class='wp-smiley' /> ).</p>
<p>Avremo quindi dei servizi come questo: (scrivo in pseudo-java, ma potrei anche usare IDL)</p>
<pre>
// una delle interfacce della business logic
public interface MyService
{
   public void executeComputation(Slot slot, Computation compu)
   ;

   public Slot[] selectAvailableSlots(Range range)
  ;
}</pre>
<p>(notate come stia esponendo una parte del domani model, ma questa è un&#8217;altra storia)</p>
<p>Essendo questa della business logic vera ci sono anche delle regole di business che devono essere verificate, e questo è possibile farlo solo a livello di business (certamente la presentation fa il suo lavoro per validare e scremare i dati ineriti, ma si limita a quello). Esiste quindi un&#8217;intera classe di errori che la business logic puo&#8217; generare a causa della violazione delle business rules del momento, che non sono comunque verificabili in nessun modo a priori dalla presentazione (sia perché queste possono variare rapidamente sia perché mi piace che non ne sappia un cacchio!).</p>
<p>Come fare a ritornare queste condizioni di errore? Io finora ho individuato due macro-soluzioni:<br />
a) utilizzare un&#8217;eccezione applicativa (aka BusinessRuleException) contenente l&#8217;errore<br />
b) utilizzare un valore di ritorno contente sia il risultato sia l&#8217;eventuale errore</p>
<p>La soluzione (a)  mi piace proprio poco. Utilizzare le eccezioni per modificare il controllo di flusso è da sempre, almeno per me, una vera schifezza e inoltre rende il codice assai poco leggibile. Le eccezioni devono secondo me rappresentare eventi di tipo appunto eccezionale (problemi sull&#8217;infrastruttura, ad esempio il DB si è disconnesso, non si riesce a contattare un servizio secondario, ecc.ecc) e come tali vanno gestite. Pertanto, pur essendo tanto attraente almeno superficialmente, la scarterei.</p>
<p>La soluzione (b) è secondo me la più naturale, d&#8217;altronde la violazione di una business rule è una cosa perfettamente naturale per la business logic, ma si porta dietro anch&#8217;essa un codice un po&#8217; pasticciato. Non posso pensare di realizzare tante classi *Result differenti per gestire  la varietà dei risultati forniti dalla business logic (nel caso in oggetto un metodo è void mentre l&#8217;altro ritorna un array) e pensandoci un po&#8217; ho trovato questa soluzione tecnica, che ancora non mi convince del tutto: realizzare una classe Result con i generics e quindi modificare la firma dei metodi in modo che tornino questa. Il codice, tanto per chiarire, sarebbe questo:</p>
<pre>
// la classe che incapsula il risultato di una chiamata al business (value object)
public class Result {
   private F value;
   private Error error;

   public Result(F value) {
       this(value, Error.NONE);
   }

   public Result(F value, Error error) {
       this.value = value;
       this.error = error;
   }

   public F value() {
       return value;
   }

   public Error error() {
       return error;      }
}</pre>
<p>L&#8217;interfaccia del servizio (di tutti i servizi) sono modificate in questo modo, ritornando un Result generico in ogni caso:</p>
<pre>
interface MyService
{
   public Result executeComputation(Slot slot, Computation compu)
   ;

   public Result&lt;Slot[]&gt; selectAvailableSlots(Range range)
   ;
}</pre>
<p>Ok, fine dell&#8217;elucubrazione. Il punto è: cosa ne pensate? Io sto per muovermi su quest&#8217;ultima soluzione.</p>
<img alt="" border="0" src="http://feeds.wordpress.com/1.0/categories/bbossola.wordpress.com/36/" /> <img alt="" border="0" src="http://feeds.wordpress.com/1.0/tags/bbossola.wordpress.com/36/" /> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/bbossola.wordpress.com/36/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/bbossola.wordpress.com/36/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/bbossola.wordpress.com/36/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/bbossola.wordpress.com/36/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/bbossola.wordpress.com/36/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/bbossola.wordpress.com/36/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/bbossola.wordpress.com/36/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/bbossola.wordpress.com/36/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/bbossola.wordpress.com/36/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/bbossola.wordpress.com/36/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=bbossola.wordpress.com&blog=309130&post=36&subd=bbossola&ref=&feed=1" /></div>]]></content:encoded>
			<wfw:commentRss>http://bbossola.wordpress.com/2008/01/23/business-logic-how-do-you-return-on-application-errors/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
	
		<media:content url="http://1.gravatar.com/avatar/b6ea5391cb7f1a490da07dbf0f033ae3?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">bbossola</media:title>
		</media:content>
	</item>
		<item>
		<title>Pidgin &amp; OpenFire</title>
		<link>http://bbossola.wordpress.com/2007/11/20/pidgin-openfire/</link>
		<comments>http://bbossola.wordpress.com/2007/11/20/pidgin-openfire/#comments</comments>
		<pubDate>Tue, 20 Nov 2007 16:33:43 +0000</pubDate>
		<dc:creator>bbossola</dc:creator>
				<category><![CDATA[Java]]></category>
		<category><![CDATA[Life]]></category>

		<guid isPermaLink="false">http://bbossola.wordpress.com/2007/11/20/pidgin-openfire/</guid>
		<description><![CDATA[Openfire (aka WildFire) a very well known jabber server won&#8217;t work with Pidgin, a famous IM client, because of a lack of support by Java in RFC 2831implementation, as you can also read here, here and here.
Before giving up digging inside Openfire awkward documentation and obscure groups suggestions just pick up you openfire.xml file in [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=bbossola.wordpress.com&blog=309130&post=34&subd=bbossola&ref=&feed=1" />]]></description>
			<content:encoded><![CDATA[<div class='snap_preview'><br /><p><a href="http://www.igniterealtime.org/projects/openfire" target="_blank">Openfire</a> (aka WildFire) a very well known jabber server won&#8217;t work with <a href="http://www.pidgin.im" target="_blank">Pidgin</a>, a famous IM client, because of a lack of support by Java in RFC 2831implementation, as you can also read <a href="http://www.igniterealtime.org/community/thread/28577" target="_blank">here</a>, <a href="http://www.igniterealtime.org/community/thread/28776" target="_blank">here</a> and <a href="http://www.igniterealtime.org/issues/browse/JM-1109" target="_blank">here</a>.</p>
<p>Before giving up digging inside Openfire awkward documentation and obscure groups suggestions just pick up you openfire.xml file in /opt/openfire/conf and add, just before closing &lt;/jive&gt; elements, these few sentences:</p>
<p>&lt;sasl&gt;<br />
&lt;mechs&gt;PLAIN&lt;/mechs&gt;<br />
&lt;/sasl&gt;</p>
<p>They&#8217;ll do the job.</p>
<img alt="" border="0" src="http://feeds.wordpress.com/1.0/categories/bbossola.wordpress.com/34/" /> <img alt="" border="0" src="http://feeds.wordpress.com/1.0/tags/bbossola.wordpress.com/34/" /> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/bbossola.wordpress.com/34/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/bbossola.wordpress.com/34/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/bbossola.wordpress.com/34/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/bbossola.wordpress.com/34/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/bbossola.wordpress.com/34/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/bbossola.wordpress.com/34/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/bbossola.wordpress.com/34/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/bbossola.wordpress.com/34/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/bbossola.wordpress.com/34/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/bbossola.wordpress.com/34/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=bbossola.wordpress.com&blog=309130&post=34&subd=bbossola&ref=&feed=1" /></div>]]></content:encoded>
			<wfw:commentRss>http://bbossola.wordpress.com/2007/11/20/pidgin-openfire/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
	
		<media:content url="http://1.gravatar.com/avatar/b6ea5391cb7f1a490da07dbf0f033ae3?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">bbossola</media:title>
		</media:content>
	</item>
		<item>
		<title>Cruelty, not art</title>
		<link>http://bbossola.wordpress.com/2007/10/28/cruelty-not-art/</link>
		<comments>http://bbossola.wordpress.com/2007/10/28/cruelty-not-art/#comments</comments>
		<pubDate>Sat, 27 Oct 2007 21:23:15 +0000</pubDate>
		<dc:creator>bbossola</dc:creator>
				<category><![CDATA[Life]]></category>

		<guid isPermaLink="false">http://bbossola.wordpress.com/2007/10/28/cruelty-not-art/</guid>
		<description><![CDATA[An &#8220;artist&#8221; from Costa Rica, named Guillermo Habacuc Vargas, put a starved dog as a work of art, the poor dog died there, he did not want anyone give him food or water. This &#8220;man&#8221; asked some children to chase the dog and he paid them for their dirty work to give him the dog.
See [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=bbossola.wordpress.com&blog=309130&post=33&subd=bbossola&ref=&feed=1" />]]></description>
			<content:encoded><![CDATA[<div class='snap_preview'><br /><p>An &#8220;artist&#8221; from Costa Rica, named Guillermo Habacuc Vargas, put a starved dog as a work of art, the poor dog died there, he did not want anyone give him food or water. This &#8220;man&#8221; asked some children to chase the dog and he paid them for their dirty work to give him the dog.</p>
<p>See details <a href="http://www.oipaitalia.com/maltrattamenti/appelli/costarica.html" target="_blank">here</a> (in italian), I hope you&#8217;ll also sign the <a href="http://www.petitiononline.com/13031953/petition.html" target="_blank">online petition</a></p>
<img alt="" border="0" src="http://feeds.wordpress.com/1.0/categories/bbossola.wordpress.com/33/" /> <img alt="" border="0" src="http://feeds.wordpress.com/1.0/tags/bbossola.wordpress.com/33/" /> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/bbossola.wordpress.com/33/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/bbossola.wordpress.com/33/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/bbossola.wordpress.com/33/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/bbossola.wordpress.com/33/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/bbossola.wordpress.com/33/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/bbossola.wordpress.com/33/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/bbossola.wordpress.com/33/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/bbossola.wordpress.com/33/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/bbossola.wordpress.com/33/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/bbossola.wordpress.com/33/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=bbossola.wordpress.com&blog=309130&post=33&subd=bbossola&ref=&feed=1" /></div>]]></content:encoded>
			<wfw:commentRss>http://bbossola.wordpress.com/2007/10/28/cruelty-not-art/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
	
		<media:content url="http://1.gravatar.com/avatar/b6ea5391cb7f1a490da07dbf0f033ae3?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">bbossola</media:title>
		</media:content>
	</item>
	</channel>
</rss>