<?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/"
	>

<channel>
	<title>Inspiration and Expression</title>
	<atom:link href="http://blogs.kiyut.com/tonny/feed/" rel="self" type="application/rss+xml" />
	<link>http://blogs.kiyut.com/tonny</link>
	<description>KIYUT Developer Blog</description>
	<pubDate>Thu, 26 Aug 2010 05:04:59 +0000</pubDate>
	<generator>http://wordpress.org/?v=2.7</generator>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
			<item>
		<title>Packt launch 5th annual Open Source Awards</title>
		<link>http://blogs.kiyut.com/tonny/2010/08/26/packt-launch-5th-annual-open-source-awards/</link>
		<comments>http://blogs.kiyut.com/tonny/2010/08/26/packt-launch-5th-annual-open-source-awards/#comments</comments>
		<pubDate>Thu, 26 Aug 2010 05:01:29 +0000</pubDate>
		<dc:creator>Tonny Kohar</dc:creator>
		
		<category><![CDATA[Uncategorized]]></category>

		<category><![CDATA[open source]]></category>

		<guid isPermaLink="false">http://blogs.kiyut.com/tonny/?p=71</guid>
		<description><![CDATA[I just received an email from Packt Publishing regarding its Open Source Awards, so I just posted here to anyone who interested.
Packt launch 5th annual Open Source Awards
Birmingham, UK. 9th August 2010
The 2010 Open Source Awards was launched today by Packt, inviting people to visit www.PacktPub.com and submit nominations for their favorite Open Source project. [...]]]></description>
			<content:encoded><![CDATA[<p>I just received an email from <a href="http://www.packtpub.com/">Packt Publishing</a> regarding its Open Source Awards, so I just posted here to anyone who interested.</p>
<p><strong>Packt launch 5th annual Open Source Awards</strong></p>
<p>Birmingham, UK. 9th August 2010</p>
<p>The 2010 Open Source Awards was launched today by Packt, inviting people to visit www.PacktPub.com and submit nominations for their favorite Open Source project. Now in its fifth year, the Award has been adapted from the established Open Source CMS Award with the wider aim of encouraging, supporting, recognizing and rewarding all Open Source projects.</p>
<p><span id="more-71"></span></p>
<p>WordPress won the 2009 Open Source Content Management System (CMS) Award in what was a very close contest with MODx and SilverStripe. While MODx was the first runner up, SilverStripe, a Most Promising CMS Award winner in 2008, made its way to the second runner up position in its first year in the Open Source CMS Award final.</p>
<p>The 2010 Award will feature a prize fund of $24,000 with several new categories introduced. While the Open Source CMS Award category will continue to recognize the best content management system, Packt is introducing categories for the Most Promising Open Source Project, Open Source E-Commerce Applications, Open Source JavaScript Libraries and Open Source Graphics Software. CMSes that won the Overall CMS Award in previous years will continue to compete against one another in the Hall of Fame CMS category.</p>
<p>These new categories will ensure that the Open Source Awards is the ultimate platform to recognise excellence within the community while supporting projects both new and old. “We believe that the adaption of the Award and the new categories will provide a new level of accessibility, with the Award recognizing a wider range of Open Source projects; both previous winners while at the same time, encouraging new projects” said Julian Copes, organizer of this year’s Awards.</p>
<p>Packt has opened up nominations for people to submit their favorite Open Source projects for each category at <a href="http://www.packtpub.com/open-source-awards-home">www.PacktPub.com/open-source-awards-home</a>. The top five in each category will go through to the final, which begins in the last week of September. For more information on the categories, please visit Packt’s website <a href="http://www.packtpub.com/blog/packt%E2%80%99s-2010-open-source-awards-announcement">www.PacktPub.com/blog/packt’s-2010-open-source-awards-announcement</a></p>
]]></content:encoded>
			<wfw:commentRss>http://blogs.kiyut.com/tonny/2010/08/26/packt-launch-5th-annual-open-source-awards/feed/</wfw:commentRss>
		</item>
		<item>
		<title>Finally! Microsoft will support native SVG in IE9</title>
		<link>http://blogs.kiyut.com/tonny/2010/03/18/finally-microsoft-will-support-native-svg-in-ie9/</link>
		<comments>http://blogs.kiyut.com/tonny/2010/03/18/finally-microsoft-will-support-native-svg-in-ie9/#comments</comments>
		<pubDate>Thu, 18 Mar 2010 05:06:29 +0000</pubDate>
		<dc:creator>Tonny Kohar</dc:creator>
		
		<category><![CDATA[SVG]]></category>

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

		<guid isPermaLink="false">http://blogs.kiyut.com/tonny/?p=60</guid>
		<description><![CDATA[Yesterday (March 16, 2010) at Microsoft&#8217;s MIX10 Conference in Las Vegas, IE General Manager Dean Hachamovitch announced that native SVG is to be included in IE9. And not only that, it is also the first browser to provide hardware-accelerated SVG support.
http://blogs.msdn.com/ie/archive/2010/03/16/html5-hardware-accelerated-first-ie9-platform-preview-available-for-developers.aspx
This is great news for SVG designers or developers, because soon all major browsers will [...]]]></description>
			<content:encoded><![CDATA[<p>Yesterday (March 16, 2010) at Microsoft&#8217;s MIX10 Conference in Las Vegas, IE General Manager Dean Hachamovitch announced that native SVG is to be included in IE9. And not only that, it is also the first browser to provide hardware-accelerated SVG support.</p>
<p><a href="http://blogs.msdn.com/ie/archive/2010/03/16/html5-hardware-accelerated-first-ie9-platform-preview-available-for-developers.aspx">http://blogs.msdn.com/ie/archive/2010/03/16/html5-hardware-accelerated-first-ie9-platform-preview-available-for-developers.aspx</a></p>
<p>This is great news for SVG designers or developers, because soon all major browsers will or already support SVG. Some already support SVG (Firefox, Google Chrome, Opera) and Microsoft Internet Explorer will follow the suit.</p>
]]></content:encoded>
			<wfw:commentRss>http://blogs.kiyut.com/tonny/2010/03/18/finally-microsoft-will-support-native-svg-in-ie9/feed/</wfw:commentRss>
		</item>
		<item>
		<title>Netbeans Platform RTL (Right To Left) Component Orientation</title>
		<link>http://blogs.kiyut.com/tonny/2009/10/21/netbeans-platform-right-to-left-component-orientation/</link>
		<comments>http://blogs.kiyut.com/tonny/2009/10/21/netbeans-platform-right-to-left-component-orientation/#comments</comments>
		<pubDate>Wed, 21 Oct 2009 06:33:41 +0000</pubDate>
		<dc:creator>Tonny Kohar</dc:creator>
		
		<category><![CDATA[Java]]></category>

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

		<category><![CDATA[Netbeans Platform]]></category>

		<guid isPermaLink="false">http://blogs.kiyut.com/tonny/?p=55</guid>
		<description><![CDATA[If you haven&#8217;t aware Java have support for RTL (Right-To-Left) for the User Interface, and thank to Netbeans Platform based on Swing, it is easy as well to make Netbeans Platform application to support RTL (Right-To-Left) as well
Step 1: Create ComponentOrientation support class
This step is optional, but make the testing easier, because it use the [...]]]></description>
			<content:encoded><![CDATA[<p>If you haven&#8217;t aware Java have support for RTL (Right-To-Left) for the User Interface, and thank to Netbeans Platform based on Swing, it is easy as well to make Netbeans Platform application to support RTL (Right-To-Left) as well</p>
<h3>Step 1: Create ComponentOrientation support class</h3>
<p>This step is optional, but make the testing easier, because it use the value component orientation from System.getProperty(&#8221;..&#8221;), and use auto (based on Locale.getDefault() if nothing specified.</p>
<p><span id="more-55"></span></p>

<div class="wp_syntax"><div class="code"><pre class="java" style="font-family:monospace;">    <span style="color: #000000; font-weight: bold;">public</span> <span style="color: #000000; font-weight: bold;">class</span> ComponentOrientationSupport <span style="color: #009900;">&#123;</span>
&nbsp;
        <span style="color: #000000; font-weight: bold;">private</span> ComponentOrientationSupport<span style="color: #009900;">&#40;</span><span style="color: #009900;">&#41;</span> <span style="color: #009900;">&#123;</span>
            <span style="color: #000000; font-weight: bold;">throw</span> <span style="color: #000000; font-weight: bold;">new</span> <span style="color: #003399;">Error</span><span style="color: #009900;">&#40;</span><span style="color: #0000ff;">&quot;ComponentOrientationSupport is a utility class for static methods&quot;</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span> <span style="color: #666666; font-style: italic;">// NOI18N</span>
        <span style="color: #009900;">&#125;</span>   
&nbsp;
        <span style="color: #008000; font-style: italic; font-weight: bold;">/** 
         * Return component orientation base on the value of
         * {@code System.getProperty(&quot;alkitab.orientation&quot;)} &lt;br/&gt;
         * If it is not specified it will return ComponentOrientation.LEFT_TO_RIGHT
         * Possible value are:
         * &lt;code&gt;
         * - auto (Default), automatic setting based on Locale.getDefault()
         * - ltr, force to use Left to Right orientation
         * - rtl, force to use Right to Left orientation
         * &lt;/code&gt;
         * @return ComponentOrientation
         */</span>
        <span style="color: #000000; font-weight: bold;">public</span> <span style="color: #000000; font-weight: bold;">static</span> <span style="color: #003399;">ComponentOrientation</span> getComponentOrientation<span style="color: #009900;">&#40;</span><span style="color: #009900;">&#41;</span> <span style="color: #009900;">&#123;</span>
            <span style="color: #003399;">ComponentOrientation</span> orient <span style="color: #339933;">=</span> <span style="color: #003399;">ComponentOrientation</span>.<span style="color: #006633;">getOrientation</span><span style="color: #009900;">&#40;</span><span style="color: #003399;">Locale</span>.<span style="color: #006633;">getDefault</span><span style="color: #009900;">&#40;</span><span style="color: #009900;">&#41;</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
&nbsp;
            <span style="color: #003399;">String</span> str <span style="color: #339933;">=</span> <span style="color: #003399;">System</span>.<span style="color: #006633;">getProperty</span><span style="color: #009900;">&#40;</span><span style="color: #0000ff;">&quot;component.orientation&quot;</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
&nbsp;
            <span style="color: #000000; font-weight: bold;">if</span> <span style="color: #009900;">&#40;</span>str <span style="color: #339933;">!=</span> <span style="color: #000066; font-weight: bold;">null</span><span style="color: #009900;">&#41;</span> <span style="color: #009900;">&#123;</span>
                <span style="color: #000000; font-weight: bold;">if</span> <span style="color: #009900;">&#40;</span>str.<span style="color: #006633;">equals</span><span style="color: #009900;">&#40;</span><span style="color: #0000ff;">&quot;ltr&quot;</span><span style="color: #009900;">&#41;</span><span style="color: #009900;">&#41;</span> <span style="color: #009900;">&#123;</span>
                    orient <span style="color: #339933;">=</span> <span style="color: #003399;">ComponentOrientation</span>.<span style="color: #006633;">LEFT_TO_RIGHT</span><span style="color: #339933;">;</span>
                <span style="color: #009900;">&#125;</span> <span style="color: #000000; font-weight: bold;">else</span> <span style="color: #000000; font-weight: bold;">if</span> <span style="color: #009900;">&#40;</span>str.<span style="color: #006633;">equals</span><span style="color: #009900;">&#40;</span><span style="color: #0000ff;">&quot;rtl&quot;</span><span style="color: #009900;">&#41;</span><span style="color: #009900;">&#41;</span> <span style="color: #009900;">&#123;</span>
                    orient <span style="color: #339933;">=</span> <span style="color: #003399;">ComponentOrientation</span>.<span style="color: #006633;">RIGHT_TO_LEFT</span><span style="color: #339933;">;</span>
                <span style="color: #009900;">&#125;</span>
            <span style="color: #009900;">&#125;</span>
&nbsp;
            <span style="color: #000000; font-weight: bold;">return</span> orient<span style="color: #339933;">;</span>
        <span style="color: #009900;">&#125;</span>
&nbsp;
        <span style="color: #008000; font-style: italic; font-weight: bold;">/** Apply the getComponentOrientation to the specified container
         * @param container Container
         */</span>
        <span style="color: #000000; font-weight: bold;">public</span> <span style="color: #000000; font-weight: bold;">static</span> <span style="color: #000066; font-weight: bold;">void</span> applyComponentOrientation<span style="color: #009900;">&#40;</span><span style="color: #003399;">Container</span> container<span style="color: #009900;">&#41;</span> <span style="color: #009900;">&#123;</span>
            container.<span style="color: #006633;">applyComponentOrientation</span><span style="color: #009900;">&#40;</span>getComponentOrientation<span style="color: #009900;">&#40;</span><span style="color: #009900;">&#41;</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
        <span style="color: #009900;">&#125;</span>
    <span style="color: #009900;">&#125;</span></pre></div></div>

<h3>Step 2: Apply the component orientation for the MainWindow</h3>
<p>In order to apply the component orientation to the MainWindow, you need to do that in the ModuleInstall eg:</p>

<div class="wp_syntax"><div class="code"><pre class="java" style="font-family:monospace;">    @Override
    <span style="color: #000000; font-weight: bold;">public</span>  <span style="color: #000066; font-weight: bold;">void</span> restored<span style="color: #009900;">&#40;</span><span style="color: #009900;">&#41;</span> <span style="color: #009900;">&#123;</span>
        <span style="color: #000000; font-weight: bold;">super</span>.<span style="color: #006633;">restored</span><span style="color: #009900;">&#40;</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
&nbsp;
        <span style="color: #666666; font-style: italic;">// initialize the orientation</span>
        <span style="color: #003399;">String</span> orientationKey <span style="color: #339933;">=</span> <span style="color: #0000ff;">&quot;component.orientation&quot;</span><span style="color: #339933;">;</span>
        <span style="color: #003399;">String</span> strOrientation <span style="color: #339933;">=</span> <span style="color: #003399;">System</span>.<span style="color: #006633;">getProperty</span><span style="color: #009900;">&#40;</span>orientationKey<span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
        <span style="color: #000000; font-weight: bold;">if</span> <span style="color: #009900;">&#40;</span>strOrientation <span style="color: #339933;">==</span> <span style="color: #000066; font-weight: bold;">null</span><span style="color: #009900;">&#41;</span> <span style="color: #009900;">&#123;</span>
            strOrientation <span style="color: #339933;">=</span> <span style="color: #0000ff;">&quot;auto&quot;</span><span style="color: #339933;">;</span>
        <span style="color: #009900;">&#125;</span> <span style="color: #000000; font-weight: bold;">else</span> <span style="color: #009900;">&#123;</span>
            strOrientation <span style="color: #339933;">=</span> strOrientation.<span style="color: #006633;">trim</span><span style="color: #009900;">&#40;</span><span style="color: #009900;">&#41;</span>.<span style="color: #006633;">toLowerCase</span><span style="color: #009900;">&#40;</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
        <span style="color: #009900;">&#125;</span>
        <span style="color: #003399;">System</span>.<span style="color: #006633;">setProperty</span><span style="color: #009900;">&#40;</span>orientationKey, strOrientation<span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span> <span style="color: #666666; font-style: italic;">// re-setting the System property to the correct value</span>
&nbsp;
        <span style="color: #666666; font-style: italic;">// do something else</span>
        <span style="color: #666666; font-style: italic;">//....</span>
&nbsp;
        WindowManager.<span style="color: #006633;">getDefault</span><span style="color: #009900;">&#40;</span><span style="color: #009900;">&#41;</span>.<span style="color: #006633;">invokeWhenUIReady</span><span style="color: #009900;">&#40;</span><span style="color: #000000; font-weight: bold;">new</span> <span style="color: #003399;">Runnable</span><span style="color: #009900;">&#40;</span><span style="color: #009900;">&#41;</span> <span style="color: #009900;">&#123;</span>
            <span style="color: #000000; font-weight: bold;">public</span> <span style="color: #000066; font-weight: bold;">void</span> run<span style="color: #009900;">&#40;</span><span style="color: #009900;">&#41;</span> <span style="color: #009900;">&#123;</span>
                ComponentOrientationSupport.<span style="color: #006633;">applyComponentOrientation</span><span style="color: #009900;">&#40;</span>WindowManager.<span style="color: #006633;">getDefault</span><span style="color: #009900;">&#40;</span><span style="color: #009900;">&#41;</span>.<span style="color: #006633;">getMainWindow</span><span style="color: #009900;">&#40;</span><span style="color: #009900;">&#41;</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
&nbsp;
                <span style="color: #666666; font-style: italic;">// do something else</span>
                <span style="color: #666666; font-style: italic;">//....</span>
            <span style="color: #009900;">&#125;</span>
        <span style="color: #009900;">&#125;</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
    <span style="color: #009900;">&#125;</span></pre></div></div>

<h3>Step 3: Apply the component orientation for each TopComponent</h3>
<p>You need to apply component orientation for each TopComponent you have eg:</p>

<div class="wp_syntax"><div class="code"><pre class="java" style="font-family:monospace;">    <span style="color: #000000; font-weight: bold;">public</span> <span style="color: #000000; font-weight: bold;">final</span> <span style="color: #000000; font-weight: bold;">class</span> MyTopComponent <span style="color: #000000; font-weight: bold;">extends</span> TopComponent <span style="color: #009900;">&#123;</span>
        <span style="color: #000000; font-weight: bold;">private</span> MyTopComponent<span style="color: #009900;">&#40;</span><span style="color: #009900;">&#41;</span> <span style="color: #009900;">&#123;</span>
            initComponents<span style="color: #009900;">&#40;</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
            setName<span style="color: #009900;">&#40;</span>...<span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
            setToolTipText<span style="color: #009900;">&#40;</span>...<span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
&nbsp;
            <span style="color: #666666; font-style: italic;">// do something else</span>
            <span style="color: #666666; font-style: italic;">//....</span>
&nbsp;
            ComponentOrientationSupport.<span style="color: #006633;">applyComponentOrientation</span><span style="color: #009900;">&#40;</span><span style="color: #000000; font-weight: bold;">this</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
        <span style="color: #009900;">&#125;</span>
    <span style="color: #009900;">&#125;</span></pre></div></div>

<h3>Step 4: Testing</h3>
<p>Because it is using System.getProperty(&#8221;..&#8221;), so it is easy to test the UI. You only need to assign that component.orientation=auto|ltr|rtl to the environment. In Netbeans Platform based application you can do that in the suite project.properties by adding</p>

<div class="wp_syntax"><div class="code"><pre class="java" style="font-family:monospace;">run.<span style="color: #006633;">args</span>.<span style="color: #006633;">extra</span><span style="color: #339933;">=-</span>J<span style="color: #339933;">-</span>Dcomponent.<span style="color: #006633;">orientation</span><span style="color: #339933;">=</span>rtl ...<span style="color: #006633;">your</span> other things eg<span style="color: #339933;">:</span> <span style="color: #339933;">-</span>J<span style="color: #339933;">-</span>Xms64m <span style="color: #339933;">-</span>J<span style="color: #339933;">-</span>Xmx128m ...</pre></div></div>

<p>Or for deploying you can use ../etc/yourapp.conf as above. Or if you are not setting it up, it will use &#8220;auto&#8221; by default which is based on Locale.getDefault()</p>
]]></content:encoded>
			<wfw:commentRss>http://blogs.kiyut.com/tonny/2009/10/21/netbeans-platform-right-to-left-component-orientation/feed/</wfw:commentRss>
		</item>
		<item>
		<title>Who are using Netbeans Platform ?</title>
		<link>http://blogs.kiyut.com/tonny/2009/10/14/who-are-using-netbeans-platform/</link>
		<comments>http://blogs.kiyut.com/tonny/2009/10/14/who-are-using-netbeans-platform/#comments</comments>
		<pubDate>Wed, 14 Oct 2009 07:21:14 +0000</pubDate>
		<dc:creator>Tonny Kohar</dc:creator>
		
		<category><![CDATA[Java]]></category>

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

		<guid isPermaLink="false">http://blogs.kiyut.com/tonny/?p=44</guid>
		<description><![CDATA[Did you ever wondering who (companies or developers) are using Netbeans Platform as their platform of choice ? You will be surprised if you check this Netbeans Platform Screenshot Showcase. 
There are a lot of them from various categories: Aerospace &#038; Defence, Oil &#038; Gas Services, Geospatial, Bio &#038; Chemoinformatics, Scientific Modelers, Monitors, &#038; Analyzers, [...]]]></description>
			<content:encoded><![CDATA[<p>Did you ever wondering who (companies or developers) are using Netbeans Platform as their platform of choice ? You will be surprised if you check this <a href="http://platform.netbeans.org/screenshots.html">Netbeans Platform Screenshot Showcase</a>. </p>
<p>There are a lot of them from various categories: Aerospace &#038; Defence, Oil &#038; Gas Services, Geospatial, Bio &#038; Chemoinformatics, Scientific Modelers, Monitors, &#038; Analyzers, Healthcare, Network Management &#038; Communications Systems, Retail, Graphic Design &#038; Image Manipulation, Music &#038; Entertainment, Software Development. </p>
<p><span id="more-44"></span></p>
<p>So let&#8217;s me iterate again (<a href="http://blogs.kiyut.com/tonny/2007/11/21/rich-client-platform-rcp-why/">or read this instead</a>) why it is good idea to use <strong>RCP (Rich Client Platform) vs Java plus libraries.</strong> For me Rich Client Platform (RCP) is a set of libraries with <strong>tight integration</strong>, it was build from ground up to <strong>work together</strong> as a platform so other application can be build or run on top of it. In contrast, Java plus libraries is <strong>a mix and match of libraries</strong> to support the application eg: give new features, etc.</p>
<p>One main problem with the mix and match style is because that libraries may not be designed to work together, they could be excellent library on its own, but once they integrated together to form a single system (an application), sometimes it may require some glue or bridge code to make them work together. On the other hands for RCP, these set of libraries will work together since it is designed that way from beginning.</p>
]]></content:encoded>
			<wfw:commentRss>http://blogs.kiyut.com/tonny/2009/10/14/who-are-using-netbeans-platform/feed/</wfw:commentRss>
		</item>
		<item>
		<title>Netbeans Platform Friend dependencies</title>
		<link>http://blogs.kiyut.com/tonny/2009/05/27/netbeans-platform-friend-dependencies/</link>
		<comments>http://blogs.kiyut.com/tonny/2009/05/27/netbeans-platform-friend-dependencies/#comments</comments>
		<pubDate>Wed, 27 May 2009 07:47:40 +0000</pubDate>
		<dc:creator>Tonny Kohar</dc:creator>
		
		<category><![CDATA[Java]]></category>

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

		<category><![CDATA[Netbeans Platform]]></category>

		<guid isPermaLink="false">http://blogs.kiyut.com/tonny/2009/05/27/netbeans-platform-friend-dependencies/</guid>
		<description><![CDATA[Recently on the nbdev (dev@openide.netbeans.org) mailing list someone ask a question regarding friend dependencies, because he/she I got the following Error: 

The module some.package.path is not a friend of some-path\some.jar

So what is friend dependency anyways. Friend Dependency is caused by a Module that have an API which its author is not yet comfortable exposing to [...]]]></description>
			<content:encoded><![CDATA[<p>Recently on the nbdev (<a href="http://openide.netbeans.org/servlets/SummarizeList?listName=dev">dev@openide.netbeans.org</a>) mailing list someone ask a question regarding friend dependencies, because he/she I got the following Error: </p>
<blockquote><p>
The module some.package.path <strong>is not a friend</strong> of some-path\some.jar
</p></blockquote>
<p>So what is friend dependency anyways. Friend Dependency is caused by a Module that have an API which its author is not yet comfortable exposing to just anyone, because it might not be fully stabilized yet. In this case, the module with the API can declare some public packages, but also stipulate that only a predefined list of &#8220;friend modules&#8221; are permitted to use them. The friend modules just declare a regular specification version dependency, but unknown modules are not permitted to use any packages from the API module.</p>
<p>So in order to declare a dependency to that module, you need to use <strong>an implementation dependency</strong>. Please read the following <a href="http://wiki.netbeans.org/DevFaqImplementationDependency">Netbeans Wiki Dev FAQ</a> on how to declare this implementation dependency and to enable friend dependency.</p>
<p><strong>note:</strong> please also understand that implementation dependencies cause special problems for Auto Update. It is explained on the Netbeans Wiki Dev FAQ as well</p>
]]></content:encoded>
			<wfw:commentRss>http://blogs.kiyut.com/tonny/2009/05/27/netbeans-platform-friend-dependencies/feed/</wfw:commentRss>
		</item>
		<item>
		<title>Book Review: Swing Extreme Testing</title>
		<link>http://blogs.kiyut.com/tonny/2009/05/06/book-review-swing-extreme-testing/</link>
		<comments>http://blogs.kiyut.com/tonny/2009/05/06/book-review-swing-extreme-testing/#comments</comments>
		<pubDate>Wed, 06 May 2009 10:03:20 +0000</pubDate>
		<dc:creator>Tonny Kohar</dc:creator>
		
		<category><![CDATA[Java]]></category>

		<category><![CDATA[Book Review]]></category>

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

		<category><![CDATA[Unit Test]]></category>

		<guid isPermaLink="false">http://blogs.kiyut.com/tonny/2009/05/06/book-review-swing-extreme-testing/</guid>
		<description><![CDATA[There are many books published which describe on how to write unit test eg: using JUnit for Java program. Those books are come from simple-complex scenario depending on the book target reader. However, there are only a few which specialized on User Interface testing. So if you ever wondered on how to test Java GUI, [...]]]></description>
			<content:encoded><![CDATA[<p>There are many books published which describe on how to write unit test eg: using JUnit for Java program. Those books are come from simple-complex scenario depending on the book target reader. However, there are only a few which specialized on User Interface testing. So if you ever wondered on how to test Java GUI, then <a href="http://www.packtpub.com/java-swing-extreme-testing/book"><strong>Swing Extreme Testing</strong></a> by Tim Lavers and Lindsay Peters from <a href="http://www.packtpub.com">Packt Publishing</a> might interest you.</p>
<p><span id="more-40"></span></p>
<p>Because there is already <a href="http://www.jroller.com/alexRuiz/entry/book_review_swing_extreme_testing"><strong>review of this book</strong></a> by Alex Ruiz who focused on pro and cons, so in this review I will focus on the book&#8217;s content itself.</p>
<p>Swing Extreme Testing book is come with 311 pages. The chapters structure is nice and follow the logical step and easy to follow. This books use real life application as the example rather than using imaginative sample. The content is very interesting it start with the methodology (Extreme Testing) as the author called. What needs to be tested, who is to write the tests, when they are to be written, so on. Then go to management of test class and test data. And the testing of User Interface itself. This books also describe the technique to test JavaHelp, ResourceBundle Testing, Server and User Interface Testing, and Multiple JVM testings. </p>
<p>In this books, the author present <strong>Cyborg</strong>, a higher-level wrapper for java.awt.Robot class. This is the tool for user interface testing. The books also discuss some very important techniques for testing Swing applications. These techniques are: how to set up user interfaces in a thread-safe manner, how to find the objects representing particular components on the screen and how to interrogate a component for its state. </p>
<p>The book is closed with <strong>flaky test</strong>, tests that occasionally fail or do not terminate. As the authors says</p>
<blockquote><p>
&#8220;The problem with having flaky tests is that they remove the element of reproducibility from our testing process. If our tests pass, we don&#8217;t know whether all the bugs we&#8217;re testing against have actually been fixed, or whether they just happened not to manifest themselves in that testing run. If our tests fail, this could be due to either production errors or testing errors, or both. If we can&#8217;t be sure of our test results, we can&#8217;t be sure of our software.&#8221;
</p></blockquote>
<p>Finally, all the tests presented are <strong>automated test</strong>. This books also contains <strong>many tips and trick</strong> using real life application (what worked for them and what didn&#8217;t). Those tips and tricks itself worth the book. </p>
<p><strong>Some note:</strong> I really surprised when book also describe the ResourceBundle and JavaHelp tests.</p>
]]></content:encoded>
			<wfw:commentRss>http://blogs.kiyut.com/tonny/2009/05/06/book-review-swing-extreme-testing/feed/</wfw:commentRss>
		</item>
		<item>
		<title>Java Penetration Statistics</title>
		<link>http://blogs.kiyut.com/tonny/2009/01/06/java-penetration-statistics/</link>
		<comments>http://blogs.kiyut.com/tonny/2009/01/06/java-penetration-statistics/#comments</comments>
		<pubDate>Tue, 06 Jan 2009 08:01:08 +0000</pubDate>
		<dc:creator>Tonny Kohar</dc:creator>
		
		<category><![CDATA[Java]]></category>

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

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

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

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

		<guid isPermaLink="false">http://blogs.kiyut.com/tonny/2009/01/06/java-penetration-statistics/</guid>
		<description><![CDATA[This Java statistics is based on http://www.kiyut.com (not this blog, this blog is tracked separately). Basically, it is a B2C sites which specialize in Java Desktop Application.
If you are wondering how do we track Java version, please visit this step by step guide on how to track java version using google analytics at
http://cowwoc.blogspot.com/2008/11/tracking-java-versions-using-google.html
Here is our [...]]]></description>
			<content:encoded><![CDATA[<p>This Java statistics is based on <a href="http://www.kiyut.com">http://www.kiyut.com</a> (not this blog, this blog is tracked separately). Basically, it is a B2C sites which specialize in Java Desktop Application.</p>
<p>If you are wondering how do we track Java version, please visit this step by step guide on how to track java version using google analytics at<br />
<a href="http://cowwoc.blogspot.com/2008/11/tracking-java-versions-using-google.html">http://cowwoc.blogspot.com/2008/11/tracking-java-versions-using-google.html</a></p>
<p>Here is our Java visitor stats, it is fresh from Google Analytics data 05 December 2008 - 05 January 2009</p>
<p><img src="http://blogs.kiyut.com/tonny/wp-content/uploads/2009/01/java-visit.png" alt="Java Visitors" border="0" /></p>
<p><span id="more-39"></span><br />
and the corresponding Operating System (OS) stats</p>
<p><img src="http://blogs.kiyut.com/tonny/wp-content/uploads/2009/01/os-visit.png" alt="OS Visitors" border="0" /><br />
<br/><br/></p>
<p>Based on the above, Java 1.6_xx seems to have very nice grounds, and the Java 1.5 (9.36%) seems come from Mac OSX (12.90%), not set is probably from visitor who disable javascript (noscript).</p>
<p>The only things that <strong>puzzle me</strong> is the Java 1.8.0 (6.59%). Where does it come from or is there really a Java 1.8.0 ? If you know where this 1.8.0 come from, please do not hesitate to drop me a note.</p>
]]></content:encoded>
			<wfw:commentRss>http://blogs.kiyut.com/tonny/2009/01/06/java-penetration-statistics/feed/</wfw:commentRss>
		</item>
		<item>
		<title>Netbeans Platform referencing other module in layer.xml Tips</title>
		<link>http://blogs.kiyut.com/tonny/2008/12/12/netbeans-platform-referencing-other-module-in-layerxml-tips/</link>
		<comments>http://blogs.kiyut.com/tonny/2008/12/12/netbeans-platform-referencing-other-module-in-layerxml-tips/#comments</comments>
		<pubDate>Fri, 12 Dec 2008 08:16:18 +0000</pubDate>
		<dc:creator>Tonny Kohar</dc:creator>
		
		<category><![CDATA[Alkitab]]></category>

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

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

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

		<category><![CDATA[Netbeans Platform]]></category>

		<category><![CDATA[Tips and Tricks]]></category>

		<guid isPermaLink="false">http://blogs.kiyut.com/tonny/2008/12/12/netbeans-platform-referencing-other-module-in-layerxml-tips/</guid>
		<description><![CDATA[How do you reference some some instance from other module in the current module layer.xml ? In my case, I need this functionality/features because I create a module that act as branding module. In this branding module I declare the shortcut, windows, menu, etc. The other module is pure API and pure components.
Because of the [...]]]></description>
			<content:encoded><![CDATA[<p>How do you reference some some instance from other module in the current module layer.xml ? In my case, I need this functionality/features because I create a module that act as branding module. In this branding module I declare the shortcut, windows, menu, etc. The other module is pure API and pure components.</p>
<p>Because of the above requirement I need to find a ways to reference or create instance of something from other module in the branding module, so <strong>nbres://</strong> protocols was come to rescue.</p>
<p>In the example below, the settings and wstcref file of the TopComponent is located at other module (Core Module) and the layer.xml below is in the Branding module.</p>
<p><span id="more-38"></span></p>

<div class="wp_syntax"><div class="code"><pre class="xml" style="font-family:monospace;"><span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;folder</span> <span style="color: #000066;">name</span>=<span style="color: #ff0000;">&quot;Windows2&quot;</span><span style="color: #000000; font-weight: bold;">&gt;</span></span>
    <span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;folder</span> <span style="color: #000066;">name</span>=<span style="color: #ff0000;">&quot;Components&quot;</span><span style="color: #000000; font-weight: bold;">&gt;</span></span>
        <span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;file</span> <span style="color: #000066;">name</span>=<span style="color: #ff0000;">&quot;BookshelfTopComponent.settings&quot;</span> <span style="color: #000066;">url</span>=<span style="color: #ff0000;">&quot;nbres:/kiyut/alkitab/windows/BookshelfTopComponent.settings&quot;</span><span style="color: #000000; font-weight: bold;">/&gt;</span></span>
        <span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;file</span> <span style="color: #000066;">name</span>=<span style="color: #ff0000;">&quot;BookNavigatorTopComponent.settings&quot;</span> <span style="color: #000066;">url</span>=<span style="color: #ff0000;">&quot;nbres:/kiyut/alkitab/windows/BookNavigatorTopComponent.settings&quot;</span><span style="color: #000000; font-weight: bold;">/&gt;</span></span>
        <span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;file</span> <span style="color: #000066;">name</span>=<span style="color: #ff0000;">&quot;DefinitionsTopComponent.settings&quot;</span> <span style="color: #000066;">url</span>=<span style="color: #ff0000;">&quot;nbres:/kiyut/alkitab/windows/DefinitionsTopComponent.settings&quot;</span><span style="color: #000000; font-weight: bold;">/&gt;</span></span>
        <span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;file</span> <span style="color: #000066;">name</span>=<span style="color: #ff0000;">&quot;DailyDevotionsTopComponent.settings&quot;</span> <span style="color: #000066;">url</span>=<span style="color: #ff0000;">&quot;nbres:/kiyut/alkitab/windows/DailyDevotionsTopComponent.settings&quot;</span><span style="color: #000000; font-weight: bold;">/&gt;</span></span>
    <span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;/folder<span style="color: #000000; font-weight: bold;">&gt;</span></span></span> 
    <span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;folder</span> <span style="color: #000066;">name</span>=<span style="color: #ff0000;">&quot;Modes&quot;</span><span style="color: #000000; font-weight: bold;">&gt;</span></span>
        <span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;folder</span> <span style="color: #000066;">name</span>=<span style="color: #ff0000;">&quot;explorer&quot;</span><span style="color: #000000; font-weight: bold;">&gt;</span></span>
            <span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;file</span> <span style="color: #000066;">name</span>=<span style="color: #ff0000;">&quot;BookshelfTopComponent.wstcref&quot;</span> <span style="color: #000066;">url</span>=<span style="color: #ff0000;">&quot;nbres:/kiyut/alkitab/windows/BookshelfTopComponent.wstcref&quot;</span><span style="color: #000000; font-weight: bold;">&gt;</span></span>
                <span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;attr</span> <span style="color: #000066;">name</span>=<span style="color: #ff0000;">&quot;position&quot;</span> <span style="color: #000066;">intvalue</span>=<span style="color: #ff0000;">&quot;100&quot;</span><span style="color: #000000; font-weight: bold;">/&gt;</span></span>
            <span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;/file<span style="color: #000000; font-weight: bold;">&gt;</span></span></span>
            <span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;file</span> <span style="color: #000066;">name</span>=<span style="color: #ff0000;">&quot;BookNavigatorTopComponent.wstcref&quot;</span> <span style="color: #000066;">url</span>=<span style="color: #ff0000;">&quot;nbres:/kiyut/alkitab/windows/BookNavigatorTopComponent.wstcref&quot;</span><span style="color: #000000; font-weight: bold;">&gt;</span></span>
                <span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;attr</span> <span style="color: #000066;">name</span>=<span style="color: #ff0000;">&quot;position&quot;</span> <span style="color: #000066;">intvalue</span>=<span style="color: #ff0000;">&quot;110&quot;</span><span style="color: #000000; font-weight: bold;">/&gt;</span></span>
            <span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;/file<span style="color: #000000; font-weight: bold;">&gt;</span></span></span>
        <span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;/folder<span style="color: #000000; font-weight: bold;">&gt;</span></span></span>
        ...
    <span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;/folder<span style="color: #000000; font-weight: bold;">&gt;</span></span></span>
<span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;/folder<span style="color: #000000; font-weight: bold;">&gt;</span></span></span></pre></div></div>

<p>For the complete example, you can download the complete source code of Alkitab Bible Study (Public Domain) at <a href="http://www.kiyut.com/products/alkitab/developer/index.html#sourcecode">http://www.kiyut.com/products/alkitab/developer/index.html</a> under source code section.</p>
]]></content:encoded>
			<wfw:commentRss>http://blogs.kiyut.com/tonny/2008/12/12/netbeans-platform-referencing-other-module-in-layerxml-tips/feed/</wfw:commentRss>
		</item>
		<item>
		<title>Tracking Java Versions using Google Analytics</title>
		<link>http://blogs.kiyut.com/tonny/2008/11/15/tracking-java-versions-using-google-analytics/</link>
		<comments>http://blogs.kiyut.com/tonny/2008/11/15/tracking-java-versions-using-google-analytics/#comments</comments>
		<pubDate>Sat, 15 Nov 2008 06:28:24 +0000</pubDate>
		<dc:creator>Tonny Kohar</dc:creator>
		
		<category><![CDATA[Java]]></category>

		<category><![CDATA[Google Analytics]]></category>

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

		<category><![CDATA[Tips and Tricks]]></category>

		<guid isPermaLink="false">http://blogs.kiyut.com/tonny/2008/11/15/tracking-java-versions-using-google-analytics/</guid>
		<description><![CDATA[Finally someone posting howto or tutorial for tracking Java version using google analytics. Here is the url for more detailed info
http://cowwoc.blogspot.com/2008/11/tracking-java-versions-using-google.html
So now you can track your visitors who have java installed. The nice things regarding this tips and tricks is that this tips also capture the java version eg: Java 1.5, 1.6, etc. So no [...]]]></description>
			<content:encoded><![CDATA[<p>Finally someone posting howto or tutorial for tracking Java version using google analytics. Here is the url for more detailed info<br />
<a href="http://cowwoc.blogspot.com/2008/11/tracking-java-versions-using-google.html">http://cowwoc.blogspot.com/2008/11/tracking-java-versions-using-google.html</a></p>
<p>So now you can track your visitors who have java installed. The nice things regarding this tips and tricks is that this tips also capture the java version eg: Java 1.5, 1.6, etc. So no more wondering or guessing regarding Java installed base.</p>
]]></content:encoded>
			<wfw:commentRss>http://blogs.kiyut.com/tonny/2008/11/15/tracking-java-versions-using-google-analytics/feed/</wfw:commentRss>
		</item>
		<item>
		<title>Netbeans 10th Birthday Celebration</title>
		<link>http://blogs.kiyut.com/tonny/2008/10/20/netbeans-10th-birthday-celebration/</link>
		<comments>http://blogs.kiyut.com/tonny/2008/10/20/netbeans-10th-birthday-celebration/#comments</comments>
		<pubDate>Mon, 20 Oct 2008 09:53:40 +0000</pubDate>
		<dc:creator>Tonny Kohar</dc:creator>
		
		<category><![CDATA[Java]]></category>

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

		<guid isPermaLink="false">http://blogs.kiyut.com/tonny/2008/10/20/netbeans-10th-birthday-celebration/</guid>
		<description><![CDATA[If you haven&#8217;t realized, Netbeans is going to celebrate its 10th birthday. This event will be started from October 20, 2008. Here is the excerpt from the Netbeans Event Site. 
Since 1998, NetBeans has grown from a student project into an award winning Open Source project, IDE and application platform. With millions of downloads a [...]]]></description>
			<content:encoded><![CDATA[<p>If you haven&#8217;t realized, Netbeans is going to celebrate its 10th birthday. This event will be started from October 20, 2008. Here is the excerpt from the <a href="http://www.netbeans.org/birthday/">Netbeans Event Site</a>. </p>
<blockquote><p>Since 1998, NetBeans has grown from a student project into an award winning Open Source project, IDE and application platform. With millions of downloads a year worldwide, the NetBeans community boasts an active and diverse following of software developers, students, instructors and partner companies.</p>
<p>For our 10th birthday bash we plan to highlight some of the key initiatives and individuals whose contributions and dedication have kept the NetBeans momentum going strong. There will be unique content—video greetings, community profiles and more—available during the week-long retrospective. </p>
<p>We&#8217;ve also come up with a fun way for the community to celebrate with us—the NetBeans Decathlon! Ten interactive activities that let NetBeans users show and share what the NetBeans project means to them.</p>
<p>Participants will be entered to win a cool limited edition NetBeans T-shirt. Stay tuned for details of the Decathlon and the official birthday kickoff!
</p></blockquote>
<p><br/></p>
<div align="center">
<a href="http://www.netbeans.org/birthday/"><img src="http://blogs.kiyut.com/tonny/wp-content/uploads/2008/10/nb-10y-logo-circle.png" alt="Netbeans 10th Birthday Celebration" border="0" /></a><br/><br />
<a href="http://www.netbeans.org/birthday/">Visit Netbeans 10th Birthday Celebration Site.</a>
</div>
<p><br/></p>
]]></content:encoded>
			<wfw:commentRss>http://blogs.kiyut.com/tonny/2008/10/20/netbeans-10th-birthday-celebration/feed/</wfw:commentRss>
		</item>
	</channel>
</rss>

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