<?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>Milinda Pathirage's Blog</title>
	<atom:link href="http://mpathirage.com/feed/" rel="self" type="application/rss+xml" />
	<link>http://mpathirage.com</link>
	<description>Computers are fascinating machines, but they're mostly a reflection of the people using them</description>
	<pubDate>Mon, 29 Jun 2009 09:26:59 +0000</pubDate>
	<generator>http://wordpress.org/?v=2.7</generator>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<image>
<link>http://mpathirage.com</link>
<url>http://mpathirage.com/wp-content/mbp-favicon/favicon.ico</url>
<title>Milinda Pathirage's Blog</title>
</image>
		<item>
		<title>Free Class on SOA Security Standards and Best Practices</title>
		<link>http://mpathirage.com/free-class-on-soa-security-standards-and-best-practices/</link>
		<comments>http://mpathirage.com/free-class-on-soa-security-standards-and-best-practices/#comments</comments>
		<pubDate>Mon, 29 Jun 2009 09:26:59 +0000</pubDate>
		<dc:creator>Milinda</dc:creator>
		
		<category><![CDATA[SOA]]></category>

		<category><![CDATA[web services]]></category>

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

		<guid isPermaLink="false">http://mpathirage.com/?p=619</guid>
		<description><![CDATA[This week's WSO2 Summer School class features SOA security standards and best practices.
IT architects and developers who want to learn SOA security and identity management best practices are invited to attend &#8220;Security in SOA.&#8221; This interactive, online class is being offered at no cost as part of the WSO2 SOA Summer School program. It will [...]


No related posts.

Related posts brought to you by <a href='http://mitcho.com/code/yarpp/'>Yet Another Related Posts Plugin</a>.]]></description>
			<content:encoded><![CDATA[<p>This week's WSO2 Summer School class features SOA security standards and best practices.</p>
<p>IT architects and developers who want to learn SOA security and identity management best practices are invited to attend <a href="http://wso2.org/training/security_in_soa">&ldquo;Security in SOA.&rdquo;</a> This interactive, online class is being offered at no cost as part of the <a href="http://wso2.org/training">WSO2 SOA Summer School</a> program. It will be held on Thursday, July 2, 2009 at 9:00 a.m. Pacific.</p>
<p>The two-hour Security in SOA class will focus the implementation of security and identity management as a service using the two emerging open, user-centric identity standards: OpenID and Information Cards, as well as XACML for fine-grained authorization. Attendees will learn about Web services security standards, including WS-Security, WS-Trust, WS-Secure Conversation, and WS-Security Policy. The course will also review Information Cards as an application of WS-Trust, and the Oauth protocol for secure API authorization.</p>
<p>Find more information at <a href="http://wso2.com/about/news/wso2-summer-school-features-free-class-on-soa-security-standards-and-best-practices/" target="_blank">http://wso2.com/about/news/wso2-summer-school-features-free-class-on-soa-security-standards-and-best-practices/</a>.</p>

<p>No related posts.</p>
<p>Related posts brought to you by <a href='http://mitcho.com/code/yarpp/'>Yet Another Related Posts Plugin</a>.</p>]]></content:encoded>
			<wfw:commentRss>http://mpathirage.com/free-class-on-soa-security-standards-and-best-practices/feed/</wfw:commentRss>
		</item>
		<item>
		<title>How To Fix Songbird 1.1.2 Crash At Start On Ubuntu 8.10</title>
		<link>http://mpathirage.com/how-to-fix-songbird-112-crash-at-start-on-ubuntu-810/</link>
		<comments>http://mpathirage.com/how-to-fix-songbird-112-crash-at-start-on-ubuntu-810/#comments</comments>
		<pubDate>Wed, 03 Jun 2009 04:16:17 +0000</pubDate>
		<dc:creator>Milinda</dc:creator>
		
		<category><![CDATA[linux]]></category>

		<category><![CDATA[linux tips]]></category>

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

		<guid isPermaLink="false">http://mpathirage.com/?p=617</guid>
		<description><![CDATA[When you try to start Songbird(in my case version 1.1.2) on Ubuntu 8.10 and if you have libvsual-0.4-plugins installed in you system it will pop-up you a crash reporting component saying that Songbird start-up failed. And if you start Songbird from the terminal you will see following lines has printed on the console.
*** glibc detected [...]


No related posts.

Related posts brought to you by <a href='http://mitcho.com/code/yarpp/'>Yet Another Related Posts Plugin</a>.]]></description>
			<content:encoded><![CDATA[<p>When you try to start Songbird(in my case version 1.1.2) on Ubuntu 8.10 and if you have libvsual-0.4-plugins installed in you system it will pop-up you a crash reporting component saying that Songbird start-up failed. And if you start Songbird from the terminal you will see following lines has printed on the console.</p>
<p><span style="color: rgb(153, 51, 0);">*** glibc detected *** ././songbird-bin: munmap_chunk(): invalid pointer: 0xb2d539e0 ***<br />
======= Backtrace: =========<br />
/lib/tls/i686/cmov/libc.so.6[0xb7d2b454]<br />
/usr/lib/libvisual-0.4.so.0(visual_mem_free+0x21)[0xb29e9141]<br />
/usr/lib/libvisual-0.4.so.0[0xb29e0407]<br />
/usr/lib/libvisual-0.4.so.0(visual_plugin_get_list+0x73)[0xb29e05e3]<br />
/usr/lib/libvisual-0.4.so.0(visual_init+0x291)[0xb29efec1]<br />
/usr/lib/gstreamer-0.10/libgstlibvisual.so[0xb2a8e1f4]<br />
/home/milinda/Programs/Songbird/lib/libgstreamer-0.10.so[0xb3a592f6]<br />
/home/milinda/Programs/Songbird/lib/libgstreamer-0.10.so(gst_plugin_load_file+0x62f)[0xb3a59bad]<br />
/home/milinda/Programs/Songbird/lib/libgstreamer-0.10.so[0xb3a64822]<br />
/home/milinda/Programs/Songbird/lib/libgstreamer-0.10.so(gst_registry_scan_path+0x135)[0xb3a649c7]<br />
/home/milinda/Programs/Songbird/lib/libgstreamer-0.10.so[0xb3a14a44]<br />
/home/milinda/Programs/Songbird/lib/libgstreamer-0.10.so[0xb3a14f30]<br />
/home/milinda/Programs/Songbird/lib/libgstreamer-0.10.so[0xb3a15589]<br />
/home/milinda/Programs/Songbird/lib/libgstreamer-0.10.so[0xb3a15b44]<br />
/usr/lib/libglib-2.0.so.0(g_option_context_parse+0x5b3)[0xb6b1d803]<br />
/home/milinda/Programs/Songbird/lib/libgstreamer-0.10.so(gst_init_check+0xf1)[0xb3a13d1b]<br />
.......</span></p>
<p>If you came across this problem what you have to do is remove<em><strong> libvisual-0.4-plugins</strong></em> package from your system. Some forums posts ask you to remove <em><strong>libvsual-0.4-0</strong></em>, but don't do it. It'll remove some&nbsp; other important programs in your Ubuntu system if remove libvisual. Make sure that you only remove<strong><em> libvisual-plugins</em></strong>.</p>
<p>&nbsp;</p>

<p>No related posts.</p>
<p>Related posts brought to you by <a href='http://mitcho.com/code/yarpp/'>Yet Another Related Posts Plugin</a>.</p>]]></content:encoded>
			<wfw:commentRss>http://mpathirage.com/how-to-fix-songbird-112-crash-at-start-on-ubuntu-810/feed/</wfw:commentRss>
		</item>
		<item>
		<title>Service Orchestration using WS-BPEL, Part 2: Orchestration Requirements and WS-BPEL</title>
		<link>http://mpathirage.com/service-orchestration-using-ws-bpel-part-2-orchestration-requirements-and-ws-bpel/</link>
		<comments>http://mpathirage.com/service-orchestration-using-ws-bpel-part-2-orchestration-requirements-and-ws-bpel/#comments</comments>
		<pubDate>Wed, 20 May 2009 06:03:25 +0000</pubDate>
		<dc:creator>Milinda</dc:creator>
		
		<category><![CDATA[SOA]]></category>

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

		<category><![CDATA[wso2 bps]]></category>

		<guid isPermaLink="false">http://mpathirage.com/?p=549</guid>
		<description><![CDATA[


No related posts.

Related posts brought to you by <a href='http://mitcho.com/code/yarpp/'>Yet Another Related Posts Plugin</a>.]]></description>
			<content:encoded><![CDATA[<p><style type="text/css"><!--
/**
 * GeSHi (C) 2004 - 2007 Nigel McNie, 2007 - 2008 Benny Baumann
 * (http://qbnz.com/highlighter/ and http://geshi.org/)
 */
.xml  {font-family:monospace;color: #006; border: 1px solid #d0d0d0; background-color: #f0f0f0;}
.xml a:link {color: #000060;}
.xml a:hover {background-color: #f0f000;}
.xml .imp {font-weight: bold; color: red;}
.xml .es0 {color: #000099; font-weight: bold;}
.xml .br0 {color: #66cc66;}
.xml .sy0 {color: #66cc66;}
.xml .st0 {color: #ff0000;}
.xml .nu0 {color: #cc66cc;}
.xml .sc-1 {color: #808080; font-style: italic;}
.xml .sc0 {color: #00bbdd;}
.xml .sc1 {color: #ddbb00;}
.xml .sc2 {color: #339933;}
.xml .sc3 {color: #009900;}
.xml .re0 {color: #000066;}
.xml .re1 {color: #000000; font-weight: bold;}
.xml .re2 {color: #000000; font-weight: bold;}
.xml span.xtra { display:block; }

--!></style></p>
<p>As I discussed in <a href="http://mpathirage.com/service-orchestration-using-ws-bpel-part-1-why-orchestration-needed-in-soa/">the first part</a> of this series of articles, BPEL will allow us to increase the flexibility, agility and efficiency of business process within an organization. Not only business processes, according to this paper(<a target="_blank" href="http://www.cs.ucl.ac.uk/staff/b.wassermann/publications/bpel.pdf">Grid Service Orchestration Using the Business Process Execution Language (BPEL)</a>) WS-BPEL can even be use with scientific workflows. The above paper describes how to orchestrate scientific workflows using WS-BPEL and reliability, performance and scalability that can be achieved by using BPEL to model scientific workflows.<br />
<br />
When studying the first example(Figure 1) provide in the WS-BPEL spec, we can see that there can be several types of execution of activities in real world business processes like, sequential executions, parallel executions, synchronizing concurrent activities, fault handling , event handling and etc. As described in the above paper there may be hundreds of parallel executions in scientific workflows written using WS-BPEL.<br />
&nbsp;<img width="500" height="400" src="http://mpathirage.com/wp-content/uploads/purchaseorder.png" title="Figure 1" alt="" /></p>
<p>So in real world applications orchestration modeling language must fulfil following requirements:</p>
<ul>
    <li>Model serial, parallel, conditional or other kinds of conditional flow dependency patterns</li>
    <li>interact with external services</li>
    <li>Exception handling, transactions and compensation handling</li>
    <li>Data manipulation</li>
    <li>Event handling</li>
</ul>
<p>WS-BPEL 2.0 which is the evolution of BPEL 1.1 provides following language constructs to handle above mentioned and other advanced requirements in service orchestrations.</p>
<p><strong>State of a BPEL Process</strong></p>
<p>During runtime BPEL business process use typed variables to hold the data that constitute the state of the process. The values contained in such variables can be of two sources: either they come from messages exchanged with a partner, or it is intermediate data that is private to the process.&nbsp; &nbsp;&nbsp;</p>
<div style="border: 1px solid rgb(208, 208, 208); font-family: monospace; color: rgb(0, 0, 102); background-color: rgb(240, 240, 240);" class="xml"><span class="sc3"><span class="re1">&lt;variables<span class="re2">&gt;</span></span></span><br />
&nbsp; &nbsp;<span class="sc3"><span class="re1">&lt;variable</span> <span class="re0">name</span>=<span class="st0">&quot;myVar1&quot;</span> <span class="re0">messageType</span>=<span class="st0">&quot;myNS:myWSDLMessageDataType&quot;</span> <span class="re2">/&gt;</span></span><br />
&nbsp; &nbsp;<span class="sc3"><span class="re1">&lt;variable</span> <span class="re0">name</span>=<span class="st0">&quot;myVar1&quot;</span> <span class="re0">element</span>=<span class="st0">&quot;myNS:myXMLElement&quot;</span> <span class="re2">/&gt;</span></span><br />
&nbsp; &nbsp;<span class="sc3"><span class="re1">&lt;variable</span> <span class="re0">name</span>=<span class="st0">&quot;myVar2&quot;</span> <span class="re0">type</span>=<span class="st0">&quot;xsd:string&quot;</span> <span class="re2">/&gt;</span></span><br />
&nbsp; &nbsp;<span class="sc3"><span class="re1">&lt;variable</span> <span class="re0">name</span>=<span class="st0">&quot;myVar2&quot;</span> <span class="re0">type</span>=<span class="st0">&quot;myNS:myComplexType&quot;</span> <span class="re2">/&gt;</span></span><br />
<span class="sc3"><span class="re1">&lt;/variables<span class="re2">&gt;</span></span></span></div>
<p>&nbsp;</p>
<p><strong>Providing and Consuming Web Services</strong></p>
<p>Receive activity, reply activity and invoke activity in BPEL allow exchanging message with external partners. Those simple activities can be used to consume messages from and providing messages to web service partners.</p>
<div class="xml" style="border: 1px solid rgb(208, 208, 208); font-family: monospace; color: rgb(0, 0, 102); background-color: rgb(240, 240, 240);"><span class="sc3"><span class="re1">&lt;receive</span> <span class="re0">name</span>=<span class="st0">&quot;ReceiveRequestFromPartner&quot;</span></span><br />
<span class="sc3"> &nbsp; <span class="re0">createInstance</span>=<span class="st0">&quot;yes&quot;</span></span><br />
<span class="sc3"> &nbsp; <span class="re0">partnerLink</span>=<span class="st0">&quot;ClientStartUpPLT&quot;</span></span><br />
<span class="sc3"> &nbsp; <span class="re0">operation</span>=<span class="st0">&quot;StartProcess&quot;</span> ... <span class="re2">/&gt;</span></span></div>
<p>&nbsp;</p>
<div style="border: 1px solid rgb(208, 208, 208); font-family: monospace; color: rgb(0, 0, 102); background-color: rgb(240, 240, 240);" class="xml"><span class="sc3"><span class="re1">&lt;reply</span> <span class="re0">name</span>=<span class="st0">&quot;ReplyResponseToPartner&quot;</span></span><br />
<span class="sc3"> &nbsp; <span class="re0">partnerLink</span>=<span class="st0">&quot;ClientStartUpPLT&quot;</span></span><br />
<span class="sc3"> &nbsp; <span class="re0">operation</span>=<span class="st0">&quot;StartProcess&quot;</span> ... <span class="re2">/&gt;</span></span></div>
<p>&nbsp;</p>
<div class="xml" style="border: 1px solid rgb(208, 208, 208); font-family: monospace; color: rgb(0, 0, 102); background-color: rgb(240, 240, 240);"><span class="sc3"><span class="re1">&lt;invoke</span> <span class="re0">name</span>=<span class="st0">&quot;InvokePartnerWebService&quot;</span></span><br />
<span class="sc3"> &nbsp; <span class="re0">partnerLink</span>=<span class="st0">&quot;BusinessPartnerServiceLink&quot;</span></span><br />
<span class="sc3"> &nbsp; <span class="re0">operation</span>=<span class="st0">&quot;partnerOperation&quot;</span> ... <span class="re2">/&gt;</span></span></div>
<p><strong>&nbsp;</strong></p>
<p><strong>Structuring Process Logic</strong></p>
<p>Every activity in a workflow must be structured in manner that reflect the real world scenario. So if we need to execute number of activities in sequential manner, we can use BPEL's sequence activity. On the other hand if-else activity allows you to select exactly one branch of the activity from a given set of choices. In BPEL you can use XPath expression to formulate your condition.</p>
<div class="xml" style="border: 1px solid rgb(208, 208, 208); font-family: monospace; color: rgb(0, 0, 102); background-color: rgb(240, 240, 240);"><span class="sc3"><span class="re1">&lt;sequence</span> <span class="re0">name</span>=<span class="st0">&quot;InvertMessageOrder&quot;</span><span class="re2">&gt;</span></span><br />
&nbsp; &nbsp;<span class="sc3"><span class="re1">&lt;receive</span> <span class="re0">name</span>=<span class="st0">&quot;receiveOrder&quot;</span> ... <span class="re2">/&gt;</span></span><br />
&nbsp; &nbsp;<span class="sc3"><span class="re1">&lt;invoke</span> <span class="re0">name</span>=<span class="st0">&quot;checkPayment&quot;</span> ... <span class="re2">/&gt;</span></span><br />
&nbsp; &nbsp;<span class="sc3"><span class="re1">&lt;invoke</span> <span class="re0">name</span>=<span class="st0">&quot;shippingService&quot;</span> ... <span class="re2">/&gt;</span></span><br />
&nbsp; &nbsp;<span class="sc3"><span class="re1">&lt;reply</span> <span class="re0">name</span>=<span class="st0">&quot;sendConfirmation&quot;</span> ... <span class="re2">/&gt;</span></span><br />
<span class="sc3"><span class="re1">&lt;/sequence<span class="re2">&gt;</span></span></span></div>
<p>&nbsp;</p>
<div style="border: 1px solid rgb(208, 208, 208); font-family: monospace; color: rgb(0, 0, 102); background-color: rgb(240, 240, 240);" class="xml"><span class="sc3"><span class="re1">&lt;if</span> <span class="re0">name</span>=<span class="st0">&quot;isOrderBiggerThan5000Dollars&quot;</span><span class="re2">&gt;</span></span><br />
&nbsp; &nbsp;<span class="sc3"><span class="re1">&lt;condition<span class="re2">&gt;</span></span></span><br />
&nbsp; &nbsp; &nbsp; $order &gt; 5000<br />
&nbsp; &nbsp;<span class="sc3"><span class="re1">&lt;/condition<span class="re2">&gt;</span></span></span><br />
&nbsp; &nbsp;<span class="sc3"><span class="re1">&lt;invoke</span> <span class="re0">name</span>=<span class="st0">&quot;calculateTenPercentDiscount&quot;</span> ... <span class="re2">/&gt;</span></span><br />
&nbsp; &nbsp;<span class="sc3"><span class="re1">&lt;elseif<span class="re2">&gt;</span></span></span><br />
&nbsp; &nbsp; &nbsp; <span class="sc3"><span class="re1">&lt;condition<span class="re2">&gt;</span></span></span><br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp;$order &gt; 2500<br />
&nbsp; &nbsp; &nbsp; <span class="sc3"><span class="re1">&lt;/condition<span class="re2">&gt;</span></span></span><br />
&nbsp; &nbsp; &nbsp; <span class="sc3"><span class="re1">&lt;invok</span> e <span class="re0">name</span>=<span class="st0">&quot;calculateFivePercentDiscount&quot;</span> ... <span class="re2">/&gt;</span></span><br />
&nbsp; <span class="sc3"><span class="re1">&lt;/elseif<span class="re2">&gt;</span></span></span><br />
&nbsp; &nbsp; &nbsp; <span class="sc3"><span class="re1">&lt;reply</span> <span class="re0">name</span>=<span class="st0">&quot;sendNoDiscountInformation&quot;</span> ... <span class="re2">/&gt;</span></span><br />
&nbsp; &nbsp;<span class="sc3"><span class="re1">&lt;/else<span class="re2">&gt;</span></span></span><br />
<span class="sc3"><span class="re1">&lt;/if<span class="re2">&gt;</span></span></span></div>
<p>&nbsp;</p>
<p><strong>Repetitive Activities</strong><br />
<br />
If you need to execute business logic repeatedly in your BPEL you can use one from activities like while, repeatUntil or forEach. There are two variants of forEach: sequential and parallel. According to your requirements you can use parallel option to execute business logic inside forEach block parallely. For this executions must be independent from each other.</p>
<div class="xml" style="font-family:monospace;color: #006; border: 1px solid #d0d0d0; background-color: #f0f0f0;"><span class="sc3"><span class="re1">&lt;while<span class="re2">&gt;</span></span></span><br />
&nbsp; &nbsp;<span class="sc3"><span class="re1">&lt;condition<span class="re2">&gt;</span></span></span><br />
&nbsp; &nbsp; &nbsp; $iterations &gt; 3<br />
&nbsp; &nbsp;<span class="sc3"><span class="re1">&lt;/condition<span class="re2">&gt;</span></span></span><br />
&nbsp; &nbsp;<span class="sc3"><span class="re1">&lt;invoke</span> <span class="re0">name</span>=<span class="st0">&quot;increaseIterationCounter&quot;</span> ... <span class="re2">/&gt;</span></span><br />
<span class="sc3"><span class="re1">&lt;/while<span class="re2">&gt;</span></span></span></div><br/>
<div class="xml" style="font-family:monospace;color: #006; border: 1px solid #d0d0d0; background-color: #f0f0f0;"><span class="sc3"><span class="re1">&lt;repeatUntil<span class="re2">&gt;</span></span></span><br />
&nbsp; &nbsp;<span class="sc3"><span class="re1">&lt;invoke</span> <span class="re0">name</span>=<span class="st0">&quot;increaseIterationCounter&quot;</span> ... <span class="re2">/&gt;</span></span><br />
&nbsp; &nbsp;<span class="sc3"><span class="re1">&lt;condition<span class="re2">&gt;</span></span></span><br />
&nbsp; &nbsp; &nbsp; $iterations &gt; 3<br />
&nbsp; &nbsp;<span class="sc3"><span class="re1">&lt;/condition<span class="re2">&gt;</span></span></span><br />
<span class="sc3"><span class="re1">&lt;/repeatUntil<span class="re2">&gt;</span></span></span></div><br/>
<div class="xml" style="font-family:monospace;color: #006; border: 1px solid #d0d0d0; background-color: #f0f0f0;"><span class="sc3"><span class="re1">&lt;forEach</span> <span class="re0">parallel</span>=<span class="st0">&quot;no&quot;</span> <span class="re0">counterName</span>=<span class="st0">&quot;N&quot;</span> ...<span class="re2">&gt;</span></span><br />
&nbsp; &nbsp;<span class="sc3"><span class="re1">&lt;startCounterValue<span class="re2">&gt;</span></span></span>1<span class="sc3"><span class="re1">&lt;/startCounterValue<span class="re2">&gt;</span></span></span><br />
&nbsp; &nbsp;<span class="sc3"><span class="re1">&lt;finalCounterValue<span class="re2">&gt;</span></span></span>5<span class="sc3"><span class="re1">&lt;/finalCounterValue<span class="re2">&gt;</span></span></span><br />
&nbsp; &nbsp;<span class="sc3"><span class="re1">&lt;scope<span class="re2">&gt;</span></span></span><br />
&nbsp; &nbsp; &nbsp; <span class="sc3"><span class="re1">&lt;documentation<span class="re2">&gt;</span></span></span>check availability of each item ordered<span class="sc3"><span class="re1">&lt;/documentation<span class="re2">&gt;</span></span></span><br />
&nbsp; &nbsp; &nbsp; <span class="sc3"><span class="re1">&lt;invoke</span> <span class="re0">name</span>=<span class="st0">&quot;checkAvailability&quot;</span> ... <span class="re2">/&gt;</span></span><br />
&nbsp; &nbsp;<span class="sc3"><span class="re1">&lt;/scope<span class="re2">&gt;</span></span></span><br />
<span class="sc3"><span class="re1">&lt;/forEeach<span class="re2">&gt;</span></span></span></div>

<p>No related posts.</p>
<p>Related posts brought to you by <a href='http://mitcho.com/code/yarpp/'>Yet Another Related Posts Plugin</a>.</p>]]></content:encoded>
			<wfw:commentRss>http://mpathirage.com/service-orchestration-using-ws-bpel-part-2-orchestration-requirements-and-ws-bpel/feed/</wfw:commentRss>
		</item>
		<item>
		<title>If You Are A Good Software Developer</title>
		<link>http://mpathirage.com/if-you-are-a-good-software-developer/</link>
		<comments>http://mpathirage.com/if-you-are-a-good-software-developer/#comments</comments>
		<pubDate>Tue, 19 May 2009 17:26:16 +0000</pubDate>
		<dc:creator>Milinda</dc:creator>
		
		<category><![CDATA[programming]]></category>

		<guid isPermaLink="false">http://mpathirage.com/?p=606</guid>
		<description><![CDATA[As discussed in&#160; post &#34;The average Software Developer versus the good Software&#160;Developer&#34;by Alberto Gutierrez, there are few symptoms of beign a good software developer:

    You are passionate about programming.
    Others consider you a good Software Developer.
    You want to become a better Software Developer.
   [...]


No related posts.

Related posts brought to you by <a href='http://mitcho.com/code/yarpp/'>Yet Another Related Posts Plugin</a>.]]></description>
			<content:encoded><![CDATA[<p>As discussed in&nbsp; post &quot;<a rel="bookmark" href="http://makinggoodsoftware.com/2009/05/19/the-average-programmer/">The average Software Developer versus the good Software&nbsp;Developer</a>&quot;by Alberto Gutierrez, there are few symptoms of beign a good software developer:</p>
<ul>
    <li>You are passionate about programming.</li>
    <li>Others consider you a good Software Developer.</li>
    <li>You want to become a better Software Developer.</li>
    <li>Your main motivation for being a good Software Developer is not money.</li>
</ul>
<p>If you are a software developer, It's good to check whether you have these symptoms.</p>

<p>No related posts.</p>
<p>Related posts brought to you by <a href='http://mitcho.com/code/yarpp/'>Yet Another Related Posts Plugin</a>.</p>]]></content:encoded>
			<wfw:commentRss>http://mpathirage.com/if-you-are-a-good-software-developer/feed/</wfw:commentRss>
		</item>
		<item>
		<title>Creating Good Code Every Day</title>
		<link>http://mpathirage.com/creating-good-code-every-day/</link>
		<comments>http://mpathirage.com/creating-good-code-every-day/#comments</comments>
		<pubDate>Sun, 17 May 2009 17:16:55 +0000</pubDate>
		<dc:creator>Milinda</dc:creator>
		
		<category><![CDATA[programming]]></category>

		<guid isPermaLink="false">http://mpathirage.com/?p=604</guid>
		<description><![CDATA[Every programmers dream is to create better code every day. Here are some tips from Making Good Software blog which will help you to create good code every day.

    Have your own to do list for the day.
    Do one thing at a time
    Do it [...]


No related posts.

Related posts brought to you by <a href='http://mitcho.com/code/yarpp/'>Yet Another Related Posts Plugin</a>.]]></description>
			<content:encoded><![CDATA[<p>Every programmers dream is to create better code every day. Here are some tips from <a href="http://makinggoodsoftware.com/">Making Good Software</a> blog which will help you to create good code every day.</p>
<ol>
    <li>Have your own to do list for the day.</li>
    <li>Do one thing at a time</li>
    <li>Do it right</li>
    <li>Don't finish some thing until it's completely done</li>
    <li>Better late than sorry BUT better sorry than never</li>
</ol>
<p><a href="http://makinggoodsoftware.com/2009/05/15/5-tips-for-creating-good-code-every-day-how-to-become-a-good-software-developer/" target="_blank">Read more....</a></p>

<p>No related posts.</p>
<p>Related posts brought to you by <a href='http://mitcho.com/code/yarpp/'>Yet Another Related Posts Plugin</a>.</p>]]></content:encoded>
			<wfw:commentRss>http://mpathirage.com/creating-good-code-every-day/feed/</wfw:commentRss>
		</item>
		<item>
		<title>Commander in Chief Paid Tribute to His Motherland</title>
		<link>http://mpathirage.com/commander-in-chief-paid-tribute-to-his-motherland/</link>
		<comments>http://mpathirage.com/commander-in-chief-paid-tribute-to-his-motherland/#comments</comments>
		<pubDate>Sun, 17 May 2009 16:55:40 +0000</pubDate>
		<dc:creator>Milinda</dc:creator>
		
		<category><![CDATA[Sri Lanka]]></category>

		<guid isPermaLink="false">http://mpathirage.com/?p=602</guid>
		<description><![CDATA[Before stepping on the Sri Lankan soil, His Excellency Mahinda Rajapaksa, President of Sri  		Lanka and Commander in Chief of the Armed Forces paid  		tribute to his motherland by placing his forehead on the ground and  		worshiping the land he has liberated from terrorism.

Via defence.lk

No related posts.
Related posts brought to you by [...]


No related posts.

Related posts brought to you by <a href='http://mitcho.com/code/yarpp/'>Yet Another Related Posts Plugin</a>.]]></description>
			<content:encoded><![CDATA[<p>Before stepping on the Sri Lankan soil, His Excellency Mahinda Rajapaksa, President of Sri  		Lanka and Commander in Chief of the Armed Forces paid  		tribute to his motherland by placing his forehead on the ground and  		worshiping the land he has liberated from terrorism.</p>
<p><img width="400" height="692" src="http://mpathirage.com/wp-content/uploads/20090517_Presi.gif" alt="" /></p>
<p>Via <a href="http://defence.lk/new.asp?fname=20090517_01">defence.lk</a></p>

<p>No related posts.</p>
<p>Related posts brought to you by <a href='http://mitcho.com/code/yarpp/'>Yet Another Related Posts Plugin</a>.</p>]]></content:encoded>
			<wfw:commentRss>http://mpathirage.com/commander-in-chief-paid-tribute-to-his-motherland/feed/</wfw:commentRss>
		</item>
		<item>
		<title>Sri Lanka: A country free of terrorism</title>
		<link>http://mpathirage.com/sri-lanka-a-country-free-of-terrorism/</link>
		<comments>http://mpathirage.com/sri-lanka-a-country-free-of-terrorism/#comments</comments>
		<pubDate>Sun, 17 May 2009 16:49:41 +0000</pubDate>
		<dc:creator>Milinda</dc:creator>
		
		<category><![CDATA[Uncategorized]]></category>

		<guid isPermaLink="false">http://mpathirage.com/?p=599</guid>
		<description><![CDATA[Ending 30 years of war, Sri Lanka's tamil tiger terrorists lay down their arms today. We as Sri Lankans dreamed about this day for a long time. Finally our war heroes defeated tamil tigers and rescued thousands of people from terrorists. This is known an world's largest rescue operation carried out by an army.


No related [...]


No related posts.

Related posts brought to you by <a href='http://mitcho.com/code/yarpp/'>Yet Another Related Posts Plugin</a>.]]></description>
			<content:encoded><![CDATA[<p>Ending 30 years of war, Sri Lanka's tamil tiger terrorists lay down their arms today. We as Sri Lankans dreamed about this day for a long time. Finally our war heroes defeated tamil tigers and rescued thousands of people from terrorists. This is known an world's largest rescue operation carried out by an army.</p>
<p><img width="500" height="334" alt="" src="http://mpathirage.com/wp-content/uploads/20090516_b7.jpg" /></p>

<p>No related posts.</p>
<p>Related posts brought to you by <a href='http://mitcho.com/code/yarpp/'>Yet Another Related Posts Plugin</a>.</p>]]></content:encoded>
			<wfw:commentRss>http://mpathirage.com/sri-lanka-a-country-free-of-terrorism/feed/</wfw:commentRss>
		</item>
		<item>
		<title>Javascript is like jazz</title>
		<link>http://mpathirage.com/javascript-is-like-jazz/</link>
		<comments>http://mpathirage.com/javascript-is-like-jazz/#comments</comments>
		<pubDate>Fri, 15 May 2009 12:44:07 +0000</pubDate>
		<dc:creator>Milinda</dc:creator>
		
		<category><![CDATA[JavaScript]]></category>

		<guid isPermaLink="false">http://mpathirage.com/?p=595</guid>
		<description><![CDATA[Javascript is like impressionistic and avant-garde art, like jazz.&#160; It flows, it molds, it changes, like a dream.&#160; Java is like renaissance art, like classical music.&#160; Its beauty is in its form and structure, but it constrains your ability to express and invent - you have to follow the forms given to you.

Via http://davidvancouvering.blogspot.com.

No related [...]


No related posts.

Related posts brought to you by <a href='http://mitcho.com/code/yarpp/'>Yet Another Related Posts Plugin</a>.]]></description>
			<content:encoded><![CDATA[<blockquote>
<p>Javascript is like impressionistic and avant-garde art, like jazz.&nbsp; It flows, it molds, it changes, like a dream.&nbsp; Java is like renaissance art, like classical music.&nbsp; Its beauty is in its form and structure, but it constrains your ability to express and invent - you have to follow the forms given to you.</p>
</blockquote>
<p>Via <a target="_blank" href="http://davidvancouvering.blogspot.com/2009/05/java-is-like-classical-javascript-is.html">http://davidvancouvering.blogspot.com</a>.</p>

<p>No related posts.</p>
<p>Related posts brought to you by <a href='http://mitcho.com/code/yarpp/'>Yet Another Related Posts Plugin</a>.</p>]]></content:encoded>
			<wfw:commentRss>http://mpathirage.com/javascript-is-like-jazz/feed/</wfw:commentRss>
		</item>
		<item>
		<title>Flash Demo: What is the WSO2 Enterprise Service Bus</title>
		<link>http://mpathirage.com/flash-demo-what-is-the-wso2-enterprise-service-bus/</link>
		<comments>http://mpathirage.com/flash-demo-what-is-the-wso2-enterprise-service-bus/#comments</comments>
		<pubDate>Sun, 03 May 2009 03:57:49 +0000</pubDate>
		<dc:creator>Milinda</dc:creator>
		
		<category><![CDATA[SOA]]></category>

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

		<category><![CDATA[wso2-esb]]></category>

		<guid isPermaLink="false">http://mpathirage.com/?p=585</guid>
		<description><![CDATA[In today's SOA enabled&#160; enterprises ESB is used to connect, manage and and transform service interactions between Web services and legacy systems.
With WSO2 ESB,

    you can implement &#34;Virtual services&#34; which provides location transparency
    you do transport and protocol switching 
    you can provide secure interface to [...]


No related posts.

Related posts brought to you by <a href='http://mitcho.com/code/yarpp/'>Yet Another Related Posts Plugin</a>.]]></description>
			<content:encoded><![CDATA[<p>In today's SOA enabled&nbsp; enterprises ESB is used to connect, manage and and transform service interactions between Web services and legacy systems.</p>
<p>With WSO2 ESB,</p>
<ul>
    <li>you can implement &quot;Virtual services&quot; which provides location transparency</li>
    <li>you do transport and protocol switching </li>
    <li>you can provide secure interface to client for a non-secure service</li>
    <li>you can create scheduled tasks with mediation capabilities</li>
    <li>you can use already available enterprise integration patterns</li>
    <li>you can use industry standard protocols such as FIX and Hessian Binary Web Services protocol</li>
    <li>you can implement event brokers</li>
</ul>
<p>WSO2 ESB&nbsp;is powered by Apache Synapse and built on top of OSGI-based modular core which allows you to customize your ESB by adding features like service orchestration. </p>
<p>For more info watch flash demo at <a target="_blank" href="http://wso2.org/library/demonstrations/flash-demo-wso2-enterprise-service-bus-wso2-esb">http://wso2.org/library/demonstrations/flash-demo-wso2-enterprise-service-bus-wso2-esb</a>.</p>

<p>No related posts.</p>
<p>Related posts brought to you by <a href='http://mitcho.com/code/yarpp/'>Yet Another Related Posts Plugin</a>.</p>]]></content:encoded>
			<wfw:commentRss>http://mpathirage.com/flash-demo-what-is-the-wso2-enterprise-service-bus/feed/</wfw:commentRss>
		</item>
		<item>
		<title>Good Programmer</title>
		<link>http://mpathirage.com/good-programmer/</link>
		<comments>http://mpathirage.com/good-programmer/#comments</comments>
		<pubDate>Thu, 30 Apr 2009 11:26:08 +0000</pubDate>
		<dc:creator>Milinda</dc:creator>
		
		<category><![CDATA[programming]]></category>

		<guid isPermaLink="false">http://mpathirage.com/?p=582</guid>
		<description><![CDATA[A good programmer understands that that they have to continue to learn and grow. They strive to do their best at every effort, admit to failures and learn from them.
They are extraordinarily communicative. Not only are they able to explain complex technical terms to a layperson, but they go out of their way to act [...]


No related posts.

Related posts brought to you by <a href='http://mitcho.com/code/yarpp/'>Yet Another Related Posts Plugin</a>.]]></description>
			<content:encoded><![CDATA[<div class="post-text"><blockquote>
<p>A good programmer understands that that they have to continue to learn and grow. They strive to do their best at every effort, admit to failures and learn from them.</p>
<p>They are extraordinarily communicative. Not only are they able to explain complex technical terms to a layperson, but they go out of their way to act as devil&rsquo;s advocate to their own idea to make sure they&rsquo;re giving the best options to their client.</p>
<p>The best programmers know and accept that there is more than one way to do things, that not every problem is a nail, and that because there is always a better way to do something than how they were planning on they constantly seek to learn new techniques, technologies, and understanding.</p>
<p>A good programmer loves to program, and would do so in their spare time even if they already spend 80+ hours a week programming.</p>
<p>A good programmer knows that she/he is not a great programmer. Truly great programmers do not exist, there are only those who claim to be great, and those who know they are not great.</p>
<p>-Adam</p>
</blockquote>
</div>
<p>Via <a target="_blank" href="http://www.coderfriendly.com/2009/04/29/are-you-a-competent-developer/">Coder-Friendly</a></p>

<p>No related posts.</p>
<p>Related posts brought to you by <a href='http://mitcho.com/code/yarpp/'>Yet Another Related Posts Plugin</a>.</p>]]></content:encoded>
			<wfw:commentRss>http://mpathirage.com/good-programmer/feed/</wfw:commentRss>
		</item>
	</channel>
</rss>

<!-- Dynamic page generated in 0.533 seconds. -->
<!-- Cached page generated by WP-Super-Cache on 2010-02-09 10:26:56 -->
