<?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>Alexander Zuban's Homepage</title>
	<atom:link href="http://zuban.com.ua/blog/feed" rel="self" type="application/rss+xml" />
	<link>http://zuban.com.ua/blog</link>
	<description>The name of the game is "Kill as much TODO as possible" -- David McNeil --</description>
	<pubDate>Thu, 15 Oct 2009 22:57:05 +0000</pubDate>
	<generator>http://wordpress.org/?v=2.5.1</generator>
	<language>en</language>
			<item>
		<title>When Guitar Playing</title>
		<link>http://zuban.com.ua/blog/development-flavour/when-guitar-playing</link>
		<comments>http://zuban.com.ua/blog/development-flavour/when-guitar-playing#comments</comments>
		<pubDate>Thu, 15 Oct 2009 22:57:05 +0000</pubDate>
		<dc:creator>alexander.zuban</dc:creator>
		
		<category><![CDATA[Development Flavour]]></category>

		<guid isPermaLink="false">http://zuban.com.ua/blog/?p=42</guid>
		<description><![CDATA[
Conductor come back to home after concert and put his frock coat on the chair hack. He gave a great concert, got lots of applause and ovation; he did a great job&#8230; Till he is alone, he taking guitar and begin to play, not for money, not for glory, just what he likes, just what [...]]]></description>
			<content:encoded><![CDATA[<p><img align="bottom" alt="When Guitar Playing" title="When Guitar Playing" src="http://zuban.com.ua/blog/wp-content/uploads/2009/guitar_player.jpg" /></p>
<p>Conductor come back to home after concert and put his frock coat on the chair hack. He gave a great concert, got lots of applause and ovation; he did a great job&#8230; Till he is alone, he taking guitar and begin to play, not for money, not for glory, just what he likes, just what he feels, just for music&#8230;</p>
<p>When you are developer, your life is also full of performance, you moving things around and switching between TODOs. But besides this developer when they are alone they also paying on guitar, making free software, not for sale but to keep playing, to do make code they will like and making it in a way they like. Maybe this is not the best playing, but till guitar playing the soul is live&#8230;</p>
]]></content:encoded>
			<wfw:commentRss>http://zuban.com.ua/blog/development-flavour/when-guitar-playing/feed</wfw:commentRss>
		</item>
		<item>
		<title>Bug Hunting</title>
		<link>http://zuban.com.ua/blog/development-flavour/bug-hunting</link>
		<comments>http://zuban.com.ua/blog/development-flavour/bug-hunting#comments</comments>
		<pubDate>Thu, 04 Sep 2008 11:57:05 +0000</pubDate>
		<dc:creator>alexander.zuban</dc:creator>
		
		<category><![CDATA[Development Flavour]]></category>

		<guid isPermaLink="false">http://zuban.com.ua/blog/?p=40</guid>
		<description><![CDATA[
Even good software sometimes has bugs, so when bugs are come developer have to go hunting. He takes a hunting stuff and goes deep into sources forest.
Sometimes when bug is tyrannosaurus size, it is easily to shoot it, maybe even a whole pack of such tyrannosaurus and bang!â€¦ software become pleasant  but more often, [...]]]></description>
			<content:encoded><![CDATA[<p><img align="bottom" alt="Bug Hunting" title="Bug Hunting" src="http://zuban.com.ua/blog/wp-content/uploads/2008/hunter_in_ambush.jpg" /></p>
<p>Even good software sometimes has bugs, so when bugs are come developer have to go hunting. He takes a hunting stuff and goes deep into sources forest.</p>
<p>Sometimes when bug is tyrannosaurus size, it is easily to shoot it, maybe even a whole pack of such tyrannosaurus and bang!â€¦ software become pleasant <img src='http://zuban.com.ua/blog/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' /> but more often, bugs are hiding  and in camouflage, they are crafty, cautious  and as a rule very dangerous. When you hunting for such bugs, your blood freezes, you perception became like a string, ready to sound from the smallest touch, you are waiting in ambush&#8230; this is competition and you have to win it! <img src='http://zuban.com.ua/blog/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' /> </p>
]]></content:encoded>
			<wfw:commentRss>http://zuban.com.ua/blog/development-flavour/bug-hunting/feed</wfw:commentRss>
		</item>
		<item>
		<title>FSD - I am Alive!</title>
		<link>http://zuban.com.ua/blog/documentum/fsd-i-am-alive</link>
		<comments>http://zuban.com.ua/blog/documentum/fsd-i-am-alive#comments</comments>
		<pubDate>Mon, 01 Sep 2008 10:25:13 +0000</pubDate>
		<dc:creator>alexander.zuban</dc:creator>
		
		<category><![CDATA[Documentum]]></category>

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

		<guid isPermaLink="false">http://zuban.com.ua/blog/?p=39</guid>
		<description><![CDATA[

This post related to FST articles. It was hard during Summer to write on a regular basis, but now &#8230; Import tool already alive. Yes, I already implemented the following features:

 Basic import with restoring folders structure 
 Plain import (all documents being imported into selected folder) 
 Import with compression folders to ZIP archives
 [...]]]></description>
			<content:encoded><![CDATA[<p><img align="bottom" alt="FSD - I am Alive!" title="FSD - I am Alive!" src="http://zuban.com.ua/blog/wp-content/uploads/2008/frankenstein_i_am_alive.jpg" /></p>
<p>
This post related to FST articles. It was hard during Summer to write on a regular basis, but now &#8230; Import tool already alive. Yes, I already implemented the following features:</p>
<ul>
<li> Basic import with restoring folders structure </li>
<li> Plain import (all documents being imported into selected folder) </li>
<li> Import with compression folders to ZIP archives</li>
<li> Import with converting text files to PDF format</li>
<li> Import with conversion TIFF files to PDF format</li>
<li> Extracting ZIP files and imports them as a folder </li>
</ul>
<p>
During the work it became an obvious that tool need a comfortable way to interact with Docbase (check imported documents and structure, etc.)  This requires create a sample browser, with some basic features set. So I make decision to split project into two subprojects </p>
<ul>
<li> Library with Swing components for Documentum</li>
<li> Import tool project</li>
</ul>
<p>Of course second project will be the first subscriber of the library.</p>
]]></content:encoded>
			<wfw:commentRss>http://zuban.com.ua/blog/documentum/fsd-i-am-alive/feed</wfw:commentRss>
		</item>
		<item>
		<title>FSD - Round 2</title>
		<link>http://zuban.com.ua/blog/documentum/fsd-round-2</link>
		<comments>http://zuban.com.ua/blog/documentum/fsd-round-2#comments</comments>
		<pubDate>Mon, 19 May 2008 10:13:16 +0000</pubDate>
		<dc:creator>alexander.zuban</dc:creator>
		
		<category><![CDATA[Documentum]]></category>

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

		<guid isPermaLink="false">http://zuban.com.ua/blog/?p=38</guid>
		<description><![CDATA[
Fast report for the passed time.

Was refactored code which is display docbase structure as a swing tree
Based on refactored code was created Swing component to choose target documentum type
		
		
	
Also was created component to choose ACL
	

Ok, as a result number of Documentum Swing widgets was increased by two select dialog.
]]></description>
			<content:encoded><![CDATA[<p><img align="bottom" alt="FSD - Round 2" title="FSD - Round 2" src="http://zuban.com.ua/blog/wp-content/uploads/2008/round_2.jpg" /></p>
<p>Fast report for the passed time.</p>
<ul>
<li>Was refactored code which is display docbase structure as a swing tree</li>
<li>Based on refactored code was created Swing component to choose target documentum type<br />
		<br /><img align="bottom" src="http://zuban.com.ua/blog/wp-content/uploads/2008/round_2/select_dm_folder.png" alt="Docbase Type - Folder Type Chooser" title="Docbase Type - Folder Type Chooser"/><br />
		<br /><img align="bottom" src="http://zuban.com.ua/blog/wp-content/uploads/2008/round_2/select_dm_document.png" alt="Docbase Type - Document Type Chooser" title="Docbase Type - Document Type Chooser"/>
	</li>
<li>Also was created component to choose ACL<br /><img align="bottom" src="http://zuban.com.ua/blog/wp-content/uploads/2008/round_2/select_dm_acl.png" alt="ACL Selector" title="ACL Selector" />
	</li>
</ul>
<p>Ok, as a result number of Documentum Swing widgets was increased by two select dialog.</p>
]]></content:encoded>
			<wfw:commentRss>http://zuban.com.ua/blog/documentum/fsd-round-2/feed</wfw:commentRss>
		</item>
		<item>
		<title>FSD - First Step</title>
		<link>http://zuban.com.ua/blog/documentum/fsd-first-step</link>
		<comments>http://zuban.com.ua/blog/documentum/fsd-first-step#comments</comments>
		<pubDate>Sat, 03 May 2008 23:42:41 +0000</pubDate>
		<dc:creator>alexander.zuban</dc:creator>
		
		<category><![CDATA[Documentum]]></category>

		<guid isPermaLink="false">http://zuban.com.ua/blog/?p=37</guid>
		<description><![CDATA[
Ok, here is first small report for the first small step.  To remind â€“ the target goal is start an open source tool to import files into Documentum repository. 
The first stage include planning of  future features and develop initial program architecture.
I plan the following list of features which are necessary for the [...]]]></description>
			<content:encoded><![CDATA[<p><img align="bottom" alt="FSD - First Step" title="FSD - First Step" src="http://zuban.com.ua/blog/wp-content/uploads/2008/first_step_one_the_moon.jpg" /></p>
<p>Ok, here is first small report for the first small step.  To remind â€“ the target goal is start an open source tool to import files into Documentum repository. </p>
<p>The first stage include planning of  future features and develop initial program architecture.</p>
<p>I plan the following list of features which are necessary for the first stage(the first stage this is stage when project ready to became a public available open source).</p>
<ul>
<li>Import from the local PC file system with the following manipulations
<ul>
<li>Recreate folder structure</li>
<li>Import documents in plan structure(without folders)</li>
<li>Import entire folder as a solid ZIP file</li>
<li>Convert folder structure as a Documentum Virtual Documents</li>
<li>Convert TIFF(maybe other) images into PDF format</li>
<li>Convert plain text into PDF documents</li>
<li>Split multi page TIFF documents into separate documents</li>
<li>Unpack compressed documents and import them as folder structure</li>
<li>Import should be multi threaded get benefit from modern multi core CPU</li>
</ul>
</li>
</ul>
<p>After all above features are ready I have in mind many other features, but this will be in future.</p>
<p>During 2 weeks which pass from the start the following things were done:</p>
<ul>
<li>Implemented a general application skeleton</li>
<li>Created initial GUI forms stubs</li>
<li>Refactoring docbase tree component to be suitable for current application</li>
</ul>
<p>And also, I think out the name, but this will be a secret <img src='http://zuban.com.ua/blog/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' />
</p>
<p>Below several ready screens</p>
<p><img align="bottom" alt="FSD - First Step" title="FSD - First Step" src="http://zuban.com.ua/blog/wp-content/uploads/2008/documentum_import/page_01.png" /><br />
<img align="bottom" alt="FSD - First Step" title="FSD - First Step" src="http://zuban.com.ua/blog/wp-content/uploads/2008/documentum_import/page_02.png" /></p>
]]></content:encoded>
			<wfw:commentRss>http://zuban.com.ua/blog/documentum/fsd-first-step/feed</wfw:commentRss>
		</item>
		<item>
		<title>Flying Squirrel Developer</title>
		<link>http://zuban.com.ua/blog/documentum/flying-squirrel-developer</link>
		<comments>http://zuban.com.ua/blog/documentum/flying-squirrel-developer#comments</comments>
		<pubDate>Sat, 19 Apr 2008 22:42:40 +0000</pubDate>
		<dc:creator>alexander.zuban</dc:creator>
		
		<category><![CDATA[Development Flavour]]></category>

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

		<category><![CDATA[Time management]]></category>

		<guid isPermaLink="false">http://zuban.com.ua/blog/?p=36</guid>
		<description><![CDATA[
After reading about interesting style of time management in household I got an idea how to apply it for the development process. &#8220;Fly housekeeper&#8221; - according to this style you not pay at once much time to keep your house clean. Instead house is being divided into several zones and for each zone separate day [...]]]></description>
			<content:encoded><![CDATA[<p><img align="bottom" alt="Flying Squirrel Developer" title="Flying Squirrel Developer" src="http://zuban.com.ua/blog/wp-content/uploads/2008/flying_squirrel.jpg" /></p>
<p>After reading about interesting style of time management in household I got an idea how to apply it for the development process. &#8220;Fly housekeeper&#8221; - according to this style you not pay at once much time to keep your house clean. Instead house is being divided into several zones and for each zone separate day is assigned. So during a week you pay small amount of time 15-20 minutes each day to keep this zone clean. With such technique you may keep your house clean and pay just 15-20 minutes per day(but this is 2 hours per week!).</p>
<p>I believe most of developers have a hive of ideas in their heads, but it is always lack of time for their implementation. I want to apply the above technique with some modifications to one bee from my hive.</p>
<p>The idea I want to implement - this is create an open source tool to import files into Documentum repository. I do not have much time to work on it, but I will try to work one hour per day on it&#8217;s implementation, so during week this will be about a full working day. I will put a weekly progress report here which is also will be some kind of self-motivation for me.</p>
]]></content:encoded>
			<wfw:commentRss>http://zuban.com.ua/blog/documentum/flying-squirrel-developer/feed</wfw:commentRss>
		</item>
		<item>
		<title>The Software Conductor</title>
		<link>http://zuban.com.ua/blog/development-flavour/the-software-conductor</link>
		<comments>http://zuban.com.ua/blog/development-flavour/the-software-conductor#comments</comments>
		<pubDate>Thu, 07 Feb 2008 23:23:29 +0000</pubDate>
		<dc:creator>alexander.zuban</dc:creator>
		
		<category><![CDATA[Development Flavour]]></category>

		<guid isPermaLink="false">http://zuban.com.ua/blog/?p=35</guid>
		<description><![CDATA[
During listening classical music you may enjoy with masterly playing of violin or piano or even drums. The musicians are doing really amazing work. And it is always interesting to ask, what this guy with baton doing? Is he really necessary? The musicians do all the job and he just wave with hands; yep it [...]]]></description>
			<content:encoded><![CDATA[<p><img align="bottom" alt="The Software Conductor" title="The Software Conductor" src="http://zuban.com.ua/blog/wp-content/uploads/2008/conductor.jpg" /></p>
<p>During listening classical music you may enjoy with masterly playing of violin or piano or even drums. The musicians are doing really amazing work. And it is always interesting to ask, what this guy with baton doing? Is he really necessary? The musicians do all the job and he just wave with hands; yep it will be better to remove him&#8230; But when you do this you will notice that violin playing too fast, piano starting later and drummer playing with such enthusiasm that not hear anybody. As a result your lovely composition will sounds like an abstract noise in version of the same players. So the conductor is necessary to keep lots of not visible things together to make noise sounds like music.</p>
<p>The same things happen in software development. Work of software manager not so visible, he not produce thousands lines of code, or not catch hundred of customers but he keep not visible threads and conduct lots of thing, such as development, tech writing, sales, customer care, strategic planning, etc. Everything should work synchronously and sounds likes a music.</p>
]]></content:encoded>
			<wfw:commentRss>http://zuban.com.ua/blog/development-flavour/the-software-conductor/feed</wfw:commentRss>
		</item>
		<item>
		<title>Doc, Coffee Doc</title>
		<link>http://zuban.com.ua/blog/java/doc-coffee-doc</link>
		<comments>http://zuban.com.ua/blog/java/doc-coffee-doc#comments</comments>
		<pubDate>Mon, 19 Nov 2007 21:52:21 +0000</pubDate>
		<dc:creator>alexander.zuban</dc:creator>
		
		<category><![CDATA[Java]]></category>

		<guid isPermaLink="false">http://zuban.com.ua/blog/?p=34</guid>
		<description><![CDATA[
Here is some my thought about java doc.
Personally me sceptical about putting lots of javadoc and examples of usage in javadoc. 
The reasons I say so:

 Due to human nature nobody in the project will read them.
 Most of projects are business oriented, and not used as a public library, so javadoc is not such [...]]]></description>
			<content:encoded><![CDATA[<p><img align="bottom" alt="Doc, Coffee Doc" title="Doc, Coffee Doc" src="http://zuban.com.ua/blog/wp-content/uploads/2007/01/coffee_doc.jpg" /></p>
<p>Here is some my thought about java doc.</p>
<p>Personally me sceptical about putting lots of javadoc and examples of usage in javadoc. </p>
<p>The reasons I say so:</p>
<ul>
<li> Due to human nature nobody in the project will read them.</li>
<li> Most of projects are business oriented, and not used as a public library, so javadoc is not such critical, so your code will not be used as a black box by many developers all over the world</li>
<li> I believe that the code should be the primary documentation because it has all the details, when developers looking into code they are getting better understanding of the things and can change them in more desired way.</li>
<li> Support of javadocs will add additional time overhead and will make refactoring task more complex (or after the code refactoring javadoc will be dirty).</li>
<li> In 90% cases, javadocs created by developer not give more information then method signature, e.g. javadoc for the function getFile will be  &#8220;This method return the file&#8221;.</li>
<li> For the distributed team specific (people who working 10-15 hours per week) spend 1-2 hours to put javadocs looks too prodigally as for me.</li>
</ul>
<p>So I am follower of the idea, that code should be understandable in the same level that javadoc and instead of putting code example into the comments, it is better to create a JUnit test.
</p>
<p>
Some examples of the comments-javadocs I saw recently:</p>
<p><code><br />
/**<br />
 * Construct object instance with default parameters.<br />
 */<br />
public SomeClass(){<br />
...<br />
}<br />
</code></p>
<p><code><br />
/**<br />
	 * Registers new listener.<br />
	 *<br />
	 * @param l<br />
	 *            the listener to register.<br />
	 */<br />
	public void addChangeListener(ChangeListener l) {<br />
	...<br />
	}</p>
<p></code></p>
<p><code><br />
// Start transaction.<br />
session.beginTransaction();<br />
....<br />
// Commit all changes.<br />
session.commit();<br />
</code></p>
<p>Well, as for me such comments just add additional lines to code and make it harder to read(good that eclipse has folding feature for the method javadoc).
</p>
<p>
So again, javadoc is very useful for open source projects, but I am skeptical about using them in business related projects, and  developers can&#8217;t write good javadoc documentation.</p>
]]></content:encoded>
			<wfw:commentRss>http://zuban.com.ua/blog/java/doc-coffee-doc/feed</wfw:commentRss>
		</item>
		<item>
		<title>Server Submarine</title>
		<link>http://zuban.com.ua/blog/linux/server-submarine</link>
		<comments>http://zuban.com.ua/blog/linux/server-submarine#comments</comments>
		<pubDate>Wed, 14 Nov 2007 21:48:09 +0000</pubDate>
		<dc:creator>alexander.zuban</dc:creator>
		
		<category><![CDATA[Linux]]></category>

		<guid isPermaLink="false">http://zuban.com.ua/blog/?p=33</guid>
		<description><![CDATA[
Have you ever manage servers over internet? Yep!  There is some pain with this. When you look at the black putty screen and command &#8220;reboot&#8221;, this is like give a &#8220;submerge&#8221; command to submarine.  &#8220;- Submerge! &#8230; The system is going down for reboot NOW! &#8230;Five, Fore, Three, Two, One, Zero&#8230; Check it!&#8221;. [...]]]></description>
			<content:encoded><![CDATA[<p><img align="bottom" alt="Server Submarine" title="Server Submarine" src="http://zuban.com.ua/blog/wp-content/uploads/2007/01/server_submarine.jpg" /></p>
<p>Have you ever manage servers over internet? Yep! <img src='http://zuban.com.ua/blog/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' /> There is some pain with this. When you look at the black putty screen and command &#8220;reboot&#8221;, this is like give a &#8220;submerge&#8221; command to submarine.  &#8220;- Submerge! &#8230; The system is going down for reboot NOW! &#8230;Five, Fore, Three, Two, One, Zero&#8230; Check it!&#8221;. And if you have a bit of luck you will see login prompt again, in other case server will sink and stop responding. This means that you need to touch data center support or drive to data center. There 1000+ reasons why server may not surface. So there are some simple rules to avoid such things:</p>
<ul>
<li> if you put some scripts, make sure that the syntax correct. You may do this just with sending main commands to standard output</li>
<li> use common distribution (more probably it is tested by other people and they report about bugs before you)</li>
<li> reboot server after major configuration or software updates( to make sure that you Docbase, or DB will come back )</li>
<li> keep your system up-to-date, so it will not unexpectedly crash</li>
<li> keep in mind that hardware even less reliable then soft, so duplicate (or backup) your data</li>
</ul>
<p>Also if you have KVM switch installed this is like a periscope, but into your submarines <img src='http://zuban.com.ua/blog/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' /> This gives you additional degree of freedom especially when you installing kernel updates.</p>
<p>So server submarine on top&#8230; Hip Hip Hooray!</p>
]]></content:encoded>
			<wfw:commentRss>http://zuban.com.ua/blog/linux/server-submarine/feed</wfw:commentRss>
		</item>
		<item>
		<title>The Production Hydra</title>
		<link>http://zuban.com.ua/blog/development-flavour/the-production-hydra</link>
		<comments>http://zuban.com.ua/blog/development-flavour/the-production-hydra#comments</comments>
		<pubDate>Fri, 28 Sep 2007 20:10:20 +0000</pubDate>
		<dc:creator>alexander.zuban</dc:creator>
		
		<category><![CDATA[Development Flavour]]></category>

		<guid isPermaLink="false">http://zuban.com.ua/blog/?p=32</guid>
		<description><![CDATA[
In his article David mention that Production is a monster. Yes it is really so, and the name of this monster  is &#8220;Lernaean Hydra&#8221;.
Is is extremely hard to fight against Production Hydra. In the place of cut off head appear two new, with canine, poison and red eyes. Only one human in the history [...]]]></description>
			<content:encoded><![CDATA[<p><img align="bottom" alt="Hercules Slaying The Hydra" title="Hercules Slaying The Hydra" src="http://zuban.com.ua/blog/wp-content/uploads/2007/01/hercules_vs_hydra.jpg" /></p>
<p>In his <a href="http://mobcode.com/2007/05/02/requirements-people-and-monsters-part-4" title="Requirements People And Monsters">article</a> David mention that Production is a monster. Yes it is really so, and the name of this monster  is <b>&#8220;Lernaean Hydra&#8221;</b>.</p>
<p>Is is extremely hard to fight against Production Hydra. In the place of cut off head appear two new, with canine, poison and red eyes. Only one human in the history was able to won it - this is Heracles, but&#8230; Even he wasn&#8217;t alone. His friend was helping him and scorch the neck stumps after Heracles cutoff the next head.</p>
<p>The Hydra heads are Research, Development, Deployment, Support, Sales&#8230; We are simple people, not Heracles. We call off teams of brave and wise warriors  against each Hydra&#8217;s head. They are cutting heads every day, but new heads appear and appear again&#8230; So the raging battle continue, warriors cut Hydras heads and heralds glorify their deeds.</p>
]]></content:encoded>
			<wfw:commentRss>http://zuban.com.ua/blog/development-flavour/the-production-hydra/feed</wfw:commentRss>
		</item>
	</channel>
</rss>

