<?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>Ideyatech - where ideas and technologies meet</title>
	<atom:link href="http://www.ideyatech.com/feed/" rel="self" type="application/rss+xml" />
	<link>http://www.ideyatech.com</link>
	<description>Java software development outsourcing in Manila, Philippines</description>
	<pubDate>Tue, 23 Feb 2010 10:33:22 +0000</pubDate>
	<generator>http://wordpress.org/?v=2.5.1</generator>
	<language>en</language>
			<item>
		<title>Dashboards: How to make it effective</title>
		<link>http://www.ideyatech.com/2010/02/dashboards-how-to-make-it-effective/</link>
		<comments>http://www.ideyatech.com/2010/02/dashboards-how-to-make-it-effective/#comments</comments>
		<pubDate>Mon, 22 Feb 2010 22:33:30 +0000</pubDate>
		<dc:creator>Allan Tan</dc:creator>
		
		<category><![CDATA[Website Design]]></category>

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

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

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

		<category><![CDATA[executive view]]></category>

		<guid isPermaLink="false">http://www.ideyatech.com/?p=259</guid>
		<description><![CDATA[<img class="alignleft" src="http://www.ideyatech.com/wp-content/uploads/thumbs/dashboard.png" alt="Dashboards: How to make it effective" title="Dashboards: How to make it effective" />

We’ve seen effective use of dashboards with various applications. Dashboard shows the summary of the entire system operations in just one page. In addition, they make your application look cool and more interactive with use of graphs and charts. So now its your turn to create a dashboard for your killer app, here are some tips to make it more effective.]]></description>
			<content:encoded><![CDATA[<div class="tweetmeme_button" style="float: left; margin: 0.25em 1.5em 1em 0;"><a href="http://api.tweetmeme.com/share?url=http%3A%2F%2Fwww.ideyatech.com%2F2010%2F02%2Fdashboards-how-to-make-it-effective%2F"><img src="http://api.tweetmeme.com/imagebutton.gif?url=http%3A%2F%2Fwww.ideyatech.com%2F2010%2F02%2Fdashboards-how-to-make-it-effective%2F" height="61" width="51" /></a></div><p>We’ve seen effective use of dashboards with various applications. Dashboard shows the summary of the entire system operations in just one page. In addition, they make your application look cool and more interactive with use of graphs and charts.</p>
<p><img class="aligncenter" alt="Dashboards: How to make it effective " src="http://www.ideyatech.com/wp-content/uploads/2010/02/dashboard.png" title="Dashboards: How to make it effective"/></p>
<p>So now its your turn to create a dashboard for your killer app, here are some tips to make dashboards more effective:</p>
<p><strong>Do’s:</strong></p>
<ul>
<li><span> Show only relevant information for the user. Dashboards should be customized specific to the user.</span></li>
<li><span> Highlight priority and overdue tasks. Use colors to represent the importance and urgency. For example, red is commonly associated with “High” priority while gray is to “Low”.</span></li>
<li><span> Use graphical representation (i.e. bar graph, pie charts) as summary statistics. Display a pie chart to show breakdown by category or bar graph to display performance.</span></li>
<li><span> Do consider use of cache. Dashboards are heavy on database queries. So, applying caching techniques would reduce performance hits. For example, if your dashboard is showing total number of issues reported yesterday, there is no point of executing the query every time the dashboard page is loaded.</span></li>
</ul>
<p><span><strong>Dont’s:</strong></span></p>
<ul>
<li><span> Do not prompt for action. Avoid asking user to do a task on the dashboard. While it may seem appealing to the user, it actually distracts the user from looking at the overall picture. If really unavoidable, try to show the summary first and prompt for action only after clicking on “Show Details” button.</span></li>
<li><span> Do not list down records one by one. Considering displaying only “Last 10 Messages” instead of “All Unread Messages”. Otherwise, your dashboard will bombarded with long lists of stale data. Alternatively, display only the count of all the records (e.g. You have 56 unread messages).</span></li>
<li><span> Don’t overdo it. Remember that dashboard are heavy on database query so display only important and relevant data.</span></li>
</ul>
]]></content:encoded>
			<wfw:commentRss>http://www.ideyatech.com/2010/02/dashboards-how-to-make-it-effective/feed/</wfw:commentRss>
		</item>
		<item>
		<title>Christmas Party 2009</title>
		<link>http://www.ideyatech.com/2009/12/christmas-party-2009/</link>
		<comments>http://www.ideyatech.com/2009/12/christmas-party-2009/#comments</comments>
		<pubDate>Mon, 28 Dec 2009 11:25:10 +0000</pubDate>
		<dc:creator>Kervi Cioco</dc:creator>
		
		<category><![CDATA[Corporate News and Events]]></category>

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

		<category><![CDATA[christmas party]]></category>

		<guid isPermaLink="false">http://www.ideyatech.com/?p=257</guid>
		<description><![CDATA[<img class="alignleft" src="http://www.ideyatech.com/wp-content/uploads/thumbs/xmas-party-09.png" alt="Christmas Party 2009" title="Christmas Party 2009" />

December 11, 2009 marks the day that we held our company Christmas Party. This year, the annual festivity was celebrated unlike any other as we hit it — Luau style! The most amazing buffet meal, raffle goodies, party games, employee performances — all in pictures and a whole lot more after the jump! HAPPY HOLIDAYS!!]]></description>
			<content:encoded><![CDATA[<div class="tweetmeme_button" style="float: left; margin: 0.25em 1.5em 1em 0;"><a href="http://api.tweetmeme.com/share?url=http%3A%2F%2Fwww.ideyatech.com%2F2009%2F12%2Fchristmas-party-2009%2F"><img src="http://api.tweetmeme.com/imagebutton.gif?url=http%3A%2F%2Fwww.ideyatech.com%2F2009%2F12%2Fchristmas-party-2009%2F" height="61" width="51" /></a></div><p>December 11, 2009 marks the day that we held our company Christmas Party. This year, the annual festivity was celebrated unlike any other as we hit it — Luau style!</p>
<p>The night started with a <span style="text-decoration: line-through;">little feast</span> actually make that the most amazing buffet meal we had for the said occasion. It was such a hit!</p>
<p>Then the program began and it has not been more exciting than ever. It was filled with a lot of blutterbungs which include ginormous set of raffle goodies, exalting party games and of course, the very animated employee performances!</p>
<p>Here are some of the out takes:</p>
<div class="gallery">
<dl class="gallery-item">
<dt class="gallery-icon"> <a title="Christmas Party 2009" href="http://www.ideyatech.com/wp-content/uploads/2009/12/xmas09/fullsize/xmas09-01.jpg"><img class="attachment-thumbnail" src="http://www.ideyatech.com/wp-content/uploads/2009/12/xmas09/thumbnail/xmas09-01.jpg" alt="Christmas Party 2009" width="150" height="101" /></a> </dt>
</dl>
<dl class="gallery-item">
<dt class="gallery-icon"> <a title="Christmas Party 2009" href="http://www.ideyatech.com/wp-content/uploads/2009/12/xmas09/fullsize/xmas09-02.jpg"><img class="attachment-thumbnail" src="http://www.ideyatech.com/wp-content/uploads/2009/12/xmas09/thumbnail/xmas09-02.jpg" alt="Christmas Party 2009" width="150" height="101" /></a> </dt>
</dl>
<dl class="gallery-item">
<dt class="gallery-icon"> <a title="Christmas Party 2009" href="http://www.ideyatech.com/wp-content/uploads/2009/12/xmas09/fullsize/xmas09-03.jpg"><img class="attachment-thumbnail" src="http://www.ideyatech.com/wp-content/uploads/2009/12/xmas09/thumbnail/xmas09-03.jpg" alt="Christmas Party 2009" width="150" height="101" /></a> </dt>
</dl>
<dl class="gallery-item">
<dt class="gallery-icon"> <a title="Christmas Party 2009" href="http://www.ideyatech.com/wp-content/uploads/2009/12/xmas09/fullsize/xmas09-04.jpg"><img class="attachment-thumbnail" src="http://www.ideyatech.com/wp-content/uploads/2009/12/xmas09/thumbnail/xmas09-04.jpg" alt="Christmas Party 2009" width="150" height="101" /></a> </dt>
</dl>
<dl class="gallery-item">
<dt class="gallery-icon"> <a title="Christmas Party 2009" href="http://www.ideyatech.com/wp-content/uploads/2009/12/xmas09/fullsize/xmas09-05.jpg"><img class="attachment-thumbnail" src="http://www.ideyatech.com/wp-content/uploads/2009/12/xmas09/thumbnail/xmas09-05.jpg" alt="Christmas Party 2009" width="150" height="101" /></a> </dt>
</dl>
<dl class="gallery-item">
<dt class="gallery-icon"> <a title="Christmas Party 2009" href="http://www.ideyatech.com/wp-content/uploads/2009/12/xmas09/fullsize/xmas09-06.jpg"><img class="attachment-thumbnail" src="http://www.ideyatech.com/wp-content/uploads/2009/12/xmas09/thumbnail/xmas09-06.jpg" alt="Christmas Party 2009" width="150" height="101" /></a> </dt>
</dl>
<dl class="gallery-item">
<dt class="gallery-icon"> <a title="Christmas Party 2009" href="http://www.ideyatech.com/wp-content/uploads/2009/12/xmas09/fullsize/xmas09-07.jpg"><img class="attachment-thumbnail" src="http://www.ideyatech.com/wp-content/uploads/2009/12/xmas09/thumbnail/xmas09-07.jpg" alt="Christmas Party 2009" width="150" height="101" /></a> </dt>
</dl>
<dl class="gallery-item">
<dt class="gallery-icon"> <a title="Christmas Party 2009" href="http://www.ideyatech.com/wp-content/uploads/2009/12/xmas09/fullsize/xmas09-08.jpg"><img class="attachment-thumbnail" src="http://www.ideyatech.com/wp-content/uploads/2009/12/xmas09/thumbnail/xmas09-08.jpg" alt="Christmas Party 2009" width="150" height="101" /></a> </dt>
</dl>
<dl class="gallery-item">
<dt class="gallery-icon"> <a title="Christmas Party 2009" href="http://www.ideyatech.com/wp-content/uploads/2009/12/xmas09/fullsize/xmas09-09.jpg"><img class="attachment-thumbnail" src="http://www.ideyatech.com/wp-content/uploads/2009/12/xmas09/thumbnail/xmas09-09.jpg" alt="Christmas Party 2009" width="150" height="101" /></a> </dt>
</dl>
<dl class="gallery-item">
<dt class="gallery-icon"> <a title="Christmas Party 2009" href="http://www.ideyatech.com/wp-content/uploads/2009/12/xmas09/fullsize/xmas09-10.jpg"><img class="attachment-thumbnail" src="http://www.ideyatech.com/wp-content/uploads/2009/12/xmas09/thumbnail/xmas09-10.jpg" alt="Christmas Party 2009" width="150" height="101" /></a> </dt>
</dl>
<dl class="gallery-item">
<dt class="gallery-icon"> <a title="Christmas Party 2009" href="http://www.ideyatech.com/wp-content/uploads/2009/12/xmas09/fullsize/xmas09-11.jpg"><img class="attachment-thumbnail" src="http://www.ideyatech.com/wp-content/uploads/2009/12/xmas09/thumbnail/xmas09-11.jpg" alt="Christmas Party 2009" width="150" height="101" /></a> </dt>
</dl>
<dl class="gallery-item">
<dt class="gallery-icon"> <a title="Christmas Party 2009" href="http://www.ideyatech.com/wp-content/uploads/2009/12/xmas09/fullsize/xmas09-12.jpg"><img class="attachment-thumbnail" src="http://www.ideyatech.com/wp-content/uploads/2009/12/xmas09/thumbnail/xmas09-12.jpg" alt="Christmas Party 2009" width="150" height="101" /></a> </dt>
</dl>
<dl class="gallery-item">
<dt class="gallery-icon"> <a title="Christmas Party 2009" href="http://www.ideyatech.com/wp-content/uploads/2009/12/xmas09/fullsize/xmas09-13.jpg"><img class="attachment-thumbnail" src="http://www.ideyatech.com/wp-content/uploads/2009/12/xmas09/thumbnail/xmas09-13.jpg" alt="Christmas Party 2009" width="150" height="101" /></a> </dt>
</dl>
<dl class="gallery-item">
<dt class="gallery-icon"> <a title="Christmas Party 2009" href="http://www.ideyatech.com/wp-content/uploads/2009/12/xmas09/fullsize/xmas09-14.jpg"><img class="attachment-thumbnail" src="http://www.ideyatech.com/wp-content/uploads/2009/12/xmas09/thumbnail/xmas09-14.jpg" alt="Christmas Party 2009" width="150" height="101" /></a> </dt>
</dl>
<dl class="gallery-item">
<dt class="gallery-icon"> <a title="Christmas Party 2009" href="http://www.ideyatech.com/wp-content/uploads/2009/12/xmas09/fullsize/xmas09-15.jpg"><img class="attachment-thumbnail" src="http://www.ideyatech.com/wp-content/uploads/2009/12/xmas09/thumbnail/xmas09-15.jpg" alt="Christmas Party 2009" width="150" height="101" /></a> </dt>
</dl>
<dl class="gallery-item">
<dt class="gallery-icon"> <a title="Christmas Party 2009" href="http://www.ideyatech.com/wp-content/uploads/2009/12/xmas09/fullsize/xmas09-16.jpg"><img class="attachment-thumbnail" src="http://www.ideyatech.com/wp-content/uploads/2009/12/xmas09/thumbnail/xmas09-16.jpg" alt="Christmas Party 2009" width="150" height="101" /></a> </dt>
</dl>
<dl class="gallery-item">
<dt class="gallery-icon"> <a title="Christmas Party 2009" href="http://www.ideyatech.com/wp-content/uploads/2009/12/xmas09/fullsize/xmas09-17.jpg"><img class="attachment-thumbnail" src="http://www.ideyatech.com/wp-content/uploads/2009/12/xmas09/thumbnail/xmas09-17.jpg" alt="Christmas Party 2009" width="150" height="101" /></a> </dt>
</dl>
<dl class="gallery-item">
<dt class="gallery-icon"> <a title="Christmas Party 2009" href="http://www.ideyatech.com/wp-content/uploads/2009/12/xmas09/fullsize/xmas09-18.jpg"><img class="attachment-thumbnail" src="http://www.ideyatech.com/wp-content/uploads/2009/12/xmas09/thumbnail/xmas09-18.jpg" alt="Christmas Party 2009" width="150" height="101" /></a> </dt>
</dl>
<dl class="gallery-item">
<dt class="gallery-icon"> <a title="Christmas Party 2009" href="http://www.ideyatech.com/wp-content/uploads/2009/12/xmas09/fullsize/xmas09-19.jpg"><img class="attachment-thumbnail" src="http://www.ideyatech.com/wp-content/uploads/2009/12/xmas09/thumbnail/xmas09-19.jpg" alt="Christmas Party 2009" width="150" height="101" /></a> </dt>
</dl>
<dl class="gallery-item">
<dt class="gallery-icon"> <a title="Christmas Party 2009" href="http://www.ideyatech.com/wp-content/uploads/2009/12/xmas09/fullsize/xmas09-20.jpg"><img class="attachment-thumbnail" src="http://www.ideyatech.com/wp-content/uploads/2009/12/xmas09/thumbnail/xmas09-20.jpg" alt="Christmas Party 2009" width="150" height="101" /></a> </dt>
</dl>
<dl class="gallery-item">
<dt class="gallery-icon"> <a title="Christmas Party 2009" href="http://www.ideyatech.com/wp-content/uploads/2009/12/xmas09/fullsize/xmas09-21.jpg"><img class="attachment-thumbnail" src="http://www.ideyatech.com/wp-content/uploads/2009/12/xmas09/thumbnail/xmas09-21.jpg" alt="Christmas Party 2009" width="150" height="101" /></a> </dt>
</dl>
<dl class="gallery-item">
<dt class="gallery-icon"> <a title="Christmas Party 2009" href="http://www.ideyatech.com/wp-content/uploads/2009/12/xmas09/fullsize/xmas09-22.jpg"><img class="attachment-thumbnail" src="http://www.ideyatech.com/wp-content/uploads/2009/12/xmas09/thumbnail/xmas09-22.jpg" alt="Christmas Party 2009" width="150" height="101" /></a> </dt>
</dl>
<dl class="gallery-item">
<dt class="gallery-icon"> <a title="Christmas Party 2009" href="http://www.ideyatech.com/wp-content/uploads/2009/12/xmas09/fullsize/xmas09-23.jpg"><img class="attachment-thumbnail" src="http://www.ideyatech.com/wp-content/uploads/2009/12/xmas09/thumbnail/xmas09-23.jpg" alt="Christmas Party 2009" width="150" height="101" /></a> </dt>
</dl>
<dl class="gallery-item">
<dt class="gallery-icon"> <a title="Christmas Party 2009" href="http://www.ideyatech.com/wp-content/uploads/2009/12/xmas09/fullsize/xmas09-24.jpg"><img class="attachment-thumbnail" src="http://www.ideyatech.com/wp-content/uploads/2009/12/xmas09/thumbnail/xmas09-24.jpg" alt="Christmas Party 2009" width="150" height="101" /></a> </dt>
</dl>
<dl class="gallery-item">
<dt class="gallery-icon"> <a title="Christmas Party 2009" href="http://www.ideyatech.com/wp-content/uploads/2009/12/xmas09/fullsize/xmas09-25.jpg"><img class="attachment-thumbnail" src="http://www.ideyatech.com/wp-content/uploads/2009/12/xmas09/thumbnail/xmas09-25.jpg" alt="Christmas Party 2009" width="150" height="101" /></a> </dt>
</dl>
<dl class="gallery-item">
<dt class="gallery-icon"> <a title="Christmas Party 2009" href="http://www.ideyatech.com/wp-content/uploads/2009/12/xmas09/fullsize/xmas09-26.jpg"><img class="attachment-thumbnail" src="http://www.ideyatech.com/wp-content/uploads/2009/12/xmas09/thumbnail/xmas09-26.jpg" alt="Christmas Party 2009" width="150" height="101" /></a> </dt>
</dl>
<dl class="gallery-item">
<dt class="gallery-icon"> <a title="Christmas Party 2009" href="http://www.ideyatech.com/wp-content/uploads/2009/12/xmas09/fullsize/xmas09-27.jpg"><img class="attachment-thumbnail" src="http://www.ideyatech.com/wp-content/uploads/2009/12/xmas09/thumbnail/xmas09-27.jpg" alt="Christmas Party 2009" width="150" height="101" /></a> </dt>
</dl>
<dl class="gallery-item">
<dt class="gallery-icon"> <a title="Christmas Party 2009" href="http://www.ideyatech.com/wp-content/uploads/2009/12/xmas09/fullsize/xmas09-28.jpg"><img class="attachment-thumbnail" src="http://www.ideyatech.com/wp-content/uploads/2009/12/xmas09/thumbnail/xmas09-28.jpg" alt="Christmas Party 2009" width="150" height="101" /></a> </dt>
</dl>
<dl class="gallery-item">
<dt class="gallery-icon"> <a title="Christmas Party 2009" href="http://www.ideyatech.com/wp-content/uploads/2009/12/xmas09/fullsize/xmas09-29.jpg"><img class="attachment-thumbnail" src="http://www.ideyatech.com/wp-content/uploads/2009/12/xmas09/thumbnail/xmas09-29.jpg" alt="Christmas Party 2009" width="150" height="101" /></a> </dt>
</dl>
<dl class="gallery-item">
<dt class="gallery-icon"> <a title="Christmas Party 2009" href="http://www.ideyatech.com/wp-content/uploads/2009/12/xmas09/fullsize/xmas09-30.jpg"><img class="attachment-thumbnail" src="http://www.ideyatech.com/wp-content/uploads/2009/12/xmas09/thumbnail/xmas09-30.jpg" alt="Christmas Party 2009" width="150" height="101" /></a> </dt>
</dl>
<dl class="gallery-item">
<dt class="gallery-icon"> <a title="Christmas Party 2009" href="http://www.ideyatech.com/wp-content/uploads/2009/12/xmas09/fullsize/xmas09-31.jpg"><img class="attachment-thumbnail" src="http://www.ideyatech.com/wp-content/uploads/2009/12/xmas09/thumbnail/xmas09-31.jpg" alt="Christmas Party 2009" width="150" height="101" /></a> </dt>
</dl>
<dl class="gallery-item">
<dt class="gallery-icon"> <a title="Christmas Party 2009" href="http://www.ideyatech.com/wp-content/uploads/2009/12/xmas09/fullsize/xmas09-32.jpg"><img class="attachment-thumbnail" src="http://www.ideyatech.com/wp-content/uploads/2009/12/xmas09/thumbnail/xmas09-32.jpg" alt="Christmas Party 2009" width="150" height="101" /></a> </dt>
</dl>
<dl class="gallery-item">
<dt class="gallery-icon"> <a title="Christmas Party 2009" href="http://www.ideyatech.com/wp-content/uploads/2009/12/xmas09/fullsize/xmas09-33.jpg"><img class="attachment-thumbnail" src="http://www.ideyatech.com/wp-content/uploads/2009/12/xmas09/thumbnail/xmas09-33.jpg" alt="Christmas Party 2009" width="150" height="101" /></a> </dt>
</dl>
<dl class="gallery-item">
<dt class="gallery-icon"> <a title="Christmas Party 2009" href="http://www.ideyatech.com/wp-content/uploads/2009/12/xmas09/fullsize/xmas09-34.jpg"><img class="attachment-thumbnail" src="http://www.ideyatech.com/wp-content/uploads/2009/12/xmas09/thumbnail/xmas09-34.jpg" alt="Christmas Party 2009" width="150" height="101" /></a> </dt>
</dl>
<dl class="gallery-item">
<dt class="gallery-icon"> <a title="Christmas Party 2009" href="http://www.ideyatech.com/wp-content/uploads/2009/12/xmas09/fullsize/xmas09-35.jpg"><img class="attachment-thumbnail" src="http://www.ideyatech.com/wp-content/uploads/2009/12/xmas09/thumbnail/xmas09-35.jpg" alt="Christmas Party 2009" width="150" height="101" /></a> </dt>
</dl>
<dl class="gallery-item">
<dt class="gallery-icon"> <a title="Christmas Party 2009" href="http://www.ideyatech.com/wp-content/uploads/2009/12/xmas09/fullsize/xmas09-36.jpg"><img class="attachment-thumbnail" src="http://www.ideyatech.com/wp-content/uploads/2009/12/xmas09/thumbnail/xmas09-36.jpg" alt="Christmas Party 2009" width="150" height="101" /></a> </dt>
</dl>
<dl class="gallery-item">
<dt class="gallery-icon"> <a title="Christmas Party 2009" href="http://www.ideyatech.com/wp-content/uploads/2009/12/xmas09/fullsize/xmas09-37.jpg"><img class="attachment-thumbnail" src="http://www.ideyatech.com/wp-content/uploads/2009/12/xmas09/thumbnail/xmas09-37.jpg" alt="Christmas Party 2009" width="150" height="101" /></a> </dt>
</dl>
<dl class="gallery-item">
<dt class="gallery-icon"> <a title="Christmas Party 2009" href="http://www.ideyatech.com/wp-content/uploads/2009/12/xmas09/fullsize/xmas09-38.jpg"><img class="attachment-thumbnail" src="http://www.ideyatech.com/wp-content/uploads/2009/12/xmas09/thumbnail/xmas09-38.jpg" alt="Christmas Party 2009" width="150" height="101" /></a> </dt>
</dl>
<dl class="gallery-item">
<dt class="gallery-icon"> <a title="Christmas Party 2009" href="http://www.ideyatech.com/wp-content/uploads/2009/12/xmas09/fullsize/xmas09-39.jpg"><img class="attachment-thumbnail" src="http://www.ideyatech.com/wp-content/uploads/2009/12/xmas09/thumbnail/xmas09-39.jpg" alt="Christmas Party 2009" width="150" height="101" /></a> </dt>
</dl>
<dl class="gallery-item">
<dt class="gallery-icon"> <a title="Christmas Party 2009" href="http://www.ideyatech.com/wp-content/uploads/2009/12/xmas09/fullsize/xmas09-40.jpg"><img class="attachment-thumbnail" src="http://www.ideyatech.com/wp-content/uploads/2009/12/xmas09/thumbnail/xmas09-40.jpg" alt="Christmas Party 2009" width="150" height="101" /></a> </dt>
</dl>
<dl class="gallery-item">
<dt class="gallery-icon"> <a title="Christmas Party 2009" href="http://www.ideyatech.com/wp-content/uploads/2009/12/xmas09/fullsize/xmas09-41.jpg"><img class="attachment-thumbnail" src="http://www.ideyatech.com/wp-content/uploads/2009/12/xmas09/thumbnail/xmas09-41.jpg" alt="Christmas Party 2009" width="150" height="101" /></a> </dt>
</dl>
<dl class="gallery-item">
<dt class="gallery-icon"> <a title="Christmas Party 2009" href="http://www.ideyatech.com/wp-content/uploads/2009/12/xmas09/fullsize/xmas09-42.jpg"><img class="attachment-thumbnail" src="http://www.ideyatech.com/wp-content/uploads/2009/12/xmas09/thumbnail/xmas09-42.jpg" alt="Christmas Party 2009" width="150" height="101" /></a> </dt>
</dl>
<dl class="gallery-item">
<dt class="gallery-icon"> <a title="Christmas Party 2009" href="http://www.ideyatech.com/wp-content/uploads/2009/12/xmas09/fullsize/xmas09-43.jpg"><img class="attachment-thumbnail" src="http://www.ideyatech.com/wp-content/uploads/2009/12/xmas09/thumbnail/xmas09-43.jpg" alt="Christmas Party 2009" width="150" height="101" /></a> </dt>
</dl>
<dl class="gallery-item">
<dt class="gallery-icon"> <a title="Christmas Party 2009" href="http://www.ideyatech.com/wp-content/uploads/2009/12/xmas09/fullsize/xmas09-44.jpg"><img class="attachment-thumbnail" src="http://www.ideyatech.com/wp-content/uploads/2009/12/xmas09/thumbnail/xmas09-44.jpg" alt="Christmas Party 2009" width="150" height="101" /></a> </dt>
</dl>
<dl class="gallery-item">
<dt class="gallery-icon"> <a title="Christmas Party 2009" href="http://www.ideyatech.com/wp-content/uploads/2009/12/xmas09/fullsize/xmas09-45.jpg"><img class="attachment-thumbnail" src="http://www.ideyatech.com/wp-content/uploads/2009/12/xmas09/thumbnail/xmas09-45.jpg" alt="Christmas Party 2009" width="150" height="101" /></a> </dt>
</dl>
<dl class="gallery-item">
<dt class="gallery-icon"> <a title="Christmas Party 2009" href="http://www.ideyatech.com/wp-content/uploads/2009/12/xmas09/fullsize/xmas09-46.jpg"><img class="attachment-thumbnail" src="http://www.ideyatech.com/wp-content/uploads/2009/12/xmas09/thumbnail/xmas09-46.jpg" alt="Christmas Party 2009" width="150" height="101" /></a> </dt>
</dl>
<dl class="gallery-item">
<dt class="gallery-icon"> <a title="Christmas Party 2009" href="http://www.ideyatech.com/wp-content/uploads/2009/12/xmas09/fullsize/xmas09-47.jpg"><img class="attachment-thumbnail" src="http://www.ideyatech.com/wp-content/uploads/2009/12/xmas09/thumbnail/xmas09-47.jpg" alt="Christmas Party 2009" width="150" height="101" /></a> </dt>
</dl>
<dl class="gallery-item">
<dt class="gallery-icon"> <a title="Christmas Party 2009" href="http://www.ideyatech.com/wp-content/uploads/2009/12/xmas09/fullsize/xmas09-48.jpg"><img class="attachment-thumbnail" src="http://www.ideyatech.com/wp-content/uploads/2009/12/xmas09/thumbnail/xmas09-48.jpg" alt="Christmas Party 2009" width="150" height="101" /></a> </dt>
</dl>
<dl class="gallery-item">
<dt class="gallery-icon"> <a title="Christmas Party 2009" href="http://www.ideyatech.com/wp-content/uploads/2009/12/xmas09/fullsize/xmas09-49.jpg"><img class="attachment-thumbnail" src="http://www.ideyatech.com/wp-content/uploads/2009/12/xmas09/thumbnail/xmas09-49.jpg" alt="Christmas Party 2009" width="150" height="101" /></a> </dt>
</dl>
<dl class="gallery-item">
<dt class="gallery-icon"> <a title="Christmas Party 2009" href="http://www.ideyatech.com/wp-content/uploads/2009/12/xmas09/fullsize/xmas09-50.jpg"><img class="attachment-thumbnail" src="http://www.ideyatech.com/wp-content/uploads/2009/12/xmas09/thumbnail/xmas09-50.jpg" alt="Christmas Party 2009" width="150" height="101" /></a> </dt>
</dl>
<dl class="gallery-item">
<dt class="gallery-icon"> <a title="Christmas Party 2009" href="http://www.ideyatech.com/wp-content/uploads/2009/12/xmas09/fullsize/xmas09-51.jpg"><img class="attachment-thumbnail" src="http://www.ideyatech.com/wp-content/uploads/2009/12/xmas09/thumbnail/xmas09-51.jpg" alt="Christmas Party 2009" width="150" height="101" /></a> </dt>
</dl>
<dl class="gallery-item">
<dt class="gallery-icon"> <a title="Christmas Party 2009" href="http://www.ideyatech.com/wp-content/uploads/2009/12/xmas09/fullsize/xmas09-52.jpg"><img class="attachment-thumbnail" src="http://www.ideyatech.com/wp-content/uploads/2009/12/xmas09/thumbnail/xmas09-52.jpg" alt="Christmas Party 2009" width="150" height="101" /></a> </dt>
</dl>
<dl class="gallery-item">
<dt class="gallery-icon"> <a title="Christmas Party 2009" href="http://www.ideyatech.com/wp-content/uploads/2009/12/xmas09/fullsize/xmas09-53.jpg"><img class="attachment-thumbnail" src="http://www.ideyatech.com/wp-content/uploads/2009/12/xmas09/thumbnail/xmas09-53.jpg" alt="Christmas Party 2009" width="150" height="101" /></a> </dt>
</dl>
<dl class="gallery-item">
<dt class="gallery-icon"> <a title="Christmas Party 2009" href="http://www.ideyatech.com/wp-content/uploads/2009/12/xmas09/fullsize/xmas09-54.jpg"><img class="attachment-thumbnail" src="http://www.ideyatech.com/wp-content/uploads/2009/12/xmas09/thumbnail/xmas09-54.jpg" alt="Christmas Party 2009" width="150" height="101" /></a> </dt>
</dl>
<dl class="gallery-item">
<dt class="gallery-icon"> <a title="Christmas Party 2009" href="http://www.ideyatech.com/wp-content/uploads/2009/12/xmas09/fullsize/xmas09-55.jpg"><img class="attachment-thumbnail" src="http://www.ideyatech.com/wp-content/uploads/2009/12/xmas09/thumbnail/xmas09-55.jpg" alt="Christmas Party 2009" width="150" height="101" /></a> </dt>
</dl>
<dl class="gallery-item">
<dt class="gallery-icon"> <a title="Christmas Party 2009" href="http://www.ideyatech.com/wp-content/uploads/2009/12/xmas09/fullsize/xmas09-56.jpg"><img class="attachment-thumbnail" src="http://www.ideyatech.com/wp-content/uploads/2009/12/xmas09/thumbnail/xmas09-56.jpg" alt="Christmas Party 2009" width="150" height="101" /></a> </dt>
</dl>
<dl class="gallery-item">
<dt class="gallery-icon"> <a title="Christmas Party 2009" href="http://www.ideyatech.com/wp-content/uploads/2009/12/xmas09/fullsize/xmas09-57.jpg"><img class="attachment-thumbnail" src="http://www.ideyatech.com/wp-content/uploads/2009/12/xmas09/thumbnail/xmas09-57.jpg" alt="Christmas Party 2009" width="150" height="101" /></a> </dt>
</dl>
<dl class="gallery-item">
<dt class="gallery-icon"> <a title="Christmas Party 2009" href="http://www.ideyatech.com/wp-content/uploads/2009/12/xmas09/fullsize/xmas09-58.jpg"><img class="attachment-thumbnail" src="http://www.ideyatech.com/wp-content/uploads/2009/12/xmas09/thumbnail/xmas09-58.jpg" alt="Christmas Party 2009" width="150" height="101" /></a> </dt>
</dl>
<dl class="gallery-item">
<dt class="gallery-icon"> <a title="Christmas Party 2009" href="http://www.ideyatech.com/wp-content/uploads/2009/12/xmas09/fullsize/xmas09-59.jpg"><img class="attachment-thumbnail" src="http://www.ideyatech.com/wp-content/uploads/2009/12/xmas09/thumbnail/xmas09-59.jpg" alt="Christmas Party 2009" width="150" height="101" /></a> </dt>
</dl>
<dl class="gallery-item">
<dt class="gallery-icon"> <a title="Christmas Party 2009" href="http://www.ideyatech.com/wp-content/uploads/2009/12/xmas09/fullsize/xmas09-60.jpg"><img class="attachment-thumbnail" src="http://www.ideyatech.com/wp-content/uploads/2009/12/xmas09/thumbnail/xmas09-60.jpg" alt="Christmas Party 2009" width="150" height="101" /></a> </dt>
</dl>
<dl class="gallery-item">
<dt class="gallery-icon"> <a title="Christmas Party 2009" href="http://www.ideyatech.com/wp-content/uploads/2009/12/xmas09/fullsize/xmas09-61.jpg"><img class="attachment-thumbnail" src="http://www.ideyatech.com/wp-content/uploads/2009/12/xmas09/thumbnail/xmas09-61.jpg" alt="Christmas Party 2009" width="150" height="101" /></a> </dt>
</dl>
<dl class="gallery-item">
<dt class="gallery-icon"> <a title="Christmas Party 2009" href="http://www.ideyatech.com/wp-content/uploads/2009/12/xmas09/fullsize/xmas09-62.jpg"><img class="attachment-thumbnail" src="http://www.ideyatech.com/wp-content/uploads/2009/12/xmas09/thumbnail/xmas09-62.jpg" alt="Christmas Party 2009" width="150" height="101" /></a> </dt>
</dl>
<dl class="gallery-item">
<dt class="gallery-icon"> <a title="Christmas Party 2009" href="http://www.ideyatech.com/wp-content/uploads/2009/12/xmas09/fullsize/xmas09-63.jpg"><img class="attachment-thumbnail" src="http://www.ideyatech.com/wp-content/uploads/2009/12/xmas09/thumbnail/xmas09-63.jpg" alt="Christmas Party 2009" width="150" height="101" /></a> </dt>
</dl>
<dl class="gallery-item">
<dt class="gallery-icon"> <a title="Christmas Party 2009" href="http://www.ideyatech.com/wp-content/uploads/2009/12/xmas09/fullsize/xmas09-64.jpg"><img class="attachment-thumbnail" src="http://www.ideyatech.com/wp-content/uploads/2009/12/xmas09/thumbnail/xmas09-64.jpg" alt="Christmas Party 2009" width="150" height="101" /></a> </dt>
</dl>
<dl class="gallery-item">
<dt class="gallery-icon"> <a title="Christmas Party 2009" href="http://www.ideyatech.com/wp-content/uploads/2009/12/xmas09/fullsize/xmas09-65.jpg"><img class="attachment-thumbnail" src="http://www.ideyatech.com/wp-content/uploads/2009/12/xmas09/thumbnail/xmas09-65.jpg" alt="Christmas Party 2009" width="150" height="101" /></a> </dt>
</dl>
<dl class="gallery-item">
<dt class="gallery-icon"> <a title="Christmas Party 2009" href="http://www.ideyatech.com/wp-content/uploads/2009/12/xmas09/fullsize/xmas09-66.jpg"><img class="attachment-thumbnail" src="http://www.ideyatech.com/wp-content/uploads/2009/12/xmas09/thumbnail/xmas09-66.jpg" alt="Christmas Party 2009" width="150" height="101" /></a> </dt>
</dl>
<dl class="gallery-item">
<dt class="gallery-icon"> <a title="Christmas Party 2009" href="http://www.ideyatech.com/wp-content/uploads/2009/12/xmas09/fullsize/xmas09-67.jpg"><img class="attachment-thumbnail" src="http://www.ideyatech.com/wp-content/uploads/2009/12/xmas09/thumbnail/xmas09-67.jpg" alt="Christmas Party 2009" width="150" height="101" /></a> </dt>
</dl>
<dl class="gallery-item">
<dt class="gallery-icon"> <a title="Christmas Party 2009" href="http://www.ideyatech.com/wp-content/uploads/2009/12/xmas09/fullsize/xmas09-68.jpg"><img class="attachment-thumbnail" src="http://www.ideyatech.com/wp-content/uploads/2009/12/xmas09/thumbnail/xmas09-68.jpg" alt="Christmas Party 2009" width="150" height="101" /></a> </dt>
</dl>
<dl class="gallery-item">
<dt class="gallery-icon"> <a title="Christmas Party 2009" href="http://www.ideyatech.com/wp-content/uploads/2009/12/xmas09/fullsize/xmas09-69.jpg"><img class="attachment-thumbnail" src="http://www.ideyatech.com/wp-content/uploads/2009/12/xmas09/thumbnail/xmas09-69.jpg" alt="Christmas Party 2009" width="150" height="101" /></a> </dt>
</dl>
<p>    <br style="clear: both;" /></p>
</div>
<p>In the end, everyone went home exhausted but in better spirit as another event brought the company together in this season of joy, peace, love and happiness. Happy Holidays!</p>
<p>PHOTOS BY: Neil Namoro</p>
]]></content:encoded>
			<wfw:commentRss>http://www.ideyatech.com/2009/12/christmas-party-2009/feed/</wfw:commentRss>
		</item>
		<item>
		<title>Ideyatech&#8217;s Outreach Program</title>
		<link>http://www.ideyatech.com/2009/12/ideyatechs-outreach-program/</link>
		<comments>http://www.ideyatech.com/2009/12/ideyatechs-outreach-program/#comments</comments>
		<pubDate>Wed, 16 Dec 2009 07:41:36 +0000</pubDate>
		<dc:creator>Philip Lim</dc:creator>
		
		<category><![CDATA[Corporate News and Events]]></category>

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

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

		<category><![CDATA[pangarap shelter foundation]]></category>

		<guid isPermaLink="false">http://www.ideyatech.com/?p=255</guid>
		<description><![CDATA[<img class="alignleft" src="http://www.ideyatech.com/wp-content/uploads/thumbs/outreach.png" alt="Ideyatech's Outreach Program" title="Ideyatech's Outreach Program" />

Following the events of Ondoy and Pepeng a few months ago, and in celebration of the spirit of Christmas, SQME and Ideyatech decided to do something different by hosting an activity that would be socially relevant and fulfilling at the same time. This year, Pangarap Shelter Foundation was chosen as the sponsor institution for this event.]]></description>
			<content:encoded><![CDATA[<div class="tweetmeme_button" style="float: left; margin: 0.25em 1.5em 1em 0;"><a href="http://api.tweetmeme.com/share?url=http%3A%2F%2Fwww.ideyatech.com%2F2009%2F12%2Fideyatechs-outreach-program%2F"><img src="http://api.tweetmeme.com/imagebutton.gif?url=http%3A%2F%2Fwww.ideyatech.com%2F2009%2F12%2Fideyatechs-outreach-program%2F" height="61" width="51" /></a></div><p>Following the events of Ondoy and Pepeng a few months ago, and in celebration of the spirit of Christmas, SQME and Ideyatech decided to do something different by hosting an activity that would be socially relevant and fulfilling at the same time. After careful consideration of possible institutions to partner with, Pangarap Shelter Foundation was chosen as the sponsor institution for this event.</p>
<p>Along with two (2) Hands-On Manila volunteers (Leo Cabasag and Ate Cecill Artates), 37 volunteers from SQME, Ideyatech and friends were able to attend this outreach program to share themselves with the boys from Pangarap.</p>
<p>The Pangarap boys (along with girls housed by Pangarap Foundation at an apartment nearby) wowed us with different performances from singing to rapping to dancing. They awed us with an interpretive dance entitled “Who Am I”, opening the event with an uplifting song and dance number.</p>
<div class="gallery">
<dl class="gallery-item">
<dt class="gallery-icon"> <a title="Ideyatech's Outreach Program at Pangarap Shelter Foundation" href="http://www.ideyatech.com/wp-content/uploads/2009/12/outreach/fullsize/prayer-01.jpg"><img class="attachment-thumbnail" src="http://www.ideyatech.com/wp-content/uploads/2009/12/outreach/thumbnail/prayer-01.jpg" alt="" width="150" height="113" /></a> </dt>
</dl>
<dl class="gallery-item">
<dt class="gallery-icon"> <a title="Ideyatech's Outreach Program at Pangarap Shelter Foundation" href="http://www.ideyatech.com/wp-content/uploads/2009/12/outreach/fullsize/prayer-02.jpg"><img class="attachment-thumbnail" src="http://www.ideyatech.com/wp-content/uploads/2009/12/outreach/thumbnail/prayer-02.jpg" alt="" width="150" height="113" /></a> </dt>
</dl>
<p><br style="clear: both;" /></p>
</div>
<p>The Pangarap Choir rendered a very enlightening song</p>
<div class="gallery">
<dl class="gallery-item">
<dt class="gallery-icon"> <a title="Ideyatech's Outreach Program at Pangarap Shelter Foundation" href="http://www.ideyatech.com/wp-content/uploads/2009/12/outreach/fullsize/choir-01.jpg"><img class="attachment-thumbnail" src="http://www.ideyatech.com/wp-content/uploads/2009/12/outreach/thumbnail/choir-01.jpg" alt="" width="150" height="113" /></a> </dt>
</dl>
<dl class="gallery-item">
<dt class="gallery-icon"> <a title="Ideyatech's Outreach Program at Pangarap Shelter Foundation" href="http://www.ideyatech.com/wp-content/uploads/2009/12/outreach/fullsize/choir-02.jpg"><img class="attachment-thumbnail" src="http://www.ideyatech.com/wp-content/uploads/2009/12/outreach/thumbnail/choir-02.jpg" alt="" width="150" height="113" /></a> </dt>
</dl>
<dl class="gallery-item">
<dt class="gallery-icon"> <a title="Ideyatech's Outreach Program at Pangarap Shelter Foundation" href="http://www.ideyatech.com/wp-content/uploads/2009/12/outreach/fullsize/choir-03.jpg"><img class="attachment-thumbnail" src="http://www.ideyatech.com/wp-content/uploads/2009/12/outreach/thumbnail/choir-03.jpg" alt="" width="150" height="113" /></a> </dt>
</dl>
<p><br style="clear: both;" /></p>
</div>
<p>A sibling pair showcased their talent in rap and beatboxing</p>
<div class="gallery">
<dl class="gallery-item">
<dt class="gallery-icon"> <a title="Ideyatech's Outreach Program at Pangarap Shelter Foundation" href="http://www.ideyatech.com/wp-content/uploads/2009/12/outreach/fullsize/rap-01.jpg"><img class="attachment-thumbnail" src="http://www.ideyatech.com/wp-content/uploads/2009/12/outreach/thumbnail/rap-01.jpg" alt="" width="150" height="113" /></a> </dt>
</dl>
<dl class="gallery-item">
<dt class="gallery-icon"> <a title="Ideyatech's Outreach Program at Pangarap Shelter Foundation" href="http://www.ideyatech.com/wp-content/uploads/2009/12/outreach/fullsize/rap-02.jpg"><img class="attachment-thumbnail" src="http://www.ideyatech.com/wp-content/uploads/2009/12/outreach/thumbnail/rap-02.jpg" alt="" width="150" height="113" /></a> </dt>
</dl>
<p><br style="clear: both;" /></p>
</div>
<p>Two groups of Pangarap boys called the Gimikeros and the Javawakees exhibited their talents in dancing</p>
<div class="gallery">
<dl class="gallery-item">
<dt class="gallery-icon"> <a title="Ideyatech's Outreach Program at Pangarap Shelter Foundation" href="http://www.ideyatech.com/wp-content/uploads/2009/12/outreach/fullsize/javawakeez-01.jpg"><img class="attachment-thumbnail" src="http://www.ideyatech.com/wp-content/uploads/2009/12/outreach/thumbnail/javawakeez-01.jpg" alt="" width="150" height="113" /></a> </dt>
</dl>
<dl class="gallery-item">
<dt class="gallery-icon"> <a title="Ideyatech's Outreach Program at Pangarap Shelter Foundation" href="http://www.ideyatech.com/wp-content/uploads/2009/12/outreach/fullsize/javawakeez-02.jpg"><img class="attachment-thumbnail" src="http://www.ideyatech.com/wp-content/uploads/2009/12/outreach/thumbnail/javawakeez-02.jpg" alt="" width="150" height="113" /></a> </dt>
</dl>
<dl class="gallery-item">
<dt class="gallery-icon"> <a title="Ideyatech's Outreach Program at Pangarap Shelter Foundation" href="http://www.ideyatech.com/wp-content/uploads/2009/12/outreach/fullsize/javawakeez-03.jpg"><img class="attachment-thumbnail" src="http://www.ideyatech.com/wp-content/uploads/2009/12/outreach/thumbnail/javawakeez-03.jpg" alt="" width="150" height="113" /></a> </dt>
</dl>
<dl class="gallery-item">
<dt class="gallery-icon"> <a title="Ideyatech's Outreach Program at Pangarap Shelter Foundation" href="http://www.ideyatech.com/wp-content/uploads/2009/12/outreach/fullsize/javawakeez-04.jpg"><img class="attachment-thumbnail" src="http://www.ideyatech.com/wp-content/uploads/2009/12/outreach/thumbnail/javawakeez-04.jpg" alt="" width="150" height="113" /></a> </dt>
</dl>
<dl class="gallery-item">
<dt class="gallery-icon"> <a title="Ideyatech's Outreach Program at Pangarap Shelter Foundation" href="http://www.ideyatech.com/wp-content/uploads/2009/12/outreach/fullsize/javawakeez-05.jpg"><img class="attachment-thumbnail" src="http://www.ideyatech.com/wp-content/uploads/2009/12/outreach/thumbnail/javawakeez-05.jpg" alt="" width="150" height="113" /></a> </dt>
</dl>
<dl class="gallery-item">
<dt class="gallery-icon"> <a title="Ideyatech's Outreach Program at Pangarap Shelter Foundation" href="http://www.ideyatech.com/wp-content/uploads/2009/12/outreach/fullsize/javawakeez-06.jpg"><img class="attachment-thumbnail" src="http://www.ideyatech.com/wp-content/uploads/2009/12/outreach/thumbnail/javawakeez-06.jpg" alt="" width="150" height="113" /></a> </dt>
</dl>
<p><br style="clear: both;" /></p>
</div>
<p>And the Pangarap girls also showed that they can groove like the boys.</p>
<div class="gallery">
<dl class="gallery-item">
<dt class="gallery-icon"> <a title="Ideyatech's Outreach Program at Pangarap Shelter Foundation" href="http://www.ideyatech.com/wp-content/uploads/2009/12/outreach/fullsize/girls-01.jpg"><img class="attachment-thumbnail" src="http://www.ideyatech.com/wp-content/uploads/2009/12/outreach/thumbnail/girls-01.jpg" alt="" width="150" height="113" /></a> </dt>
</dl>
<dl class="gallery-item">
<dt class="gallery-icon"> <a title="Ideyatech's Outreach Program at Pangarap Shelter Foundation" href="http://www.ideyatech.com/wp-content/uploads/2009/12/outreach/fullsize/girls-02.jpg"><img class="attachment-thumbnail" src="http://www.ideyatech.com/wp-content/uploads/2009/12/outreach/thumbnail/girls-02.jpg" alt="" width="150" height="113" /></a> </dt>
</dl>
<dl class="gallery-item">
<dt class="gallery-icon"> <a title="Ideyatech's Outreach Program at Pangarap Shelter Foundation" href="http://www.ideyatech.com/wp-content/uploads/2009/12/outreach/fullsize/girls-03.jpg"><img class="attachment-thumbnail" src="http://www.ideyatech.com/wp-content/uploads/2009/12/outreach/thumbnail/girls-03.jpg" alt="" width="150" height="113" /></a> </dt>
</dl>
<p><br style="clear: both;" /></p>
</div>
<p>But probably the most enjoyable part of this event was the part where the volunteers and the boys joined in to play some fun games. The Longest Line was great to start off the games since it got everyone hyped up!</p>
<div class="gallery">
<dl class="gallery-item">
<dt class="gallery-icon"> <a title="Ideyatech's Outreach Program at Pangarap Shelter Foundation" href="http://www.ideyatech.com/wp-content/uploads/2009/12/outreach/fullsize/longestline-01.jpg"><img class="attachment-thumbnail" src="http://www.ideyatech.com/wp-content/uploads/2009/12/outreach/thumbnail/longestline-01.jpg" alt="" width="150" height="113" /></a> </dt>
</dl>
<dl class="gallery-item">
<dt class="gallery-icon"> <a title="Ideyatech's Outreach Program at Pangarap Shelter Foundation" href="http://www.ideyatech.com/wp-content/uploads/2009/12/outreach/fullsize/longestline-02.jpg"><img class="attachment-thumbnail" src="http://www.ideyatech.com/wp-content/uploads/2009/12/outreach/thumbnail/longestline-02.jpg" alt="" width="150" height="113" /></a> </dt>
</dl>
<dl class="gallery-item">
<dt class="gallery-icon"> <a title="Ideyatech's Outreach Program at Pangarap Shelter Foundation" href="http://www.ideyatech.com/wp-content/uploads/2009/12/outreach/fullsize/longestline-03.jpg"><img class="attachment-thumbnail" src="http://www.ideyatech.com/wp-content/uploads/2009/12/outreach/thumbnail/longestline-03.jpg" alt="" width="150" height="113" /></a> </dt>
</dl>
<dl class="gallery-item">
<dt class="gallery-icon"> <a title="Ideyatech's Outreach Program at Pangarap Shelter Foundation" href="http://www.ideyatech.com/wp-content/uploads/2009/12/outreach/fullsize/longestline-04.jpg"><img class="attachment-thumbnail" src="http://www.ideyatech.com/wp-content/uploads/2009/12/outreach/thumbnail/longestline-04.jpg" alt="" width="150" height="113" /></a> </dt>
</dl>
<p><br style="clear: both;" /></p>
</div>
<p>The Sack Race game even made things more exciting for everyone, as a Pangarap Foundation kid is partnered with a volunteer to run a three-legged sack race.</p>
<div class="gallery">
<dl class="gallery-item">
<dt class="gallery-icon"> <a title="Ideyatech's Outreach Program at Pangarap Shelter Foundation" href="http://www.ideyatech.com/wp-content/uploads/2009/12/outreach/fullsize/sackrace-01.jpg"><img class="attachment-thumbnail" src="http://www.ideyatech.com/wp-content/uploads/2009/12/outreach/thumbnail/sackrace-01.jpg" alt="" width="150" height="113" /></a> </dt>
</dl>
<dl class="gallery-item">
<dt class="gallery-icon"> <a title="Ideyatech's Outreach Program at Pangarap Shelter Foundation" href="http://www.ideyatech.com/wp-content/uploads/2009/12/outreach/fullsize/sackrace-02.jpg"><img class="attachment-thumbnail" src="http://www.ideyatech.com/wp-content/uploads/2009/12/outreach/thumbnail/sackrace-02.jpg" alt="" width="150" height="113" /></a> </dt>
</dl>
<dl class="gallery-item">
<dt class="gallery-icon"> <a title="Ideyatech's Outreach Program at Pangarap Shelter Foundation" href="http://www.ideyatech.com/wp-content/uploads/2009/12/outreach/fullsize/sackrace-03.jpg"><img class="attachment-thumbnail" src="http://www.ideyatech.com/wp-content/uploads/2009/12/outreach/thumbnail/sackrace-03.jpg" alt="" width="150" height="113" /></a> </dt>
</dl>
<dl class="gallery-item">
<dt class="gallery-icon"> <a title="Ideyatech's Outreach Program at Pangarap Shelter Foundation" href="http://www.ideyatech.com/wp-content/uploads/2009/12/outreach/fullsize/sackrace-04.jpg"><img class="attachment-thumbnail" src="http://www.ideyatech.com/wp-content/uploads/2009/12/outreach/thumbnail/sackrace-04.jpg" alt="" width="150" height="113" /></a> </dt>
</dl>
<dl class="gallery-item">
<dt class="gallery-icon"> <a title="Ideyatech's Outreach Program at Pangarap Shelter Foundation" href="http://www.ideyatech.com/wp-content/uploads/2009/12/outreach/fullsize/sackrace-05.jpg"><img class="attachment-thumbnail" src="http://www.ideyatech.com/wp-content/uploads/2009/12/outreach/thumbnail/sackrace-05.jpg" alt="" width="150" height="113" /></a> </dt>
</dl>
<dl class="gallery-item">
<dt class="gallery-icon"> <a title="Ideyatech's Outreach Program at Pangarap Shelter Foundation" href="http://www.ideyatech.com/wp-content/uploads/2009/12/outreach/fullsize/sackrace-06.jpg"><img class="attachment-thumbnail" src="http://www.ideyatech.com/wp-content/uploads/2009/12/outreach/thumbnail/sackrace-06.jpg" alt="" width="150" height="113" /></a> </dt>
</dl>
<p><br style="clear: both;" /></p>
</div>
<p>The Calamansi Relay proved to be harder than it seems, especially that if the calamansi fell, you have to go back to the start.</p>
<div class="gallery">
<dl class="gallery-item">
<dt class="gallery-icon"> <a title="Ideyatech's Outreach Program at Pangarap Shelter Foundation" href="http://www.ideyatech.com/wp-content/uploads/2009/12/outreach/fullsize/calamansi-01.jpg"><img class="attachment-thumbnail" src="http://www.ideyatech.com/wp-content/uploads/2009/12/outreach/thumbnail/calamansi-01.jpg" alt="" width="150" height="113" /></a> </dt>
</dl>
<dl class="gallery-item">
<dt class="gallery-icon"> <a title="Ideyatech's Outreach Program at Pangarap Shelter Foundation" href="http://www.ideyatech.com/wp-content/uploads/2009/12/outreach/fullsize/calamansi-02.jpg"><img class="attachment-thumbnail" src="http://www.ideyatech.com/wp-content/uploads/2009/12/outreach/thumbnail/calamansi-02.jpg" alt="" width="150" height="113" /></a> </dt>
</dl>
<dl class="gallery-item">
<dt class="gallery-icon"> <a title="Ideyatech's Outreach Program at Pangarap Shelter Foundation" href="http://www.ideyatech.com/wp-content/uploads/2009/12/outreach/fullsize/calamansi-03.jpg"><img class="attachment-thumbnail" src="http://www.ideyatech.com/wp-content/uploads/2009/12/outreach/thumbnail/calamansi-03.jpg" alt="" width="150" height="113" /></a> </dt>
</dl>
<dl class="gallery-item">
<dt class="gallery-icon"> <a title="Ideyatech's Outreach Program at Pangarap Shelter Foundation" href="http://www.ideyatech.com/wp-content/uploads/2009/12/outreach/fullsize/calamansi-04.jpg"><img class="attachment-thumbnail" src="http://www.ideyatech.com/wp-content/uploads/2009/12/outreach/thumbnail/calamansi-04.jpg" alt="" width="150" height="113" /></a> </dt>
</dl>
<dl class="gallery-item">
<dt class="gallery-icon"> <a title="Ideyatech's Outreach Program at Pangarap Shelter Foundation" href="http://www.ideyatech.com/wp-content/uploads/2009/12/outreach/fullsize/calamansi-05.jpg"><img class="attachment-thumbnail" src="http://www.ideyatech.com/wp-content/uploads/2009/12/outreach/thumbnail/calamansi-05.jpg" alt="" width="150" height="113" /></a> </dt>
</dl>
<dl class="gallery-item">
<dt class="gallery-icon"> <a title="Ideyatech's Outreach Program at Pangarap Shelter Foundation" href="http://www.ideyatech.com/wp-content/uploads/2009/12/outreach/fullsize/calamansi-06.jpg"><img class="attachment-thumbnail" src="http://www.ideyatech.com/wp-content/uploads/2009/12/outreach/thumbnail/calamansi-06.jpg" alt="" width="150" height="113" /></a> </dt>
</dl>
<p><br style="clear: both;" /></p>
</div>
<p>The Bring Me game didn’t sell much because people were already tired from the games. But we were able to give away a lot of goodies, towels and tumblers in this game.</p>
<div class="gallery">
<dl class="gallery-item">
<dt class="gallery-icon"> <a title="Ideyatech's Outreach Program at Pangarap Shelter Foundation" href="http://www.ideyatech.com/wp-content/uploads/2009/12/outreach/fullsize/bringme-01.jpg"><img class="attachment-thumbnail" src="http://www.ideyatech.com/wp-content/uploads/2009/12/outreach/thumbnail/bringme-01.jpg" alt="" width="150" height="113" /></a> </dt>
</dl>
<dl class="gallery-item">
<dt class="gallery-icon"> <a title="Ideyatech's Outreach Program at Pangarap Shelter Foundation" href="http://www.ideyatech.com/wp-content/uploads/2009/12/outreach/fullsize/bringme-02.jpg"><img class="attachment-thumbnail" src="http://www.ideyatech.com/wp-content/uploads/2009/12/outreach/thumbnail/bringme-02.jpg" alt="" width="150" height="113" /></a> </dt>
</dl>
<dl class="gallery-item">
<dt class="gallery-icon"> <a title="Ideyatech's Outreach Program at Pangarap Shelter Foundation" href="http://www.ideyatech.com/wp-content/uploads/2009/12/outreach/fullsize/bringme-03.jpg"><img class="attachment-thumbnail" src="http://www.ideyatech.com/wp-content/uploads/2009/12/outreach/thumbnail/bringme-03.jpg" alt="" width="150" height="113" /></a> </dt>
</dl>
<p><br style="clear: both;" /></p>
</div>
<p>We capped off the games with a few minutes of sharing and interaction with the boys. This became one of the major highlights of the event for the volunteers, as most of them say they were humbled by the stories of the kids.</p>
<div class="gallery">
<dl class="gallery-item">
<dt class="gallery-icon"> <a title="Ideyatech's Outreach Program at Pangarap Shelter Foundation" href="http://www.ideyatech.com/wp-content/uploads/2009/12/outreach/fullsize/sharing-01.jpg"><img class="attachment-thumbnail" src="http://www.ideyatech.com/wp-content/uploads/2009/12/outreach/thumbnail/sharing-01.jpg" alt="" width="150" height="113" /></a> </dt>
</dl>
<dl class="gallery-item">
<dt class="gallery-icon"> <a title="Ideyatech's Outreach Program at Pangarap Shelter Foundation" href="http://www.ideyatech.com/wp-content/uploads/2009/12/outreach/fullsize/sharing-02.jpg"><img class="attachment-thumbnail" src="http://www.ideyatech.com/wp-content/uploads/2009/12/outreach/thumbnail/sharing-02.jpg" alt="" width="150" height="113" /></a> </dt>
</dl>
<dl class="gallery-item">
<dt class="gallery-icon"> <a title="Ideyatech's Outreach Program at Pangarap Shelter Foundation" href="http://www.ideyatech.com/wp-content/uploads/2009/12/outreach/fullsize/sharing-03.jpg"><img class="attachment-thumbnail" src="http://www.ideyatech.com/wp-content/uploads/2009/12/outreach/thumbnail/sharing-03.jpg" alt="" width="150" height="113" /></a> </dt>
</dl>
<dl class="gallery-item">
<dt class="gallery-icon"> <a title="Ideyatech's Outreach Program at Pangarap Shelter Foundation" href="http://www.ideyatech.com/wp-content/uploads/2009/12/outreach/fullsize/sharing-04.jpg"><img class="attachment-thumbnail" src="http://www.ideyatech.com/wp-content/uploads/2009/12/outreach/thumbnail/sharing-04.jpg" alt="" width="150" height="113" /></a> </dt>
</dl>
<dl class="gallery-item">
<dt class="gallery-icon"> <a title="Ideyatech's Outreach Program at Pangarap Shelter Foundation" href="http://www.ideyatech.com/wp-content/uploads/2009/12/outreach/fullsize/sharing-05.jpg"><img class="attachment-thumbnail" src="http://www.ideyatech.com/wp-content/uploads/2009/12/outreach/thumbnail/sharing-05.jpg" alt="" width="150" height="113" /></a> </dt>
</dl>
<dl class="gallery-item">
<dt class="gallery-icon"> <a title="Ideyatech's Outreach Program at Pangarap Shelter Foundation" href="http://www.ideyatech.com/wp-content/uploads/2009/12/outreach/fullsize/sharing-06.jpg"><img class="attachment-thumbnail" src="http://www.ideyatech.com/wp-content/uploads/2009/12/outreach/thumbnail/sharing-06.jpg" alt="" width="150" height="113" /></a> </dt>
</dl>
<dl class="gallery-item">
<dt class="gallery-icon"> <a title="Ideyatech's Outreach Program at Pangarap Shelter Foundation" href="http://www.ideyatech.com/wp-content/uploads/2009/12/outreach/fullsize/sharing-07.jpg"><img class="attachment-thumbnail" src="http://www.ideyatech.com/wp-content/uploads/2009/12/outreach/thumbnail/sharing-07.jpg" alt="" width="150" height="113" /></a> </dt>
</dl>
<dl class="gallery-item">
<dt class="gallery-icon"> <a title="Ideyatech's Outreach Program at Pangarap Shelter Foundation" href="http://www.ideyatech.com/wp-content/uploads/2009/12/outreach/fullsize/sharing-08.jpg"><img class="attachment-thumbnail" src="http://www.ideyatech.com/wp-content/uploads/2009/12/outreach/thumbnail/sharing-08.jpg" alt="" width="150" height="113" /></a> </dt>
</dl>
<dl class="gallery-item">
<dt class="gallery-icon"> <a title="Ideyatech's Outreach Program at Pangarap Shelter Foundation" href="http://www.ideyatech.com/wp-content/uploads/2009/12/outreach/fullsize/sharing-09.jpg"><img class="attachment-thumbnail" src="http://www.ideyatech.com/wp-content/uploads/2009/12/outreach/thumbnail/sharing-09.jpg" alt="" width="150" height="113" /></a> </dt>
</dl>
<dl class="gallery-item">
<dt class="gallery-icon"> <a title="Ideyatech's Outreach Program at Pangarap Shelter Foundation" href="http://www.ideyatech.com/wp-content/uploads/2009/12/outreach/fullsize/sharing-10.jpg"><img class="attachment-thumbnail" src="http://www.ideyatech.com/wp-content/uploads/2009/12/outreach/thumbnail/sharing-10.jpg" alt="" width="150" height="113" /></a> </dt>
</dl>
<dl class="gallery-item">
<dt class="gallery-icon"> <a title="Ideyatech's Outreach Program at Pangarap Shelter Foundation" href="http://www.ideyatech.com/wp-content/uploads/2009/12/outreach/fullsize/sharing-11.jpg"><img class="attachment-thumbnail" src="http://www.ideyatech.com/wp-content/uploads/2009/12/outreach/thumbnail/sharing-11.jpg" alt="" width="150" height="113" /></a> </dt>
</dl>
<p><br style="clear: both;" /></p>
</div>
<p>Before the sharing session came to a close, Raffy, formerly sponsored and housed by the Pangarap Shelter Foundation, spoke of his own success story as a form of inspiration for the kids and for us, volunteers, as well.</p>
<div class="gallery">
<dl class="gallery-item">
<dt class="gallery-icon"> <a title="Ideyatech's Outreach Program at Pangarap Shelter Foundation" href="http://www.ideyatech.com/wp-content/uploads/2009/12/outreach/fullsize/raffy-01.jpg"><img class="attachment-thumbnail" src="http://www.ideyatech.com/wp-content/uploads/2009/12/outreach/thumbnail/raffy-01.jpg" alt="" width="150" height="113" /></a> </dt>
</dl>
<dl class="gallery-item">
<dt class="gallery-icon"> <a title="Ideyatech's Outreach Program at Pangarap Shelter Foundation" href="http://www.ideyatech.com/wp-content/uploads/2009/12/outreach/fullsize/raffy-02.jpg"><img class="attachment-thumbnail" src="http://www.ideyatech.com/wp-content/uploads/2009/12/outreach/thumbnail/raffy-02.jpg" alt="" width="150" height="113" /></a> </dt>
</dl>
<dl class="gallery-item">
<dt class="gallery-icon"> <a title="Ideyatech's Outreach Program at Pangarap Shelter Foundation" href="http://www.ideyatech.com/wp-content/uploads/2009/12/outreach/fullsize/raffy-03.jpg"><img class="attachment-thumbnail" src="http://www.ideyatech.com/wp-content/uploads/2009/12/outreach/thumbnail/raffy-03.jpg" alt="" width="150" height="113" /></a> </dt>
</dl>
<dl class="gallery-item">
<dt class="gallery-icon"> <a title="Ideyatech's Outreach Program at Pangarap Shelter Foundation" href="http://www.ideyatech.com/wp-content/uploads/2009/12/outreach/fullsize/raffy-04.jpg"><img class="attachment-thumbnail" src="http://www.ideyatech.com/wp-content/uploads/2009/12/outreach/thumbnail/raffy-04.jpg" alt="" width="150" height="113" /></a> </dt>
</dl>
<p><br style="clear: both;" /></p>
</div>
<p>Lunch came soon after, complete with ice cream!</p>
<div class="gallery">
<dl class="gallery-item">
<dt class="gallery-icon"> <a title="Ideyatech's Outreach Program at Pangarap Shelter Foundation" href="http://www.ideyatech.com/wp-content/uploads/2009/12/outreach/fullsize/icecream-01.jpg"><img class="attachment-thumbnail" src="http://www.ideyatech.com/wp-content/uploads/2009/12/outreach/thumbnail/icecream-01.jpg" alt="" width="150" height="113" /></a> </dt>
</dl>
<dl class="gallery-item">
<dt class="gallery-icon"> <a title="Ideyatech's Outreach Program at Pangarap Shelter Foundation" href="http://www.ideyatech.com/wp-content/uploads/2009/12/outreach/fullsize/icecream-02.jpg"><img class="attachment-thumbnail" src="http://www.ideyatech.com/wp-content/uploads/2009/12/outreach/thumbnail/icecream-02.jpg" alt="" width="150" height="113" /></a> </dt>
</dl>
<p><br style="clear: both;" /></p>
</div>
<p>Our outreach program to Pangarap Shelter Foundation ended with a tour of the place, especially at their candle workshop.</p>
<div class="gallery">
<dl class="gallery-item">
<dt class="gallery-icon"> <a title="Ideyatech's Outreach Program at Pangarap Shelter Foundation" href="http://www.ideyatech.com/wp-content/uploads/2009/12/outreach/fullsize/tour-01.jpg"><img class="attachment-thumbnail" src="http://www.ideyatech.com/wp-content/uploads/2009/12/outreach/thumbnail/tour-01.jpg" alt="" width="150" height="113" /></a> </dt>
</dl>
<dl class="gallery-item">
<dt class="gallery-icon"> <a title="Ideyatech's Outreach Program at Pangarap Shelter Foundation" href="http://www.ideyatech.com/wp-content/uploads/2009/12/outreach/fullsize/tour-02.jpg"><img class="attachment-thumbnail" src="http://www.ideyatech.com/wp-content/uploads/2009/12/outreach/thumbnail/tour-02.jpg" alt="" width="150" height="113" /></a> </dt>
</dl>
<dl class="gallery-item">
<dt class="gallery-icon"> <a title="Ideyatech's Outreach Program at Pangarap Shelter Foundation" href="http://www.ideyatech.com/wp-content/uploads/2009/12/outreach/fullsize/tour-03.jpg"><img class="attachment-thumbnail" src="http://www.ideyatech.com/wp-content/uploads/2009/12/outreach/thumbnail/tour-03.jpg" alt="" width="150" height="113" /></a> </dt>
</dl>
<dl class="gallery-item">
<dt class="gallery-icon"> <a title="Ideyatech's Outreach Program at Pangarap Shelter Foundation" href="http://www.ideyatech.com/wp-content/uploads/2009/12/outreach/fullsize/tour-04.jpg"><img class="attachment-thumbnail" src="http://www.ideyatech.com/wp-content/uploads/2009/12/outreach/thumbnail/tour-04.jpg" alt="" width="150" height="113" /></a> </dt>
</dl>
<dl class="gallery-item">
<dt class="gallery-icon"> <a title="Ideyatech's Outreach Program at Pangarap Shelter Foundation" href="http://www.ideyatech.com/wp-content/uploads/2009/12/outreach/fullsize/tour-05.jpg"><img class="attachment-thumbnail" src="http://www.ideyatech.com/wp-content/uploads/2009/12/outreach/thumbnail/tour-05.jpg" alt="" width="150" height="113" /></a> </dt>
</dl>
<dl class="gallery-item">
<dt class="gallery-icon"> <a title="Ideyatech's Outreach Program at Pangarap Shelter Foundation" href="http://www.ideyatech.com/wp-content/uploads/2009/12/outreach/fullsize/tour-06.jpg"><img class="attachment-thumbnail" src="http://www.ideyatech.com/wp-content/uploads/2009/12/outreach/thumbnail/tour-06.jpg" alt="" width="150" height="113" /></a> </dt>
</dl>
<dl class="gallery-item">
<dt class="gallery-icon"> <a title="Ideyatech's Outreach Program at Pangarap Shelter Foundation" href="http://www.ideyatech.com/wp-content/uploads/2009/12/outreach/fullsize/tour-07.jpg"><img class="attachment-thumbnail" src="http://www.ideyatech.com/wp-content/uploads/2009/12/outreach/thumbnail/tour-07.jpg" alt="" width="150" height="113" /></a> </dt>
</dl>
<dl class="gallery-item">
<dt class="gallery-icon"> <a title="Ideyatech's Outreach Program at Pangarap Shelter Foundation" href="http://www.ideyatech.com/wp-content/uploads/2009/12/outreach/fullsize/tour-08.jpg"><img class="attachment-thumbnail" src="http://www.ideyatech.com/wp-content/uploads/2009/12/outreach/thumbnail/tour-08.jpg" alt="" width="150" height="113" /></a> </dt>
</dl>
<dl class="gallery-item">
<dt class="gallery-icon"> <a title="Ideyatech's Outreach Program at Pangarap Shelter Foundation" href="http://www.ideyatech.com/wp-content/uploads/2009/12/outreach/fullsize/tour-09.jpg"><img class="attachment-thumbnail" src="http://www.ideyatech.com/wp-content/uploads/2009/12/outreach/thumbnail/tour-09.jpg" alt="" width="150" height="113" /></a> </dt>
</dl>
<dl class="gallery-item">
<dt class="gallery-icon"> <a title="Ideyatech's Outreach Program at Pangarap Shelter Foundation" href="http://www.ideyatech.com/wp-content/uploads/2009/12/outreach/fullsize/tour-10.jpg"><img class="attachment-thumbnail" src="http://www.ideyatech.com/wp-content/uploads/2009/12/outreach/thumbnail/tour-10.jpg" alt="" width="150" height="113" /></a> </dt>
</dl>
<dl class="gallery-item">
<dt class="gallery-icon"> <a title="Ideyatech's Outreach Program at Pangarap Shelter Foundation" href="http://www.ideyatech.com/wp-content/uploads/2009/12/outreach/fullsize/tour-11.jpg"><img class="attachment-thumbnail" src="http://www.ideyatech.com/wp-content/uploads/2009/12/outreach/thumbnail/tour-11.jpg" alt="" width="150" height="113" /></a> </dt>
</dl>
<dl class="gallery-item">
<dt class="gallery-icon"> <a title="Ideyatech's Outreach Program at Pangarap Shelter Foundation" href="http://www.ideyatech.com/wp-content/uploads/2009/12/outreach/fullsize/tour-12.jpg"><img class="attachment-thumbnail" src="http://www.ideyatech.com/wp-content/uploads/2009/12/outreach/thumbnail/tour-12.jpg" alt="" width="150" height="113" /></a> </dt>
</dl>
<dl class="gallery-item">
<dt class="gallery-icon"> <a title="Ideyatech's Outreach Program at Pangarap Shelter Foundation" href="http://www.ideyatech.com/wp-content/uploads/2009/12/outreach/fullsize/tour-13.jpg"><img class="attachment-thumbnail" src="http://www.ideyatech.com/wp-content/uploads/2009/12/outreach/thumbnail/tour-13.jpg" alt="" width="150" height="113" /></a> </dt>
</dl>
<dl class="gallery-item">
<dt class="gallery-icon"> <a title="Ideyatech's Outreach Program at Pangarap Shelter Foundation" href="http://www.ideyatech.com/wp-content/uploads/2009/12/outreach/fullsize/tour-14.jpg"><img class="attachment-thumbnail" src="http://www.ideyatech.com/wp-content/uploads/2009/12/outreach/thumbnail/tour-14.jpg" alt="" width="150" height="113" /></a> </dt>
</dl>
<dl class="gallery-item">
<dt class="gallery-icon"> <a title="Ideyatech's Outreach Program at Pangarap Shelter Foundation" href="http://www.ideyatech.com/wp-content/uploads/2009/12/outreach/fullsize/tour-15.jpg"><img class="attachment-thumbnail" src="http://www.ideyatech.com/wp-content/uploads/2009/12/outreach/thumbnail/tour-15.jpg" alt="" width="150" height="113" /></a> </dt>
</dl>
<dl class="gallery-item">
<dt class="gallery-icon"> <a title="Ideyatech's Outreach Program at Pangarap Shelter Foundation" href="http://www.ideyatech.com/wp-content/uploads/2009/12/outreach/fullsize/tour-16.jpg"><img class="attachment-thumbnail" src="http://www.ideyatech.com/wp-content/uploads/2009/12/outreach/thumbnail/tour-16.jpg" alt="" width="150" height="113" /></a> </dt>
</dl>
<dl class="gallery-item">
<dt class="gallery-icon"> <a title="Ideyatech's Outreach Program at Pangarap Shelter Foundation" href="http://www.ideyatech.com/wp-content/uploads/2009/12/outreach/fullsize/tour-17.jpg"><img class="attachment-thumbnail" src="http://www.ideyatech.com/wp-content/uploads/2009/12/outreach/thumbnail/tour-17.jpg" alt="" width="150" height="113" /></a> </dt>
</dl>
<p><br style="clear: both;" /></p>
</div>
<p>Over-all, this Outreach Program proved to be a very fulfilling and inspiring activity for everyone. We shared ourselves, never expecting that they’d be the one sharing more of themselves with us.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.ideyatech.com/2009/12/ideyatechs-outreach-program/feed/</wfw:commentRss>
		</item>
		<item>
		<title>Ubuntu Karmic Koala - A Hidden Treasure</title>
		<link>http://www.ideyatech.com/2009/11/ubuntu-karmic-koala-a-hidden-treasure/</link>
		<comments>http://www.ideyatech.com/2009/11/ubuntu-karmic-koala-a-hidden-treasure/#comments</comments>
		<pubDate>Thu, 12 Nov 2009 00:44:37 +0000</pubDate>
		<dc:creator>Allan Tan</dc:creator>
		
		<category><![CDATA[Stories]]></category>

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

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

		<category><![CDATA[operating system]]></category>

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

		<guid isPermaLink="false">http://www.ideyatech.com/?p=252</guid>
		<description><![CDATA[<img class="alignleft" src="http://www.ideyatech.com/wp-content/uploads/thumbs/ubuntu-karmic-koala.png" alt="Ubuntu Karmic Koala - A Hidden Treasure" title="Ubuntu Karmic Koala - A Hidden Treasure" />

It's been 2 weeks since I installed Karmic Koala, the latest version of Ubuntu. After having to use Windows Vista and Mac Leopard for quite some time, here are some of my reviews and opinions on Karmic Koala in terms of system installation, speed performance, interface usability, software application and product reliability/security.]]></description>
			<content:encoded><![CDATA[<div class="tweetmeme_button" style="float: left; margin: 0.25em 1.5em 1em 0;"><a href="http://api.tweetmeme.com/share?url=http%3A%2F%2Fwww.ideyatech.com%2F2009%2F11%2Fubuntu-karmic-koala-a-hidden-treasure%2F"><img src="http://api.tweetmeme.com/imagebutton.gif?url=http%3A%2F%2Fwww.ideyatech.com%2F2009%2F11%2Fubuntu-karmic-koala-a-hidden-treasure%2F" height="61" width="51" /></a></div><p>It&#8217;s been 2 weeks since I installed Karmic Koala, the latest version of Ubuntu. After having to use Windows Vista and Mac Leopard, here are some of my reviews and opinions on Karmic Koala:</p>
<p><strong>INSTALLATION - 7/10:</strong></p>
<ul>
<li>Installation is easy. It has the graphical interface to prompt user at every step of the way. You can either install within your existing Windows partition or install Karmic in its own partition.</li>
<li>The most embarassing problem you&#8217;ll encounter in Ubuntu is lack of device drivers. This is due to lack of support from hardware manufacturers to write drivers for Linux. But once you got the device drivers right, everything else will be better. Luckily, on my VAIO VGN-SR35G, only the internal mic was not supported.</li>
<li>Installing applications is quite easy as well. There is a &#8220;Synaptics package manager&#8221; that takes care of listing, installing and updating your application&#8230; provided there is one available for Linux.</li>
</ul>
<p><strong>PERFORMANCE - 10/10:</strong></p>
<ul>
<li>The speed and response time of Karmic is lightning fast. Opening applications is as fast as blink of an eye. Compared to Vista, Karmic wins by 10,000 miles. Compared to Leopard, Karmic still wins by a few miles.</li>
<li>Startup and shutdown time is amazing. I&#8217;ve compared start-up time with Vista and Leopard side-by-side, and Karmic is faster by 10 - 30 secs.</li>
</ul>
<p><strong>USABILITY - 9/10:</strong></p>
<ul>
<li>Interestingly, I find the organization of files and programs of Karmic better than Mac&#8217;s OS. Documents are easy to find using the &#8220;Places&#8221; menu. Programs are automatically organized into groups within the &#8220;Application&#8221; menu. The toolbars are easy to configure as well.</li>
<li>There is no clutter in your desktop because programs can be dragged into various &#8220;spaces&#8221;. So, you can easily switch from your &#8220;office space&#8221; to &#8220;media space&#8221; easily.</li>
<li>The visual effects are astonishing. In Compiz, you can use the burn effect when closing your window and even 3D cube effects upon switching workspace.</li>
</ul>
<p><strong>APPLICATIONS - 6/10:<br />
</strong></p>
<ul>
<li>Despite lack of commercial software for Linux, I find most of my daily needs supported in Ubuntu. Open office is acceptable in 90% of the time.</li>
<li>Eclipse, MySQL, Tomcat and other Java development tools are well supported.</li>
<li>Installing Eclipse is a bit tricky. There are a couple of reported bugs if you are installing from the tar.gz file while the Synaptics package manager supports only core Eclipse modules. My solution is to install Eclipse via Synaptics and override the plug-ins with the files from the J2EE version of Eclipse.</li>
</ul>
<p><strong>RELIABILITY / SECURITY - 10/10:</strong></p>
<ul>
<li>We all know that Linux security is topnotch. Thanks Mr. Torwalds!</li>
<li>If your devices are supported, expect the best reliability of your applications.</li>
</ul>
<p><strong>CONCLUSION:</strong></p>
<p>Unfortunately, not all users have the patience and experience to setup an Operating System. But for the lucky ones, Karmic Koala is a great operating system&#8230; For me, its better than Mac Leopard and Windows Vista. If computer manufacturers would adopt to supporting Ubuntu on their hardware, this could certainly change the perspective in computing. With my recent experience, I think we can move our organization closer towards adopting a full open-source system on our software development needs.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.ideyatech.com/2009/11/ubuntu-karmic-koala-a-hidden-treasure/feed/</wfw:commentRss>
		</item>
		<item>
		<title>Ideyatech Anniversary 2009</title>
		<link>http://www.ideyatech.com/2009/10/ideyatechs-2nd-year-anniversary/</link>
		<comments>http://www.ideyatech.com/2009/10/ideyatechs-2nd-year-anniversary/#comments</comments>
		<pubDate>Mon, 26 Oct 2009 11:04:48 +0000</pubDate>
		<dc:creator>Kervi Cioco</dc:creator>
		
		<category><![CDATA[Corporate News and Events]]></category>

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

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

		<category><![CDATA[General Assembly]]></category>

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

		<guid isPermaLink="false">http://www.ideyatech.com/?p=251</guid>
		<description><![CDATA[<img class="alignleft" src="http://www.ideyatech.com/wp-content/uploads/thumbs/second-year-anniversary.png" alt="Ideyatech's 2nd Year Anniversary" title="Ideyatech's 2nd Year Anniversary" />

October 21, 2009 — This date marks the day that Ideyatech celebrated another anniversary. While it felt as if the last was just a few months back, the company has just gone older and it's been an exciting development for everyone. The event in picture, focus of the assembly, future plans and a whole lot more after the jump.]]></description>
			<content:encoded><![CDATA[<div class="tweetmeme_button" style="float: left; margin: 0.25em 1.5em 1em 0;"><a href="http://api.tweetmeme.com/share?url=http%3A%2F%2Fwww.ideyatech.com%2F2009%2F10%2Fideyatechs-2nd-year-anniversary%2F"><img src="http://api.tweetmeme.com/imagebutton.gif?url=http%3A%2F%2Fwww.ideyatech.com%2F2009%2F10%2Fideyatechs-2nd-year-anniversary%2F" height="61" width="51" /></a></div><p>October 21, 2009 — This date marks the day that Ideyatech celebrated another anniversary. While it felt as if the last was just a few months back, the company has just gone older and it&#8217;s been an exciting development for everyone.</p>
<p><img class="aligncenter" title="Ideyatech's 2nd Year Anniversary" src="http://www.ideyatech.com/wp-content/uploads/2009/10/second-year-anniversary.png" alt="Ideyatech's 2nd Year Anniversary" /></p>
<p>This year, the annual muster was held at Max&#8217;s Restaurant in Megamall. It started with a little discussion about administrative matters succeeded by project summaries and accomplishment reports. In general, the company took pride in: (1) being prolific in the aspect of accomplishing previously set goals especially in the fields of building/strengthening the companies Software Development Processes, (2) by being significantly relevant in surviving an economically strenous year that feigned businesses globally and (3) focusing on product development by releasing Open-tides version 0.4 and signifcant documentation updates, E-recruitment Tool, as well as continuous research and development of products that is currently being developed.</p>
<p>Moving forward, Ideyatech strives to make its presence felt in the industry. The company is also very optimistic in acquiring new skilled individuals that will help fortify in strengthening the company&#8217;s services and product lines.</p>
<p>In the end, it has been an illustrious time for everyone to catch up and be on the same page. While it felt like the past year went by so fast, it was indeed, an exciting development for everyone.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.ideyatech.com/2009/10/ideyatechs-2nd-year-anniversary/feed/</wfw:commentRss>
		</item>
		<item>
		<title>Improve Java Web Development Server Startup Time</title>
		<link>http://www.ideyatech.com/2009/08/improve-java-web-development-server-startup-time/</link>
		<comments>http://www.ideyatech.com/2009/08/improve-java-web-development-server-startup-time/#comments</comments>
		<pubDate>Wed, 19 Aug 2009 13:23:12 +0000</pubDate>
		<dc:creator>Jaycobb Cruz</dc:creator>
		
		<category><![CDATA[Java]]></category>

		<category><![CDATA[Technology Center]]></category>

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

		<category><![CDATA[context reloading]]></category>

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

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

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

		<category><![CDATA[hot code]]></category>

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

		<category><![CDATA[jdk 6]]></category>

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

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

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

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

		<category><![CDATA[speed up]]></category>

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

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

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

		<guid isPermaLink="false">http://www.ideyatech.com/?p=249</guid>
		<description><![CDATA[<img class="alignleft" src="http://www.ideyatech.com/wp-content/uploads/thumbs/startup-time.png" alt="Improve Java Web Development Server Startup Time" title="Improve Java Web Development Server Startup Time" />

When developing an application in a web server environment, the ease of use and startup time of the application are crucial elements for best performance. Due to this, the Hot Code Replace (HCR) debugging technique was developed to “facilitate experimental development and to foster iterative trial-and-error coding,” effectively improving...]]></description>
			<content:encoded><![CDATA[<div class="tweetmeme_button" style="float: left; margin: 0.25em 1.5em 1em 0;"><a href="http://api.tweetmeme.com/share?url=http%3A%2F%2Fwww.ideyatech.com%2F2009%2F08%2Fimprove-java-web-development-server-startup-time%2F"><img src="http://api.tweetmeme.com/imagebutton.gif?url=http%3A%2F%2Fwww.ideyatech.com%2F2009%2F08%2Fimprove-java-web-development-server-startup-time%2F" height="61" width="51" /></a></div><p><img class="alignright" src="http://www.ideyatech.com/wp-content/uploads/2009/08/startup-time.png" alt="Improve Java Web Development Server Startup Time" title="Improve Java Web Development Server Startup Time" /></p>
<p>When developing an application in a web server environment, the ease of use and startup time of the application are crucial elements for best performance. Due to this, the Hot Code Replace (HCR) debugging technique was developed to “facilitate experimental development and to foster iterative trial-and-error coding,” effectively improving application development performance. In brief, HCR allows you to “start a debugging session on a given runtime workbench and change a Java file in your development workbench, and the debugger will replace the code in the receiving VM while it is running.” In essence, no restart is needed.</p>
<p>However, when changing either class signatures or instance variables, HCR will not work; a restart is required for changes to take effect. “Context Reloading”, necessary for changes on configuration or property files to take effect, also requires a restart.</p>
<p>This is where problems arise. The need to restart the application consumes too much time. In my experience, one of my projects takes an average of three (3) minutes to restart. Restarting ten (10) times already uses up 30 minutes of valuable development time.</p>
<p>My current development environment: Mac OS X 10.4.11, Maven 2, Struts 1, Spring 2.0, Hibernate 3, Eclipse Galileo</p>
<p>The following measures below were taken to improve performance. This can serve as guidelines for the enhancement of server startup time.</p>
<p>1.  Disable Xdoclet Maven Plugin (for hbm generation) when not needed. This decreased startup time from 2:59 to 2:32.</p>
<p>2.  <a href="http://static.springsource.org/spring/docs/2.5.x/reference/beans.html#beans-factory-lazy-init">Lazily instantiate beans</a> during development. A major bottleneck in application startup occurs during Spring pre-instantiation of singletons (our project has 677 beans defined in application context) in factory. Set Spring&#8217;s &#8220;default-lazy-init&#8221; to &#8220;true&#8221;. Startup time decreased from 2:32 to 1:58.</p>
<p>3.  Upgrade project execution environment to the latest version of JVM. I upgraded the default Mac OS X default JVM 1.5 to <a href="http://wiki.netbeans.org/JavaFXAndJDK6On32BitMacOS">SoyLatte JDK 6</a>, further decreasing startup time from 1:58 to 1:02.</p>
<p>4.  Use <a href="http://www.devx.com/Java/Article/42315/1954">embedded Jetty</a> instead of Maven Jetty Plug-in or Eclipse Jetty Adapter Plug-in when starting the web server. This lessened startup time even further, from 1:02 to 0:37.</p>
<p>The measures described above effectively shortened the average startup time from 2:59 to 0:37!</p>
<p>So if you want to boost your productivity, try out the guides set above! These tips will definitely make startup time faster and help improve your application development performance.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.ideyatech.com/2009/08/improve-java-web-development-server-startup-time/feed/</wfw:commentRss>
		</item>
		<item>
		<title>Solution for innerHTML in IE Tables</title>
		<link>http://www.ideyatech.com/2009/07/solution-for-innerhtml-in-table-not-working-in-ie/</link>
		<comments>http://www.ideyatech.com/2009/07/solution-for-innerhtml-in-table-not-working-in-ie/#comments</comments>
		<pubDate>Thu, 16 Jul 2009 10:27:26 +0000</pubDate>
		<dc:creator>Jhoanna Marie Trigo</dc:creator>
		
		<category><![CDATA[Stories]]></category>

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

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

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

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

		<category><![CDATA[internet explorer]]></category>

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

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

		<guid isPermaLink="false">http://www.ideyatech.com/?p=247</guid>
		<description><![CDATA[<img class="alignleft" src="http://www.ideyatech.com/wp-content/uploads/thumbs/innerHTML.png" alt="Solution for innerHTML in TABLE (Not Working in IE)" title="Solution for innerHTML in TABLE (Not Working in IE)" />

The property innerHTML are read-only for the following html objects: COL, COLGROUP, FRAMESET, HEAD, HTML, STYLE, TABLE, TBODY, TFOOT, THEAD, TITLE, TR and trying to update the value of their innerHTML property will give you ‘unknown runtime error’ in IE browser. Though creating child elements by DOM method can resolve this...]]></description>
			<content:encoded><![CDATA[<div class="tweetmeme_button" style="float: left; margin: 0.25em 1.5em 1em 0;"><a href="http://api.tweetmeme.com/share?url=http%3A%2F%2Fwww.ideyatech.com%2F2009%2F07%2Fsolution-for-innerhtml-in-table-not-working-in-ie%2F"><img src="http://api.tweetmeme.com/imagebutton.gif?url=http%3A%2F%2Fwww.ideyatech.com%2F2009%2F07%2Fsolution-for-innerhtml-in-table-not-working-in-ie%2F" height="61" width="51" /></a></div><p>The property innerHTML are read-only for the following html objects:</p>
<p><a id="ctl00_MTContentSelector1_mainContentContainer_ctl01" href="http://msdn.microsoft.com/en-us/library/ms535225%28VS.85%29.aspx">COL</a>, <a id="ctl00_MTContentSelector1_mainContentContainer_ctl02" href="http://msdn.microsoft.com/en-us/library/ms535227%28VS.85%29.aspx">COLGROUP</a>, <a id="ctl00_MTContentSelector1_mainContentContainer_ctl03" href="http://msdn.microsoft.com/en-us/library/ms535251%28VS.85%29.aspx">FRAMESET</a>, <a id="ctl00_MTContentSelector1_mainContentContainer_ctl04" href="http://msdn.microsoft.com/en-us/library/ms535252%28VS.85%29.aspx">HEAD</a>, <a id="ctl00_MTContentSelector1_mainContentContainer_ctl05" href="http://msdn.microsoft.com/en-us/library/ms535255%28VS.85%29.aspx">HTML</a>, <a id="ctl00_MTContentSelector1_mainContentContainer_ctl06" href="http://msdn.microsoft.com/en-us/library/ms535898%28VS.85%29.aspx">STYLE</a>, <a id="ctl00_MTContentSelector1_mainContentContainer_ctl07" href="http://msdn.microsoft.com/en-us/library/ms535901%28VS.85%29.aspx">TABLE</a>, <a id="ctl00_MTContentSelector1_mainContentContainer_ctl08" href="http://msdn.microsoft.com/en-us/library/ms535902%28VS.85%29.aspx">TBODY</a>, <a id="ctl00_MTContentSelector1_mainContentContainer_ctl09" href="http://msdn.microsoft.com/en-us/library/ms535907%28VS.85%29.aspx">TFOOT</a>, <a id="ctl00_MTContentSelector1_mainContentContainer_ctl10" href="http://msdn.microsoft.com/en-us/library/ms535909%28VS.85%29.aspx">THEAD</a>, <a id="ctl00_MTContentSelector1_mainContentContainer_ctl11" href="http://msdn.microsoft.com/en-us/library/ms535910%28VS.85%29.aspx">TITLE</a>, <a id="ctl00_MTContentSelector1_mainContentContainer_ctl12" href="http://msdn.microsoft.com/en-us/library/ms535911%28VS.85%29.aspx">TR</a></p>
<p>and trying to update the value of their innerHTML property will give you &#8216;unknown runtime error&#8217; in IE browser.</p>
<p>Though creating child elements by DOM method can resolve this, it&#8217;s still not a good idea to add all the elements needed dynamically if we have big chunks of it - forms, labels, lots of input, buttons plus their properties (class, colSpan, etc..). And more problems if the new innerHTML value must have taglibs like <c:forEach> and <fmt:formatDate>. Also, creating div inside a table has broken layout in firefox. So innerHTML will still be the best solution (well it&#8217;s still up to you and the situation).</p>
<p>So here&#8217;s the situation: We want to replace the contents of our tr</p>
<pre name="code" class="html">
<div id="divElement">
<table>
<tr id="trElement">
<td>innerHTML not working in IE.</td>
</tr>
</table>
<input type="button" value="Replace" onclick="javascript:updateInnerHTML('trElement', 'BOOM!', 'divElement')">
    </div>
</pre>
<p>Solution:</p>
<p>1. First we have to get the div element, the read-only element (tr) and the new innerHTML value.</p>
<p>2. We&#8217;ll get the innerHTML of our div - this is the oldHTML.</p>
<p>3. We&#8217;ll use the method .replace([regex pattern], [new value]) to find and replace the tr element&#8217;s value from the oldHTML with the new value - so this is now our newHTML</p>
<p>4. Now, that we have the updated value, we will place it in the div element by using .innerHTML = newHTML.</p>
<p>Javascript:</p>
<pre name="code" class="js">

	<script type="text/javascript">
    function updateInnerHTML(id, replacement, divId) {
    var elem = document.getElementById(id);
    var replaceDiv = document.getElementById(divId);
    var tag = elem.nodeName;   // get nodeName of our element which is TR
    var oldHTML = replaceDiv.innerHTML;
    oldHTML = oldHTML.replace( /[\r\n\t]/g, &#8221; );    // we have to remove spaces, carriage return , ..

    // now we prepare the regex for finding the tr element to replace it&#8217;s content
    var re= new RegExp(&#8217;<(\s*'+tag+'[^>]*id=&#8221;?&#8217;+id+&#8217;&#8221;?[^>]*)>(.*?)(?:</table>

    </'+tag+'[^>]*>|</'+tag+'[^>]*>)&#8217;,'i&#8217;);

    //we have to append tag to replacement since replace method will also replace the tag
    replacement=&#8221;<$1>&#8221; + replacement + &#8220;</" + tag +">&#8220;;

    newHTML= oldHTML.replace(re,replacement);
    replaceDiv.innerHTML = newHTML;
    }
    </script>
</pre>
<p><!-- SyntaxHighlighter CSS and JavaScript -->  </p>
<link type="text/css" rel="stylesheet" href="http://www.ideyatech.com/wp-content/plugins/google-syntax-highlighter/Styles/SyntaxHighlighter.css"></link>
<script language="javascript" src="http://www.ideyatech.com/wp-content/plugins/google-syntax-highlighter/Scripts/shCore.js"></script><br />
<script language="javascript" src="http://www.ideyatech.com/wp-content/plugins/google-syntax-highlighter/Scripts/shBrushXml.js"></script><br />
<script language="javascript" src="http://www.ideyatech.com/wp-content/plugins/google-syntax-highlighter/Scripts/shBrushJScript.js"></script><br />
<script language="javascript">
dp.SyntaxHighlighter.ClipboardSwf = 'http://www.ideyatech.com/wp-content/plugins/google-syntax-highlighter/Scripts/clipboard.swf';
dp.SyntaxHighlighter.HighlightAll('code');
</script></p>
]]></content:encoded>
			<wfw:commentRss>http://www.ideyatech.com/2009/07/solution-for-innerhtml-in-table-not-working-in-ie/feed/</wfw:commentRss>
		</item>
		<item>
		<title>Open-Tides 0.4 - Improving Productivity</title>
		<link>http://www.ideyatech.com/2009/06/open-tides-04/</link>
		<comments>http://www.ideyatech.com/2009/06/open-tides-04/#comments</comments>
		<pubDate>Mon, 01 Jun 2009 07:48:29 +0000</pubDate>
		<dc:creator>Philip Lim</dc:creator>
		
		<category><![CDATA[Corporate News and Events]]></category>

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

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

		<category><![CDATA[open-tides]]></category>

		<guid isPermaLink="false">http://www.ideyatech.com/?p=245</guid>
		<description><![CDATA[<img class="alignleft" src="http://www.ideyatech.com/wp-content/uploads/thumbs/open-tides.png" alt="Open-Tides 0.4 - Improving Productivity" title="Open-Tides 0.4 - Improving Productivity" />

Open-Tides Version 0.4, the latest build of the Open-Tides framework, improves developer's productivity as much as 4x by introducing a complete set of code generation tools through the use of model annotations. What does the new version contain? Source codes, latest build and other related files after the jump.]]></description>
			<content:encoded><![CDATA[<div class="tweetmeme_button" style="float: left; margin: 0.25em 1.5em 1em 0;"><a href="http://api.tweetmeme.com/share?url=http%3A%2F%2Fwww.ideyatech.com%2F2009%2F06%2Fopen-tides-04%2F"><img src="http://api.tweetmeme.com/imagebutton.gif?url=http%3A%2F%2Fwww.ideyatech.com%2F2009%2F06%2Fopen-tides-04%2F" height="61" width="51" /></a></div><p><img src="http://www.ideyatech.com/wp-content/uploads/open-tides.jpg" alt="open-tides logo" width="179" height="65" /></p>
<p style="padding-left: 30px;"><em><strong>Open-Tides Version 0.4, the latest build of the Open-Tides framework, improves developer&#8217;s productivity as much as 4x by introducing a complete set of code generation tools through the use of model annotations.<br />
</strong></em></p>
<p>Ideyatech is excited to release the latest version of Open-Tides, version 0.4. This version contains the following:</p>
<ol>
<li><span style="color: #008000;"><strong>Automatic Code Generation</strong></span> - Open-Tides automatically generates the dao, service, controller and jsp pages of your beans.
<ul>
<li><strong><span style="color: #000080;">Faster Development.</span></strong> You do not have to spend a lot of time creating the dao, service, controller and jsp pages of your beans&#8211;they are automatically created for you! To create an application, just create the beans, add the annotations, and then generate the build!</li>
<li><strong><span style="color: #000080;">Easier Development.</span></strong> Apart from being able to develop code faster, code development becomes easier! All you need to worry about is creating the beans and understanding the simple annotations used by Open-Tides!</li>
<li><span style="color: #000080;"><strong>Consistent Code.</strong></span> Code naming convention and structure is assured of consistency because of the automatic generation of code. Whether the project beans are created by singular or multiple developers, all code developed via the Open-Tides framework have one generic naming convention and coding structure.</li>
<li><span style="color: #000080;"><strong>Reduced Errors.</strong></span> Syntax errors and errors caused by incomplete code or mistyped code are  lessened because of the several manual entry of code is done automatically already.</li>
</ul>
<p><br/>
</li>
<li><span style="color: #008000;"><strong>JavaDocs API</strong></span> - Documentation is available to aid in the use of annotations as used and implemented by Open-Tides.
<ul>
<li>The javadocs contains the different annotations, their optional elements and a few examples on how to use them. Including this in your project directory structure enables you to access help on annotations just like any other javadocs api.</li>
<li>In addition to this javadocs, there are other .pdf tutorial guides found on the link below to assist you in your code development.</li>
</ul>
</li>
</ol>
<p>Check out the source codes, latest build and other related files here: <a title="Open-Tides Download Page" href="http://code.google.com/p/open-tides/" target="_blank">http://code.google.com/p/open-tides/</a></p>
]]></content:encoded>
			<wfw:commentRss>http://www.ideyatech.com/2009/06/open-tides-04/feed/</wfw:commentRss>
		</item>
		<item>
		<title>Converting to Tiff on Mac using Java Advanced Imaging</title>
		<link>http://www.ideyatech.com/2009/05/converting-to-tiff-on-mac-using-java-advanced-imaging/</link>
		<comments>http://www.ideyatech.com/2009/05/converting-to-tiff-on-mac-using-java-advanced-imaging/#comments</comments>
		<pubDate>Mon, 18 May 2009 06:30:17 +0000</pubDate>
		<dc:creator>Allan Tan</dc:creator>
		
		<category><![CDATA[Custom Programming]]></category>

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

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

		<guid isPermaLink="false">http://www.ideyatech.com/?p=243</guid>
		<description><![CDATA[<img class="alignleft" src="http://www.ideyatech.com/wp-content/uploads/thumbs/converting-to-tiff-on-mac.png" alt="Converting to Tiff on Mac using Java Advanced Imaging" title="Converting to Tiff on Mac using Java Advanced Imaging" />

While there are a number of resources on the net talking about converting images to tiff in Java using JAI, I wasn't able to come across one that works on a Mac. JAI is a separate download from the JDK and unfortunately, there are no mac version of JAI that can be downloaded from the Sun site. Upon reviewing the jar files included in OSX, I found...]]></description>
			<content:encoded><![CDATA[<div class="tweetmeme_button" style="float: left; margin: 0.25em 1.5em 1em 0;"><a href="http://api.tweetmeme.com/share?url=http%3A%2F%2Fwww.ideyatech.com%2F2009%2F05%2Fconverting-to-tiff-on-mac-using-java-advanced-imaging%2F"><img src="http://api.tweetmeme.com/imagebutton.gif?url=http%3A%2F%2Fwww.ideyatech.com%2F2009%2F05%2Fconverting-to-tiff-on-mac-using-java-advanced-imaging%2F" height="61" width="51" /></a></div><p>While there are a number of resources on the net talking about converting images to tiff in Java using JAI, I wasn&#8217;t able to come across one that works on a Mac. JAI is a separate download from the JDK and unfortunately, there are no mac version of JAI that can be downloaded from the Sun site. </p>
<p>Upon reviewing the jar files included in OSX, I found jai_codec.jar and jai_core.jar in my libraries. So, if you have those libraries, you should be able to get JAI to work and convert your images to tiff.</p>
<p>Here&#8217;s the code that I&#8217;ve successfully used to convert any image to tiff.</p>
<pre name="code" class="java">
public static void convertToTiff(String inputFile, String outputFile) {
	try {
		TIFFEncodeParam param = new TIFFEncodeParam();
		param.setCompression(TIFFEncodeParam.COMPRESSION_NONE);
		param.setLittleEndian(false); // Intel

		File outFile = new File(outputFile);
		FileUtil.createDirectory(outFile.getParentFile());
		OutputStream ios = new BufferedOutputStream(
	new FileOutputStream(outFile));
    		ImageEncoder enc = ImageCodec.createImageEncoder("tiff", ios, param);
		RenderedOp src = JAI.create("fileload", inputFile);	

	      ColorConvertOp filterObj = new ColorConvertOp(
	            ColorSpace.getInstance(ColorSpace.CS_sRGB),null);
	    //Apply the color filter and return the result.
	    BufferedImage dst = new
BufferedImage(src.getWidth(),src.getHeight(),BufferedImage.TYPE_3BYTE_BGR);
	    filterObj.filter(src.getAsBufferedImage(),dst);

	    // save the output file
		enc.encode(dst);
		ios.close();
	} catch (Exception e) {
		_log.error("Failed to create output tiff file.",e);
		throw new SystemException("Failed to create output tiff file.",e);
	}
}
</pre>
<p>The example above uses no compression and converts the image to 24bits. You may change the parameters as needed.</p>
<p><!-- SyntaxHighlighter CSS and JavaScript -->  </p>
<link type="text/css" rel="stylesheet" href="http://www.ideyatech.com/wp-content/plugins/google-syntax-highlighter/Styles/SyntaxHighlighter.css"></link>
<script language="javascript" src="http://www.ideyatech.com/wp-content/plugins/google-syntax-highlighter/Scripts/shCore.js"></script><br />
<script language="javascript" src="http://www.ideyatech.com/wp-content/plugins/google-syntax-highlighter/Scripts/shBrushJava.js"></script><br />
<script language="javascript">
dp.SyntaxHighlighter.ClipboardSwf = 'http://www.ideyatech.com/wp-content/plugins/google-syntax-highlighter/Scripts/clipboard.swf';
dp.SyntaxHighlighter.HighlightAll('code');
</script></p>
]]></content:encoded>
			<wfw:commentRss>http://www.ideyatech.com/2009/05/converting-to-tiff-on-mac-using-java-advanced-imaging/feed/</wfw:commentRss>
		</item>
		<item>
		<title>Custom Dependency Injection, Simplified Spring-like Framework</title>
		<link>http://www.ideyatech.com/2009/05/simple-dependency-injection-simplified-spring-framework/</link>
		<comments>http://www.ideyatech.com/2009/05/simple-dependency-injection-simplified-spring-framework/#comments</comments>
		<pubDate>Fri, 15 May 2009 03:49:32 +0000</pubDate>
		<dc:creator>Allan Tan</dc:creator>
		
		<category><![CDATA[Java]]></category>

		<category><![CDATA[Website Design]]></category>

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

		<category><![CDATA[dependency injection]]></category>

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

		<category><![CDATA[spring framework]]></category>

		<guid isPermaLink="false">http://www.ideyatech.com/?p=242</guid>
		<description><![CDATA[<img class="alignleft" src="http://www.ideyatech.com/wp-content/uploads/thumbs/spring.png" alt="Custom Dependency Injection, Simplified Spring-like Framework" title="Custom Dependency Injection, Simplified Spring-like Framework" />

I'm a Spring fan, but I decided not to use Spring in our recent project because I don't want bulky jar files in our application but I wanted to have spring-like configuration. So, I've decided to write my own dependency injection code in less than 50 lines of code!! To simplify dependency injection, I've taken out most of the advanced configuration features and...]]></description>
			<content:encoded><![CDATA[<div class="tweetmeme_button" style="float: left; margin: 0.25em 1.5em 1em 0;"><a href="http://api.tweetmeme.com/share?url=http%3A%2F%2Fwww.ideyatech.com%2F2009%2F05%2Fsimple-dependency-injection-simplified-spring-framework%2F"><img src="http://api.tweetmeme.com/imagebutton.gif?url=http%3A%2F%2Fwww.ideyatech.com%2F2009%2F05%2Fsimple-dependency-injection-simplified-spring-framework%2F" height="61" width="51" /></a></div><p>I&#8217;m a Spring fan, but I decided not to use Spring in our recent project because I don&#8217;t want bulky jar files in our application but I wanted to have spring-like configuration. So, I&#8217;ve decided to write my own dependency injection code in <strong>less than 50 lines of code</strong>!!</p>
<p>To simplify dependency injection, I&#8217;ve taken out most of the advanced configuration features and keep the implementation to bare bones. In summary, the code only performs dependency injection to make your application configurable from external property files. The result is a small and lightweight dependency injection framework that makes your application configurable via property files.</p>
<p>Of course, short and simple means less features. Some of the caveats from this implementation includes:</p>
<ul>
<li>Assumes parameters in your DI methods is String. You will need to convert the parameter to the appropriate datatype in your code.</li>
<li>Assumes your class for injection extends the base Injectable class</li>
<li>Dependency injection is done using property files.</li>
</ul>
<p>Below the main method for dependency injection. But I&#8217;ve also attached a complete set of codes and example.</p>
<pre name="code" class="java">
public Injectable get(String id) {
	try {
		id = id.trim();
		String objectClassName = configPersistence.getSetting(id + ".class");
		if (StringUtil.isEmpty(objectClassName))
			throw new ConfigurationException(
						"Cannot find object class for id ["+id+"].&#8221;);
		Class objectClass = Class.forName(objectClassName);

		// create new object
		if (!Injectable.class.isAssignableFrom(objectClass))
			throw new ConfigurationException(objectClass.getName() +
					&#8221; is not an instance of Injectable.&#8221;);
		Constructor<Injectable> cxr = objectClass.getConstructor(String.class);
		Injectable object =  cxr.newInstance(id);
		// add reference to this object factory
		Field factory = Injectable.class.getDeclaredField(&#8221;factory&#8221;);
		factory.setAccessible(true);
		factory.set(object, this);
		// let&#8217;s populate the object&#8217;s attributes
		Map<String, Object> attributes = configPersistence.findSettings(id);
		for (String key:attributes.keySet()) {
			// get the method name
			String methodName = key.substring(key.lastIndexOf(&#8221;.&#8221;)+1);
			// ignore class definition
			if (&#8221;class&#8221;.equals(methodName)) continue;
			// find a setter method for this attribute
			try {
				Method method = objectClass.getMethod(methodName, String.class);
				method.invoke(object,(String)attributes.get(key));
			} catch (NoSuchMethodException nsme) {
				throw new ConfigurationException(&#8221;Method ["+methodName+
				"] not found for class ["+objectClass.getSimpleName()+".]&#8220;, nsme);
			} catch (IllegalArgumentException iae) {
				throw new ConfigurationException(&#8221;Method ["+methodName+
				"] invalid for class ["+objectClass.getSimpleName()+"].&#8221;,iae);
			} catch (Exception e) {
				throw new ConfigurationException(&#8221;Failed to invoke ["+
				methodName+"] for class ["+objectClass.getSimpleName()+"].&#8221;,e);
			}
			}
		return object;
	} catch (ConfigurationException ce) {
		throw ce;
	} catch (Exception ex) {
		ex.printStackTrace();
	}
}
</pre>
<p>There are 2 dependency files needed in this example. They are merely helper classes to enforce the rules. You may remove / change them as you please. To keep this blog short, I&#8217;m attaching a sample program that includes the files needed. Just run &#8220;Sample&#8221; application and notice that values in the classes are initialized from the property file called &#8220;inject.properties&#8221;.</p>
<p>Download <a href="/SImple.zip">sample codes</a></p>
<p>Enjoy!</p>
<p><!-- SyntaxHighlighter CSS and JavaScript --></p>
<link type="text/css" rel="stylesheet" href="http://www.ideyatech.com/wp-content/plugins/google-syntax-highlighter/Styles/SyntaxHighlighter.css"></link>
<script language="javascript" src="http://www.ideyatech.com/wp-content/plugins/google-syntax-highlighter/Scripts/shCore.js"></script><br />
<script language="javascript" src="http://www.ideyatech.com/wp-content/plugins/google-syntax-highlighter/Scripts/shBrushJava.js"></script><br />
<script language="javascript">
dp.SyntaxHighlighter.ClipboardSwf = 'http://www.ideyatech.com/wp-content/plugins/google-syntax-highlighter/Scripts/clipboard.swf';
dp.SyntaxHighlighter.HighlightAll('code');
</script></p>
]]></content:encoded>
			<wfw:commentRss>http://www.ideyatech.com/2009/05/simple-dependency-injection-simplified-spring-framework/feed/</wfw:commentRss>
		</item>
		<item>
		<title>Company Outing 2009</title>
		<link>http://www.ideyatech.com/2009/04/company-outing-2009/</link>
		<comments>http://www.ideyatech.com/2009/04/company-outing-2009/#comments</comments>
		<pubDate>Thu, 30 Apr 2009 07:51:12 +0000</pubDate>
		<dc:creator>Philip Lim</dc:creator>
		
		<category><![CDATA[Stories]]></category>

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

		<category><![CDATA[casita de ana maria]]></category>

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

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

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

		<guid isPermaLink="false">http://www.ideyatech.com/?p=241</guid>
		<description><![CDATA[<img class="alignleft" src="http://www.ideyatech.com/wp-content/uploads/thumbs/company-outing-09.png" alt="Company Outing 2009" title="Company Outing 2009" />

Last April 6 and 7, we all took a break from our busy schedules and spent two days to freshen up and relax at Casita de Ana Maria Resort, a private hot spring resort located at Pansol, Laguna, a few kilometers before reaching Los Baños, Laguna. We rented three rooms to fit all 34 of us, and since it was a private resort, we had the whole resort to ourselves.]]></description>
			<content:encoded><![CDATA[<div class="tweetmeme_button" style="float: left; margin: 0.25em 1.5em 1em 0;"><a href="http://api.tweetmeme.com/share?url=http%3A%2F%2Fwww.ideyatech.com%2F2009%2F04%2Fcompany-outing-2009%2F"><img src="http://api.tweetmeme.com/imagebutton.gif?url=http%3A%2F%2Fwww.ideyatech.com%2F2009%2F04%2Fcompany-outing-2009%2F" height="61" width="51" /></a></div><p>Last April 6 and 7, we all took a break from our busy schedules and spent two days to freshen up and relax at Casita de Ana Maria Resort, a private hot spring resort located at Pansol, Laguna, a few kilometers before reaching Los Baños, Laguna. We rented three rooms to fit all 34 of us, and since it was a private resort, we had the whole resort to ourselves.</p>
<p><img src="http://photos-b.ak.fbcdn.net/hphotos-ak-snc1/hs022.snc1/3073_76748551133_722881133_1829825_4277873_n.jpg" alt="view of the house from poolside" width="200" height="150" /><img src="http://photos-f.ak.fbcdn.net/hphotos-ak-snc1/hs022.snc1/3073_76748571133_722881133_1829829_2760649_n.jpg" alt="pool at night" width="200" height="150" /><img src="http://photos-e.ak.fbcdn.net/hphotos-ak-snc1/hs022.snc1/3073_76748566133_722881133_1829828_8311750_n.jpg" alt="nippa hut" width="200" height="150" /><img src="http://photos-c.ak.fbcdn.net/hphotos-ak-snc1/hs022.snc1/3073_76748556133_722881133_1829826_4396218_n.jpg" alt="pool" width="200" height="150" /><img src="http://photos-e.ak.fbcdn.net/hphotos-ak-snc1/hs022.snc1/3073_71029486133_722881133_1764756_5224177_n.jpg" alt="pool again" width="200" height="150" /><img src="http://photos-d.ak.fbcdn.net/hphotos-ak-snc1/hs022.snc1/3073_76748561133_722881133_1829827_658478_n.jpg" alt="videoke area" width="200" height="150" /></p>
<p>We arrived at around 3pm and only began to swim as the sun started to set. The night was filled with laughter and fun as we swam and dipped in the pool, played cards (of poker, of pusoy dos, of lucky nine, etc), played mahjong, shared stories, sang our hearts out and partied the night away.</p>
<p><img src="http://photos-a.ak.fbcdn.net/hphotos-ak-snc1/hs022.snc1/3073_71051666133_722881133_1765112_4686871_n.jpg" alt="happy hour" width="200" height="150" /><img src="http://photos-c.ak.fbcdn.net/hphotos-ak-snc1/hs022.snc1/3073_71070846133_722881133_1765570_3765076_n.jpg" alt="" width="200" height="150" /><img src="http://photos-b.ak.fbcdn.net/hphotos-ak-snc1/hs022.snc1/3073_71070961133_722881133_1765593_4656150_n.jpg" alt="pool" width="200" height="150" /><img src="http://photos-d.ak.fbcdn.net/hphotos-ak-snc1/hs022.snc1/3073_71070971133_722881133_1765595_2271285_n.jpg" alt="videoke sam" width="200" height="150" /></p>
<p>One of our officemates wasn&#8217;t able to attend the event. But he still managed to get involved in one way or another:</p>
<p><img src="http://photos-f.ak.fbcdn.net/hphotos-ak-snc1/hs022.snc1/3073_71071026133_722881133_1765605_4715578_n.jpg" alt="online outing" width="200" height="150" /></p>
<p>Now this is what we call Online Presence! ^_^</p>
]]></content:encoded>
			<wfw:commentRss>http://www.ideyatech.com/2009/04/company-outing-2009/feed/</wfw:commentRss>
		</item>
		<item>
		<title>Recovering data from a crashed Macbook</title>
		<link>http://www.ideyatech.com/2009/04/recovering-data-from-a-crashed-macbook/</link>
		<comments>http://www.ideyatech.com/2009/04/recovering-data-from-a-crashed-macbook/#comments</comments>
		<pubDate>Wed, 15 Apr 2009 05:44:14 +0000</pubDate>
		<dc:creator>Allan Tan</dc:creator>
		
		<category><![CDATA[Stories]]></category>

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

		<category><![CDATA[data recovery]]></category>

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

		<guid isPermaLink="false">http://www.ideyatech.com/?p=240</guid>
		<description><![CDATA[<img class="alignleft" src="http://www.ideyatech.com/wp-content/uploads/thumbs/macbook.png" alt="Recovering data from a crashed Macbook" title="Recovering data from a crashed Macbook" />

Two days ago my Macbook failed to startup and I later realized that the hard disk had seized to function. So, to save time for others, I’m sharing my experience with the steps how to save your previous files. If you are consistently unable to startup your Macbook after 10 minutes or more, consider doing these suggested steps. 8 steps after the jump.]]></description>
			<content:encoded><![CDATA[<div class="tweetmeme_button" style="float: left; margin: 0.25em 1.5em 1em 0;"><a href="http://api.tweetmeme.com/share?url=http%3A%2F%2Fwww.ideyatech.com%2F2009%2F04%2Frecovering-data-from-a-crashed-macbook%2F"><img src="http://api.tweetmeme.com/imagebutton.gif?url=http%3A%2F%2Fwww.ideyatech.com%2F2009%2F04%2Frecovering-data-from-a-crashed-macbook%2F" height="61" width="51" /></a></div><p>Two days ago my Macbook failed to startup and I later realized that the hard disk had seized to function. So, to save time for others, I&#8217;m sharing my experience with the steps how to save your previous files.</p>
<p>If you are consistently unable to startup your Macbook after 10 minutes of more, considering doing the suggested steps below:</p>
<p>1.) Restart your Macbook and press Apple-V. This will startup your machine in verify mode where start-up sequence is shown on screen. Alternatively, you can try Apple-S for single user mode. If you see message like &#8220;unable to read fs block&#8230;&#8221;, this means that you have bad sectors on your drive.</p>
<p>2.)  If you are unable to proceed due to read failure, try booting from the installation CD. Insert the OSX installation CD, and use &#8220;Disk Utility&#8221; to diagnose the problem. You may try the &#8220;Repair Disk&#8221; option and see if that solves your problem.</p>
<p>3.) If the &#8220;Repair Disk&#8221; failed, try starting up using Target Mode. You will need an extra machine with a firewire cable to do this. See <a href="http://support.apple.com/kb/HT1661" target="_blank">http://support.apple.com/kb/HT1661</a> for more details. Once target mode is setup, try accessing your drive and proceed to step #7 on how to extract corrupted data.</p>
<p>4.) If target mode failed to read your drive, or you simply don&#8217;t have the tools (extra machine, or firewire cable), pull out your hard drive and put it into an HDD enclosure. An HDD enclosure will convert your hard drive into an external drive. You can the plug this enclosure on another machine so you can extract files from it. Proceed to step #7 on how to extract corrupted data.</p>
<p>5.) If you don&#8217;t have an extra machine, buy another hard drive. If you have reached this point without successfully recovering your system, you most likely encountered a hardware failure already. So, you&#8217;ll have to get a new drive anyway.</p>
<p>6.) Install a new copy of OSX on your machine, and configure everything accordingly. This will be your new home. Once completed, your next concern is how to recover the files from the old drive.</p>
<p>7.) If you are able to access the drive from Finder, then simply copy the files to a new drive.</p>
<p>8.) If you are unable to see the drive from Finder, try using &#8220;Disk Utility&#8221; again. If you are able to see your drive from Disk Utility, try using a data restoration software. In my case, I used &#8220;Data Rescue II&#8221;. Initial scans on the drive didn&#8217;t show any files for restoration. However, after trying the thorough scan, the files appeared. Thorough scan takes a while to finish, it took me about 4 hours to scan an entire drive of 120Gb. Once you have the file, restore them to your desired location.</p>
<p>That&#8217;s it. I hope you won&#8217;t need these tips but just in case you do, hope you find these tips useful.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.ideyatech.com/2009/04/recovering-data-from-a-crashed-macbook/feed/</wfw:commentRss>
		</item>
		<item>
		<title>Doing Business in Ortigas, Philippines</title>
		<link>http://www.ideyatech.com/2009/04/doing-business-in-ortigas/</link>
		<comments>http://www.ideyatech.com/2009/04/doing-business-in-ortigas/#comments</comments>
		<pubDate>Tue, 14 Apr 2009 10:30:21 +0000</pubDate>
		<dc:creator>Ideyatech</dc:creator>
		
		<category><![CDATA[Stories]]></category>

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

		<category><![CDATA[doing business]]></category>

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

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

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

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

		<guid isPermaLink="false">http://www.ideyatech.com/?p=238</guid>
		<description><![CDATA[<img class="alignleft" src="http://www.ideyatech.com/wp-content/uploads/thumbs/ortigas.png" alt="Doing Business in Ortigas, Philippines" title="Doing Business in Ortigas, Philippines" />

Being a technology outsourcing firm, Ideyatech works with various industries and corporations outside the Philippines. It has always been our observation that while the firm’s address is Pasig City, we are still referred to as “Manila” team due to its being located in the Metro Manila region. I am pretty sure that if our team of Java Development experts were located in...]]></description>
			<content:encoded><![CDATA[<div class="tweetmeme_button" style="float: left; margin: 0.25em 1.5em 1em 0;"><a href="http://api.tweetmeme.com/share?url=http%3A%2F%2Fwww.ideyatech.com%2F2009%2F04%2Fdoing-business-in-ortigas%2F"><img src="http://api.tweetmeme.com/imagebutton.gif?url=http%3A%2F%2Fwww.ideyatech.com%2F2009%2F04%2Fdoing-business-in-ortigas%2F" height="61" width="51" /></a></div><p style="margin-bottom: 2em;" align="center"><img title="Ortigas Center, Pasig City" src="http://www.ideyatech.com/wp-content/uploads/ortigas.jpg" border="0" alt="Ortigas Center, Pasig City" width="500" height="325" /></p>
<p style="clear:both; margin-bottom: 30px;">
<p>Being a technology outsourcing firm, Ideyatech works with various industries and corporations outside the Philippines. It has always been our observation that while the firm’s address is Pasig City, we are still referred to as “Manila” team due to its being located in the Metro Manila region. I am pretty sure that if our team of Java Development experts were located in, say, Cebu City, we would have been called “Cebu” team, or “Philippines”. Nobody calls us Pasig team, which we actually are, judging by the city where we are located; or as Ortigas team, in reference to the business district where Ideyatech has its offices.</p>
<p>So allow me to give a brief information about Ortigas and the city that plays host to a portion of this dynamic district, Pasig. Basically, the breakdown of our address goes by this simple deduction:</p>
<p style="center;">Philippines — Metro Manila (or Manila) — Pasig City — Ortigas</p>
<p>Over the past decade, Pasig City came on its own as a major commercial district in Metro Manila, Philippines, rivaling nearby Makati in business growth, infrastructure, and employment. Workers from nearby cities flock to Ortigas Business Center, Pasig’s main business hub, which hosts contact centers, software development companies, and shopping malls.</p>
<div style="margin-top: 20px; margin-bottom: 20px; clear: both;">
<div style="margin-bottom: 5px; margin-right: 5px; float: left;"><a href="http://www.ideyatech.com/wp-content/uploads/ortigas/fullsize/ortigas-01.jpg"><img src="http://www.ideyatech.com/wp-content/uploads/ortigas/thumbs/ortigas-01_s.jpg" width="75" height="75" border="0" alt="Ortigas" title="Ortigas" /></a></div>
<div style="margin-bottom: 5px; margin-right: 5px; float: left;"><a href="http://www.ideyatech.com/wp-content/uploads/ortigas/fullsize/ortigas-02.jpg"><img src="http://www.ideyatech.com/wp-content/uploads/ortigas/thumbs/ortigas-02_s.jpg" width="75" height="75" border="0" alt="Ortigas" title="Ortigas" /></a></div>
<div style="margin-bottom: 5px; margin-right: 5px; float: left;"><a href="http://www.ideyatech.com/wp-content/uploads/ortigas/fullsize/ortigas-03.jpg"><img src="http://www.ideyatech.com/wp-content/uploads/ortigas/thumbs/ortigas-03_s.jpg" width="75" height="75" border="0" alt="Ortigas" title="Ortigas" /></a></div>
<div style="margin-bottom: 5px; margin-right: 5px; float: left;"><a href="http://www.ideyatech.com/wp-content/uploads/ortigas/fullsize/ortigas-04.jpg"><img src="http://www.ideyatech.com/wp-content/uploads/ortigas/thumbs/ortigas-04_s.jpg" width="75" height="75" border="0" alt="Ortigas" title="Ortigas" /></a></div>
<div style="margin-bottom: 5px; margin-right: 5px; float: left;"><a href="http://www.ideyatech.com/wp-content/uploads/ortigas/fullsize/ortigas-05.jpg"><img src="http://www.ideyatech.com/wp-content/uploads/ortigas/thumbs/ortigas-05_s.jpg" width="75" height="75" border="0" alt="Ortigas" title="Ortigas" /></a></div>
<div style="margin-bottom: 5px; margin-right: 5px; float: left;"><a href="http://www.ideyatech.com/wp-content/uploads/ortigas/fullsize/ortigas-06.jpg"><img src="http://www.ideyatech.com/wp-content/uploads/ortigas/thumbs/ortigas-06_s.jpg" width="75" height="75" border="0" alt="Ortigas" title="Ortigas" /></a></div>
<div style="margin-bottom: 5px; margin-right: 5px; float: left;"><a href="http://www.ideyatech.com/wp-content/uploads/ortigas/fullsize/ortigas-07.jpg"><img src="http://www.ideyatech.com/wp-content/uploads/ortigas/thumbs/ortigas-07_s.jpg" width="75" height="75" border="0" alt="Ortigas" title="Ortigas" /></a></div>
<div style="margin-bottom: 5px; margin-right: 5px; float: left;"><a href="http://www.ideyatech.com/wp-content/uploads/ortigas/fullsize/ortigas-08.jpg"><img src="http://www.ideyatech.com/wp-content/uploads/ortigas/thumbs/ortigas-08_s.jpg" width="75" height="75" border="0" alt="Ortigas" title="Ortigas" /></a></div>
<div style="margin-bottom: 5px; margin-right: 5px; float: left;"><a href="http://www.ideyatech.com/wp-content/uploads/ortigas/fullsize/ortigas-09.jpg"><img src="http://www.ideyatech.com/wp-content/uploads/ortigas/thumbs/ortigas-09_s.jpg" width="75" height="75" border="0" alt="Ortigas" title="Ortigas" /></a></div>
<div style="margin-bottom: 5px; margin-right: 5px; float: left;"><a href="http://www.ideyatech.com/wp-content/uploads/ortigas/fullsize/ortigas-10.jpg"><img src="http://www.ideyatech.com/wp-content/uploads/ortigas/thumbs/ortigas-10_s.jpg" width="75" height="75" border="0" alt="Ortigas" title="Ortigas" /></a></div>
<div style="margin-bottom: 5px; margin-right: 5px; float: left;"><a href="http://www.ideyatech.com/wp-content/uploads/ortigas/fullsize/ortigas-11.jpg"><img src="http://www.ideyatech.com/wp-content/uploads/ortigas/thumbs/ortigas-11_s.jpg" width="75" height="75" border="0" alt="Ortigas" title="Ortigas" /></a></div>
<div style="margin-bottom: 5px; margin-right: 5px; float: left;"><a href="http://www.ideyatech.com/wp-content/uploads/ortigas/fullsize/ortigas-12.jpg"><img src="http://www.ideyatech.com/wp-content/uploads/ortigas/thumbs/ortigas-12_s.jpg" width="75" height="75" border="0" alt="Ortigas" title="Ortigas" /></a></div>
<div style="margin-bottom: 5px; margin-right: 5px; float: left;"><a href="http://www.ideyatech.com/wp-content/uploads/ortigas/fullsize/ortigas-13.jpg"><img src="http://www.ideyatech.com/wp-content/uploads/ortigas/thumbs/ortigas-13_s.jpg" width="75" height="75" border="0" alt="Ortigas" title="Ortigas" /></a></div>
<div style="margin-bottom: 5px; margin-right: 5px; float: left;"><a href="http://www.ideyatech.com/wp-content/uploads/ortigas/fullsize/ortigas-14.jpg"><img src="http://www.ideyatech.com/wp-content/uploads/ortigas/thumbs/ortigas-14_s.jpg" width="75" height="75" border="0" alt="Ortigas" title="Ortigas" /></a></div>
<div style="margin-bottom: 5px; margin-right: 5px; float: left;"><a href="http://www.ideyatech.com/wp-content/uploads/ortigas/fullsize/ortigas-15.jpg"><img src="http://www.ideyatech.com/wp-content/uploads/ortigas/thumbs/ortigas-15_s.jpg" width="75" height="75" border="0" alt="Ortigas" title="Ortigas" /></a></div>
<div style="margin-bottom: 5px; margin-right: 5px; float: left;"><a href="http://www.ideyatech.com/wp-content/uploads/ortigas/fullsize/ortigas-16.jpg"><img src="http://www.ideyatech.com/wp-content/uploads/ortigas/thumbs/ortigas-16_s.jpg" width="75" height="75" border="0" alt="Ortigas" title="Ortigas" /></a></div>
<div style="margin-bottom: 5px; margin-right: 5px; float: left;"><a href="http://www.ideyatech.com/wp-content/uploads/ortigas/fullsize/ortigas-17.jpg"><img src="http://www.ideyatech.com/wp-content/uploads/ortigas/thumbs/ortigas-17_s.jpg" width="75" height="75" border="0" alt="Ortigas" title="Ortigas" /></a></div>
<div style="margin-bottom: 5px; margin-right: 5px; float: left;"><a href="http://www.ideyatech.com/wp-content/uploads/ortigas/fullsize/ortigas-18.jpg"><img src="http://www.ideyatech.com/wp-content/uploads/ortigas/thumbs/ortigas-18_s.jpg" width="75" height="75" border="0" alt="Ortigas" title="Ortigas" /></a></div>
<div style="margin-bottom: 5px; margin-right: 5px; float: left;"><a href="http://www.ideyatech.com/wp-content/uploads/ortigas/fullsize/ortigas-19.jpg"><img src="http://www.ideyatech.com/wp-content/uploads/ortigas/thumbs/ortigas-19_s.jpg" width="75" height="75" border="0" alt="Ortigas" title="Ortigas" /></a></div>
<div style="margin-bottom: 5px; margin-right: 5px; float: left;"><a href="http://www.ideyatech.com/wp-content/uploads/ortigas/fullsize/ortigas-20.jpg"><img src="http://www.ideyatech.com/wp-content/uploads/ortigas/thumbs/ortigas-20_s.jpg" width="75" height="75" border="0" alt="Ortigas" title="Ortigas" /></a></div>
<div style="margin-bottom: 5px; margin-right: 5px; float: left;"><a href="http://www.ideyatech.com/wp-content/uploads/ortigas/fullsize/ortigas-21.jpg"><img src="http://www.ideyatech.com/wp-content/uploads/ortigas/thumbs/ortigas-21_s.jpg" width="75" height="75" border="0" alt="Ortigas" title="Ortigas" /></a></div>
<div style="margin-bottom: 5px; margin-right: 5px; float: left;"><a href="http://www.ideyatech.com/wp-content/uploads/ortigas/fullsize/ortigas-22.jpg"><img src="http://www.ideyatech.com/wp-content/uploads/ortigas/thumbs/ortigas-22_s.jpg" width="75" height="75" border="0" alt="Ortigas" title="Ortigas" /></a></div>
<div style="margin-bottom: 5px; margin-right: 5px; float: left;"><a href="http://www.ideyatech.com/wp-content/uploads/ortigas/fullsize/ortigas-23.jpg"><img src="http://www.ideyatech.com/wp-content/uploads/ortigas/thumbs/ortigas-23_s.jpg" width="75" height="75" border="0" alt="Ortigas" title="Ortigas" /></a></div>
<div style="margin-bottom: 5px; margin-right: 5px; float: left;"><a href="http://www.ideyatech.com/wp-content/uploads/ortigas/fullsize/ortigas-24.jpg"><img src="http://www.ideyatech.com/wp-content/uploads/ortigas/thumbs/ortigas-24_s.jpg" width="75" height="75" border="0" alt="Ortigas" title="Ortigas" /></a></div>
<div style="margin-bottom: 5px; margin-right: 5px; float: left;"><a href="http://www.ideyatech.com/wp-content/uploads/ortigas/fullsize/ortigas-25.jpg"><img src="http://www.ideyatech.com/wp-content/uploads/ortigas/thumbs/ortigas-25_s.jpg" width="75" height="75" border="0" alt="Ortigas" title="Ortigas" /></a></div>
<div style="margin-bottom: 5px; margin-right: 5px; float: left;"><a href="http://www.ideyatech.com/wp-content/uploads/ortigas/fullsize/ortigas-26.jpg"><img src="http://www.ideyatech.com/wp-content/uploads/ortigas/thumbs/ortigas-26_s.jpg" width="75" height="75" border="0" alt="Ortigas" title="Ortigas" /></a></div>
<div style="margin-bottom: 5px; margin-right: 5px; float: left;"><a href="http://www.ideyatech.com/wp-content/uploads/ortigas/fullsize/ortigas-27.jpg"><img src="http://www.ideyatech.com/wp-content/uploads/ortigas/thumbs/ortigas-27_s.jpg" width="75" height="75" border="0" alt="Ortigas" title="Ortigas" /></a></div>
<div style="margin-bottom: 5px; margin-right: 5px; float: left;"><a href="http://www.ideyatech.com/wp-content/uploads/ortigas/fullsize/ortigas-28.jpg"><img src="http://www.ideyatech.com/wp-content/uploads/ortigas/thumbs/ortigas-28_s.jpg" width="75" height="75" border="0" alt="Ortigas" title="Ortigas" /></a></div>
<div style="margin-bottom: 5px; margin-right: 5px; float: left;"><a href="http://www.ideyatech.com/wp-content/uploads/ortigas/fullsize/ortigas-29.jpg"><img src="http://www.ideyatech.com/wp-content/uploads/ortigas/thumbs/ortigas-29_s.jpg" width="75" height="75" border="0" alt="Ortigas" title="Ortigas" /></a></div>
<div style="margin-bottom: 5px; margin-right: 5px; float: left;"><a href="http://www.ideyatech.com/wp-content/uploads/ortigas/fullsize/ortigas-30.jpg"><img src="http://www.ideyatech.com/wp-content/uploads/ortigas/thumbs/ortigas-30_s.jpg" width="75" height="75" border="0" alt="Ortigas" title="Ortigas" /></a></div>
<div style="margin-bottom: 5px; margin-right: 5px; float: left;"><a href="http://www.ideyatech.com/wp-content/uploads/ortigas/fullsize/ortigas-31.jpg"><img src="http://www.ideyatech.com/wp-content/uploads/ortigas/thumbs/ortigas-31_s.jpg" width="75" height="75" border="0" alt="Ortigas" title="Ortigas" /></a></div>
<div style="margin-bottom: 5px; margin-right: 5px; float: left;"><a href="http://www.ideyatech.com/wp-content/uploads/ortigas/fullsize/ortigas-32.jpg"><img src="http://www.ideyatech.com/wp-content/uploads/ortigas/thumbs/ortigas-32_s.jpg" width="75" height="75" border="0" alt="Ortigas" title="Ortigas" /></a></div>
<div style="margin-bottom: 5px; margin-right: 5px; float: left;"><a href="http://www.ideyatech.com/wp-content/uploads/ortigas/fullsize/ortigas-33.jpg"><img src="http://www.ideyatech.com/wp-content/uploads/ortigas/thumbs/ortigas-33_s.jpg" width="75" height="75" border="0" alt="Ortigas" title="Ortigas" /></a></div>
<div style="margin-bottom: 5px; margin-right: 5px; float: left;"><a href="http://www.ideyatech.com/wp-content/uploads/ortigas/fullsize/ortigas-34.jpg"><img src="http://www.ideyatech.com/wp-content/uploads/ortigas/thumbs/ortigas-34_s.jpg" width="75" height="75" border="0" alt="Ortigas" title="Ortigas" /></a></div>
<div style="margin-bottom: 5px; margin-right: 5px; float: left;"><a href="http://www.ideyatech.com/wp-content/uploads/ortigas/fullsize/ortigas-35.jpg"><img src="http://www.ideyatech.com/wp-content/uploads/ortigas/thumbs/ortigas-35_s.jpg" width="75" height="75" border="0" alt="Ortigas" title="Ortigas" /></a></div>
<div style="margin-bottom: 5px; margin-right: 5px; float: left;"><a href="http://www.ideyatech.com/wp-content/uploads/ortigas/fullsize/ortigas-36.jpg"><img src="http://www.ideyatech.com/wp-content/uploads/ortigas/thumbs/ortigas-36_s.jpg" width="75" height="75" border="0" alt="Ortigas" title="Ortigas" /></a></div>
<div style="margin-bottom: 5px; margin-right: 5px; float: left;"><a href="http://www.ideyatech.com/wp-content/uploads/ortigas/fullsize/ortigas-37.jpg"><img src="http://www.ideyatech.com/wp-content/uploads/ortigas/thumbs/ortigas-37_s.jpg" width="75" height="75" border="0" alt="Ortigas" title="Ortigas" /></a></div>
<div style="margin-bottom: 5px; margin-right: 5px; float: left;"><a href="http://www.ideyatech.com/wp-content/uploads/ortigas/fullsize/ortigas-38.jpg"><img src="http://www.ideyatech.com/wp-content/uploads/ortigas/thumbs/ortigas-38_s.jpg" width="75" height="75" border="0" alt="Ortigas" title="Ortigas" /></a></div>
<div style="margin-bottom: 5px; margin-right: 5px; float: left;"><a href="http://www.ideyatech.com/wp-content/uploads/ortigas/fullsize/ortigas-39.jpg"><img src="http://www.ideyatech.com/wp-content/uploads/ortigas/thumbs/ortigas-39_s.jpg" width="75" height="75" border="0" alt="Ortigas" title="Ortigas" /></a></div>
<div style="margin-bottom: 5px; margin-right: 5px;"><a href="http://www.ideyatech.com/wp-content/uploads/ortigas/fullsize/ortigas-40.jpg"><img src="http://www.ideyatech.com/wp-content/uploads/ortigas/thumbs/ortigas-40_s.jpg" width="75" height="75" border="0" alt="Ortigas" title="Ortigas" /></a></div>
</div>
<p>Ortigas, where Ideyatech is holding its offices, is strategically located at the intersection of Pasig and two other cities&#8211;Mandaluyong and Quezon City. It is bound by three major highways that service the northeast portions of Metro Manila region, namely, EDSA to the west, Ortigas Avenue to the north, and Shaw Boulevard to the south.</p>
<p>Ortigas Center is not an entirely new business enclave. However, although it was developed in the early 1980s, its growth as a major commercial center started with the establishment of three shopping centers on its northern section in the 1990s. It started with SM Megamall, which was at one point the biggest mall in Asia and second only to the Mall of America; then came Robinsons Galleria and Shangri-La Plaza malls.  Still, even before these shopping centers came along, Ortigas Center already hosted the corporate headquarters of three major business organizations: the Asian Development Bank, San Miguel Corporation, and the Manila Electric Company. And before I forget, the Philippine Stock Exchange has its home in Ortigas.</p>
<p>Infrastructure development in Ortigas Center grew at a tremendous pace in the mid-‘90s when tech companies and contact centers chose the location for its proximity to the Philippines’ financial center, Makati, and the gamut of modern skyscrapers that now house such companies as HSBC, Convergys, Sykes, and Hewlett-Packard, among many.  As each new development paved the way for another, Ortigas now boasts of one of the best telecommunication infrastructure in the Southeast Asian region.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.ideyatech.com/2009/04/doing-business-in-ortigas/feed/</wfw:commentRss>
		</item>
		<item>
		<title>Another Fun Bowling Night</title>
		<link>http://www.ideyatech.com/2009/04/237/</link>
		<comments>http://www.ideyatech.com/2009/04/237/#comments</comments>
		<pubDate>Wed, 01 Apr 2009 08:40:39 +0000</pubDate>
		<dc:creator>Philip Lim</dc:creator>
		
		<category><![CDATA[Stories]]></category>

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

		<category><![CDATA[bowling night]]></category>

		<guid isPermaLink="false">http://www.ideyatech.com/?p=237</guid>
		<description><![CDATA[<img class="alignleft" src="http://www.ideyatech.com/wp-content/uploads/thumbs/another-fun-bowling-night.png" alt="Another Fun Bowling Night" title="Another Fun Bowling Night" />

Last Tuesday, the 24th of March ‘09, me and six of my colleagues from Ideyatech spent a few hours of bowling at Megamall’s Bowling Center. The highest scorer for the night was Julius, in his second game, garnering a score of 156, followed by Chris with a score of 152 in his third game. The highest average for the night goes to Chris. Complete tally after the jump.]]></description>
			<content:encoded><![CDATA[<div class="tweetmeme_button" style="float: left; margin: 0.25em 1.5em 1em 0;"><a href="http://api.tweetmeme.com/share?url=http%3A%2F%2Fwww.ideyatech.com%2F2009%2F04%2F237%2F"><img src="http://api.tweetmeme.com/imagebutton.gif?url=http%3A%2F%2Fwww.ideyatech.com%2F2009%2F04%2F237%2F" height="61" width="51" /></a></div><p>Last Tuesday, the 24th of March &#8216;09, me and six of my colleagues from Ideyatech spent a few hours of bowling at Megamall&#8217;s Bowling Center. I&#8217;ve tallied the scores per team, per game, per person, as found below:</p>
<p><!--[if gte mso 9]><xml> Normal   0         false   false   false                                 MicrosoftInternetExplorer4 </xml><![endif]--><!--[if gte mso 9]><xml> </xml><![endif]--> <!--[if gte mso 10]></p>
<style>
 /* Style Definitions */
 table.MsoNormalTable
	{mso-style-name:"Table Normal";
	mso-tstyle-rowband-size:0;
	mso-tstyle-colband-size:0;
	mso-style-noshow:yes;
	mso-style-parent:"";
	mso-padding-alt:0in 5.4pt 0in 5.4pt;
	mso-para-margin:0in;
	mso-para-margin-bottom:.0001pt;
	mso-pagination:widow-orphan;
	font-size:10.0pt;
	font-family:"Times New Roman";
	mso-fareast-font-family:"Times New Roman";
	mso-ansi-language:#0400;
	mso-fareast-language:#0400;
	mso-bidi-language:#0400;}
</style>
<p><![endif]--></p>
<table border="0" cellspacing="0" cellpadding="0" width="349">
<tbody>
<tr>
<td width="85" valign="bottom"><strong>TEAM 1</strong></td>
<td width="47">
<p align="center">Allan</p>
</td>
<td width="47">
<p align="center">Chris</p>
</td>
<td width="47">
<p align="center">Rey</p>
</td>
<td width="47">
<p align="center">Vangie</p>
</td>
<td width="39">
<p align="center">Total</p>
</td>
<td width="39">
<p align="center">Ave</p>
</td>
</tr>
<tr>
<td width="85" valign="bottom">Game 1</td>
<td width="47">
<p align="center">122</p>
</td>
<td width="47">
<p align="center">129</p>
</td>
<td width="47">
<p align="center">
</td>
<td width="47">
<p align="center">
</td>
<td width="39">
<p align="center">251.0</p>
</td>
<td width="39">
<p align="center">125.5</p>
</td>
</tr>
<tr>
<td width="85" valign="bottom">Game 2</td>
<td width="47">
<p align="center">77</p>
</td>
<td width="47">
<p align="center">122</p>
</td>
<td width="47">
<p align="center">53</p>
</td>
<td width="47">
<p align="center">
</td>
<td width="39">
<p align="center">252.0</p>
</td>
<td width="39">
<p align="center">84.0</p>
</td>
</tr>
<tr>
<td width="85" valign="bottom">Game 3</td>
<td width="47">
<p align="center">113</p>
</td>
<td width="47">
<p align="center"><strong>152</strong></p>
</td>
<td width="47">
<p align="center">74</p>
</td>
<td width="47">
<p align="center">108</p>
</td>
<td width="39">
<p align="center">447.0</p>
</td>
<td width="39">
<p align="center">111.8</p>
</td>
</tr>
<tr>
<td width="85" valign="bottom">personal total</td>
<td width="47">
<p align="center">312.0</p>
</td>
<td width="47">
<p align="center">403.0</p>
</td>
<td width="47">
<p align="center">127.0</p>
</td>
<td width="47">
<p align="center">108.0</p>
</td>
<td width="39">
<p align="center">950.0</p>
</td>
<td width="39">
<p align="center">
</td>
</tr>
<tr>
<td width="85" valign="bottom">personal ave</td>
<td width="47">
<p align="center">104.0</p>
</td>
<td width="47">
<p align="center">134.3</p>
</td>
<td width="47">
<p align="center">63.5</p>
</td>
<td width="47">
<p align="center">108.0</p>
</td>
<td width="39">
<p align="center">316.7</p>
</td>
<td width="39">
<p align="center">
</td>
</tr>
</tbody>
</table>
<p><!--[if gte mso 9]><xml> Normal   0         false   false   false                                 MicrosoftInternetExplorer4 </xml><![endif]--><!--[if gte mso 9]><xml> </xml><![endif]--> <!--[if gte mso 10]></p>
<style>
 /* Style Definitions */
 table.MsoNormalTable
	{mso-style-name:"Table Normal";
	mso-tstyle-rowband-size:0;
	mso-tstyle-colband-size:0;
	mso-style-noshow:yes;
	mso-style-parent:"";
	mso-padding-alt:0in 5.4pt 0in 5.4pt;
	mso-para-margin:0in;
	mso-para-margin-bottom:.0001pt;
	mso-pagination:widow-orphan;
	font-size:10.0pt;
	font-family:"Times New Roman";
	mso-fareast-font-family:"Times New Roman";
	mso-ansi-language:#0400;
	mso-fareast-language:#0400;
	mso-bidi-language:#0400;}
</style>
<p><![endif]--></p>
<table border="0" cellspacing="0" cellpadding="0" width="309">
<tbody>
<tr>
<td width="85" valign="bottom"><strong>TEAM 2</strong></td>
<td width="47">
<p align="center">Flip</p>
</td>
<td width="47">
<p align="center">Julius</p>
</td>
<td width="47">
<p align="center">Benjie</p>
</td>
<td width="45">
<p align="center">Total</p>
</td>
<td width="39">
<p align="center">Ave</p>
</td>
</tr>
<tr>
<td width="85" valign="bottom">Game 1</td>
<td width="47">
<p align="center">127</p>
</td>
<td width="47">
<p align="center"><strong>137</strong></p>
</td>
<td width="47">
<p align="center">111</p>
</td>
<td width="45">
<p align="center">375.0</p>
</td>
<td width="39">
<p align="center">125.0</p>
</td>
</tr>
<tr>
<td width="85" valign="bottom">Game 2</td>
<td width="47">
<p align="center">113</p>
</td>
<td width="47">
<p align="center"><strong>156</strong></p>
</td>
<td width="47">
<p align="center">106</p>
</td>
<td width="45">
<p align="center">375.0</p>
</td>
<td width="39">
<p align="center">125.0</p>
</td>
</tr>
<tr>
<td width="85" valign="bottom">Game 3</td>
<td width="47">
<p align="center">150</p>
</td>
<td width="47">
<p align="center">87</p>
</td>
<td width="47">
<p align="center">108</p>
</td>
<td width="45">
<p align="center">345.0</p>
</td>
<td width="39">
<p align="center">115.0</p>
</td>
</tr>
<tr>
<td width="85" valign="bottom">personal total</td>
<td width="47">
<p align="center">390.0</p>
</td>
<td width="47">
<p align="center">380.0</p>
</td>
<td width="47">
<p align="center">325.0</p>
</td>
<td width="45">
<p align="center">1095.0</p>
</td>
<td width="39">
<p align="center">
</td>
</tr>
<tr>
<td width="85" valign="bottom">personal ave</td>
<td width="47">
<p align="center">130.0</p>
</td>
<td width="47">
<p align="center">126.7</p>
</td>
<td width="47">
<p align="center">108.3</p>
</td>
<td width="45">
<p align="center">365.0</p>
</td>
<td width="39">
<p align="center">
</td>
</tr>
</tbody>
</table>
<p>The highest scorer for the night was Julius, in his second game, garnering a score of 156, followed by Chris with a score of 152 in his third game.</p>
<p>The highest average for the night goes to Chris, with a 129-122-152 score to average 134.30, trailed by yours truly, with a 127-113-150 score to average 130.00.</p>
<p>Based on over-all average, team 2 (flip, julius and benjie) won with a total of 1095 and an average of 365 for three games.</p>
<p>Great work guys! Let&#8217;s do this again soon!</p>
<p>The pictures are attached below:</p>
<p><img class="alignnone" src="http://farm4.static.flickr.com/3427/3404014938_957f0dfcca_m.jpg" alt="Strategizing before the game" /></p>
<p><img class="alignnone" src="http://farm4.static.flickr.com/3443/3403206001_474c1fdb11_m.jpg" alt="bowling group picture 1" /><img class="alignnone" src="http://farm4.static.flickr.com/3569/3404012878_5dbdc15d62_m.jpg" alt="bowling group picture 2" /></p>
]]></content:encoded>
			<wfw:commentRss>http://www.ideyatech.com/2009/04/237/feed/</wfw:commentRss>
		</item>
		<item>
		<title>Hidden Flaw in Audit Logging w/ Hibernate Interceptor &#038; ACEGI</title>
		<link>http://www.ideyatech.com/2009/03/a-hidden-fatal-flaw-in-audit-logging-with-hibernate-and-acegi/</link>
		<comments>http://www.ideyatech.com/2009/03/a-hidden-fatal-flaw-in-audit-logging-with-hibernate-and-acegi/#comments</comments>
		<pubDate>Mon, 02 Mar 2009 16:06:08 +0000</pubDate>
		<dc:creator>Allan Tan</dc:creator>
		
		<category><![CDATA[Java]]></category>

		<category><![CDATA[Technology Center]]></category>

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

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

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

		<guid isPermaLink="false">http://www.ideyatech.com/?p=216</guid>
		<description><![CDATA[<img class="alignleft" src="http://www.ideyatech.com/wp-content/uploads/thumbs/audit-logging.png" alt="Hidden Flaw in Audit Logging w/ Hibernate Interceptor &#038; ACEGI" title="Hidden Flaw in Audit Logging w/ Hibernate Interceptor &#038; ACEGI" />

We've recently came across a fatal problem in our audit logging facility where Acegi returns a different user other than the actual user. It's a little hard to replicate because it happens only when multiple users are accessing the system. In summary, audit logs were associated to other users because Acegi SecurityContextHolder is returning incorrect...]]></description>
			<content:encoded><![CDATA[<div class="tweetmeme_button" style="float: left; margin: 0.25em 1.5em 1em 0;"><a href="http://api.tweetmeme.com/share?url=http%3A%2F%2Fwww.ideyatech.com%2F2009%2F03%2Fa-hidden-fatal-flaw-in-audit-logging-with-hibernate-and-acegi%2F"><img src="http://api.tweetmeme.com/imagebutton.gif?url=http%3A%2F%2Fwww.ideyatech.com%2F2009%2F03%2Fa-hidden-fatal-flaw-in-audit-logging-with-hibernate-and-acegi%2F" height="61" width="51" /></a></div><p>We&#8217;ve recently discovered a problem in our audit logging facility where Acegi returns a different user other than the actual user. It&#8217;s a little hard to replicate because it happens only when multiple users are accessing the system. In summary, audit logs were associated to other users because Acegi SecurityContextHolder is returning incorrect user reference when invoked within a Hibernate interceptor. Our tests showed that retrieving user within the service or DAO layer works correctly but retrieving user from an interceptor may potentially return a different user.</p>
<p>Our implementation is based on recommended audit logging technique as documented by Hibernate <a href="http://www.hibernate.org/318.html">here</a> with a couple of extensions. To be exact, here&#8217;s an <a href="http://www.ideyatech.com/2008/07/audit-logging-via-hibernate-interceptor-12/">old post</a> about our implementation.</p>
<p>We discovered this problem during the Beta Test stage since there are multiple concurrent users testing the system. To prove that system is misbehaving, we&#8217;ve performed the following:</p>
<ul>
<li> Create a long running process for User A session. Let the process continue to execute with recording of audit logs.</li>
<li> Create a new session for User B and do a couple of actions for the user.</li>
<li> Check audit logs created for process of User A.</li>
</ul>
<p>Our test results showed that some audit logs for User A process were recorded to User B, specifically during the time when User B performs an action. Apparently, this poses a serious hidden flaw in using Hibernate Interceptor and Acegi SecurityContextHolder for audit logging.</p>
<p>Hibernate Interceptor seems to create a separate thread to perform postFlush and other interceptor functions and Acegi SecurityContextHolder also has its own threading algorithm. In the end, a disconnect of user sessions.</p>
<p>To solve this problem, we resorted to adding a transient variable for the user id in the Auditable entity. The value of user id is populated on the service level because Acegi returns the correct user reference at this time. While this solution may not seem intrusive, I&#8217;m happy to say that it solves the concurrency issue.</p>
<p>Nevertheless, I posted this blog as reference to anyone attempting to implement Audit Logging or anyone who has already encountered the same problem. Please post other possible solutions.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.ideyatech.com/2009/03/a-hidden-fatal-flaw-in-audit-logging-with-hibernate-and-acegi/feed/</wfw:commentRss>
		</item>
		<item>
		<title>Evolving through Recession</title>
		<link>http://www.ideyatech.com/2009/02/the-lessons-of-evolution-in-the-face-of-recession/</link>
		<comments>http://www.ideyatech.com/2009/02/the-lessons-of-evolution-in-the-face-of-recession/#comments</comments>
		<pubDate>Fri, 27 Feb 2009 11:12:07 +0000</pubDate>
		<dc:creator>Ideyatech</dc:creator>
		
		<category><![CDATA[Technology Center]]></category>

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

		<category><![CDATA[business survival]]></category>

		<category><![CDATA[business tech]]></category>

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

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

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

		<guid isPermaLink="false">http://www.ideyatech.com/?p=235</guid>
		<description><![CDATA[<img class="alignleft" src="http://www.ideyatech.com/wp-content/uploads/thumbs/recession.png" alt="Evolving through Recession" title="Evolving through Recession" />

Let’s face it: we are in the middle of a recession, and no matter how hard we think otherwise, millions of jobs are at stake, IT projects are restructured, and companies are slashing budgets wherever they can. But while the current global economic climate does not spell “business as usual,” we all know that business must go on. This is an interesting time if...]]></description>
			<content:encoded><![CDATA[<div class="tweetmeme_button" style="float: left; margin: 0.25em 1.5em 1em 0;"><a href="http://api.tweetmeme.com/share?url=http%3A%2F%2Fwww.ideyatech.com%2F2009%2F02%2Fthe-lessons-of-evolution-in-the-face-of-recession%2F"><img src="http://api.tweetmeme.com/imagebutton.gif?url=http%3A%2F%2Fwww.ideyatech.com%2F2009%2F02%2Fthe-lessons-of-evolution-in-the-face-of-recession%2F" height="61" width="51" /></a></div><p>Let’s face it: we are in the middle of a recession, and no matter how hard we think otherwise, millions of jobs are at stake, IT projects are restructured, and companies are slashing budgets wherever they can.</p>
<p>But while the current global economic climate does not spell “business as usual,” we all know that business must go on. This is an interesting time if one looks at the state of world economy in glass-half-full way. Everyone is connected to everyone else, thanks to international commerce and technologies that have allowed all of us to carry out business at lightning pace on a global scale.</p>
<p>The celebration of Charles Darwin’s 200th birthday last February 12 brings to mind how even among humans and organizations, the fittest survive. And anybody knows that in a survival-of-the-fittest scenario, it is not necessarily the biggest or the strongest that make it but the smartest and toughest.</p>
<p>In the tech world, survival of the fittest will be the norm at least until after market conditions change and new ways of distributing services at prices the market is willing to pay for comes around. For the meantime, middle-of-the-ground technologies, such as <a href="http://www.ideyatech.com/2009/01/blue-is-greener-open-tides-03-is-released/">open-source applications</a>, have every chance of surviving this climate. It will not be free, but being significantly cheaper, open-source, as an example, has a foot at the door, thanks to cost reductions that companies are actively pursuing.</p>
<p>Business needs must still be met, but the challenge lies in meeting these needs inexpensively without sacrificing scale and quality. It is why we can argue for the good that this recession will bring to technology, and how technology will sustain many companies until things turn for the better.</p>
<p>While there is very little venture capital that flows into new initiatives, competitive firms are reinventing the way technology is produced, distributed, and consumed. Netbooks are outselling their traditional mobile computing counterparts while <a href="http://www.ideyatech.com/tag/saas/">SaaS </a>and open-source applications are addressing specific, targeted computing requirements of businesses of any size (hey, everyone is in belt-tightening mode), from product management to enterprise resource planning to content development. Firms are cutting down on business travel costs by adopting virtualization, and so everything that could be done online has a good chance of being relegated to the cyberspace. It will be interesting to see how Java developers—most progenitors of AJAX—will take advantage of the business technology climate, with or without VC backing.</p>
<p>But moving beyond the web sphere, one could only wonder how the lessons of <a href="http://www.ideyatech.com/tag/web-20/">Web 2.0</a>, crowdsourcing, Wikipedia and open source applications will be applied to <a href="http://www.ideyatech.com/tag/outsourcing/">outsourcing </a>as companies seeking to cut costs ship more projects abroad.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.ideyatech.com/2009/02/the-lessons-of-evolution-in-the-face-of-recession/feed/</wfw:commentRss>
		</item>
		<item>
		<title>Congratulations to Batch 2 Trainees!</title>
		<link>http://www.ideyatech.com/2009/02/congratulations-to-batch-2-trainees/</link>
		<comments>http://www.ideyatech.com/2009/02/congratulations-to-batch-2-trainees/#comments</comments>
		<pubDate>Thu, 05 Feb 2009 03:58:36 +0000</pubDate>
		<dc:creator>Philip Lim</dc:creator>
		
		<category><![CDATA[Stories]]></category>

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

		<guid isPermaLink="false">http://www.ideyatech.com/?p=234</guid>
		<description><![CDATA[<img class="alignleft" src="http://www.ideyatech.com/wp-content/uploads/thumbs/batch-2.png" alt="Congratulations to Batch 2 Trainees!" title="Congratulations to Batch 2 Trainees!" />

Last January 30, 2009, the three-and-a-half-month-long Enterprise Java Web Development Training Program finally concluded. The second batch of trainees saw the fruits of their intense training with a short graduation ceremony last February 2, where they received their training certificates, and a small merienda treat from Allan. Pictures after the jump.]]></description>
			<content:encoded><![CDATA[<div class="tweetmeme_button" style="float: left; margin: 0.25em 1.5em 1em 0;"><a href="http://api.tweetmeme.com/share?url=http%3A%2F%2Fwww.ideyatech.com%2F2009%2F02%2Fcongratulations-to-batch-2-trainees%2F"><img src="http://api.tweetmeme.com/imagebutton.gif?url=http%3A%2F%2Fwww.ideyatech.com%2F2009%2F02%2Fcongratulations-to-batch-2-trainees%2F" height="61" width="51" /></a></div><p class="MsoNoSpacing">Last January 30, 2009, the three-and-a-half-month-long Enterprise Java Web Development Training Program finally concluded. The second batch of trainees saw the fruits of their intense training with a short graduation ceremony last February 2, where they received their training certificates, and a small merienda treat from Allan.</p>
<p class="MsoNoSpacing"><img style="vertical-align: middle;" src="http://photos-g.ak.fbcdn.net/photos-ak-snc1/v2189/240/119/722881133/n722881133_1483166_853.jpg" alt="Me, Allan and the Trainees" width="600" height="321" /></p>
<p class="MsoNoSpacing">
<p class="MsoNoSpacing"><img style="vertical-align: middle;" src="http://photos-h.ak.fbcdn.net/photos-ak-snc1/v2189/240/119/722881133/n722881133_1483167_1143.jpg" alt="Me, Allan, the Trainees and the Instructo" width="600" height="450" /></p>
<p class="MsoNoSpacing">Congratulations Batch 2 Ideyatech Trainees!</p>
]]></content:encoded>
			<wfw:commentRss>http://www.ideyatech.com/2009/02/congratulations-to-batch-2-trainees/feed/</wfw:commentRss>
		</item>
		<item>
		<title>Blue is greener. Open-tides 0.3 is released!</title>
		<link>http://www.ideyatech.com/2009/01/blue-is-greener-open-tides-03-is-released/</link>
		<comments>http://www.ideyatech.com/2009/01/blue-is-greener-open-tides-03-is-released/#comments</comments>
		<pubDate>Fri, 23 Jan 2009 14:48:26 +0000</pubDate>
		<dc:creator>Allan Tan</dc:creator>
		
		<category><![CDATA[Corporate News and Events]]></category>

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

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

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

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

		<guid isPermaLink="false">http://www.ideyatech.com/?p=232</guid>
		<description><![CDATA[<img class="alignleft" src="http://www.ideyatech.com/wp-content/uploads/thumbs/open-tides.png" alt="Blue is greener. Open-tides 0.3 is released!" title="Blue is greener. Open-tides 0.3 is released!" />

Today earmarks another event in Ideyatech's history. Today, we announce the release of the third version of Open-tides. Open-tides is a web application framework contributed by Ideyatech to the open source community. It is a framework that can be used to quickly setup a web application using Spring MVC and JPA. Open-tides' technology stack includes...]]></description>
			<content:encoded><![CDATA[<div class="tweetmeme_button" style="float: left; margin: 0.25em 1.5em 1em 0;"><a href="http://api.tweetmeme.com/share?url=http%3A%2F%2Fwww.ideyatech.com%2F2009%2F01%2Fblue-is-greener-open-tides-03-is-released%2F"><img src="http://api.tweetmeme.com/imagebutton.gif?url=http%3A%2F%2Fwww.ideyatech.com%2F2009%2F01%2Fblue-is-greener-open-tides-03-is-released%2F" height="61" width="51" /></a></div><p><img style="align:left; margin-right:1em;" src="http://www.ideyatech.com/wp-content/uploads/open-tides.jpg" alt="open-tides. Java Outsourcing solution" align="left" /> Today earmarks another event in Ideyatech&#8217;s history. Today, we announce the release of the third version of Open-tides.</p>
<p>Open-tides is a web application framework contributed by Ideyatech to the open source community. It is a framework that can be used to quickly setup a web application using Spring MVC and JPA. Open-tides&#8217; technology stack includes industry&#8217;s leading enterprise tools such as Spring, Spring MVC, Acegi, Quartz, JPA, Hibernate.</p>
<p>Based on actual project statistics, Open-tides boosted productivity of Ideyatech developers for about 218%. Usual project setup time takes about 1 week but with use of Open-tides, project setup takes only 1-2 days. Moreover, creating administration pages have been significantly reduced from 4 days to 1.5 days. This productivity gain helped project teams to focus more on business rules and quality testing rather getting things to work.</p>
<p><em>&#8220;Opentides is the heart of Ideyatech&#8217;s success. We&#8217;ve used this framework to quickly setup various projects from ground-up&#8230;  and we would like to share this to the rest of the world. &#8220;</em> as announced by Allan Tan, President/CEO of Ideyatech and Chief Architect of Open-tides. </p>
<p>Admittedly, Open-tides is still at its infancy and it will take twice the effort and time to get the framework to be accepted by the mass public. Nevertheless, Ideyatech is looking towards improving the framework&#8217;s documentation and ease-of-use to promote the tool for public consumption.</p>
<p>Some notable features of the framework include:</p>
<ul>
<li>Basic project setup. Open tides gives you base project setup right away. Base setup includes user login and management.</li>
<li>Built-in security. Integrated with ACEGI Security and pre-configured.</li>
<li>Support for CRUD pages. Uses JPA/Hibernate for CRUD operations by simply extending pre-built classes.</li>
<li>Search By Example. CRUD pages includes built-in search criteria and results pagination.</li>
<li>Audit Logging. Changes to data (who, when, what) are tracked.</li>
<li>Email notification. Email notifications and alerts are pre-configured.</li>
<li>Database Evolve. Allows scripted database updates for production roll-out.</li>
</ul>
<p>Details of the project can be found here: <a href="http://code.google.com/p/open-tides/">http://code.google.com/p/open-tides/</a></p>
]]></content:encoded>
			<wfw:commentRss>http://www.ideyatech.com/2009/01/blue-is-greener-open-tides-03-is-released/feed/</wfw:commentRss>
		</item>
		<item>
		<title>Integrated data management &#038; delivery in SaaS implementation</title>
		<link>http://www.ideyatech.com/2009/01/integrated-data-management-and-delivery-should-figure-in-saas-implementation/</link>
		<comments>http://www.ideyatech.com/2009/01/integrated-data-management-and-delivery-should-figure-in-saas-implementation/#comments</comments>
		<pubDate>Wed, 14 Jan 2009 09:09:40 +0000</pubDate>
		<dc:creator>Ideyatech</dc:creator>
		
		<category><![CDATA[Technology Center]]></category>

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

		<category><![CDATA[data integration]]></category>

		<category><![CDATA[information delivery]]></category>

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

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

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

		<guid isPermaLink="false">http://www.ideyatech.com/?p=231</guid>
		<description><![CDATA[<img class="alignleft" src="http://www.ideyatech.com/wp-content/uploads/thumbs/saas-implementation.png" alt="Integrated data management and delivery in SaaS implementation" title="Integrated data management and delivery in SaaS implementation" />

One prevailing school of thought about SaaS is that while data migration is relatively easy, data integration is a different story entirely. Even as IT budgets stagnate, SaaS is poised to grow by 22.1% this year because of the relative ease of implementing supported projects in small and medium enterprises. But big businesses...]]></description>
			<content:encoded><![CDATA[<div class="tweetmeme_button" style="float: left; margin: 0.25em 1.5em 1em 0;"><a href="http://api.tweetmeme.com/share?url=http%3A%2F%2Fwww.ideyatech.com%2F2009%2F01%2Fintegrated-data-management-and-delivery-should-figure-in-saas-implementation%2F"><img src="http://api.tweetmeme.com/imagebutton.gif?url=http%3A%2F%2Fwww.ideyatech.com%2F2009%2F01%2Fintegrated-data-management-and-delivery-should-figure-in-saas-implementation%2F" height="61" width="51" /></a></div><p><br/></p>
<p align="center"><img src="http://www.ideyatech.com/wp-content/uploads/2009/01/saas.jpg" alt="Integrated data management and delivery should figure in SaaS implementation" width="500" height="321" /></p>
<p><br/><br />
One prevailing school of thought about SaaS is that while data migration is relatively easy, data integration is a different story entirely. Even as IT budgets stagnate, SaaS is poised to grow by 22.1% this year because of the relative ease of implementing supported projects in small and medium enterprises. But big businesses—such as those in the financial markets—have varying complexities it handles information</p>
<p>Gartner analysts have so far stated the obvious that implementation of SaaS should be based on its value to the entire enterprise and not just to a single business function. Data integration that allow for ease of access to information is where locally hosted systems trump SaaS</p>
<p>According to Gartner’s white paper, “<span style="bold;">Architecting Information Delivery into SaaS Initiatives,” CIOs and IT leaders should cover data that reside in SaaS applications in their data integration projects, and perhaps more importantly, identify data management and integration requirements to prevent risks that eventually impact the quality of deployment</span></p>
<p>Engaging a SaaS provider is akin to hiring a group of workers to join one’s technology department. Pre-implementation preparations, such as due diligence reviews and drafting statements of work, takes a certain measure of effort no matter how relatively easy it is to implement applications. This is enough to push the idea of delivering SaaS capabilities to enterprise-wide technology landscape. “The infrastructure environment must cater for extensible use by additional applications, or become integrated as a part of a new system&#8217;s infrastructure,” according to the paper, and thus must be a corporate mandate in order to maximize the opportunity that SaaS affords for service buyers</p>
<p>For vendors, access to, and delivery of, corporate information to privileged users throughout the enterprise is an opportunity that they should look at. Gartner believes that buyers should have an “architected approach is provided for, to bring back strategic information to the organization.” Service level agreements should immediately feature integrated information management and delivery, instead of chalking it up as a hidden cost. And by “architected approach,” it should further involve the possibility of interoperability with other applications, platforms, and perhaps partnerships as SaaS implementations mature.</p>
<p>“The reality is that despite SaaS applications functioning as an extension of an enterprise&#8217;s IT ecosystem, they often lack assimilation with the information and integration demands of the broader enterprise&#8217;s internal applications, and sometimes with other SaaS applications,” according to the study.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.ideyatech.com/2009/01/integrated-data-management-and-delivery-should-figure-in-saas-implementation/feed/</wfw:commentRss>
		</item>
		<item>
		<title>Our Christmas Party in Pictures</title>
		<link>http://www.ideyatech.com/2008/12/our-christmas-party-in-pictures/</link>
		<comments>http://www.ideyatech.com/2008/12/our-christmas-party-in-pictures/#comments</comments>
		<pubDate>Fri, 26 Dec 2008 08:15:21 +0000</pubDate>
		<dc:creator>Ideyatech</dc:creator>
		
		<category><![CDATA[Stories]]></category>

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

		<category><![CDATA[christmas party]]></category>

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

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

		<guid isPermaLink="false">http://www.ideyatech.com/?p=219</guid>
		<description><![CDATA[<img class="alignleft" src="http://www.ideyatech.com/wp-content/uploads/thumbs/xmas-party-08.png" alt="Our Christmas Party in Pictures" title="Our Christmas Party in Pictures" />

It has been a big year for Ideyatech. And this season, the company threw its biggest party to date! A night of fun, prizes and surprises. It was also a night of fashion, crazy crazy performances and ginormous palette of dishes to choose from. Can we say best party ever?! See our Christmas party in pictures after the jump. Merry Christmas Everyone!]]></description>
			<content:encoded><![CDATA[<div class="tweetmeme_button" style="float: left; margin: 0.25em 1.5em 1em 0;"><a href="http://api.tweetmeme.com/share?url=http%3A%2F%2Fwww.ideyatech.com%2F2008%2F12%2Four-christmas-party-in-pictures%2F"><img src="http://api.tweetmeme.com/imagebutton.gif?url=http%3A%2F%2Fwww.ideyatech.com%2F2008%2F12%2Four-christmas-party-in-pictures%2F" height="61" width="51" /></a></div>
<a href='http://www.ideyatech.com/2008/12/our-christmas-party-in-pictures/3121894713_3a4c17cb211/' title='Dwight and the admin staff'><img src="http://www.ideyatech.com/wp-content/uploads/2009/01/3121894713_3a4c17cb211-150x150.jpg" width="150" height="150" class="attachment-thumbnail" alt="" /></a>
<a href='http://www.ideyatech.com/2008/12/our-christmas-party-in-pictures/3122603090_b176b13c1a1/' title='The nerds having fun'><img src="http://www.ideyatech.com/wp-content/uploads/2009/01/3122603090_b176b13c1a1-150x150.jpg" width="150" height="150" class="attachment-thumbnail" alt="" /></a>
<a href='http://www.ideyatech.com/2008/12/our-christmas-party-in-pictures/3122686678_aae5e0cd7d/' title='The nerds having fun 2'><img src="http://www.ideyatech.com/wp-content/uploads/2009/01/3122686678_aae5e0cd7d-150x150.jpg" width="150" height="150" class="attachment-thumbnail" alt="" /></a>
<a href='http://www.ideyatech.com/2008/12/our-christmas-party-in-pictures/3138247740_7a4d0772c8/' title='The Ideyatech Boys'><img src="http://www.ideyatech.com/wp-content/uploads/2009/01/3138247740_7a4d0772c8-150x150.jpg" width="150" height="150" class="attachment-thumbnail" alt="" /></a>
<a href='http://www.ideyatech.com/2008/12/our-christmas-party-in-pictures/3138247980_d88f99c8e6/' title='A Formal Portrait'><img src="http://www.ideyatech.com/wp-content/uploads/2009/01/3138247980_d88f99c8e6-150x150.jpg" width="150" height="150" class="attachment-thumbnail" alt="" /></a>
<a href='http://www.ideyatech.com/2008/12/our-christmas-party-in-pictures/dsc00382/' title='At the reception'><img src="http://www.ideyatech.com/wp-content/uploads/2009/01/dsc00382-150x150.jpg" width="150" height="150" class="attachment-thumbnail" alt="" /></a>
<a href='http://www.ideyatech.com/2008/12/our-christmas-party-in-pictures/dsc00416/' title='Singing Contest?'><img src="http://www.ideyatech.com/wp-content/uploads/2009/01/dsc00416-150x150.jpg" width="150" height="150" class="attachment-thumbnail" alt="" /></a>
<a href='http://www.ideyatech.com/2008/12/our-christmas-party-in-pictures/dsc00439/' title='The Ideyatech Dance Troop :)'><img src="http://www.ideyatech.com/wp-content/uploads/2009/01/dsc00439-150x150.jpg" width="150" height="150" class="attachment-thumbnail" alt="" /></a>

]]></content:encoded>
			<wfw:commentRss>http://www.ideyatech.com/2008/12/our-christmas-party-in-pictures/feed/</wfw:commentRss>
		</item>
		<item>
		<title>How to Work with Filipinos’ Cultural Traits to Achieve Outsourcing Success</title>
		<link>http://www.ideyatech.com/2008/12/how-to-work-with-filipinos%e2%80%99-cultural-traits-to-achieve-outsourcing-success/</link>
		<comments>http://www.ideyatech.com/2008/12/how-to-work-with-filipinos%e2%80%99-cultural-traits-to-achieve-outsourcing-success/#comments</comments>
		<pubDate>Mon, 01 Dec 2008 10:13:30 +0000</pubDate>
		<dc:creator>Ideyatech</dc:creator>
		
		<category><![CDATA[Stories]]></category>

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

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

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

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

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

		<guid isPermaLink="false">http://www.ideyatech.com/?p=217</guid>
		<description><![CDATA[<img class="alignleft" src="http://www.ideyatech.com/wp-content/uploads/thumbs/how-to-work-with-filipinos.png" alt="How to Work with Filipinos’ Cultural Traits to Achieve Outsourcing Success" title="How to Work with Filipinos’ Cultural Traits to Achieve Outsourcing Success" />

In my previous outsourcing partnerships, I noticed that while there was too much emphasis on processes, methodologies, and product quality, “soft” components of the projects and outsourcing relationships were mostly overlooked, if not completely neglected. This is rather ironic because one of the key points that either break or make outsourcing deals is culture.]]></description>
			<content:encoded><![CDATA[<div class="tweetmeme_button" style="float: left; margin: 0.25em 1.5em 1em 0;"><a href="http://api.tweetmeme.com/share?url=http%3A%2F%2Fwww.ideyatech.com%2F2008%2F12%2Fhow-to-work-with-filipinos%25e2%2580%2599-cultural-traits-to-achieve-outsourcing-success%2F"><img src="http://api.tweetmeme.com/imagebutton.gif?url=http%3A%2F%2Fwww.ideyatech.com%2F2008%2F12%2Fhow-to-work-with-filipinos%25e2%2580%2599-cultural-traits-to-achieve-outsourcing-success%2F" height="61" width="51" /></a></div><p><img src="http://i82.photobucket.com/albums/j258/whenthesongbirdsings/EB/73971512.jpg" alt="cultural differences" hspace="15" vspace="5" width="222" height="334" align="left" />In my previous outsourcing partnerships, I noticed that while there was too much emphasis on processes, methodologies, and product quality, “soft” components of the projects and outsourcing relationships were mostly overlooked, if not completely neglected. This is rather ironic because one of the key points that either break or make outsourcing deals is culture.</p>
<p>Cultural differences affect leadership and management, communication and coordination, change management, and team dynamics, which are essential to the success of a project. Just because one partner has been known as culturally dominant does not mean that outsourcing providers already know what it is like to actually work with them.</p>
<p>The success that the Philippines has been enjoying so far has much to do with cultural ties with the west, particularly to the United States, thanks to half a century of American rule, long-standing political and trading ties, and mass media consumption. It probably helps, too, that Filipinos form one of the biggest Asian minority groups in the US.</p>
<p>Language proficiency and cultural parallelisms make the Philippines one of the top destinations of call center outsourcing. In the last couple of years, these advantages opened doors to other industries, such as application development and maintenance, quality assurance, back-office operations, and digital entertainment.</p>
<p>In a recent survey conducted among CIOs and CEOs, the cultural aspects that they take into consideration include communication style, approaches to completing tasks, attitudes towards conflicts, and differences in decision-making styles. In this regard, allow me to give my two cents’ on the matter and describe briefly how Filipinos do in these areas.</p>
<p>Work around the Filipino communication style</p>
<p>Filipinos are taught the English language as early as pre-school, that by the time they graduate college, their skill in the language are among the most competitive in the world. However, take note of Filipinos indirectness, which is also typical among Asian cultures. Foreign CEOs and expatriates who have been in staying in the Philippines note that “Yes” could mean “yes, but…” or “yes, however…” or “maybe.” The best way to identify whether “yes” is actually “yes” is to listen to the intonation. It would help as well to clarify, ask, or entertain questions from Filipino outsourced workers to make sure that “yes” is not merely “okay.”</p>
<p>Emphasize management and leadership roles</p>
<p>The Philippines ranks relatively high on the power-distance index, which explains the emphasis that workers put on hierarchies. Most decisions are deferred to team leaders and managers, and most importantly, to clients.  One implication of this working style is the tendency to strictly follow processes or established methodologies and communication line.  To make the most out of this cultural quirk, clients should recognize the role that leaders and managers play in working with them and rallying subordinates. Cultures where results are more important than the processes taken to arrive at them will initially find it uncomfortable. However, most successful outsourcing projects are those that have allowed for results, open communication, and escalation of issues at the initial stages of the project.</p>
<p>Take advantage of service orientation and hour delays</p>
<p>Filipinos are service-oriented, therefore there is the emphasis to please clients or customers. Clients can take advantage of this trait by providing feedback as much as they can to their staff and spell out their expectations at pivotal stages of the project. It also pays to emphasize timeliness because of the tendency of Filipinos to hand in their work almost always two hours late. But for clients who are situated 8 to 16 hours later than the Philippines, most fast-track work are handed in while they are still asleep or getting out of bed.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.ideyatech.com/2008/12/how-to-work-with-filipinos%e2%80%99-cultural-traits-to-achieve-outsourcing-success/feed/</wfw:commentRss>
		</item>
		<item>
		<title>Speaking for the 22nd PACLIC</title>
		<link>http://www.ideyatech.com/2008/11/22nd-paclic/</link>
		<comments>http://www.ideyatech.com/2008/11/22nd-paclic/#comments</comments>
		<pubDate>Fri, 28 Nov 2008 10:12:05 +0000</pubDate>
		<dc:creator>Patricia Bea Perez</dc:creator>
		
		<category><![CDATA[Stories]]></category>

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

		<category><![CDATA[PACLIC conference]]></category>

		<guid isPermaLink="false">http://www.ideyatech.com/?p=218</guid>
		<description><![CDATA[<img class="alignleft" src="http://www.ideyatech.com/wp-content/uploads/thumbs/paclic.png" alt="Speaking for the 22nd PACLIC" title="Speaking for the 22nd PACLIC" />

Last November 20-22, Pacific Asia Conference on Language, Information and Computation (PACLIC) held its 22nd conference on Cebu City, Philippines. PACLIC is an international conference in the area of Machine Learning and AI and has been ranked 49th out of 650 (or among the top 7.5%) Computer Science conferences of the same area.]]></description>
			<content:encoded><![CDATA[<div class="tweetmeme_button" style="float: left; margin: 0.25em 1.5em 1em 0;"><a href="http://api.tweetmeme.com/share?url=http%3A%2F%2Fwww.ideyatech.com%2F2008%2F11%2F22nd-paclic%2F"><img src="http://api.tweetmeme.com/imagebutton.gif?url=http%3A%2F%2Fwww.ideyatech.com%2F2008%2F11%2F22nd-paclic%2F" height="61" width="51" /></a></div><p align="center"><img src="http://i376.photobucket.com/albums/oo210/nolinkhere/idytch/IMG_5747.jpg" alt="during the conference proceeding" width="475" height="316"/> </p>
<p>Last November 20-22, Pacific Asia Conference on Language, Information and Computation (PACLIC) held its 22nd conference on Cebu City, Philippines. PACLIC is an international conference in the area of Machine Learning and AI and has been ranked 49th out of 650 (or among the top 7.5%) Computer Science conferences of the same area. Before the conference, research papers were submitted to PACLIC for evaluation. The author/s of the submitted research papers who passed the double-blind review become/s the speaker/s in the conference.</p>
<div class="ArwC7c ckChnd">
<p style="justify;">Since our submitted research paper passed the evaluation, my thesismate and I were tasked to talk in the conference. The conference was filled with local and foreign researchers from different countries (China, Japan, Korea, France, and Texas to name a few) specializing in various fields of linguistics. My thesismate and I were very nervous since it was our first time to talk in front of foreigners, not to mention most of them were in their masteral or doctoral degrees or have finished it. Nevertheless, we pushed through. Our paper is entitled, Natural Language Generation (NLG) of Museum Objects based on User Model. We discussed how the user model can modify the generation of object descriptions using NLG. After our presentation, we didn&#8217;t really expect our audience to grasp what we were saying, but surprisingly, some of them even showed interest in our research through their questions. After answering audiences&#8217; questions, we went back to our seats.</p>
<p style="justify;">The opportunity of being able to speak in front of big names in the field of Computer Science is probably a rare experience for me. It was nerve-wracking but we did it. My professor told us that we should be proud of ourselves and… I am!</p>
</div>
]]></content:encoded>
			<wfw:commentRss>http://www.ideyatech.com/2008/11/22nd-paclic/feed/</wfw:commentRss>
		</item>
		<item>
		<title>SaaS vs. In-House Application Development</title>
		<link>http://www.ideyatech.com/2008/11/saas-vs-in-house-application-development/</link>
		<comments>http://www.ideyatech.com/2008/11/saas-vs-in-house-application-development/#comments</comments>
		<pubDate>Tue, 18 Nov 2008 00:43:56 +0000</pubDate>
		<dc:creator>Ideyatech</dc:creator>
		
		<category><![CDATA[Stories]]></category>

		<category><![CDATA[application development]]></category>

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

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

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

		<guid isPermaLink="false">http://www.ideyatech.com/?p=215</guid>
		<description><![CDATA[<img class="alignleft" src="http://www.ideyatech.com/wp-content/uploads/thumbs/saas-vs-inhouse.png" alt="SaaS vs. In-House Application Development" title="SaaS vs. In-House Application Development" />

Software as a Service or Saas has been one of the most popular buzzwords in the tech world these year. Thanks to the popularity of several of its pioneers, the quick deployment, and the relative flexibility in pricing schemes, SaaS is being adopted by businesses of varying sizes, but mostly those of small and medium scale operations.]]></description>
			<content:encoded><![CDATA[<div class="tweetmeme_button" style="float: left; margin: 0.25em 1.5em 1em 0;"><a href="http://api.tweetmeme.com/share?url=http%3A%2F%2Fwww.ideyatech.com%2F2008%2F11%2Fsaas-vs-in-house-application-development%2F"><img src="http://api.tweetmeme.com/imagebutton.gif?url=http%3A%2F%2Fwww.ideyatech.com%2F2008%2F11%2Fsaas-vs-in-house-application-development%2F" height="61" width="51" /></a></div><p>Software as a Service or Saas has been one of the most popular buzzwords in the tech world these year. Thanks to the popularity of several of its pioneers, the quick deployment, and the relative flexibility in pricing schemes, SaaS is being adopted by businesses of varying sizes, but mostly those of small and medium scale operations.</p>
<p>As the cost of hosting hardware and connectivity goes down and web-based services such as Google Docs, Zoho, or Picnick became more available, the idea of using the Web as an alternative to desktop productivity became more popular.  These developments in the past couple of years have made doing everything online and storing nearly everything online made web-based services more popular, such that when SaaS first came into view, it became relatively easy to sell it both as an idea and as a practice that is necessity to business operations.</p>
<p>Still, much of businesses that have sizable IT departments prefer to do it “old skul” and create things in-house and going so far as hiring consultants to develop applications both on-shore and offshore. What gives?</p>
<p>Why develop applications in-house?</p>
<ul>
<li> Businesses with large IT workforces and a number of consultants find more value in building products or services for their own internal use instead of “renting” licensed applications. Building their own applications allows them to customize the features and functionalities with each build according to their unique requirements. Moreover, they have more control over the quality of the applications prior to deployment to the enterprise at large.</li>
</ul>
<ul>
<li> No to “cookie cutter” agreements. SaaS agreements are hardly tailor-suited to meet unique business requirements of most clients. The service that one client sights up with is the same service that is being used by other clients.</li>
</ul>
<ul>
<li> Large enterprises prefer to keep customer and business information away from third&#8211;or fourth&#8211;parties. SaaS providers share applications and space with other businesses, usually competitors. While there may be more positives than negatives in this practice, the idea of sharing the same space with a business competitor does not sit well with businesses, especially those that deal with sensitive data.</li>
</ul>
<ul>
<li> Many large enterprises have to meet government regulations.  The financial sector, for example, must meet regulations that govern how the industry should manage information about its assets and clients. Moreover, even without such regulations, financial industry players are not open to handing over their religiously protected data to third-parties, which is what SaaS providers are.</li>
</ul>
<p>Why SaaS?</p>
<ul>
<li> It’s plug-and-play…almost. Ultimately, what you need is a computer and an internet access. The ease of implementation or deployment of SaaS enables a business to focus immediately on its core business instead of build an application (or its subsequent IT team) from the ground up, or purchase an application and negotiate with a service provider to host it.</li>
</ul>
<ul>
<li> Flexible pricing models. This is ideal for businesses that do not have as much cash as big businesses. Most SaaS providers allow negotiated pricing in order to sign up a prospective client for the long term. Subsequently,</li>
</ul>
<ul>
<li> No need to hire new IT staff. For companies or departments that do not have a lot of cash, there is no need to build large teams to produce and maintain applications. Instead, most SaaS companies have the teams to maintain the services themselves, which makes sense, because they own and know their own service and applications better.</li>
</ul>
]]></content:encoded>
			<wfw:commentRss>http://www.ideyatech.com/2008/11/saas-vs-in-house-application-development/feed/</wfw:commentRss>
		</item>
		<item>
		<title>An Award Winning Application</title>
		<link>http://www.ideyatech.com/2008/11/award-technological-innovation-in-relocation-2/</link>
		<comments>http://www.ideyatech.com/2008/11/award-technological-innovation-in-relocation-2/#comments</comments>
		<pubDate>Sat, 15 Nov 2008 11:53:16 +0000</pubDate>
		<dc:creator>Edison Gualberto</dc:creator>
		
		<category><![CDATA[Corporate News and Events]]></category>

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

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

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

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

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

		<category><![CDATA[united kingdom]]></category>

		<guid isPermaLink="false">http://www.ideyatech.com/?p=213</guid>
		<description><![CDATA[<img class="alignleft" src="http://www.ideyatech.com/wp-content/uploads/thumbs/reloassist.png" alt="An Award Winning Application" title="An Award Winning Application" />

MoveAssist, one of Ideyatech's long-term client, had won the award for Technological Innovation in Relocation. It is one of the leading software developers for movers and relocation managers. The award that has been granted to Robby Wogan, CEO of MoveAssist, is the very first of its kind in the United Kingdom. It gives due recognition to the quality of the...]]></description>
			<content:encoded><![CDATA[<div class="tweetmeme_button" style="float: left; margin: 0.25em 1.5em 1em 0;"><a href="http://api.tweetmeme.com/share?url=http%3A%2F%2Fwww.ideyatech.com%2F2008%2F11%2Faward-technological-innovation-in-relocation-2%2F"><img src="http://api.tweetmeme.com/imagebutton.gif?url=http%3A%2F%2Fwww.ideyatech.com%2F2008%2F11%2Faward-technological-innovation-in-relocation-2%2F" height="61" width="51" /></a></div><p><a href="http://www.ideyatech.com/wp-content/uploads/2008/11/relo_award.jpg"><img class="alignnone size-thumbnail wp-image-214" style="float:right; margin:1em;" title="relo_award" src="http://www.ideyatech.com/wp-content/uploads/2008/11/relo_award-150x150.jpg" alt="Reloassist - Winner: Technological Innovation in Relocation" width="150" height="150" /></a> MoveAssist, one of Ideyatech&#8217;s long-term client, had won the award for Technological Innovation in Relocation. MoveAssist is one of the leading developers of software for movers and relocation managers. The award that has been granted to Robby Wogan, CEO of MoveAssist, is the very first of its kind in the United Kingdom. The award gives due recognition to the quality of the product, to the developers and our people who had worked very hard in developing and maintaining it. Ideyatech is the software development outsourcing partner of MoveAssist and has been doing enhancements and support to this award winning product called <a href="http://www.reloassist.com/" target="_blank">Reloassist</a>.</p>
<p>Reloassist won the award because of its usefulness to many relocation companies. It has been useful because it integrates parties so that they can communicate through a web-based platform. It can handle a variety of services and provides flexibility to the different needs of relocation companies. Users of this software can easily configure the software to meet their specific requirements. One client said that ReloAssist has helped them achieve better productivity in their team&#8217;s day to day tasks. Thus, they were able to grow without actually having to increase their staff. In addition, the company has also efficiently improved their sales through the use of Reloassist.</p>
<p>Reloassist is a Java-based relocation management system designed to facilitate daily operations of relocating organizations, from corporate HR teams to relocation companies. The application is designed with flexibility in mind and developed on top of a highly robust Java framework using Struts, Spring and Hibernate.</p>
<p class="MsoNormal" style="0.5in;">This is another success story  Ideyatech.</p>
<p class="MsoNormal" style="0.5in;">For more details:</p>
<p class="MsoNormal" style="0.5in;"><a href="http://www.relocatemagazine.com/awards-dinner.php">http://www.relocatemagazine.com/awards-dinner.php</a></p>
<p class="MsoNormal" style="0.5in;"><a href="http://www.reloassist.com/">http://www.reloassist.com/</a></p>
]]></content:encoded>
			<wfw:commentRss>http://www.ideyatech.com/2008/11/award-technological-innovation-in-relocation-2/feed/</wfw:commentRss>
		</item>
		<item>
		<title>Celebrating Ideyatech Success</title>
		<link>http://www.ideyatech.com/2008/10/celebrating-ideyatech-success/</link>
		<comments>http://www.ideyatech.com/2008/10/celebrating-ideyatech-success/#comments</comments>
		<pubDate>Sat, 25 Oct 2008 18:27:10 +0000</pubDate>
		<dc:creator>Philip Lim</dc:creator>
		
		<category><![CDATA[Corporate News and Events]]></category>

		<category><![CDATA[Website Design]]></category>

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

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

		<category><![CDATA[General Assembly]]></category>

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

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

		<guid isPermaLink="false">http://www.ideyatech.com/?p=208</guid>
		<description><![CDATA[<img class="alignleft" src="http://www.ideyatech.com/wp-content/uploads/thumbs/first-year-anniversary" alt="Celebrating Ideyatech Success" title="Celebrating Ideyatech Success" />

Last October, 21, 2008, ideyatech celebrated its Anniversary at the Texas Roadhouse Grill at El Pueblo Real de Manila, Pasig City. The celebration was done in conjunction with the company's 4th Quarter General Assembly. Ideyatech has noticeably grown in size, we are now 27 staff strong from 7 last year. Included are the second batch of J2EE trainees.]]></description>
			<content:encoded><![CDATA[<div class="tweetmeme_button" style="float: left; margin: 0.25em 1.5em 1em 0;"><a href="http://api.tweetmeme.com/share?url=http%3A%2F%2Fwww.ideyatech.com%2F2008%2F10%2Fcelebrating-ideyatech-success%2F"><img src="http://api.tweetmeme.com/imagebutton.gif?url=http%3A%2F%2Fwww.ideyatech.com%2F2008%2F10%2Fcelebrating-ideyatech-success%2F" height="61" width="51" /></a></div><p>Last October, 21, 2008, ideyatech celebrated its Anniversary at the Texas Roadhouse Grill at El Pueblo Real de Manila, Pasig City. The celebration was done in conjunction with the company’s 2008 4<sup style="vertical-align: super;">th</sup> Quarter General Assembly.</p>
<p align="center"><a href="http://www.ideyatech.com/wp-content/uploads/2008/10/pa2101211.jpg"><img class="aligncenter size-medium wp-image-207" title="The Ideyatech Family" src="http://www.ideyatech.com/wp-content/uploads/2008/10/pa2101211-300x225.jpg" alt="Ideyatech" width="300" height="225" /></a></p>
<p>We started with announcements concerning the employees, such as birthday celebrants, promotions, newly-hired employees, trainees, on-the-job trainees (OJTs) and the formalization of our support team. Ideyatech has noticeably grown in size, we are now 27 staff strong from 7 last year. Included are the second batch of J2EE trainees. Ideyatech’s J2EE Training Program commenced last October 16, 2008 and will run through 15 weeks.</p>
<p>Here are some of the highlights of Ideyatech&#8217;s success for the past 12 months:</p>
<ul>
<li>Established solid team of Java developers and a proven track record.</li>
<li>Moved to a bigger and better office space (200 sqm).</li>
<li>Maintained stable list of offshore clients from US, UK and Australia.</li>
<li>More importantly, positive revenue returns.</li>
</ul>
<p>The other part of the assembly centered on the different projects that we are handling. Reports were given by the project teams to inform everyone about the project and provide an update on its status and progress.</p>
<p><img title="Jaycobb Reports" src="http://www.ideyatech.com/wp-content/uploads/2008/10/pa210050-300x225.jpg" alt="Project Reports" width="300" height="225" /></p>
<p>A short dialogue was provided by Allan regarding the “ecosystem” of Ideyatech, detailing how each entity involved—the developers, the company and the clients—affect each other. A very sensible concept how our business works and how we can help. The whole event was capped off by a discussion of the company’s goals for 2009.</p>
<p><img class="aligncenter size-medium wp-image-211" title="Allan\'s Report on \&quot;Moving to 2009\&quot;" src="http://www.ideyatech.com/wp-content/uploads/2008/10/pa210112_2-300x225.jpg" alt="Allan\'s Report" width="300" height="225" /></p>
]]></content:encoded>
			<wfw:commentRss>http://www.ideyatech.com/2008/10/celebrating-ideyatech-success/feed/</wfw:commentRss>
		</item>
		<item>
		<title>Java Code Analysis using FindBugs</title>
		<link>http://www.ideyatech.com/2008/10/static-code-analysis-using-findbugs/</link>
		<comments>http://www.ideyatech.com/2008/10/static-code-analysis-using-findbugs/#comments</comments>
		<pubDate>Fri, 24 Oct 2008 11:42:14 +0000</pubDate>
		<dc:creator>Jaycobb Cruz</dc:creator>
		
		<category><![CDATA[Java]]></category>

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

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

		<category><![CDATA[static analysis]]></category>

		<category><![CDATA[static code analysis]]></category>

		<guid isPermaLink="false">http://www.ideyatech.com/?p=204</guid>
		<description><![CDATA[<img class="alignleft" src="http://www.ideyatech.com/wp-content/uploads/thumbs/findbugs.png" alt="Java Code Analysis using FindBugs" title="Java Code Analysis using FindBugs" />

Are you familiar with common mistakes such as checking equality of  two Strings on Java using “==”? Or calling an instance method of a null object? They may look like obvious cases of bugs but many developers are unaware or unconsciously make these kind of codes. Static code analysis tools, such as FindBugs inspects and analyzes Java bytecode and...]]></description>
			<content:encoded><![CDATA[<div class="tweetmeme_button" style="float: left; margin: 0.25em 1.5em 1em 0;"><a href="http://api.tweetmeme.com/share?url=http%3A%2F%2Fwww.ideyatech.com%2F2008%2F10%2Fstatic-code-analysis-using-findbugs%2F"><img src="http://api.tweetmeme.com/imagebutton.gif?url=http%3A%2F%2Fwww.ideyatech.com%2F2008%2F10%2Fstatic-code-analysis-using-findbugs%2F" height="61" width="51" /></a></div><p>Are you familiar with common mistakes such as checking equality of  two Strings on Java using “==”? Or calling an instance method of a null object? They may look like obvious cases of bugs but many developers are unaware or unconsciously make these kind of codes.</p>
<p>Static code analysis tools, such as FindBugs inspects and analyzes Java bytecode and highlights possible coding errors, bad practice, correctness, malicious code vulnerability, multithreaded correctness, performance, security and dodgy codes without actually running the program.</p>
<p>FindBugs can be <a href="http://findbugs.sourceforge.net/downloads.html" target="_blank">downloaded</a> for free.  To use FindBugs using the Swing interface, you can execute/run findbugs.sh (on Unix) or findbugs.bat (on Windows) from the bin folder.<br />
1.    When the application starts, click File – New Project.<br />
2.    On “Class archives and directories to analyze” click Add button, then choose the root folder that contains the compiled classes of your program.<br />
3.    On “Source directories”, click the Add button then choose the root folder of the source of your program.<br />
4.    Click Finish. FindBugs will scan and analyze all the classes of the program you specified.</p>
<p>After analyzing, FindBugs will show all the potential bugs detected grouped into different categories. When you select a particular bug, it will display the detailed description of the potential bug.</p>
<p><a href="http://www.ideyatech.com/wp-content/uploads/2008/10/findbugs1.gif"><img class="aligncenter size-full wp-image-205" src="http://www.ideyatech.com/wp-content/uploads/2008/10/findbugs1.gif" alt="Static Code Analysis Using FindBugs" width="500" height="314" /></a></p>
<p><a href="http://www.ideyatech.com/wp-content/uploads/2008/10/findbugs2.gif"><img class="aligncenter size-full wp-image-206" src="http://www.ideyatech.com/wp-content/uploads/2008/10/findbugs2.gif" alt="Static Code Analysis Using FindBugs" width="500" height="314" /></a></p>
]]></content:encoded>
			<wfw:commentRss>http://www.ideyatech.com/2008/10/static-code-analysis-using-findbugs/feed/</wfw:commentRss>
		</item>
		<item>
		<title>Java UI Trends - who&#8217;s gaining popularity?</title>
		<link>http://www.ideyatech.com/2008/10/java-ui-trends-whos-gaining-popularity/</link>
		<comments>http://www.ideyatech.com/2008/10/java-ui-trends-whos-gaining-popularity/#comments</comments>
		<pubDate>Mon, 20 Oct 2008 13:48:25 +0000</pubDate>
		<dc:creator>Allan Tan</dc:creator>
		
		<category><![CDATA[Java]]></category>

		<category><![CDATA[Technology Center]]></category>

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

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

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

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

		<guid isPermaLink="false">http://www.ideyatech.com/?p=185</guid>
		<description><![CDATA[<img class="alignleft" src="http://www.ideyatech.com/wp-content/uploads/thumbs/java-ui-trends.png" alt="Java UI Trends - who's gaining popularity?" title="Java UI Trends - who's gaining popularity?" />

Here's some statistical analysis as to popularity of recent web technologies in Java. By comparing the searches performed between Struts 2, JSF, Spring MVC and JBoss Seam using Google Trends, it appears that Struts 2 is gaining traction among Java developers while JSF started to lose ground since mid-2007. Searches for Spring MVC and JBoss Seam...]]></description>
			<content:encoded><![CDATA[<div class="tweetmeme_button" style="float: left; margin: 0.25em 1.5em 1em 0;"><a href="http://api.tweetmeme.com/share?url=http%3A%2F%2Fwww.ideyatech.com%2F2008%2F10%2Fjava-ui-trends-whos-gaining-popularity%2F"><img src="http://api.tweetmeme.com/imagebutton.gif?url=http%3A%2F%2Fwww.ideyatech.com%2F2008%2F10%2Fjava-ui-trends-whos-gaining-popularity%2F" height="61" width="51" /></a></div><p>Here&#8217;s some statistical analysis as to popularity of recent web technologies in Java. By comparing the searches performed between Struts 2, JSF, Spring MVC and JBoss Seam using Google Trends, it appears that Struts 2 is gaining traction among Java developers while JSF started to lose ground since mid-2007. Searches for Spring MVC and JBoss Seam are increasing but at a slow pace.</p>
<p align="center"><img src="http://www.ideyatech.com/wp-content/uploads/2008/09/ui_trends.gif" alt="" /></p>
<p>On the other hand, jQuery is becoming popular amount Ajax Frameworks. YUI, Dojo and Prototype are roughly equal and jQuery has dramatically surpassed all other frameworks since early this year.</p>
<p align="center"><img src="http://www.ideyatech.com/wp-content/uploads/2008/09/ajax_trends.gif " alt="" /></p>
<p>If you&#8217;re interested how the graph were generated, try the links below:</p>
<p><a href="http://www.google.com/insights/search/#cat=&amp;q=struts%202%2Cspring%20mvc%2Cmyfaces%20%2B%20icefaces%2Cjboss%20seam&amp;geo=&amp;date=&amp;clp=&amp;cmpt=q">Struts 2 vs. JSF vs. JBoss Seam vs. Spring MVC<br />
</a></p>
<p><a href="http://www.google.com/insights/search/#cat=&amp;q=yui%2Cprototype%2Cjquery%2Cdojo&amp;geo=&amp;date=&amp;clp=&amp;cmpt=q">YUI vs. Prototype vs. JQuery vs. Dojo </a></p>
<hr /><strong>UPDATE [2008-09-13]</strong></p>
<p>Here&#8217;s an updated graph on Java technologies as commented below.</p>
<p align="center"><img src="http://www.ideyatech.com/wp-content/uploads/2008/09/ui_trends3.gif" alt="" /></p>
]]></content:encoded>
			<wfw:commentRss>http://www.ideyatech.com/2008/10/java-ui-trends-whos-gaining-popularity/feed/</wfw:commentRss>
		</item>
		<item>
		<title>Keeping a Healthy Ecosystem</title>
		<link>http://www.ideyatech.com/2008/10/a-healthy-ecosystem/</link>
		<comments>http://www.ideyatech.com/2008/10/a-healthy-ecosystem/#comments</comments>
		<pubDate>Sun, 19 Oct 2008 15:48:00 +0000</pubDate>
		<dc:creator>Allan Tan</dc:creator>
		
		<category><![CDATA[Corporate News and Events]]></category>

		<category><![CDATA[Project Management Tips]]></category>

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

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

		<guid isPermaLink="false">http://www.ideyatech.com/?p=197</guid>
		<description><![CDATA[<img class="alignleft" src="http://www.ideyatech.com/wp-content/uploads/thumbs/healthy-ecosystem.png" alt="Keeping a Healthy Ecosystem" title="Keeping a Healthy Ecosystem" />

The past 12 months has been exciting for Ideyatech. We've faced new challenges and have experienced sustainable growth. From a 3 person team, we've grown to 21 in just 12 month. We've also outgrown our old office and moved to a bigger 200 sqm space. More importantly, our project list and pipeline has been consistently full and...]]></description>
			<content:encoded><![CDATA[<div class="tweetmeme_button" style="float: left; margin: 0.25em 1.5em 1em 0;"><a href="http://api.tweetmeme.com/share?url=http%3A%2F%2Fwww.ideyatech.com%2F2008%2F10%2Fa-healthy-ecosystem%2F"><img src="http://api.tweetmeme.com/imagebutton.gif?url=http%3A%2F%2Fwww.ideyatech.com%2F2008%2F10%2Fa-healthy-ecosystem%2F" height="61" width="51" /></a></div><p>The past 12 months has been exciting for Ideyatech. We&#8217;ve faced new challenges and have experienced sustainable growth. From a 3 person team, we now have 20 full time developers. We&#8217;ve also outgrown our old office and moved to a bigger 200 sqm space. More importantly, our project list and pipeline has been consistently full and we&#8217;ve managed to keep everyone busy.</p>
<p style="text-align: center;"><img class="aligncenter" src="http://www.ideyatech.com/wp-content/uploads/2008/10/ideyatech_group.jpg" alt="Ideyatech - Software Development Outsourcing Team" width="400" height="266" /></p>
<p><strong>Keeping a Healthy Ecosystem</strong></p>
<p>Our business is an ecosystem where the employees do client work, client pays for the work, and the management keeps the employees and clients. By understanding this ecosystem, it is easy to understand how to keep it healthy. The first act of kindness is for management to keep the employees happy, if employees are happy, they deliver quality work and make client happy. If client is happy, they pay well and makes management happy. If management is happy, they continue to keep the employees happy. This makes up the healthy ecosystem.</p>
<p>At Ideyatech, we value the time of every individual - we allow work-from-home, offsetting, and even pay for overtime. This allows everyone to manage their own time and in doing so, everyone respects time by ensuring every hour spent is productive.</p>
<p>By applying agile methodologies and release schedule, we are able to keep up and manage client expectations. The agile methodology is known to be effective in early software releases without sacrifice to quality. In short, we have established an agile process that works and our clients are happy with it.</p>
<p>Aside from our regular team-building activities such as bowling nights, wii nights, etc. , we also believe and promote &#8220;passion at work&#8221;&#8230; we believe that everyone must come to office with excitement to face daily challenges. We don&#8217;t want employees to get &#8220;sick and tired&#8221; of their 8 hour work. Life is too short to go to waste.</p>
<p>Employee empowerment is also something we practice at Ideyatech. I&#8217;ve been constantly giving everyone the opportunity to decide on matters at hand and delegating more responsibilities to them. By doing so, everyone gets to learn new things and become more responsible.</p>
<p>All these efforts and investments are directed towards one single goal, and that is to keep employees happy and that takes care of the entire ecosystem.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.ideyatech.com/2008/10/a-healthy-ecosystem/feed/</wfw:commentRss>
		</item>
		<item>
		<title>Benchmarking the Philippines&#8217; IT Competitiveness</title>
		<link>http://www.ideyatech.com/2008/10/benchmarking-the-philippines-it-competitiveness/</link>
		<comments>http://www.ideyatech.com/2008/10/benchmarking-the-philippines-it-competitiveness/#comments</comments>
		<pubDate>Fri, 03 Oct 2008 04:28:38 +0000</pubDate>
		<dc:creator>Ideyatech</dc:creator>
		
		<category><![CDATA[Stories]]></category>

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

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

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

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

		<guid isPermaLink="false">http://www.ideyatech.com/?p=192</guid>
		<description><![CDATA[<img class="alignleft" src="http://www.ideyatech.com/wp-content/uploads/thumbs/benchmarking.png" alt="Benchmarking the Philippines' IT Competitiveness" title="Benchmarking the Philippines' IT Competitiveness" />

Business Week recently unveiled sponsored benchmark of 2008 IT competitiveness Index,  where the Philippines ranked higher than most of its counterparts such India, China, Vietnam, Indonesia and Russia. Suffice to say, Philippines has emerged as one of the major players in the global outsourcing industry specifically on the strength of the following indicators...]]></description>
			<content:encoded><![CDATA[<div class="tweetmeme_button" style="float: left; margin: 0.25em 1.5em 1em 0;"><a href="http://api.tweetmeme.com/share?url=http%3A%2F%2Fwww.ideyatech.com%2F2008%2F10%2Fbenchmarking-the-philippines-it-competitiveness%2F"><img src="http://api.tweetmeme.com/imagebutton.gif?url=http%3A%2F%2Fwww.ideyatech.com%2F2008%2F10%2Fbenchmarking-the-philippines-it-competitiveness%2F" height="61" width="51" /></a></div><p>Business Week recently unveiled sponsored benchmark of <a href="http://global.bsa.org/2008eiu/study/2008-eiu-study.pdf">2008 IT competitiveness Index</a>,  where the Philippines ranked higher than most of its counterparts such India, China, Vietnam, Indonesia and Russia. Suffice to say, Philippines has emerged as one of the major players in the global outsourcing industry specifically on the strength of the following indicators:<img style="float:right; margin:1em;" title="Software Development Outsourcing" src="/wp-content/uploads/2008/10/workforce-300x198.jpg" alt="Philippines Outsourcing Workforce" width="300" height="198" /></p>
<ul>
<li>Overall business environment: 0.10</li>
<li>IT infrastructure: 0.20</li>
<li>Human capital: 0.20</li>
<li>Legal environment: 0.10</li>
<li>R&amp;D environment: 0.25</li>
<li>Support for IT industry development: 0.15</li>
</ul>
<p>With a score of 29.8, which is way below the score of this year’s still most competitive country, the United States with 74.6, the Philippines has so much catching up to do. However, no matter the ranking, the country is taking the proverbial baby steps towards the right direction, as the information technology—particularly in software development—and communication are some of the key areas where Philippines can compete with other global players.</p>
<p>Let’s see how the country fares in some of the criteria used by the magazine’s Economist Intelligence Unit.</p>
<p>Overall business environment</p>
<p>The country posted a very positive 7.5% GDP growth in 2007, and if not for the recent challenges in the global financial market, the country could have posted at least 5.5% growth in the economy; the Philippine economy has been growing by a positive 5% since 2001.  From a low of $1,400 purchasing power parity at the start of the decade, the Philippines enjoys some $3,400 PPP as of 2007.</p>
<p>IT Infrastructure</p>
<p>Thanks to increasing demand from businesses and consumers, local telcos have aggressively pursued broadband development in the past two years. Some $800 million have been spent so far by the country’s leading telcos on improving the infrastructure, which also rides on the popularity of mobile communication in the country. Mobile use enjoys an overall subscriber base of 67% of the population.</p>
<p>Human Capital</p>
<p>The US-based consulting firm, Meta Group ranks the Philippines as the top player in knowledge-based jobs and workers worldwide.  The country boasts of a huge army of software engineers, content developers, creative designers, and professionals in accounting and finance, legal, and health care. The Philippines&#8217; emphasis on English as the official mode of instruction is finally paying off, as the Philippines has the third largest English-speaking population.</p>
<p>Support for IT Developments</p>
<p>The government is one of the biggest supporters of the IT industry, thanks to the possibilities that it can provide in creating jobs and making the country globally competitive in business process outsourcing.  Last year, the government unveiled regional ITC centers outside Metro Manila, allowing further access to a vast talent pool and tax breaks for businesses that set up offices in assigned economic zones.</p>
<p>The Philippines shows so much promise in offshoring that even India-headquartered outsourcing companies, such as Tata Consulting and Infosys have opened offices in Manila. The local association of outsourcing businesses aims to increase its workforce size to one million and earn revenues of up to US$13 billion by 2010.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.ideyatech.com/2008/10/benchmarking-the-philippines-it-competitiveness/feed/</wfw:commentRss>
		</item>
		<item>
		<title>Bonding Over Mooncake</title>
		<link>http://www.ideyatech.com/2008/09/bonding-over-mooncake/</link>
		<comments>http://www.ideyatech.com/2008/09/bonding-over-mooncake/#comments</comments>
		<pubDate>Tue, 23 Sep 2008 12:08:22 +0000</pubDate>
		<dc:creator>admin</dc:creator>
		
		<category><![CDATA[Stories]]></category>

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

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

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

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

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

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

		<guid isPermaLink="false">http://www.ideyatech.com/?p=190</guid>
		<description><![CDATA[<img class="alignleft" src="http://www.ideyatech.com/wp-content/uploads/thumbs/mooncake.png" alt="Bonding Over Mooncake" title="Bonding Over Mooncake" />

Every month (or so) we conduct a bonding activity to promote employee camaraderie here in Ideyatech. For the month of September we have the mooncake activity (or is this festivity?),  where there are prizes (cash), food and of course lots of fun. Picture-picture, a little trivia about mooncake and a whole lot more after the jump!]]></description>
			<content:encoded><![CDATA[<div class="tweetmeme_button" style="float: left; margin: 0.25em 1.5em 1em 0;"><a href="http://api.tweetmeme.com/share?url=http%3A%2F%2Fwww.ideyatech.com%2F2008%2F09%2Fbonding-over-mooncake%2F"><img src="http://api.tweetmeme.com/imagebutton.gif?url=http%3A%2F%2Fwww.ideyatech.com%2F2008%2F09%2Fbonding-over-mooncake%2F" height="61" width="51" /></a></div><p>Every month (or so) we conduct a <em>bonding</em> activity to promote employee camaraderie here in Ideyatech. For the month of September we have the mooncake activity (or is this festivity?),  where there are prizes (cash), food and of course lots of fun .</p>
<p>Here are some of the pictures (guys, next time remember to smile to the shutter):</p>
<p><img src="http://farm4.static.flickr.com/3051/2871198186_269c1a817d_m.jpg" alt="dinner" width="240" height="132" /> <img src="http://farm4.static.flickr.com/3040/2871202490_2721a0ce81_m.jpg" alt="winners" width="240" height="139" /><img src="http://farm4.static.flickr.com/3170/2870369827_3c99b2bffa_m.jpg" alt="win!" width="240" height="233" /> <img src="http://farm4.static.flickr.com/3135/2870368111_352de5f383_m.jpg" alt="" width="240" height="166" /></p>
<p>Just in case you don&#8217;t know what Mooncake is all about (sounds like me) here&#8217;s an email from Philip (our events organizer)</p>
<blockquote><p>&#8220;<em> Buddhists, Taoists and believers of Chinese folk religions consider the seventh lunar month (August) as the “Ghost Month,” otherwise known as the “Month of the Hungry Ghosts”, in which ghosts and spirits, including those of the deceased ancestors, come out from the lower realm. The first day of the month is called the “Opening of the Gates of Hades” since it is believed that the gates of Hell are flung open on this day to allow the ghosts and spirits of the nether world into the world of the living for a month of bacchanal of food and wine. This earthly party comes to an end on the last day of the month, called the “Closing of the Gates of Hades,” since the portals to the spirit world are shut once again on this day. On the 15th day of Ghost Month, many people stay at home to avoid an unlucky encounter with a ghost out enjoying the Ghost Festival; and special care is taken to avoid walking near riverbanks where a water spirit may easily steal the body of the living. During this whole period, the believers suspend all important activities and decisions. </em>&#8220;</p></blockquote>
<p>This is my first mooncake experience and by the end of the game I got a total of 420, not bad at all.</p>
<p>Full picture set is located <a title="Bonding over mooncake pix" href="http://flickr.com/photos/dwightian/sets/72157607380746933/" target="_blank">here.</a></p>
]]></content:encoded>
			<wfw:commentRss>http://www.ideyatech.com/2008/09/bonding-over-mooncake/feed/</wfw:commentRss>
		</item>
		<item>
		<title>The 10 hottest tech trends of 2009</title>
		<link>http://www.ideyatech.com/2008/09/the-10-hottest-tech-trends-of-2009/</link>
		<comments>http://www.ideyatech.com/2008/09/the-10-hottest-tech-trends-of-2009/#comments</comments>
		<pubDate>Tue, 16 Sep 2008 14:44:44 +0000</pubDate>
		<dc:creator>Ideyatech</dc:creator>
		
		<category><![CDATA[Stories]]></category>

		<category><![CDATA[Technology Center]]></category>

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

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

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

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

		<guid isPermaLink="false">http://www.ideyatech.com/?p=195</guid>
		<description><![CDATA[<img class="alignleft" src="http://www.ideyatech.com/wp-content/uploads/thumbs/tech-trends.png" alt="The 10 hottest tech trends of 2009" title="The 10 hottest tech trends of 2009" />

Virtualization, traces of Web 2.0, and efficiency are the key trends that will rule the tech world starting next year, according to Gartner, Inc. The research company predicts that the 10 hottest technologies will have long-term impact on business and the IT industry itself, thanks to “high potential for disruption to IT or the business,” the amount of investment, what else?]]></description>
			<content:encoded><![CDATA[<div class="tweetmeme_button" style="float: left; margin: 0.25em 1.5em 1em 0;"><a href="http://api.tweetmeme.com/share?url=http%3A%2F%2Fwww.ideyatech.com%2F2008%2F09%2Fthe-10-hottest-tech-trends-of-2009%2F"><img src="http://api.tweetmeme.com/imagebutton.gif?url=http%3A%2F%2Fwww.ideyatech.com%2F2008%2F09%2Fthe-10-hottest-tech-trends-of-2009%2F" height="61" width="51" /></a></div><p class="MsoNormal">Virtualization, traces of Web 2.0, and efficiency are the key trends that will rule the tech world starting next year, according to Gartner, Inc.<span> </span><span> </span></p>
<p class="MsoNormal">The research company predicts that the 10 hottest technologies will have long-term impact on business and the IT industry itself, thanks to “high potential for disruption to IT or the business,” the amount of investment, the risks of late adoption, and the rewards of early implementation.</p>
<p class="MsoNormal">Topping the list is virtualization, particularly server virtualization, which has the potential to lower the cost of storage and media devices. According to <span>David Cearley, vice president at Gartner</span>, today’s virtual hosting technologies encourage the reduction of data duplication, and combined with the impression that the quality of hosted data are as good as those stored in personal computers or company servers, the trend will eventually result in lower costs of data storage devices and equipment.</p>
<p class="MsoNormal">With the attention accorded to Software as a Service (SaaS), its next of kin, cloud computing, comes in second. Cost, scalability, and “elasticity” are the primary reasons for the increase in adoption of the technology next year. Most of its adopters will be composed of small and medium size enterprises, but large organizations are not far behind in embracing the technology.</p>
<p class="MsoNormal">The third trend focuses on the development of servers that allows for provisioning of resources according to end-users’ needs. New server technologies will enable companies to combine available resources instead of purchase separate systems for hardware and software requirements. This reduces inventory and eliminates wasted assets. While server blades have nearly the same approach, these are still not as flexible.</p>
<p class="MsoNormal">The fourth trend centers on Web-inspired architectures, specifically, the technologies, standards and design approaches that promote “agile, interoperable and scalable service-oriented environment.”<span> </span>Gartner predicts that the Web-oriented approach to technology innovation will be integrated into more enterprise solutions in the next five years.</p>
<p class="MsoNormal">Enterprise mashups, the fifth trend to capture the technology world starting in 2009, has its roots in the Web industry. As mashups became one of the standards of Web 2.0, Gartner expects that enterprises will explore the approach’s potential in business computing environments.</p>
<p class="MsoNormal">The other five that round up the list are specialized systems that address the demands of “general-purpose computing markets,” <span> </span>social software and social networking, unified communications or consolidation of communications technologies, <span> </span>business intelligence technologies that assist organizations in “making smarter decisions at every level of the business,” and green IT and its resulting energy efficient products.</p>
<p class="MsoNormal">Gartner&#8217;s forecast does not mention outsourcing, but it is easy to predict that with the increasing need for  technology upgrade and maintenance, combined with cost-cutting demands brought on by the current economic challenges, companies will continue to ship part of their technology work offshore. What the forecast provides, on the other hand, is a peek at the next wave of tech trends that will be adopted by various industries.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.ideyatech.com/2008/09/the-10-hottest-tech-trends-of-2009/feed/</wfw:commentRss>
		</item>
		<item>
		<title>The State of Software Development Outsourcing in the Phils.</title>
		<link>http://www.ideyatech.com/2008/09/the-state-of-software-development-outsourcing-in-philippines/</link>
		<comments>http://www.ideyatech.com/2008/09/the-state-of-software-development-outsourcing-in-philippines/#comments</comments>
		<pubDate>Thu, 04 Sep 2008 03:13:57 +0000</pubDate>
		<dc:creator>Ideyatech</dc:creator>
		
		<category><![CDATA[Technology Center]]></category>

		<category><![CDATA[application development]]></category>

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

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

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

		<guid isPermaLink="false">http://www.ideyatech.com/?p=184</guid>
		<description><![CDATA[<img class="alignleft" src="http://www.ideyatech.com/wp-content/uploads/thumbs/the-state-of-software-development-outsourcing-in-the-philippines.png" alt="The State of Software Development Outsourcing in the Phils." title="The State of Software Development Outsourcing in the Phils." />

When it comes to the outsourcing industry in the Philippines, the first thing—if not the only—that comes to mind is the contact center sector. With nearly half a million Filipinos employed, the call center industry is so far the brightest sector in the Philippine economy. Beyond contact centers, the Philippines is also making waves in IT, particularly software development.]]></description>
			<content:encoded><![CDATA[<div class="tweetmeme_button" style="float: left; margin: 0.25em 1.5em 1em 0;"><a href="http://api.tweetmeme.com/share?url=http%3A%2F%2Fwww.ideyatech.com%2F2008%2F09%2Fthe-state-of-software-development-outsourcing-in-philippines%2F"><img src="http://api.tweetmeme.com/imagebutton.gif?url=http%3A%2F%2Fwww.ideyatech.com%2F2008%2F09%2Fthe-state-of-software-development-outsourcing-in-philippines%2F" height="61" width="51" /></a></div><p align="center"><img src='http://www.ideyatech.com/wp-content/uploads/2008/09/state.jpg' alt='Philippines Outsourcing' /></p>
<p>When it comes to the outsourcing industry in the Philippines, the first thing—if not the only—that comes to mind is the contact center sector. With nearly half a million Filipinos employed, the call center industry is so far the brightest sector in the Philippine economy.</p>
<p>Beyond contact centers, the Philippines is also making waves in IT, particularly software development.  In recent years,  the tech sector has also embraced a more robust IT consulting, which includes implementation, deployment, and administration of IT systems.</p>
<p>Analysts project that the total size of the Philippines’ ICT sector will increase from US$1.2 billion in 2005 to US$2.3 billion by the end of the decade.  The Philippine government recently unveiled a five-year program, which it hopes to generate up to US$12.8 billion, from the combined contact center and IT services sectors. Out of the projected worth, it is not known how much software development will contribute. But with satellite development centers for leading technology firms opening on these shores, it is safe to say that the application development outsourcing industry is on a growth path.</p>
<p>Taking advantage of the large number of college-educated workforce, engineers, and application developers all over the country, the government has opened regional centers to provide low-cost labor to firms based in Europe, North America and Australasia. The tech sector eyes the financial services industry; locally, SMEs will spur the growth in IT.</p>
<p>There are a number of challenges, though, that the tech sector faces.  For one, the local market is not yet ready to sustain growth in the IT industry due to lack of funds and business models that do not fully integrate automation, analysts say.  Moreover, competition from the rest of the region poses a challenge to projected growth. The Philippines is fourth, behind India, China and Malaysia, in attracting offshore outsourcing deals. Political upheavals and lack in infrastructure development hinder further growth.</p>
<p>Junior and middle management still need to keep up with emerging practices in process methodologies and management practices. According to a McKinsey Group report, <em>The Philippines&#8217; Offshoring Opportunity</em> (2005):</p>
<blockquote><p>“…   for   all   its   potential,   the   Philippines   faces   enormous   challenges   in achieving  this  goal.  MGI  research  shows  that,  although  it  boasts  widespread English   language   skills,   very   low   costs,   and   promising   human   resource capabilities, it  lags  behind  India  and  many  other  potential  offshoring  locations on several of the key criteria companies examine when choosing an offshoring location.  These  include  risk, infrastructure, the  availability  of  vendors, and  the supply   of   middle   managers   who   are   key   to   establishing   large   offshore operations  quickly.</p>
<p>If  the  Philippines  is  to  capitalize  on  the  opportunities  that  are  undoubtedly there  for  the  taking,  the  government,  together  with  the  private  sector,  must work to strengthen the perceived attractiveness and reality of offshoring to the Philippines.”</p></blockquote>
<p><span id="more-184"></span><!--more--><!--more--><!--more--><!--more--></p>
]]></content:encoded>
			<wfw:commentRss>http://www.ideyatech.com/2008/09/the-state-of-software-development-outsourcing-in-philippines/feed/</wfw:commentRss>
		</item>
		<item>
		<title>Troubleshooting Tips: Spring Transactions on JPA</title>
		<link>http://www.ideyatech.com/2008/09/troubleshooting-tips-spring-transactions-on-jpa/</link>
		<comments>http://www.ideyatech.com/2008/09/troubleshooting-tips-spring-transactions-on-jpa/#comments</comments>
		<pubDate>Tue, 02 Sep 2008 15:14:52 +0000</pubDate>
		<dc:creator>Allan Tan</dc:creator>
		
		<category><![CDATA[Java]]></category>

		<category><![CDATA[Technology Center]]></category>

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

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

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

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

		<guid isPermaLink="false">http://www.ideyatech.com/?p=161</guid>
		<description><![CDATA[<img class="alignleft" src="http://www.ideyatech.com/wp-content/uploads/thumbs/spring-transactions-on-jpa.png" alt="Troubleshooting Tips: Spring Transactions on JPA" title="Troubleshooting Tips: Spring Transactions on JPA" />

After two days of debugging our codes on transaction handling, I'm writing this post to share my experience so others don't have to undergo the same pain and torture. However, this post assumes that you've setup your Spring transactions - either via AOP or annotations. If you haven't done so, I've listed some good references right after the jump.]]></description>
			<content:encoded><![CDATA[<div class="tweetmeme_button" style="float: left; margin: 0.25em 1.5em 1em 0;"><a href="http://api.tweetmeme.com/share?url=http%3A%2F%2Fwww.ideyatech.com%2F2008%2F09%2Ftroubleshooting-tips-spring-transactions-on-jpa%2F"><img src="http://api.tweetmeme.com/imagebutton.gif?url=http%3A%2F%2Fwww.ideyatech.com%2F2008%2F09%2Ftroubleshooting-tips-spring-transactions-on-jpa%2F" height="61" width="51" /></a></div><p><img style="float:right" src="http://www.ideyatech.com/wp-content/uploads/2008/07/troubleshoot3.jpg" alt="Spring transactions" /> After two days of debugging our codes on transaction handling, I&#8217;m writing this post to share my experience so others don&#8217;t have to undergo the same pain and torture. However, this post assumes that you&#8217;ve setup your Spring transactions - either via AOP or annotations. If you haven&#8217;t done so, here are some good references:</p>
<ol>
<li><a href="http://static.springframework.org/spring/docs/2.0.x/reference/transaction.html"> Spring Framework - Transaction Management</a></li>
<li><a href="http://www.onjava.com/pub/a/onjava/2005/05/18/swingxactions.html">On Java -  Wire Hibernate Transactions in Spring</a></li>
</ol>
<p>So, once you&#8217;ve setup or tried to setup transactions and failed - here are some tips how to debug your transaction management.</p>
<p>Enable logging. In log4j.properties, add log4j.logger.org.springframework.orm.jpa=DEBUG to enable logging of JPA transactions. This will allow you to trace the activities behind the Spring transaction processes. The logs provide detailed information about new, reused and active transactions, transaction modes, transaction commits and more. This is the best way to understand how transaction behaves on your application and gives you an insight how to fix your transactional problems.</p>
<p>Check your database and dialect.  Dialects affect transaction handling so be sure to use the appropriate dialect for your database. Note that there are 2 dialects to define - JPA Dialect and Hibernate Dialect. JPA dialect is defined in the EntityManagerFactory while Hibernate is defined in Hibernate properties.</p>
<p>JPADialect is defined in EntityManagerFactory as shown below:</p>
<p><code><br />
&lt;bean id="entityManagerFactory" class="org.springframework.orm.jpa.LocalContainerEntityManagerFactoryBean"&gt;<br />
&lt;property name="dataSource"&gt;&lt;ref bean="dataSource"/&gt;&lt;/property&gt;<br />
&lt;property name="jpaDialect"&gt;<br />
&lt;bean class="org.springframework.orm.jpa.vendor.HibernateJpaDialect"/&gt;<br />
&lt;/property&gt;<br />
&lt;property name="persistenceUnitName"&gt;<br />
&lt;value&gt;hibernateConfig&lt;/value&gt;<br />
&lt;/property&gt;<br />
&lt;/bean&gt;</code></p>
<p>While Hibernate Dialect is defined via persistence.xml.</p>
<p>Watch out for listeners, they could mess up your transactions.  A couple of examples about listeners (especially ApplicationListener) found online doesn&#8217;t consider transaction handling. Most of them performs data updates within the listener. This should not be the case because in doing so, you could be creating a transaction on the listener which forces all other operations to reuse that transaction. The better way of doing it is to call a service or business layer to perform transactional operations. This way, transaction is created only when the service is invoked.</p>
<p>Declare your transaction as readOnly whenever possible. Read-only transactions run faster so enable this on non-writing functions - (e.g. load, read, find, etc).  Also, this avoid transaction commits on binded-data. One specific scenario is when Spring validation throws an error and data is still saved despite the validation error, this means that the data was loaded on a non-readOnly transaction and Spring transaction is committing it.</p>
<p>Reduce your transactional method calls. Put all your business logic function calls in one method marked with @Transactional and avoid calling other methods with their own transaction declarations. For example, if your transactions are declared on service layer, avoid calling another service method because this will trigger transactional checks which unnecessarily slows down the system. Call the DAO method directly instead. This way all your operation are contained in a single transaction declaration.</p>
<p>Understand propagation.  Transaction propagation is hard to understand because the effects cannot be easily seen in your application&#8230; until you start performance tuning or having problems on saved data. Take note that if your transaction propagation is default, it will try to reuse existing transactions. This means that you could lose your transaction settings (e.g. readOnly), because new transaction was not created instead an existing was reused.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.ideyatech.com/2008/09/troubleshooting-tips-spring-transactions-on-jpa/feed/</wfw:commentRss>
		</item>
		<item>
		<title>Redefining Developer Roles</title>
		<link>http://www.ideyatech.com/2008/09/redefining-the-developer-role/</link>
		<comments>http://www.ideyatech.com/2008/09/redefining-the-developer-role/#comments</comments>
		<pubDate>Sun, 31 Aug 2008 16:50:24 +0000</pubDate>
		<dc:creator>Allan Tan</dc:creator>
		
		<category><![CDATA[Corporate News and Events]]></category>

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

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

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

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

		<category><![CDATA[software development]]></category>

		<guid isPermaLink="false">http://www.ideyatech.com/?p=157</guid>
		<description><![CDATA[<img class="alignleft" src="http://www.ideyatech.com/wp-content/uploads/thumbs/redefining-developer-roles.png" alt="Redefining Developer Roles" title="Redefining Developer Roles" />

Ideyatech, we’ve always wanted to be agile, creative and a pro-active software development company. We never intended to be like any other outsourcing company who provides cookie cutters. To start off our difference - we redefined the developer titles and roles. We’ve classified our developers into: Codester, Codesmith &#038; Codemaster...]]></description>
			<content:encoded><![CDATA[<div class="tweetmeme_button" style="float: left; margin: 0.25em 1.5em 1em 0;"><a href="http://api.tweetmeme.com/share?url=http%3A%2F%2Fwww.ideyatech.com%2F2008%2F09%2Fredefining-the-developer-role%2F"><img src="http://api.tweetmeme.com/imagebutton.gif?url=http%3A%2F%2Fwww.ideyatech.com%2F2008%2F09%2Fredefining-the-developer-role%2F" height="61" width="51" /></a></div><p align="center"><img src="http://www.ideyatech.com/wp-content/uploads/2008/08/ideyatech-front.jpg" alt="" /></p>
<p>We envision Ideyatech to be an agile, creative and pro-active software development company. We never intend to become like any other outsourcing company that provides cookie cutters. As part of this effort, we redefined the developer titles and roles.</p>
<p>We classified our developers into three: <em>Codester</em>, <em>Codesmith </em>and <em>Codemaster</em>. However, it&#8217;s more than just the making new titles&#8230; we also redefined their roles.</p>
<p>Codester<br />
A <em>codester </em>is a dynamic individual who has passion for abstract and logical reasoning. He is trained in the art of programming and is experienced in the Java language. He is resourceful and capable of learning new technologies on his own. <em>Codester </em>are people you can rely on to deliver codes that work according to specifications.</p>
<p>Codesmith<br />
A <em>codesmith </em>crafts their codes with artistic mastery. He is capable of writing clean, well-designed codes. He is well-versed in the art of programming and ensures that his codes are optimized, refactored and properly unit-tested. <em>Codesmiths </em>are your best bet in doing complex and more advanced transactional web applications.</p>
<p>Codemaster<br />
A <em>codemaster </em>is one of the chosen few who can design unique solutions to common complex problems. Unlike traditional developers, he thinks of solutions with a business sense. In addition, he is an expert in design patterns - not only in theory, but also in practice. <em>Codemasters </em>are the perfect partners for product development since they have the creative insight and technical proficiency in developing state-of-the-art applications.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.ideyatech.com/2008/09/redefining-the-developer-role/feed/</wfw:commentRss>
		</item>
		<item>
		<title>The Pros and Cons of Outsourcing – 2: Why Outsourcing May Not Be for You</title>
		<link>http://www.ideyatech.com/2008/08/the-pros-and-cons-of-outsourcing-%e2%80%93-2-why-outsourcing-may-not-be-for-you/</link>
		<comments>http://www.ideyatech.com/2008/08/the-pros-and-cons-of-outsourcing-%e2%80%93-2-why-outsourcing-may-not-be-for-you/#comments</comments>
		<pubDate>Wed, 27 Aug 2008 10:47:45 +0000</pubDate>
		<dc:creator>Ideyatech</dc:creator>
		
		<category><![CDATA[Idea Center]]></category>

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

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

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

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

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

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

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

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

		<guid isPermaLink="false">http://www.ideyatech.com/?p=176</guid>
		<description><![CDATA[<img class="alignleft" src="http://www.ideyatech.com/wp-content/uploads/thumbs/pros-and-cons-of-outsourcing-2.png" alt="The Pros and Cons of Outsourcing – 2: Why Outsourcing May Not Be for You" title="The Pros and Cons of Outsourcing – 2: Why Outsourcing May Not Be for You" />

Offshore outsourcing is a brilliant business strategy for many businesses. Gartner analysts predict that offshore outsourcing will rise by 8.9% in 2008, and the trend will continue on to 2009. However, it is not (yet) a perfect solution to various business issues and requirements. Before engaging the services of vendors, whether by offshore or onshore outsourcing...]]></description>
			<content:encoded><![CDATA[<div class="tweetmeme_button" style="float: left; margin: 0.25em 1.5em 1em 0;"><a href="http://api.tweetmeme.com/share?url=http%3A%2F%2Fwww.ideyatech.com%2F2008%2F08%2Fthe-pros-and-cons-of-outsourcing-%25e2%2580%2593-2-why-outsourcing-may-not-be-for-you%2F"><img src="http://api.tweetmeme.com/imagebutton.gif?url=http%3A%2F%2Fwww.ideyatech.com%2F2008%2F08%2Fthe-pros-and-cons-of-outsourcing-%25e2%2580%2593-2-why-outsourcing-may-not-be-for-you%2F" height="61" width="51" /></a></div><p align="center"><img src="http://www.ideyatech.com/wp-content/uploads/2008/08/outsourcing-001.jpg" alt="Outsourcing" /></p>
<p>Offshore outsourcing is a brilliant business strategy for many businesses. Gartner analysts predict that offshore outsourcing will rise by 8.9% in 2008, and the trend will continue on to 2009. However, it is not (yet) a perfect solution to various business issues and requirements. Before engaging the services of vendors, whether by offshore or onshore outsourcing, it is important to know that outsourcing has its own sets of issues.</p>
<p>The bright side of the debate is that if a business understands the issues surrounding outsourcing, these “cons” can easily be turned into “pros” that will add up to profitability and result in better quality of products and services. Below are some of the risks that you must understand about outsourcing:</p>
<ul>
<li>You are putting parts of your business in someone else’s hands. Realize that you are inviting a third party into your own operations. Business matters that used to be kept within your company’s walls are being laid open to the scrutiny of the vendor, or as some say, consultant. While trust must be established between the company and the vendor, it is absolutely necessary to form security measures from contracts to security audits. And be hard-headed in the implementation of these contracts. In most security breaches, the weakest points are not the systems put in place to prevent data leaks, but humans, the staff themselves, who fail to understand the enormity of keeping corporate information secure.</li>
</ul>
<ul>
<li>Business experts and visionaries are still a weak spot among outsourcing destination. Offshore outsourcing vendors can provide highly skilled workers who can perform volume tasks. However, management is often a weak spot among vendors. This means the lack of familiarity or knowledge of established processes by your company, lack of enough knowledge about your business or industry. In cases like these, it is important to know the people who will lead your outsourcing team. In many situations, middle- and junior managers receive months-long trainings on-shore before getting their feet wet with actual project delivery.</li>
</ul>
<ul>
<li>Unfavorable business conditions in offshore destinations include economic and political factors. If you think that you are giving away control of parts of your businesses to companies located outside your country, consider how much less control you will have if you factor in the political and economic upheavals in that country.  Any upheavals at all poses risks of operational disruptions. You must make sure that there are business continuity measures put in place in case it is business unusual offshore.</li>
</ul>
<ul>
<li>Businesses only consider outsourcing in terms of cost-savings instead of value to the company. This weakness happens on both ends of the outsourcing spectrum. Both business and vendor only see outsourcing as a way to cut costs instead of adding value to the company’s product, services, customer relationship, among other things. Instead of concentrating on the outsourcing relationship in terms of money savings alone, it is important to add long-term product or service innovation and process improvement in the mix. The money saved today can be reinvested into bigger endeavors tomorrow.</li>
</ul>
]]></content:encoded>
			<wfw:commentRss>http://www.ideyatech.com/2008/08/the-pros-and-cons-of-outsourcing-%e2%80%93-2-why-outsourcing-may-not-be-for-you/feed/</wfw:commentRss>
		</item>
		<item>
		<title>The Pros and Cons of Outsourcing - 1: Why Outsourcing Will Work for Your Company</title>
		<link>http://www.ideyatech.com/2008/08/the-pros-and-cons-of-outsourcing-1/</link>
		<comments>http://www.ideyatech.com/2008/08/the-pros-and-cons-of-outsourcing-1/#comments</comments>
		<pubDate>Wed, 27 Aug 2008 10:41:57 +0000</pubDate>
		<dc:creator>Ideyatech</dc:creator>
		
		<category><![CDATA[Idea Center]]></category>

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

		<category><![CDATA[java development]]></category>

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

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

		<guid isPermaLink="false">http://www.ideyatech.com/?p=175</guid>
		<description><![CDATA[<img class="alignleft" src="http://www.ideyatech.com/wp-content/uploads/thumbs/pros-and-cons-of-outsourcing-1.png" alt="The Pros and Cons of Outsourcing - 1: Why Outsourcing Will Work for Your Company" title="The Pros and Cons of Outsourcing - 1: Why Outsourcing Will Work for Your Company" />

Outsourcing, especially offshore outsourcing, has been constantly cast in a bad light for its perceived ill effects on the job security of thousands of workers from developed economies. However, it is interesting to ask this question: If outsourcing’s negative effects far outweigh its positive results, then why does it still flourish? Is it all about the money? Apparently, the answer is “No”.]]></description>
			<content:encoded><![CDATA[<div class="tweetmeme_button" style="float: left; margin: 0.25em 1.5em 1em 0;"><a href="http://api.tweetmeme.com/share?url=http%3A%2F%2Fwww.ideyatech.com%2F2008%2F08%2Fthe-pros-and-cons-of-outsourcing-1%2F"><img src="http://api.tweetmeme.com/imagebutton.gif?url=http%3A%2F%2Fwww.ideyatech.com%2F2008%2F08%2Fthe-pros-and-cons-of-outsourcing-1%2F" height="61" width="51" /></a></div><p align="center"><img src="http://www.ideyatech.com/wp-content/uploads/2008/08/outsourcing-002.jpg" alt="Outsourcing" /></p>
<p>Outsourcing, especially offshore outsourcing, has been constantly cast in a bad light for its perceived ill effects on the job security of thousands of workers from developed economies. However, it is interesting to ask this question: If outsourcing’s negative effects far outweigh its positive results, then why does it still flourish? Is it all about the money? Apparently, the answer is “No”.</p>
<p>This is not to say that outsourcing does not have its bad side. In this two-part blog post, let us explore where outsourcing works, and where it should improve.</p>
<ul>
<li>Outsourcing allows small and medium size businesses to have more workers. Small and medium-size enterprises do not have the luxury of permanently employing large armies of workers to work on projects, such as software development, QA, accounting systems, documentation, or customer management. However, outsourcing allows them to engage as many workers as their projects need—or as they can afford—temporarily.  At the end of a project’s lifecycle, a lot of companies find it easier to halt relationships with vendors than with employees.</li>
</ul>
<ul>
<li>Outsourcing allows companies to focus on their core competencies. This is one of the most popular and oft-repeated responses to outsourcing critics, and it is worth mentioning many times over.  By outsourcing processes that require low or mid-level skills, companies can focus on parts of their operations that need high levels of skills gathered from extensive industry experiences. Basic Java development can be handled by offshore workers, while software architecture and design are best handled by onshore resources.</li>
</ul>
<ul>
<li>Outsourcing offers staffing flexibility. With hundreds of thousands of available workers in application development, customer management, and support services available in low-income service providers, companies have the flexibility to hire on project basis. At the end their projects, it is easier to decide whether to retain talents or hire new ones, even new vendors.</li>
</ul>
<ul>
<li>Outsourcing saves money. Offshore workers in an emerging economy, such as the Philippines, can provide the same quality of work at a much lower cost. Outsource workers in emerging markets are college graduates and most have job experiences relevant to outsourcing requirements.  For example, IT workers in Manila are college degree holders who have also received formal trainings in specific programming languages. On top of that, IT vendors also arm their workers with trainings in consulting, customer management, communication, and methodologies.  Over time, the smaller amount paid to low-wage outsource workers increase in value.</li>
</ul>
]]></content:encoded>
			<wfw:commentRss>http://www.ideyatech.com/2008/08/the-pros-and-cons-of-outsourcing-1/feed/</wfw:commentRss>
		</item>
		<item>
		<title>Improving your Corporate Knowledge</title>
		<link>http://www.ideyatech.com/2008/08/improving-your-corporate-knowledge/</link>
		<comments>http://www.ideyatech.com/2008/08/improving-your-corporate-knowledge/#comments</comments>
		<pubDate>Wed, 13 Aug 2008 18:13:29 +0000</pubDate>
		<dc:creator>Allan Tan</dc:creator>
		
		<category><![CDATA[Corporate News and Events]]></category>

		<category><![CDATA[Idea Center]]></category>

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

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

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

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

		<category><![CDATA[corporate knowledge]]></category>

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

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

		<guid isPermaLink="false">http://www.ideyatech.com/?p=172</guid>
		<description><![CDATA[<img class="alignleft" src="http://www.ideyatech.com/wp-content/uploads/thumbs/corporate-knowledge.png" alt="Improving your Corporate Knowledge " title="Improving your Corporate Knowledge " />

For the past two months, we have been having our weekly T3 (Tuesday Tech Talk) sessions. It's a 30-minute discussion about any technical topic the presenter would like to discuss. Presenters are randomly selected from the development group. So far, we have received nothing but benefits from this activity. Its benefits and advantages after the jump.]]></description>
			<content:encoded><![CDATA[<div class="tweetmeme_button" style="float: left; margin: 0.25em 1.5em 1em 0;"><a href="http://api.tweetmeme.com/share?url=http%3A%2F%2Fwww.ideyatech.com%2F2008%2F08%2Fimproving-your-corporate-knowledge%2F"><img src="http://api.tweetmeme.com/imagebutton.gif?url=http%3A%2F%2Fwww.ideyatech.com%2F2008%2F08%2Fimproving-your-corporate-knowledge%2F" height="61" width="51" /></a></div><p><img style="float:right; margin:1em" src="http://www.ideyatech.com/wp-content/uploads/2008/08/teaching.jpg" alt="" width="250" />For the past two months, we have been having our weekly T3 (Tuesday Tech Talk) sessions. It&#8217;s a 30-minute discussion about any technical topic the presenter would like to discuss. Presenters are randomly selected from the development group.</p>
<p>So far, we have received nothing but benefits from this activity. Here are some of its benefits and advantages:</p>
<ol>
<li>The presenters get an opportunity to talk, express themselves and practice their presentation skills. More importantly, they steer away from the developer mindset for a while, get out of their shells, and think of good topics to discuss.</li>
<li>The attendees learn something new. Everybody seems to know something others don&#8217;t.</li>
<li>Everyone begins to understand the specialization and span of knowledge of their colleagues. In this way, it becomes easier to know who to ask regarding particular topics. Subsequently, the developers become experts and specialists in their own way.</li>
<li>This builds camaraderie within the team. Everyone relaxes and opens up their minds for new knowledge.</li>
<li>The topics discussed are usually not something we do or use in our daily routine at work. So, everyone gets to learn more than the usual stuff.</li>
<li>Everyone realizes the things that they do not know and starts to seek for more information about it.</li>
<li>The organization strengthens its corporate IQ as people share their ideas and knowledge with each other.</li>
<li>After a couple of sessions, everyone began appreciating the activity and now looks forward for new things to learn.</li>
</ol>
<div>Here are some of the topics we have discussed so far:</div>
<div>
<ul>
<li>Tips on improving website performance (as recommended by Yahoo Exceptional Performance)</li>
<li>Programing with Grails</li>
<li>Reverse Ajax via DWR</li>
<li>jMaki</li>
<li>Integration testing with TestNG</li>
<li>Image Manipulation / Photo retouching</li>
<li>Javascript Programming</li>
</ul>
<div>In the end, I believe the concept of T3 sessions is very much aligned with our core values - Leadership, Execution, Agility and Passion.</div>
</div>
]]></content:encoded>
			<wfw:commentRss>http://www.ideyatech.com/2008/08/improving-your-corporate-knowledge/feed/</wfw:commentRss>
		</item>
		<item>
		<title>Success factors in outsourcing</title>
		<link>http://www.ideyatech.com/2008/08/success-factors-in-outsourcing/</link>
		<comments>http://www.ideyatech.com/2008/08/success-factors-in-outsourcing/#comments</comments>
		<pubDate>Mon, 04 Aug 2008 03:13:21 +0000</pubDate>
		<dc:creator>Ideyatech</dc:creator>
		
		<category><![CDATA[Methodology Center]]></category>

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

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

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

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

		<guid isPermaLink="false">http://www.ideyatech.com/?p=183</guid>
		<description><![CDATA[<img class="alignleft" src="http://www.ideyatech.com/wp-content/uploads/thumbs/success-factors-in-outsourcing.png" alt="Success factors in outsourcing" title="Success factors in outsourcing" />

Outsourcing helps your business by allowing it to focus its energies and resources on its core strengths. However, the success of outsourcing depends on a lot of factors, the top of which comes from you, the party that decides on whether outsourcing will actually help you achieve your business goals. Success factors involved in outsourcing?]]></description>
			<content:encoded><![CDATA[<div class="tweetmeme_button" style="float: left; margin: 0.25em 1.5em 1em 0;"><a href="http://api.tweetmeme.com/share?url=http%3A%2F%2Fwww.ideyatech.com%2F2008%2F08%2Fsuccess-factors-in-outsourcing%2F"><img src="http://api.tweetmeme.com/imagebutton.gif?url=http%3A%2F%2Fwww.ideyatech.com%2F2008%2F08%2Fsuccess-factors-in-outsourcing%2F" height="61" width="51" /></a></div><p align="center"><img src="http://www.ideyatech.com/wp-content/uploads/2008/09/success.jpg" alt="Outsourcing" /></p>
<p>Outsourcing helps your business by allowing it to focus its energies and resources on its core strengths. However, the success of outsourcing depends on a lot of factors, the top of which comes from you, the party that decides on whether outsourcing will actually help you achieve your business goals.</p>
<p>What are the success factors involved in outsourcing? The list can be very long, as it all depends on a company&#8217;s goals, size, budget, and the risks it is willing to take. The following are some common ways to make an outsourcing project successful:</p>
<ul>
<li>Identify your business goals. Know why you are outsourcing in the first place. Is it to cut costs? Is it to have more flexibility in growing your manpower? Is it to provide better customer service? The most common reason behind outsourcing is to cut costs. However, this poses a risk in the long run. There are savings that can be made by shipping some business processes to low-wage economies, but make sure that you also get more value for how little you are willing to spend in terms of process improvement, quality, and customer satisfaction.</li>
<li>Choose your vendor carefully. Before signing an agreement with a vendor, make sure that you have made ample background checks for its financial stability, management team, flexibility, workforce, and best of all, the methodologies that it implements in the course of your project cycle. Search for reference that will vouch for the capabilities of the vendor. This is the third party that will handle part of your business. No matter the size, each part of your overall operations plays a crucial role in your business success. Choose your vendor well.</li>
<li>Engage everyone&#8217;s support. Everyone from all levels of the organization should support the involvement of outsourced personnel&#8211;or consultants&#8211;in the project. Top executives should buy in to the project because they are ultimately responsible for the venture. Regular employees should show not see outsourcing as a threat to their employment.</li>
<li>Agree on project management methodologies, and training and communication plans. Depending on the complexity of the project, there is a high learning curve involved at the start of the project. Make sure that prior to the start of the project&#8217;s outsourcing, all blueprints are laid out. Communication and training plans, implementations methods, channels and facilities are crucial in the knowledge transfer. And most of all, the project methodologies should be agreed upon in order to keep risks at minimum levels.</li>
</ul>
]]></content:encoded>
			<wfw:commentRss>http://www.ideyatech.com/2008/08/success-factors-in-outsourcing/feed/</wfw:commentRss>
		</item>
		<item>
		<title>Outsourcing to the Philippines: Beyond Call Centers</title>
		<link>http://www.ideyatech.com/2008/08/outsourcing-in-the-philippines-beyond-call-centers/</link>
		<comments>http://www.ideyatech.com/2008/08/outsourcing-in-the-philippines-beyond-call-centers/#comments</comments>
		<pubDate>Sat, 02 Aug 2008 14:50:34 +0000</pubDate>
		<dc:creator>Ideyatech</dc:creator>
		
		<category><![CDATA[Stories]]></category>

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

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

		<category><![CDATA[off-shoring]]></category>

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

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

		<category><![CDATA[software development]]></category>

		<category><![CDATA[technical development]]></category>

		<guid isPermaLink="false">http://www.ideyatech.com/?p=170</guid>
		<description><![CDATA[<img class="alignleft" src="http://www.ideyatech.com/wp-content/uploads/thumbs/outsourcing-to-the-philippines.png" alt="Outsourcing to the Philippines: Beyond Call Centers" title="Outsourcing to the Philippines: Beyond Call Centers" />

When it comes to outsourcing opportunities in the Philippines, one most often calls to mind call centers or customer service. Being an English-speaking country (Philippines is the third largest English-speaking country in the world), it has an edge over call center outsourcing destinations, such as India or even China. The Philippines also boasts of college educated...]]></description>
			<content:encoded><![CDATA[<div class="tweetmeme_button" style="float: left; margin: 0.25em 1.5em 1em 0;"><a href="http://api.tweetmeme.com/share?url=http%3A%2F%2Fwww.ideyatech.com%2F2008%2F08%2Foutsourcing-in-the-philippines-beyond-call-centers%2F"><img src="http://api.tweetmeme.com/imagebutton.gif?url=http%3A%2F%2Fwww.ideyatech.com%2F2008%2F08%2Foutsourcing-in-the-philippines-beyond-call-centers%2F" height="61" width="51" /></a></div><p>When it comes to outsourcing opportunities in the Philippines, one most often calls to mind call centers or customer service. Being an English-speaking country (Philippines is the third largest English-speaking country in the world), it has an edge over call center outsourcing destinations, such as India or even China. The Philippines also boasts of college educated customer service agents who are adept at handling customer complaints and requests.</p>
<p>Next to call center or customer service support, Philippines has also made a considerable progress in the medical transcription business. On top of the labor force&#8217;s ability to speak and write in English, it has a surplus of workers with degrees in the medical field, such as nursing, pharmacy, and medical technology, thanks to the growing trend of exporting medical workers to developed countries, such as the US, UK, and the Middle East.</p>
<h4>Software Development Outsourcing to the Philippines</h4>
<p>Is Philippines in a good position to take a cut in the <strong>technology outsourcing</strong> pie? Fortunately, the answer is yes, according to analysts.</p>
<p>While still trailing behind India and China, the country “is already emerging as a strong player in this rapidly evolving industry, demonstrating that it can compete with India and other low-wage destinations in creating value,” according to a 2005 report by the McKinsey Global Institute (MGI). Case in point: While Philippines’ population is 16 times smaller than China, it produces twice as many engineers, according to MGI.</p>
<p>In 2007, the Philippines captured USD 4.1 billion or 1.4% of the global outsourcing market share. According to a Reuters report, diversifying outsourced opportunities beyond call centers will earn the country up to $12.2 billion by 2010.</p>
<h4>Opportunities Despite Tech Spending Crunch</h4>
<p>Because of the global economic crunch, cuts in IT spending are inevitable. The upside of belt-tightening measures is off-shoring of technology jobs. Of course, the downside could be that the growth of off-shored tech opportunities may not be as high as it was projected in the past years. Still, opportunities abound for outsourcing destinations, such as the Philippines.</p>
<p>Filipino engineers and generalist tech workers have become attractive to foreign companies. “Poaching” of tech workers by other Southeast Asian countries has been observed over the past 3 years, thanks to their technical and communication skills. This temporary diaspora of Filipino tech workers offers better earning opportunities to the workers themselves, but on a larger and more important scale, world-class training experiences that they can bring back home.</p>
<p>If the tech industry can supply ample technical and managerial training to its workers, the Philippines can become a more attractive outsourcing destination for technical development. The country should not rest on its call center laurels alone.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.ideyatech.com/2008/08/outsourcing-in-the-philippines-beyond-call-centers/feed/</wfw:commentRss>
		</item>
		<item>
		<title>Audit Logging via Hibernate Interceptor (1/2)</title>
		<link>http://www.ideyatech.com/2008/07/audit-logging-via-hibernate-interceptor-12/</link>
		<comments>http://www.ideyatech.com/2008/07/audit-logging-via-hibernate-interceptor-12/#comments</comments>
		<pubDate>Sat, 19 Jul 2008 03:06:38 +0000</pubDate>
		<dc:creator>Allan Tan</dc:creator>
		
		<category><![CDATA[Java]]></category>

		<category><![CDATA[Technology Center]]></category>

		<category><![CDATA[audit logging]]></category>

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

		<category><![CDATA[hibernate interceptor]]></category>

		<category><![CDATA[open-tides]]></category>

		<guid isPermaLink="false">http://www.ideyatech.com/?p=118</guid>
		<description><![CDATA[<img class="alignleft" src="http://www.ideyatech.com/wp-content/uploads/thumbs/audit-logging-via-hibernate.png" alt="Audit Logging via Hibernate Interceptor (1/2)" title="Audit Logging via Hibernate Interceptor (1/2)" />

One common requirement in developing enterprise applications is to ensure audit logs are available for data security and traceability. Who made the changes, when and where. Such requirement is not only dictated by corporate IT policies but is also required by government laws. Considering most enterprise applications have at least 50 domain objects...]]></description>
			<content:encoded><![CDATA[<div class="tweetmeme_button" style="float: left; margin: 0.25em 1.5em 1em 0;"><a href="http://api.tweetmeme.com/share?url=http%3A%2F%2Fwww.ideyatech.com%2F2008%2F07%2Faudit-logging-via-hibernate-interceptor-12%2F"><img src="http://api.tweetmeme.com/imagebutton.gif?url=http%3A%2F%2Fwww.ideyatech.com%2F2008%2F07%2Faudit-logging-via-hibernate-interceptor-12%2F" height="61" width="51" /></a></div><p><img src="http://www.ideyatech.com/wp-content/uploads/2008/07/audit2.jpg" alt="audit security" style="float:right;margin:1em;"/> A common requirement in developing enterprise applications is to ensure audit logs are available for data security and traceability&#8211;who made the changes, when they were made, and what files or sections were changed. This requirement is not only dictated by corporate IT policies, but also required by government laws. Considering that most enterprise applications have at least 50 domain objects, implementing audit logs on each of them can be time-consuming. So, a generic solution must be established to minimize coding when creating audit logs.</p>
<p><strong>The Solution</strong></p>
<ul>
<li>Use Hibernate interceptors to trigger change events.</li>
<li>Use Java reflections to retrieve old and new data.</li>
<li>Create an interface to switch logging on or off for every data object.</li>
</ul>
<div>In summary, here are the steps needed to be performed to accomplish this.</div>
<ol>
<li>Create an Auditable interface as a marker on the data that needs to be audited. Any data object that needs to be audited must implement this Auditable interface.</li>
<li>Create an AuditLog to store log information. This contains the date (when), user (who), class name, object id and the audit message (what).</li>
<li>Create an AuditLogInterceptor that will keep track of all data change events and store all the  changes performed.</li>
<li>Create a utility that can retrieve object values using Java reflections to process generic data retrieval.</li>
<li>Create sample usage of auditing.</li>
</ol>
<div><strong>The Implementation</strong></div>
<div>The Auditable interface has 4 method declarations.</div>
<pre class="java"><span style="color: #800000;">public interface Auditable {
	/**
	 * Retrieve the primary key
	 * @return
	 */
	public Long getId();

	/**
	 * Returns the list of fields that should be audited.
	 * @return
	 */
	public List getAuditableFields();

	/**
	 * Returns the field of the primary identifier (e.g. title).
	 * This field is used to uniquely identify the record.
	 * @return
	 */
	public String getPrimaryField();

	/**
	 * Returns customized audit log message. When empty, audit logging
	 * uses standard audit message.
	 * @return
	 */
	public String getAuditMessage();
}</span>
</pre>
<p>The AuditLog entity must be able to store who, when, what:</p>
<pre class="java"><span style="color: #800000;">package com.ideyatech.core.bean;

import java.io.Serializable;
import java.util.ArrayList;
import java.util.Date;
import java.util.List;

import javax.persistence.Column;
import javax.persistence.Entity;
import javax.persistence.EntityListeners;
import javax.persistence.Lob;
import javax.persistence.Table;
import javax.persistence.Transient;

import com.ideyatech.core.bean.user.BaseUser;
import com.ideyatech.core.persistence.listener.AuditLogListener;
import com.ideyatech.core.util.CrudUtil;

/**
 * This class is responsible for handling all audit functions
 * needed to be attached to the classes.
 *
 * @author allantan
 */
@Entity
@Table(name=&#8221;HISTORY_LOG&#8221;)
public class AuditLog implements Serializable {
	private static final long serialVersionUID = 269168041517643087L;
	@Column(name = &#8220;ENTITY_ID&#8221;,nullable=false,updatable=false)
	private Long entityId;
	@SuppressWarnings(&#8221;unchecked&#8221;)
	@Column(name = &#8220;ENTITY_CLASS&#8221;,nullable=false,updatable=false)
	private Class entityClass;
	@Column(name = &#8220;REFERENCE&#8221;)
	private String reference;
        @Column(name = &#8220;CREATE_DATE&#8221;)
        @Temporal(TemporalType.TIMESTAMP)
        private Date createDate;
	@Lob
	@Column(name = &#8220;MESSAGE&#8221;,nullable=false,updatable=false)
	private String message;
	@Column(name = &#8220;USER_ID&#8221;,nullable=false,updatable=false)
	private Long userId;
	@Transient
	private transient Object object;
	@Transient
	private transient BaseUser user;

	public AuditLog() {
	};
	@SuppressWarnings(&#8221;unchecked&#8221;)
	public AuditLog(String message, Long entityId, Class entityClass, Long userId) {
		this.message = message;
		this.entityId = entityId;
		this.entityClass = entityClass;
		this.userId = userId;
		this.setCreateDate(new Date());
	}

	/**
	 * @return the entityId
	 */
	public Long getEntityId() {
		return entityId;
	}

	/**
	 * @param entityId the entityId to set
	 */
	public final void setEntityId(Long entityId) {
		this.entityId = entityId;
	}

	/**
	 * @return the entityClass
	 */
	@SuppressWarnings(&#8221;unchecked&#8221;)
	public Class getEntityClass() {
		return entityClass;
	}

	/**
	 * @param entityClass the entityClass to set
	 */
	public final void setEntityClass(Class entityClass) {
		this.entityClass = entityClass;
	}

	/**
	 * @return the message
	 */
	public String getMessage() {
		return message;
	}

	/**
	 * @return the userId
	 */
	public Long getUserId() {
		return userId;
	}

	/**
	 * @param userId the userId to set
	 */
	public void setUserId(Long userId) {
		this.userId = userId;
	}

	/**
	 * @return the object
	 */
	public Object getObject() {
		return object;
	}

	/**
	 * @param object the object to set
	 */
	public void setObject(Object object) {
		this.object = object;
	}

	/**
	 * @return the user
	 */
	public BaseUser getUser() {
		return user;
	}

	/**
	 * @param user the user to set
	 */
	public void setUser(BaseUser user) {
		this.user = user;
	}
}</span>
</pre>
<p>The AuditLogInterceptor is responsible in tracking the changes and creating necessary Audit logs. Notice that session is created from a separate HibernateUtils session so that the original(unchanged) data can be retrieved for comparison.</p>
<pre class="java"><span style="color: #800000;">package com.ideyatech.core.persistence.interceptor;

import java.io.Serializable;
import java.util.HashMap;
import java.util.HashSet;
import java.util.Iterator;
import java.util.Map;
import java.util.Set;

import org.apache.log4j.Logger;
import org.hibernate.CallbackException;
import org.hibernate.EmptyInterceptor;
import org.hibernate.Session;
import org.hibernate.type.Type;

import com.ideyatech.core.bean.Auditable;
import com.ideyatech.core.persistence.impl.AuditLogDAOImpl;
import com.ideyatech.core.util.CrudUtil;
import com.ideyatech.core.util.HibernateUtil;
import com.ideyatech.core.util.StringUtil;

/**
 * This is the interceptor responsible in tracking audit trails.
 * Source is patterned after the book &#8220;Java Persistence with Hibernate&#8221; - page 546 onwards
 * and merged with http://www.hibernate.org/318.html
 *
 * @author allantan
 */
public class AuditLogInterceptor extends EmptyInterceptor {
	private static final long serialVersionUID = 582549003254963262L;

	private static Logger _log = Logger.getLogger(AuditLogInterceptor.class);

    private Set inserts    = new HashSet();
    private Set updates    = new HashSet();
    private Set deletes    = new HashSet();
    private Map oldies     = new HashMap(); 

    @Override
    public boolean onSave(Object entity,
                          Serializable id,
                          Object[] state,
                          String[] propertyNames,
                          Type[] types)
            throws CallbackException {
        if (entity instanceof Auditable)
            inserts.add((Auditable)entity);
        return false;
    } 

	/* (non-Javadoc)
	 * @see org.hibernate.EmptyInterceptor#onDelete(java.lang.Object, java.io.Serializable, java.lang.Object[], java.lang.String[], org.hibernate.type.Type[])
	 */
	@Override
	public void onDelete(Object entity, Serializable id, Object[] state,
			String[] propertyNames, Type[] types) {
        if (entity instanceof Auditable)
            deletes.add((Auditable)entity);
	}

    @Override
    public boolean onFlushDirty(Object entity,
                                Serializable id,
                                Object[] currentState,
                                Object[] previousState,
                                String[] propertyNames,
                                Type[] types)
            throws CallbackException {
        if (entity instanceof Auditable) {
        	try {
	        	// Use the id and class to get the pre-update state from the database
	        	Session tempSession =
	                HibernateUtil.getSessionFactory().openSession();
	        	Auditable old = (Auditable) tempSession.get(entity.getClass(), ((Auditable) entity).getId());
	            oldies.put(old.getId(), old);
	        	updates.add((Auditable)entity);
        	} catch (Throwable e) {
        		_log.error(e,e);
        	}
        }
        return false;
    } 

    @Override
    public void postFlush(Iterator iterator)
                    throws CallbackException {
        try {
        	for (Auditable entity:inserts) {
        		if (!entity.skipAudit()) {
        			if (StringUtil.isEmpty(entity.getAuditMessage()))
        				AuditLogDAOImpl.logEvent(
        						CrudUtil.buildCreateMessage(entity), entity);
        			else
        				AuditLogDAOImpl.logEvent(
        						entity.getAuditMessage(), entity);
        		}
        	}
        	for (Auditable entity:deletes) {
        		if (!entity.skipAudit()) {
        			if (StringUtil.isEmpty(entity.getAuditMessage()))
        				AuditLogDAOImpl.logEvent(
        						CrudUtil.buildDeleteMessage(entity), entity);
        			else
        				AuditLogDAOImpl.logEvent(
        						entity.getAuditMessage(), entity);
        		}
        	}
        	for (Auditable entity:updates) {
        		if (!entity.skipAudit()) {
        			if (StringUtil.isEmpty(entity.getAuditMessage())) {
		        		Auditable old = oldies.get(entity.getId());
		        		AuditLogDAOImpl.logEvent(CrudUtil.buildUpdateMessage(old, entity), entity);
        			} else
        				AuditLogDAOImpl.logEvent(
        						entity.getAuditMessage(), entity);
        		}
        	}
        } catch (Throwable e) {
    		_log.error(e,e);
    	} finally {
            inserts.clear();
            updates.clear();
            deletes.clear();
            oldies.clear();
        }
    }
}
</span></pre>
<p><span style="color: #800000;"><script src="/wp-content/plugins/google-syntax-highlighter/Scripts/shCore.js"></script></span><br />
 <script src="/wp-content/plugins/google-syntax-highlighter/Scripts/shBrushJava.js"></script><br />
<script><!--
dp.SyntaxHighlighter.ClipboardSwf = '/wp-content/plugins/google-syntax-highlighter/Scripts/clipboard.swf';
dp.SyntaxHighlighter.HighlightAll('code1');
dp.SyntaxHighlighter.HighlightAll('code2');
dp.SyntaxHighlighter.HighlightAll('code3');
// --></script></p>
]]></content:encoded>
			<wfw:commentRss>http://www.ideyatech.com/2008/07/audit-logging-via-hibernate-interceptor-12/feed/</wfw:commentRss>
		</item>
		<item>
		<title>Audit Logging via Hibernate Interceptor (2/2)</title>
		<link>http://www.ideyatech.com/2008/07/audit-logging-via-hibernate-interceptor-22/</link>
		<comments>http://www.ideyatech.com/2008/07/audit-logging-via-hibernate-interceptor-22/#comments</comments>
		<pubDate>Fri, 18 Jul 2008 03:21:32 +0000</pubDate>
		<dc:creator>Allan Tan</dc:creator>
		
		<category><![CDATA[Java]]></category>

		<category><![CDATA[Technology Center]]></category>

		<category><![CDATA[audit logging]]></category>

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

		<category><![CDATA[hibernate interceptor]]></category>

		<category><![CDATA[open-tides]]></category>

		<guid isPermaLink="false">http://www.ideyatech.com/?p=160</guid>
		<description><![CDATA[<img class="alignleft" src="http://www.ideyatech.com/wp-content/uploads/thumbs/audit-logging-via-hibernate.png" alt="Audit Logging via Hibernate Interceptor (2/2)" title="Audit Logging via Hibernate Interceptor (2/2)" />

One common requirement in developing enterprise applications is to ensure audit logs are available for data security and traceability. Who made the changes, when and where. Such requirement is not only dictated by corporate IT policies but is also required by government laws. This is a continuation of "Audit Logging via Hibernate Interceptor".]]></description>
			<content:encoded><![CDATA[<div class="tweetmeme_button" style="float: left; margin: 0.25em 1.5em 1em 0;"><a href="http://api.tweetmeme.com/share?url=http%3A%2F%2Fwww.ideyatech.com%2F2008%2F07%2Faudit-logging-via-hibernate-interceptor-22%2F"><img src="http://api.tweetmeme.com/imagebutton.gif?url=http%3A%2F%2Fwww.ideyatech.com%2F2008%2F07%2Faudit-logging-via-hibernate-interceptor-22%2F" height="61" width="51" /></a></div><p>This is a continuation of the post &#8220;<a href="http://www.ideyatech.com/2008/07/audit-logging-via-hibernate-interceptor-12/">Audit Logging via Hibernate Interceptor</a>&#8220;.</p>
<p>Other helper functions are shown below:<br />
<!--More--><br />
CrudUtil is the class responsible for retrieving object values using Java reflections:</p>
<pre class="java"><span style="color: #800000;">import java.lang.reflect.Method;
import java.math.BigDecimal;
import java.util.Collection;
import java.util.List;
import java.util.regex.Matcher;
import java.util.regex.Pattern;

import org.apache.log4j.Logger;

import com.ideyatech.core.InvalidImplementationException;
import com.ideyatech.core.bean.Auditable;
import com.ideyatech.core.bean.BaseCriteria;
import com.ideyatech.core.bean.BaseEntity;

/**
 * @author allanctan
 *
 */
public class CrudUtil {

    private static Logger _log = Logger.getLogger(CrudUtil.class);

	private static final String SQL_PARAM = &#8220;:([^\\s]+)&#8221;;
	private static final Pattern SQL_PARAM_PATTERN = Pattern.compile(
			SQL_PARAM, Pattern.CASE_INSENSITIVE | Pattern.MULTILINE | Pattern.DOTALL);

    /**
     * Creates the logging message for new audit logs
     * @param obj
     * @return
     */
    public static String buildCreateMessage(Auditable obj) {
    	StringBuffer message = new StringBuffer(&#8221;Added &#8220;);
    	message.append(obj.getClass().getSimpleName())  // class name
    		.append(&#8221; &#8220;)
    		.append(obj.getPrimaryField())
    		.append(&#8221;:&#8221;);
    	Object value = retrieveObjectValue(obj, obj.getPrimaryField());
    	if (value!=null)
    		message.append(value.toString())
    		.append(&#8221; - &#8220;);
    	// loop through the fields list
		List</span><span style="color: #800000;"> auditFields = obj.getAuditableFields();
		int count = 0;
		for (String property:auditFields) {
			Object ret = retrieveObjectValue(obj, property);
			if (ret!=null &amp;&amp; ret.toString().trim().length()&gt;0) {
				if (count &gt; 0)
					message.append(&#8221; and &#8220;);
				message.append(property)
					.append(&#8221;=&#8221;)
					.append(ret.toString());
				count++;
			}
		}

    	return message.toString();
    }

    /**
     * Creates the logging message for update audit logs
     * @param obj
     * @return
     */
    public static String buildUpdateMessage(Auditable oldObject, Auditable newObject) {

    	StringBuffer message = new StringBuffer(&#8221;Changed &#8220;);
    	message.append(oldObject.getClass().getSimpleName())  // class name
    		.append(&#8221; &#8220;)
    		.append(oldObject.getPrimaryField())
    		.append(&#8221;:&#8221;);
    	Object value = retrieveObjectValue(oldObject, oldObject.getPrimaryField());
    	if (value!=null)
    		message.append(value.toString())
    		.append(&#8221; - &#8220;);
    	// loop through the fields list
		List</span><span style="color: #800000;"> auditFields = oldObject.getAuditableFields();
		int count = 0;
		for (String property:auditFields) {
			Object oldValue = retrieveObjectValue(oldObject, property);
			Object newValue = retrieveObjectValue(newObject, property);
			if (oldValue == null) oldValue = new String(&#8221;");
			if (newValue == null) newValue = new String(&#8221;");
			if (!oldValue.equals(newValue)) {
				if (count &gt; 0)
					message.append(&#8221; and &#8220;);
				message.append(property)
					.append(&#8221; from &#8216;&#8221;)
					.append(oldValue.toString())
					.append(&#8221;&#8216; to &#8216;&#8221;)
					.append(newValue.toString())
					.append(&#8221;&#8216;&#8221;);
				count++;
			}
		}

    	return message.toString();
    }

    /**
     * Creates the logging message for new audit logs
     * @param obj
     * @return
     */
    public static String buildDeleteMessage(Auditable obj) {
    	StringBuffer message = new StringBuffer(&#8221;Deleted &#8220;);
    	message.append(obj.getClass().getSimpleName())  // class name
    		.append(&#8221; &#8220;)
    		.append(obj.getPrimaryField())
    		.append(&#8221;:&#8221;);
    	Object value = retrieveObjectValue(obj, obj.getPrimaryField());
    	if (value!=null)
    		message.append(value.toString());
    	return message.toString();
    }

    /**
     * Retrieves the property name for a method name.
     * (e.g. getName will return name)
     * @param methodName
     * @return
     */
    public static String getPropertyName(String methodName) {
    	if (StringUtil.isEmpty(methodName) || methodName.length()&lt;=3)
    		return null;
    	if (methodName.startsWith(&#8221;get&#8221;) || methodName.startsWith(&#8221;set&#8221;)) {
    		String prop = methodName.substring(4);
    		char c = Character.toLowerCase(methodName.charAt(3));
    		return c+prop;
    	} else
    		return null;
    }
    /**
     * Retrieves the getter method name for a given property.
     * (e.g. name will return getName)
     * @param propertyName
     * @return
     */
    public static String getGetterMethodName(String propertyName) {
    	if (StringUtil.isEmpty(propertyName) || propertyName.length()&lt;=0)
    		return null;
    	char c = Character.toUpperCase(propertyName.charAt(0));
    	return &#8220;get&#8221;+c+propertyName.substring(1);
    }

	/**
	 * This method retrieves the object value that corresponds to the property specified.
	 * This method can recurse inner classes until specified property is reached.
	 *
	 * For example:
	 * obj.firstName
	 * obj.address.Zipcode
	 *
	 * @param obj
	 * @param property
	 * @return
	 */
	public static Object retrieveObjectValue(Object obj, String property) {
		if (property.contains(&#8221;.&#8221;)) {
			// we need to recurse down to final object
			String props[] = property.split(&#8221;\\.&#8221;);
			try {
				Method method = obj.getClass().getMethod(getGetterMethodName(props[0]));
				Object ivalue = method.invoke(obj);
				if (ivalue==null)
					return null;
				return retrieveObjectValue(ivalue,property.substring(props[0].length()+1));
			} catch (Exception e) {
				_log.error(&#8221;Failed to retrieve value for &#8220;+property);
				throw new InvalidImplementationException(&#8221;CrudUtil&#8221;,&#8221;retrieveObjectValue&#8221;,null,&#8221;", e);
			}
		} else {
			// let&#8217;s get the object value directly
			try {
				Method method = obj.getClass().getMethod(getGetterMethodName(property));
				return method.invoke(obj);
			} catch (Exception e) {
				_log.error(&#8221;Failed to retrieve value for &#8220;+property);
				throw new InvalidImplementationException(&#8221;CrudUtil&#8221;,&#8221;retrieveObjectValue&#8221;,null,&#8221;", e);
			}
		}
	}

	/**
	 * This method retrieves the object type that corresponds to the property specified.
	 * This method can recurse inner classes until specified property is reached.
	 *
	 * For example:
	 * obj.firstName
	 * obj.address.Zipcode
	 *
	 * @param obj
	 * @param property
	 * @return
	 */
	public static Class retrieveObjectType(Object obj, String property) {
		if (property.contains(&#8221;.&#8221;)) {
			// we need to recurse down to final object
			String props[] = property.split(&#8221;\\.&#8221;);
			try {
				Method method = obj.getClass().getMethod(getGetterMethodName(props[0]));
				Object ivalue = method.invoke(obj);
				return retrieveObjectType(ivalue,property.substring(props[0].length()+1));
			} catch (Exception e) {
				_log.error(&#8221;Failed to retrieve value for &#8220;+property);
				throw new InvalidImplementationException(&#8221;CrudUtil&#8221;,&#8221;retrieveObjectValue&#8221;,null,&#8221;", e);
			}
		} else {
			// let&#8217;s get the object value directly
			try {
				Method method = obj.getClass().getMethod(getGetterMethodName(property));
				return method.getReturnType();
			} catch (Exception e) {
				_log.error(&#8221;Failed to retrieve value for &#8220;+property);
				throw new InvalidImplementationException(&#8221;CrudUtil&#8221;,&#8221;retrieveObjectValue&#8221;,null,&#8221;", e);
			}
		}
	}
}</span></pre>
<p>HibernateUtil is a utility to retrieve hibernate session separate from the usual EntityManager.</p>
<pre class="java"><span style="color: #800000;">import java.net.URL;
import java.util.Set;

import org.hibernate.SessionFactory;
import org.hibernate.cfg.AnnotationConfiguration;
import org.scannotation.AnnotationDB;
import org.scannotation.ClasspathUrlFinder;

/**
 * This utility allows creation of Hibernate session directly.
 * Used for logging purposes.
 *
 * @author allantan
 */
public class HibernateUtil {
    private static final SessionFactory sessionFactory;
    static {
        try {
        	URL[] urls = ClasspathUrlFinder.findResourceBases(&#8221;META-INF/persistence.xml&#8221;);
        	AnnotationDB db = new AnnotationDB();
        	db.scanArchives(urls);
        	Set</span><span style="color: #800000;"> entityClasses = db.getAnnotationIndex().get(javax.persistence.Entity.class.getName());
            // Create the SessionFactory
        	AnnotationConfiguration ac =  new AnnotationConfiguration();
            ac.setProperty(&#8221;hibernate.connection.datasource&#8221;, &#8220;java:comp/env/jdbc/ideyatech&#8221;);
            ac.setProperty(&#8221;hibernate.dialect&#8221;, &#8220;org.hibernate.dialect.MySQLDialect&#8221;);
            for (String clazz:entityClasses) {
            	ac.addAnnotatedClass(Class.forName(clazz));
            }
            sessionFactory = ac.buildSessionFactory();
        } catch (Throwable ex) {
            // Make sure you log the exception, as it might be swallowed
            System.err.println(&#8221;Initial SessionFactory creation failed.&#8221; + ex);
            throw new ExceptionInInitializerError(ex);
        }
    }

    public static SessionFactory getSessionFactory() {
        return sessionFactory;
    }
}</span></pre>
<p>And finally, the sample implementation of an Auditable class:</p>
<pre class="java"><span style="color: #800000;">public class InboundDocument implements Auditable {
	private static final long serialVersionUID = -7019861759834380358L;

	@Column(name = &#8220;DATE_RECEIVED&#8221;)
	@Field(index = Index.UN_TOKENIZED, store = Store.YES)
	@DateBridge(resolution = Resolution.DAY)
	private Date dateReceived;

	@Column(name = &#8220;NUMBER_OF_DAYS&#8221;)
	private Integer numberOfDays;

	@Column(name = &#8220;DATE_DUE&#8221;)
	@Field(index = Index.UN_TOKENIZED, store = Store.YES)
	@DateBridge(resolution = Resolution.DAY)
	private Date dateDue;

	@ManyToOne(fetch = FetchType.EAGER)
	@JoinColumn(name = &#8220;ACTION_NEEDED&#8221;)
	@Field(index = Index.TOKENIZED)
	@FieldBridge(impl = SystemCodesBridge.class)
	private SystemCodes actionNeeded;

        &#8230;
        &#8230;

	public List</span><span style="color: #800000;"> getAuditableFields() {
		List</span><span style="color: #800000;"> props = new ArrayList</span><span style="color: #800000;">();
		props.add(&#8221;documentType&#8221;);
		props.add(&#8221;actionNeeded&#8221;);
		props.add(&#8221;dateReceived&#8221;);
		props.add(&#8221;dateDue&#8221;);
		props.add(&#8221;summary&#8221;);
		return props;
	}

	public String getPrimaryField() {
		return &#8220;barcodeNumber&#8221;;
	}
}</span></pre>
<p>That&#8217;s it! Just implement all your auditable classes with Auditable interface. All the codes above are extracted from <a href="http://code.google.com/p/open-tides/">open-tides</a> - an open-source web-foundation framework that can be used to quickly setup an enterprise project.</p>
<p><script src="/wp-content/plugins/google-syntax-highlighter/Scripts/shCore.js"></script><br />
 <script src="/wp-content/plugins/google-syntax-highlighter/Scripts/shBrushJava.js"></script><br />
<script type="text/javascript"><!--
dp.SyntaxHighlighter.ClipboardSwf = '/wp-content/plugins/google-syntax-highlighter/Scripts/clipboard.swf';
dp.SyntaxHighlighter.HighlightAll('code21');
dp.SyntaxHighlighter.HighlightAll('code22');
dp.SyntaxHighlighter.HighlightAll('code23');
// --></script></p>
]]></content:encoded>
			<wfw:commentRss>http://www.ideyatech.com/2008/07/audit-logging-via-hibernate-interceptor-22/feed/</wfw:commentRss>
		</item>
		<item>
		<title>Communicating with Geronimo’s JMS(ActiveMQ)</title>
		<link>http://www.ideyatech.com/2008/07/communicating-with-geronimo%e2%80%99s-jmsactivemq/</link>
		<comments>http://www.ideyatech.com/2008/07/communicating-with-geronimo%e2%80%99s-jmsactivemq/#comments</comments>
		<pubDate>Mon, 07 Jul 2008 15:54:24 +0000</pubDate>
		<dc:creator>Melvin Dave Vivas</dc:creator>
		
		<category><![CDATA[Java]]></category>

		<category><![CDATA[Technology Center]]></category>

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

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

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

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

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

		<guid isPermaLink="false">http://www.ideyatech.com/?p=158</guid>
		<description><![CDATA[<img class="alignleft" src="http://www.ideyatech.com/wp-content/uploads/thumbs/geronimo.png" alt="Communicating with Geronimo’s JMS(ActiveMQ) " title="Communicating with Geronimo’s JMS(ActiveMQ) " />

y team member has a requirement to implement JMS. I was able to dig up some stuff about JMS in my blog. I’m re-posting it here since it might be useful. For this example, I used IBM Websphere Community Edition(IBM WAS CE), which is synonymous to Geronimo(at least for the first version). Simple steps after the jump.]]></description>
			<content:encoded><![CDATA[<div class="tweetmeme_button" style="float: left; margin: 0.25em 1.5em 1em 0;"><a href="http://api.tweetmeme.com/share?url=http%3A%2F%2Fwww.ideyatech.com%2F2008%2F07%2Fcommunicating-with-geronimo%25e2%2580%2599s-jmsactivemq%2F"><img src="http://api.tweetmeme.com/imagebutton.gif?url=http%3A%2F%2Fwww.ideyatech.com%2F2008%2F07%2Fcommunicating-with-geronimo%25e2%2580%2599s-jmsactivemq%2F" height="61" width="51" /></a></div><p>My team member has a requirement to implement JMS. I was able to dig up some stuff about JMS in my blog. I&#8217;m re-posting it here since it might be useful. For this example, I used <a href="http://www-306.ibm.com/software/webservers/appserv/community/">IBM Websphere Community Edition(IBM WAS CE)</a>, which is synonymous to <a href="http://geronimo.apache.org/">Geronimo</a>(at least for the first version).</p>
<p>Here are the simple steps:</p>
<p>1. Run <a href="http://geronimo.apache.org/">Geronimo</a> or IBM WAS CE<br />
2. Compile these two classes. Take note that you need the ff. jar files to compile and run these successfully. Here’s the list:</p>
<p>- geronimo-j2ee_1.4_spec.jar<br />
- commons-logging-1.0.4.jar<br />
- concurrent-1.3.4.jar</p>
<p><em>Note : Some jars might have new versions so be sure to use the latest one.</em></p>
<p>You’ll find it somewhere under the Geronimo or WAS CE installation directory.</p>
<p>3. Run the clients.</p>
<p><strong>The receiver class</strong></p>
<pre name="receiver_code" class="java">
import java.util.logging.Logger;
import javax.jms.Message;
import javax.jms.MessageConsumer;
import javax.jms.Queue;
import javax.jms.QueueConnection;
import javax.jms.QueueSession;
import javax.jms.Session;
import javax.jms.TextMessage;
import org.activemq.ActiveMQConnectionFactory;

public class JMSReceiver {
    protected Queue queue;

    protected String queueName = “SendReceiveQueue”;
    protected String url = “tcp://localhost:61616″;

    Logger logger = Logger.getAnonymousLogger();

    protected int ackMode = Session.AUTO_ACKNOWLEDGE;

    public static void main(String[] args) {
        JMSReceiver msgReceiver = new JMSReceiver();
        msgReceiver.run();
    }

    public void run() {
        QueueConnection connection;
        QueueSesion session;
        MessageConsumer consumer;
        try {
            ActiveMQConnectionFactory connectionFactory = new ActiveMQConnectionFactory(url);
            onnection = (QueueConnection)connectionFactory.createConnection();
            connection.start();
            consumer = null;
            session = connection.createQueueSession(false,Session.AUTO_ACKNOWLEDGE);
            queue = session.createQueue(queueName);
            consumer = session.createReceiver(queue);
            logger.info(”Waiting for message (max 5)”);
            for (int i = 0; i &lt; 5; i++) {
                Message message = consumer.receive();
                processMessage(message);
            }
            logger.info(”Closing connection”);
            } catch (Exception e) {
                logger.error(”Caught: ”,e);
            } finally {
                consumer.close();
                session.close();
                connection.close();
            }
        }
    }
    public void processMessage(Message message) {
         try {
            TextMessage txtMsg = (TextMessage) message;
            logger.info(”Received a message: ” + txtMsg.getText());
         } catch (Exception e) {
            logger.error(”Caught: ” , e);
         }
    }
}
</pre>
<p><strong>The sender class</strong></p>
<pre name="sender_code" class="java">
import java.util.logging.Logger;
import javax.jms.Queue;
import javax.jms.QueueConnection;
import javax.jms.QueueSender;
import javax.jms.QueueSession;
import javax.jms.Session;
import javax.jms.TextMessage

import org.activemq.ActiveMQConnectionFactory;

public class JMSSender {

    private Queue receiveQueue = null;
    protected String queueName = “SendReceiveQueue”;
    protected String url = “tcp://localhost:61616″;
    Logger logger = Logger.getAnonymousLogger();

    public static void main(String[] args) {
        JMSSender msgSender = new JMSSender();
        msgSender.run();
    }

    public void run() {
        QueueConnection queueConn = null;
        QueueSession queueSess = null;
        TextMessage myMessage = null;
        QueueSender queueSender = null;

        try {
            ActiveMQConnectionFactory factory = new ActiveMQConnectionFactory(url);

            queueConn = factory.createQueueConnection();
            queueSess = queueConn.createQueueSession(false,Session.AUTO_ACKNOWLEDGE)
            receiveQueue = queueSess.createQueue(queueName);
            queueSender = queueSess.createSender(receiveQueue);
            myMessage = queueSess.createTextMessage();

            myMessage.setText(”test from JMS client 2″);
            queueSender.send(myMessage);

        } catch (Exception e) {
            logger.info(”Caught: ”, e);
        } finally {
            queueSender.close();
            queueSess.close();
            queueConn.close();
        }
    }
}
</pre>
<link type="text/css" rel="stylesheet" href="/wp-content/plugins/google-syntax-highlighter/Styles/SyntaxHighlighter.css"></link>
<script language="javascript" src="/wp-content/plugins/google-syntax-highlighter/Scripts/shCore.js"></script><br />
<script language="javascript" src="/wp-content/plugins/google-syntax-highlighter/Scripts/shBrushJava.js"></script><br />
<script language="javascript">
dp.SyntaxHighlighter.ClipboardSwf = '/wp-content/plugins/google-syntax-highlighter/Scripts/clipboard.swf';
dp.SyntaxHighlighter.HighlightAll('receiver_code');
dp.SyntaxHighlighter.HighlightAll('sender_code');
</script></p>
]]></content:encoded>
			<wfw:commentRss>http://www.ideyatech.com/2008/07/communicating-with-geronimo%e2%80%99s-jmsactivemq/feed/</wfw:commentRss>
		</item>
		<item>
		<title>Java Development on a Macbook?</title>
		<link>http://www.ideyatech.com/2008/06/java-development-on-a-macbook/</link>
		<comments>http://www.ideyatech.com/2008/06/java-development-on-a-macbook/#comments</comments>
		<pubDate>Fri, 27 Jun 2008 13:38:13 +0000</pubDate>
		<dc:creator>Allan Tan</dc:creator>
		
		<category><![CDATA[Stories]]></category>

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

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

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

		<category><![CDATA[software development]]></category>

		<guid isPermaLink="false">http://www.ideyatech.com/?p=142</guid>
		<description><![CDATA[<img class="alignleft" src="http://www.ideyatech.com/wp-content/uploads/thumbs/java-development-on-a-macbook.png" alt="Java Development on a Macbook?" title="Java Development on a Macbook?" />

Why develop Java applications on Mac? Well, why not? Aside from the coolness factor, here are some business and technical reasons to do so. (1) Macbooks are faster and more stable than any other Vista machine. (2) Macbooks can run multiple OS - Linux, Windows and Leopard. With VMWare or Parallels, you can even run Windows within your Mac environment. 8 more...]]></description>
			<content:encoded><![CDATA[<div class="tweetmeme_button" style="float: left; margin: 0.25em 1.5em 1em 0;"><a href="http://api.tweetmeme.com/share?url=http%3A%2F%2Fwww.ideyatech.com%2F2008%2F06%2Fjava-development-on-a-macbook%2F"><img src="http://api.tweetmeme.com/imagebutton.gif?url=http%3A%2F%2Fwww.ideyatech.com%2F2008%2F06%2Fjava-development-on-a-macbook%2F" height="61" width="51" /></a></div><p>Why develop Java applications on Mac? Well, why not? Aside from the coolness factor, here are some business and technical reasons to do so.</p>
<p align="center"><img title="mac development machine" src="http://www.ideyatech.com/wp-content/uploads/2008/06/macs.jpg" alt="" /></p>
<ul>
<li>Macbooks are faster and more stable than any other Vista machine.</li>
<li>Macbooks can run multiple OS - Linux, Windows and Leopard. With VMWare or Parallels, you can even run Windows within your Mac environment.</li>
<li>You have a better brand than any other outsoucing or software development company. Imagine sending 5 consultants to your clients each carrying a Macbook.</li>
<li>They have the tools needed for Java development - including Eclipse, MySQL, Xcode and any other Java IDE.</li>
<li>The graphics interface is inspiring.  Who says developers don&#8217;t need inspiration?</li>
<li>Prices of software (e.g. iWorks, etc.) is cheaper than its Microsoft counterparts. Besides, most of the tools are open source.</li>
<li>Prices of Macbooks are competitive if not cheaper than other laptop brands.</li>
<li>It&#8217;s secure&#8230; it&#8217;s built on top of BSD.</li>
<li>Did I mention NO virus?</li>
<li>The coolness and intuitiveness of Time Machine encourages data backup. The video below is available now in Leopard and it works!</li>
</ul>
<p style="text-align: center;"><object classid="clsid:d27cdb6e-ae6d-11cf-96b8-444553540000" width="425" height="344" codebase="http://download.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=6,0,40,0"><param name="src" value="http://www.youtube.com/v/n055CqFnjyo&amp;hl=en" /><embed type="application/x-shockwave-flash" width="425" height="344" src="http://www.youtube.com/v/n055CqFnjyo&amp;hl=en"></embed></object><br />
Mac OS X Leopard - Time Machine</p>
]]></content:encoded>
			<wfw:commentRss>http://www.ideyatech.com/2008/06/java-development-on-a-macbook/feed/</wfw:commentRss>
		</item>
		<item>
		<title>Apache Ivy : An Agile Dependency Manager</title>
		<link>http://www.ideyatech.com/2008/06/apache-ivy-an-agile-dependency-manager/</link>
		<comments>http://www.ideyatech.com/2008/06/apache-ivy-an-agile-dependency-manager/#comments</comments>
		<pubDate>Mon, 23 Jun 2008 10:06:02 +0000</pubDate>
		<dc:creator>Rey Jexter Bumalay</dc:creator>
		
		<category><![CDATA[Custom Programming]]></category>

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

		<category><![CDATA[Technology Center]]></category>

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

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

		<category><![CDATA[continuous integration]]></category>

		<category><![CDATA[dependency manager]]></category>

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

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

		<guid isPermaLink="false">http://www.ideyatech.com/?p=139</guid>
		<description><![CDATA[<img class="alignleft" src="http://www.ideyatech.com/wp-content/uploads/thumbs/ivy.png" alt="Apache Ivy : An Agile Dependency Manager" title="Apache Ivy : An Agile Dependency Manager" />

Why I Choose Ivy? The main thing I like about Ivy is its simplicity. You can use Ivy with only ant installed on your system (and of course, java). This means that you don’t need to download any Ivy  related libraries or when using eclipse, no plug-in is needed. You can run everything using ant, from installing the ivy library to downloading the dependencies.]]></description>
			<content:encoded><![CDATA[<div class="tweetmeme_button" style="float: left; margin: 0.25em 1.5em 1em 0;"><a href="http://api.tweetmeme.com/share?url=http%3A%2F%2Fwww.ideyatech.com%2F2008%2F06%2Fapache-ivy-an-agile-dependency-manager%2F"><img src="http://api.tweetmeme.com/imagebutton.gif?url=http%3A%2F%2Fwww.ideyatech.com%2F2008%2F06%2Fapache-ivy-an-agile-dependency-manager%2F" height="61" width="51" /></a></div><p><a><img style="float:right;" src="http://ant.apache.org/ivy/images/ivy-lierre.png" border="0" alt="Ivy Dependency Manager" width="272" height="204" /></a></p>
<p>Like most of us often hear, “its another framework or dependency management tool”. But what exactly differentiates Ivy from Maven?</p>
<p>Ivy is much easier to use. The library is simpler since it doesn’t do so much. It only focuses on dependency management and use the already famous and powerful ant to build the application. In short, ant and ivy is used side by side.</p>
<p><strong>Why I Choose Ivy?</strong></p>
<p><strong></strong>The main thing I like about Ivy is its simplicity. You can use Ivy with only ant installed on your system (and of course, java). This means that you don’t need to download any Ivy  related libraries or when using eclipse, no plug-in is needed. You can run everything using ant, from installing the ivy library to downloading the dependencies.</p>
<p>Ivy is a dependency management tool that can use other repository such as maven repository.</p>
<p><strong>Installing Ivy</strong></p>
<p>Before continuing, I’ll assume that you are using ant version 1.7. You can choose to run the ant script in either console or from inside eclipse (It depends on your preference).</p>
<p>Here is a build.xml file that contains several targets that will be used in this post:</p>
<pre name="code" class="xml">
&lt;?xml version="1.0" encoding="UTF-8"?&gt;

&lt;project name="ivytest" basedir="." default="usage" xmlns:ivy="antlib:org.apache.ivy.ant"&gt;

&lt;property name="lib.dir" value="lib" /&gt;
&lt;property name="build.dir" value="build" /&gt;
&lt;property name="src.dir" value="src" /&gt;

&lt;path id="lib.path.id"&gt;
&lt;fileset dir="${lib.dir}" /&gt;
&lt;/path&gt;

&lt;path id="run.path.id"&gt;
&lt;path refid="lib.path.id" /&gt;
&lt;path location="${build.dir}" /&gt;
&lt;/path&gt;

&lt;property name="ivy.install.version" value="2.0.0-beta1" /&gt;
&lt;property name="ivy.jar.dir" value="${basedir}/ivy" /&gt;
&lt;property name="ivy.jar.file" value="${ivy.jar.dir}/ivy.jar" /&gt;

&lt;target name="usage" description="Displays the command used with this build script"&gt;
&lt;echo message="Usage" /&gt;
&lt;echo message="-------------------------------------------" /&gt;
&lt;echo message="Available targets are:" /&gt;
&lt;echo message="download-ivy --&gt; Download ivy library" /&gt;
&lt;echo message="install-ivy --&gt; Install ivy library" /&gt;
&lt;echo message="clean-libs --&gt; Delete lib files" /&gt;
&lt;echo message="clean-ivy --&gt; Delete the ivy files" /&gt;
&lt;echo message="resolve --&gt; Resolve/Download ivy dependencies" /&gt;
&lt;/target&gt;

&lt;target name="download-ivy" unless="skip.download" description="Download ivy.jar"&gt;
&lt;mkdir dir="${ivy.jar.dir}"/&gt;
&lt;echo message="installing ivy..."/&gt;
&lt;get src="http://repo1.maven.org/maven2/org/apache/ivy/ivy/ ${ivy.install.version}/ivy-${ivy.install.version}.jar"
dest="${ivy.jar.file}" usetimestamp="true"/&gt;
&lt;/target&gt;

&lt;target name="install-ivy" depends="download-ivy" description="Install ivy library"&gt;
&lt;path id="ivy.lib.path"&gt;
&lt;fileset dir="${ivy.jar.dir}" includes="*.jar"/&gt;
&lt;/path&gt;
&lt;taskdef resource="org/apache/ivy/ant/antlib.xml" uri="antlib:org.apache.ivy.ant" classpathref="ivy.lib.path"/&gt;
&lt;/target&gt;

&lt;target name="clean-libs" description="Delete all libraries/dependencies"&gt;
&lt;echo message="Deleting ${lib.dir}" /&gt;
&lt;delete dir="${lib.dir}" /&gt;
&lt;/target&gt;

&lt;target name="clean-ivy" depends="clean-libs" description="Delete the all folders/files that was generated by ivy"&gt;
&lt;echo message="Deleting ${ivy.jar.dir}" /&gt;
&lt;delete dir="${ivy.jar.dir}" /&gt;
&lt;/target&gt;

&lt;target name="resolve" depends="install-ivy" description="Resolve the dependencies"&gt;
&lt;ivy:retrieve/&gt;
&lt;/target&gt;

&lt;target name="run" depends="resolve" description="Compile and run the project"&gt;
&lt;mkdir dir="${build.dir}" /&gt;
&lt;javac srcdir="${src.dir}" destdir="${build.dir}" classpathref="lib.path.id" /&gt;
&lt;java classpathref="run.path.id" classname="Main"/&gt;
&lt;/target&gt;

&lt;/project&gt;
</pre>
<p>Invoke “ant install-ivy” and the ivy jars will be downloaded. A new folder named “ivy” will be created with the ivy.jar in it.</p>
<p><strong>Dowloading Dependencies</strong></p>
<p>By default ivy uses maven 2 repository but you can certainly define other repository (It will be covered on later post).</p>
<p>The build.xml above contains a target named “resolve”. Running the target will cause the Ivy to download defined dependencies on ivy.xml (ivy.xml is needed since all the dependencies are defined on that file).  Here is an example of ivy.xml:</p>
<pre name="code" class="xml">
&lt;?xml version="1.0" encoding="UTF-8"?&gt;

&lt;ivy-module version="2.0"&gt;
&lt;info organisation="ideyatech" module="ivytest"/&gt;
&lt;dependencies&gt;
&lt;dependency org="log4j" name="log4j" rev="1.2.8"/&gt;
&lt;/dependencies&gt;
&lt;/ivy-module&gt;
</pre>
<p>The code above downloads the log4j and its dependencies from the defined repository (in our case, maven repo). I chose to use log4j because in the next section, I’ll be demonstrating to compile a simple java class that uses a Ivy managed library. Invoke &#8220;ant resolve&#8221; now and you will see a message saying that the library is being downloaded.</p>
<p><strong>Compiling The Application</strong></p>
<p>Main.java:</p>
<pre name="code" class="java">
import org.apache.log4j.Logger;
public class Main {
    private static final Logger log = Logger.getLogger(Main.class);
    public static void main(String[] args) {
        System.out.println(&#8221;Printed using system.out.println&#8221;);
        log.info(&#8221;Printed using log4j logger&#8221;);
     }
}
</pre>
<p>The sample java file won&#8217;t really print the message being logged. The purpose of this example is to test compiling the application with the Ivy libraries being referenced. The idea is to simply add the “lib” dir to the classpath on compilation.</p>
<p>Try invoking “ant run” and the application will be compiled and executed. Note that invoking the “ant clean-libs” and removing the “resolve” dependency on run target will cause the compilation to throw some error.</p>
<p><strong>References:</strong></p>
<p><a href="http://ant.apache.org/ivy/index.html">http://ant.apache.org/ivy/index.html</a></p>
<p><strong>Note:</strong></p>
<ul>
<li>Ivy logo is property of Apache Ivy and is not connected with Ideyatech.</li>
</ul>
<link type="text/css" rel="stylesheet" href="/wp-content/plugins/google-syntax-highlighter/Styles/SyntaxHighlighter.css"></link>
<script language="javascript" src="/wp-content/plugins/google-syntax-highlighter/Scripts/shCore.js"></script><br />
<script language="javascript" src="/wp-content/plugins/google-syntax-highlighter/Scripts/shBrushXml.js"></script><br />
<script language="javascript" src="/wp-content/plugins/google-syntax-highlighter/Scripts/shBrushJava.js"></script><br />
<script language="javascript">
dp.SyntaxHighlighter.ClipboardSwf = '/wp-content/plugins/google-syntax-highlighter/Scripts/clipboard.swf';
dp.SyntaxHighlighter.HighlightAll('code');
</script></p>
]]></content:encoded>
			<wfw:commentRss>http://www.ideyatech.com/2008/06/apache-ivy-an-agile-dependency-manager/feed/</wfw:commentRss>
		</item>
		<item>
		<title>Sun Tech Days 2007-2008</title>
		<link>http://www.ideyatech.com/2008/06/sun-tech-days-2007-2008/</link>
		<comments>http://www.ideyatech.com/2008/06/sun-tech-days-2007-2008/#comments</comments>
		<pubDate>Wed, 18 Jun 2008 14:51:01 +0000</pubDate>
		<dc:creator>Allan Tan</dc:creator>
		
		<category><![CDATA[Corporate News and Events]]></category>

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

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

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

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

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

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

		<category><![CDATA[sun tech days]]></category>

		<guid isPermaLink="false">http://www.ideyatech.com/?p=129</guid>
		<description><![CDATA[<img class="alignleft" src="http://www.ideyatech.com/wp-content/uploads/thumbs/sun-tech-days.png" alt="Sun Tech Days 2007-2008" title="Sun Tech Days 2007-2008" />

Today, we attended the Sun Tech Days Conference at the Makati Shangrila. Aside from the great food and freebies, I enjoyed the whole experience. There were several things I learned during the second day of the 3-day conference. Some things I've learned: (1) Java 6 has some nice features. (2) Grails is cool, but not necessarily great. More on this after the jump.]]></description>
			<content:encoded><![CDATA[<div class="tweetmeme_button" style="float: left; margin: 0.25em 1.5em 1em 0;"><a href="http://api.tweetmeme.com/share?url=http%3A%2F%2Fwww.ideyatech.com%2F2008%2F06%2Fsun-tech-days-2007-2008%2F"><img src="http://api.tweetmeme.com/imagebutton.gif?url=http%3A%2F%2Fwww.ideyatech.com%2F2008%2F06%2Fsun-tech-days-2007-2008%2F" height="61" width="51" /></a></div><p>Today, we attended the Sun Tech Days Conference at the Makati Shangrila. Aside from the great food and freebies, I enjoyed the whole experience. There were several things I learned during the second day of the 3-day conference. Here&#8217;s to recap what I learned and observed:</p>
<p style="text-align: center;"><img class="aligncenter" style="vertical-align: middle;" src="http://www.ideyatech.com/wp-content/uploads/2008/06/sun-tech.jpg" alt="Sun Tech Days" width="500" height="248" /></p>
<ul>
<li>Java 6 has some nice features including Scripting Language Support (JSR 223) and Web Service Integration. I agree that these 2 features are very common and should be part of the standard Java. I&#8217;m not sure about JDBC 4.0; with the success of JPA,  JDBC might not be that useful anymore.</li>
<li>Grails is cool, but not necessarily great. I think it still needs improvement to be able to compete in the enterprise, if at all possible. My main concern with template codes is &#8220;customizability&#8221;. But it&#8217;s still cool.</li>
<li>Sun admitted their problems with Java 6, such as slow start-up and large codebase. I think this is a good sign for the future of Java.</li>
<li>Netbeans has improved since I switched to Eclipse three years ago. It supports a ton of platforms/frameworks and has a lot of productivity tools. I believe Netbeans is probably worth revisiting.</li>
<li>Half of the conference attendees are going to the Enterprise track, which means there is more demand for web applications development rather than desktop (Swing, SWT) or system administration.</li>
<li>The &#8220;new&#8221; technologies that the speakers discussed were the same technologies two years ago. We have been already using these technologies (such as Ajaz, JPA, and ESB) in our projects. Either Sun didn&#8217;t do a good job in looking for resource persons, or Ideyatech is just updated with the latest technology! (The latter is most probably true&#8230; hehe) Anything else new?</li>
<li>Open-source is confusing - everyone else wanted to be the best platform/framework, and developers are confused which one to use. Even Sun promotes several conflicting/competing technologies - Seam vs. Grails vs. JSF, JDBC vs. JPA, GlassFish vs. JWS. With the myriad of platforms available, which one works best?</li>
</ul>
<div>The conference was way too crowded, it took me 30 minutes in line to get lunch and coffee. There weren&#8217;t enough seats on some rooms because most people seem to be more interested on Enterprise Track (Grails, JPA, etc), rather than Solaris. And what&#8217;s even worse is that some of the speakers can&#8217;t even speak English very well. I guess these events were meant more for marketing and networking, rather than sharing and obtaining new technologies.</div>
<p align="center"><span style="text-decoration: underline; color: #0000ee;"><a href="http://www.ideyatech.com/wp-content/uploads/2008/06/suntechdays_1.jpg">
<a href='http://www.ideyatech.com/2008/06/sun-tech-days-2007-2008/suntechdays_1/' title='Sun Tech Days'><img src="http://www.ideyatech.com/wp-content/uploads/2008/06/suntechdays_1-150x150.jpg" width="150" height="150" class="attachment-thumbnail" alt="" /></a>
<a href='http://www.ideyatech.com/2008/06/sun-tech-days-2007-2008/suntechdays_2/' title='Sun Tech Days'><img src="http://www.ideyatech.com/wp-content/uploads/2008/06/suntechdays_2-150x150.jpg" width="150" height="150" class="attachment-thumbnail" alt="" /></a>
<a href='http://www.ideyatech.com/2008/06/sun-tech-days-2007-2008/duke/' title='Allan and Melvin with Duke'><img src="http://www.ideyatech.com/wp-content/uploads/2008/06/duke-150x150.jpg" width="150" height="150" class="attachment-thumbnail" alt="" /></a>
<a href='http://www.ideyatech.com/2008/06/sun-tech-days-2007-2008/shangshin/' title='shangshin'><img src="http://www.ideyatech.com/wp-content/uploads/2008/06/shangshin-150x150.jpg" width="150" height="150" class="attachment-thumbnail" alt="" /></a>
<a href='http://www.ideyatech.com/2008/06/sun-tech-days-2007-2008/sun-tech/' title='sun-tech'><img src="http://www.ideyatech.com/wp-content/uploads/2008/06/sun-tech-150x150.jpg" width="150" height="150" class="attachment-thumbnail" alt="" /></a>
</a></span></p>
<p align="center">
]]></content:encoded>
			<wfw:commentRss>http://www.ideyatech.com/2008/06/sun-tech-days-2007-2008/feed/</wfw:commentRss>
		</item>
		<item>
		<title>Continuum vs. Hudson</title>
		<link>http://www.ideyatech.com/2008/06/continuum-vs-hudson/</link>
		<comments>http://www.ideyatech.com/2008/06/continuum-vs-hudson/#comments</comments>
		<pubDate>Sat, 14 Jun 2008 16:16:22 +0000</pubDate>
		<dc:creator>Allan Tan</dc:creator>
		
		<category><![CDATA[Custom Programming]]></category>

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

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

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

		<category><![CDATA[continuous integration]]></category>

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

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

		<guid isPermaLink="false">http://www.ideyatech.com/?p=127</guid>
		<description><![CDATA[<img class="alignleft" src="http://www.ideyatech.com/wp-content/uploads/thumbs/continuum-vs-hudson.png" alt="Continuum vs. Hudson" title="Continuum vs. Hudson" />

We’ve been using Continuum for quite some time now. While Continuum does seem to do a good job managing our builds, its limited support for JUnit Test reports made us evaluate an alternative, Hudson. Hudson is the new guy on the block, aside from cool icons and more intuitive interface, this tool seems to be quite competitive and feature-packed.]]></description>
			<content:encoded><![CDATA[<div class="tweetmeme_button" style="float: left; margin: 0.25em 1.5em 1em 0;"><a href="http://api.tweetmeme.com/share?url=http%3A%2F%2Fwww.ideyatech.com%2F2008%2F06%2Fcontinuum-vs-hudson%2F"><img src="http://api.tweetmeme.com/imagebutton.gif?url=http%3A%2F%2Fwww.ideyatech.com%2F2008%2F06%2Fcontinuum-vs-hudson%2F" height="61" width="51" /></a></div><p>We&#8217;ve been using Continuum for quite some time now. While Continuum does seem to do a good job managing our builds, its limited support for JUnit Test reports made us evaluate an alternative, Hudson. Hudson is the new guy on the block, aside from cool icons and more intuitive interface, this tool seems to be quite competitive and feature-packed.</p>
<p style="text-align: center;" align="center"><img class="aligncenter" title="Continuum vs. Hudson" src="http://www.ideyatech.com/wp-content/uploads/2008/06/hudson_continuum.gif" alt="" width="300" height="50" /></p>
<p>So, I&#8217;m listing down a head-to-head comparison between <a title="Continuum" href="http://continuum.apache.org/">Continuum</a> and <a title="Hudson" href="https://hudson.dev.java.net/">Hudson</a> as we&#8217;ve used them and based on features we are looking for:</p>
<p>Build Management:</p>
<p>Continuum seems to perform better in this area. It allows multiple jobs/script configured on a single project. Projects can also be logically grouped. Hudson only supports one job per workspace, which I find very limiting. This means that if we need 3 jobs (e.g. build-war, deploy, run-test), each job needs its own workspace, which doesn&#8217;t make sense because all these job share the same source code.</p>
<p>User Management:</p>
<p>I prefer Hudson a little over Continuum because I like simplicity over flexibility. Considering our small team size, there is no point of grouping people with several permissions across multiple projects. All we need is the ability to restrict the developer&#8217;s access within their projects. Hudson has a simple, easy-to-use permission system&#8211;I was able to setup user access rights within 30 minutes. Continuum seems to be a little over-complicated on this. Continuum also has a strict password policy which makes it more difficult to manage.</p>
<p>Scheduling:</p>
<p>Once again, Hudson is better due to its simplicity. To configure a schedule, simply add &#8220;@daily&#8221; on schedule option and you&#8217;re all set. While Continuum&#8217;s scheduling isn&#8217;t complex, there&#8217;s more clicking involved. Again, Simplicity over Flexibility.</p>
<p>Email Alerts/Notification:</p>
<p>Although both tools provide email support, Hudson has a more detailed email report. Hudson allows the tracking of JUnit test reports for every test, while Continuum only provides notifications on failed or successful builds.</p>
<p>In the end, we decided to switch to Hudson because it is easier to use and it includes the Junit test reporting feature.</p>
<p><em>Note: The Continuum and Hudson logos are properties of Apache Continuum and Hudson, respectively.</em></p>
]]></content:encoded>
			<wfw:commentRss>http://www.ideyatech.com/2008/06/continuum-vs-hudson/feed/</wfw:commentRss>
		</item>
		<item>
		<title>Life after Singapore</title>
		<link>http://www.ideyatech.com/2008/06/ideyatechs-the/</link>
		<comments>http://www.ideyatech.com/2008/06/ideyatechs-the/#comments</comments>
		<pubDate>Fri, 13 Jun 2008 09:50:54 +0000</pubDate>
		<dc:creator>Melvin Dave Vivas</dc:creator>
		
		<category><![CDATA[Stories]]></category>

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

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

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

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

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

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

		<guid isPermaLink="false">http://www.ideyatech.com/?p=126</guid>
		<description><![CDATA[<img class="alignleft" src="http://www.ideyatech.com/wp-content/uploads/thumbs/singapore.png" alt="Life after Singapore" title="Life after Singapore" />

I left Manila to see if there was a market for my SMS appliance product. I had to take a job so I can stay and have time to study the market. After working in Singapore for 2 1/2 years, I finally realized that it was the right time to go home. I still have this feeling of competing in the global scene and make my country proud so I looked for opportunities to come back.]]></description>
			<content:encoded><![CDATA[<div class="tweetmeme_button" style="float: left; margin: 0.25em 1.5em 1em 0;"><a href="http://api.tweetmeme.com/share?url=http%3A%2F%2Fwww.ideyatech.com%2F2008%2F06%2Fideyatechs-the%2F"><img src="http://api.tweetmeme.com/imagebutton.gif?url=http%3A%2F%2Fwww.ideyatech.com%2F2008%2F06%2Fideyatechs-the%2F" height="61" width="51" /></a></div><p>I left Manila to see if there was a market for my SMS appliance product. I had to take a job so I can stay and have time to study the market.  After working in Singapore for 2 1/2 years, I finally realized that it was the right time to go home.  I still have this feeling of competing in the global scene and make my country proud so I looked for opportunities to come back. On the course of doing this, I met Allan, President and CEO of Ideyatech. When we first met, I just told him about my SMS appliance product, on how he can integrate it to Ideyatech&#8217;s existing applications.</p>
<p>After maybe 4 months, Allan told me that he needed someone who can help him with one of his big projects. I can&#8217;t remember how he came up asking me if I could help. After a few conversations about what needs to be done and how hard it is to look for senior guys in Manila, I expressed my intent of thinking about the offer. Since I was also considering of going back and do business, I thought about it. It took me maybe a month to decide.</p>
<p>I arrived with my bags packed in the Centennial Airport(NAIA Terminal 2) on May 21, 2008. Eager to meet my new team, I went to work the following day. It&#8217;s nice to be back, I told myself.</p>
<p>Let me share a photo of our team in our board room which I took. This is the team that will lead us to success and grow the company. Who knows we might be the next Google! <img src='http://www.ideyatech.com/wp-includes/images/smilies/icon_wink.gif' alt=';-)' class='wp-smiley' /></p>
]]></content:encoded>
			<wfw:commentRss>http://www.ideyatech.com/2008/06/ideyatechs-the/feed/</wfw:commentRss>
		</item>
		<item>
		<title>Low-tides : JS/CSS Merging and Minification Tool</title>
		<link>http://www.ideyatech.com/2008/06/low-tides-jscss-merging-and-minification-tool/</link>
		<comments>http://www.ideyatech.com/2008/06/low-tides-jscss-merging-and-minification-tool/#comments</comments>
		<pubDate>Thu, 12 Jun 2008 16:04:25 +0000</pubDate>
		<dc:creator>Allan Tan</dc:creator>
		
		<category><![CDATA[Java]]></category>

		<category><![CDATA[Website Design]]></category>

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

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

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

		<category><![CDATA[low tides]]></category>

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

		<guid isPermaLink="false">http://www.ideyatech.com/?p=125</guid>
		<description><![CDATA[<img class="alignleft" src="http://www.ideyatech.com/wp-content/uploads/thumbs/open-tides.png" alt="Low-tides : JS/CSS Merging and Minification Tool" title="Low-tides : JS/CSS Merging and Minification Tool" />

As recommended by Yahoo on YSlow - tip #1: Make fewer HTTP request and tip #10: Minify javascript- we aim to implement these tips on all our projects with minimal head-ache. While these recommendations are truly useful, implementing them can be quite tedious and challenging. Consider having to maintain multiple min versions of the javascript and...]]></description>
			<content:encoded><![CDATA[<div class="tweetmeme_button" style="float: left; margin: 0.25em 1.5em 1em 0;"><a href="http://api.tweetmeme.com/share?url=http%3A%2F%2Fwww.ideyatech.com%2F2008%2F06%2Flow-tides-jscss-merging-and-minification-tool%2F"><img src="http://api.tweetmeme.com/imagebutton.gif?url=http%3A%2F%2Fwww.ideyatech.com%2F2008%2F06%2Flow-tides-jscss-merging-and-minification-tool%2F" height="61" width="51" /></a></div><p>As recommended by Yahoo on YSlow - tip #1: <strong>Make fewer HTTP request</strong> and tip #10: <strong>Minify javascript</strong>- we aim to implement these tips on all our projects with minimal head-ache. While these recommendations are truly useful, implementing them can be quite tedious and challenging. Consider having to maintain multiple min versions of the javascript and the files that links to them! So to alleviate the problem, we created a tool called low-tides (as part of open-tides) that helps automate the merging and minification of css and js files.</p>
<p>So what is the <strong>rationale</strong> behind the the tool?</p>
<ul>
<li> Maintenance of minified js and css is a nightmare. Keeping separate js and css files for development and production can be very confusing. Some developers might change the production version without syncing with the development version. So eventually, changes to different files becomes a mess &#8212; Which one has the latest code?</li>
<li>Maintenance of html files that links to proper javascript and css is another problem. Since minified versions are likely to have different filename (e.g. basic-min.js), html codes that reference the scripts need to be changed. This leads to having multiple copies of html files&#8230; again.</li>
<li>Versioning of html, css, and js files introduce a whole new set of configuration items. Imagine bullets #1 and #2 getting multiplied across a number of version releases!</li>
<li>At the time of this writing, there are no tools available that can merge multiple javascripts.  The development version of javascript needs to be logically separated while the production version needs to be merged (for lesser http request).  Moreover, merging javascript is not straightforward. Some javascripts need to be pre-loaded while others can be postponed.</li>
</ul>
<p>I suppose by now you get the picture. The solution we propose to this configuration problem is simple:  Always change from the development version and have a deployment script automatically create the production version. As such, files are always maintained from the development version - but the key to this approach is to ensure that the script for creating production versions is quick and easy-to-use.</p>
<p>Now here comes Low-tides. Low-tides is a Java-based program that automatically analyzes html files for javascript and css includes. It will merge includes that are in sequence into a single file and minify it. In summary, it automatically solves all the problems mentioned above.</p>
<p>You can download it here: <a title="http://code.google.com/p/open-tides/downloads/list" href="http://code.google.com/p/open-tides/downloads/list">http://code.google.com/p/open-tides/downloads/list</a></p>
<p>Usage instructions are available here: <a title="http://code.google.com/p/open-tides/wiki/LowTides" href="http://code.google.com/p/open-tides/wiki/LowTides">http://code.google.com/p/open-tides/wiki/LowTides</a></p>
]]></content:encoded>
			<wfw:commentRss>http://www.ideyatech.com/2008/06/low-tides-jscss-merging-and-minification-tool/feed/</wfw:commentRss>
		</item>
		<item>
		<title>Finding Value in Stand-up Meetings</title>
		<link>http://www.ideyatech.com/2008/06/finding-value-in-stand-up-meetings/</link>
		<comments>http://www.ideyatech.com/2008/06/finding-value-in-stand-up-meetings/#comments</comments>
		<pubDate>Mon, 09 Jun 2008 16:59:43 +0000</pubDate>
		<dc:creator>Allan Tan</dc:creator>
		
		<category><![CDATA[Project Management Tips]]></category>

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

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

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

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

		<category><![CDATA[stand up]]></category>

		<guid isPermaLink="false">http://www.ideyatech.com/?p=114</guid>
		<description><![CDATA[<img class="alignleft" src="http://www.ideyatech.com/wp-content/uploads/thumbs/stand-up.png" alt="Finding Value in Stand-up Meetings" title="Finding Value in Stand-up Meetings" />

Here at Ideyatech, we have been practicing stand-up meetings religiously ever since our first project. So far, this short, daily routine has kept everyone up-to-date on status of their projects. By reporting daily activities, issues and bottlenecks are quickly identified and resolved. Everyone gets accountability on the tasks that are reported, and the team becomes...]]></description>
			<content:encoded><![CDATA[<div class="tweetmeme_button" style="float: left; margin: 0.25em 1.5em 1em 0;"><a href="http://api.tweetmeme.com/share?url=http%3A%2F%2Fwww.ideyatech.com%2F2008%2F06%2Ffinding-value-in-stand-up-meetings%2F"><img src="http://api.tweetmeme.com/imagebutton.gif?url=http%3A%2F%2Fwww.ideyatech.com%2F2008%2F06%2Ffinding-value-in-stand-up-meetings%2F" height="61" width="51" /></a></div><p>How do stand-up meetings help? Are they really helpful?</p>
<p align="center"><img style="margin:1em" title="stand-up" src="http://www.ideyatech.com/wp-content/uploads/2008/06/stand-up1.jpg" alt="stand up meetings" /></p>
<p>Here at Ideyatech, we have been practicing stand-up meetings religiously ever since our first project. So far, this short, daily routine has kept everyone up-to-date on status of their projects. By reporting daily activities, issues and bottlenecks are quickly identified and resolved. Everyone gets accountability on the tasks that are reported, and the team becomes more responsible of the project as a whole.</p>
<p>Here are some tips to make stand-up meetings effective:</p>
<ol>
<li>Be religious. Make it a daily habit.</li>
<li>Keep it short. Do not exceed 15 minutes.</li>
<li>Avoid autocracy. Let team members take responsibility and accountability.</li>
<li>Break long conversations. Take it offline and discuss after the meeting.</li>
<li>Use a small object as a token indicator of the current speaker. We use a ball, which occasionally brings some fun during meetings.</li>
</ol>
<p>In addition, here are some common problems we encountered during our stand-up meetings:</p>
<ol>
<li>Some members (especially the younger ones) tend to report to the project leader, instead of reporting to the team.</li>
<li>Some members wait for the stand-up meetings before bringing up their questions or issues.</li>
<li>Most of the time, the members report only their accomplishments, and tend to forget about the problems or their pending or next tasks.</li>
</ol>
<p>At the end of the day, these stand-up meetings serve as a medium for communication between project members. For best results from these stand-up meetings, some procedures may need to be applied and laid out.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.ideyatech.com/2008/06/finding-value-in-stand-up-meetings/feed/</wfw:commentRss>
		</item>
		<item>
		<title>Agilism at Ideyatech</title>
		<link>http://www.ideyatech.com/2008/06/agilism-ideyatech-view/</link>
		<comments>http://www.ideyatech.com/2008/06/agilism-ideyatech-view/#comments</comments>
		<pubDate>Sun, 08 Jun 2008 17:12:55 +0000</pubDate>
		<dc:creator>Allan Tan</dc:creator>
		
		<category><![CDATA[Methodology Center]]></category>

		<category><![CDATA[Project Management Tips]]></category>

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

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

		<category><![CDATA[continuous integration]]></category>

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

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

		<category><![CDATA[software development]]></category>

		<guid isPermaLink="false">http://www.ideyatech.com/?p=123</guid>
		<description><![CDATA[<img class="alignleft" src="http://www.ideyatech.com/wp-content/uploads/thumbs/agilism-at-ideyatech.png" alt="Agilism at Ideyatech" title="Agilism at Ideyatech" />

Agile Software Development is a conceptual framework for software development that promotes development iterations, open collaboration, and adaptability throughout the life-cycle of the project.
True to its meaning, Agile is a concept that can be implemented in several ways. So, there is no correct way of getting it right. Tips we'd like to share...]]></description>
			<content:encoded><![CDATA[<div class="tweetmeme_button" style="float: left; margin: 0.25em 1.5em 1em 0;"><a href="http://api.tweetmeme.com/share?url=http%3A%2F%2Fwww.ideyatech.com%2F2008%2F06%2Fagilism-ideyatech-view%2F"><img src="http://api.tweetmeme.com/imagebutton.gif?url=http%3A%2F%2Fwww.ideyatech.com%2F2008%2F06%2Fagilism-ideyatech-view%2F" height="61" width="51" /></a></div><p>As defined in Wikipedia:</p>
<blockquote><p>Agile Software Development is a conceptual framework for software development that promotes development iterations, open collaboration, and adaptability throughout the life-cycle of the project.</p></blockquote>
<p>True to its meaning, Agile is a concept that can be implemented in several ways. So, there is no correct way of getting it right&#8230; Nevertheless, here are some tips we&#8217;d like to share based on our experience:</p>
<p><img style="float:right; margin:0 10px 10px" src="http://www.ideyatech.com/wp-content/uploads/2008/06/agile_a.jpg" alt="Ideyatech agile" /></p>
<ol>
<li>Agile team members must be matured and responsible. Team members must be pro-active and have the drive/determination to take charge of the task at hand. Self-organizing teams are hard to develop, especially for junior programmers. It takes some level of maturity and experience for a team member to identify the tasks and execute them.</li>
<li>Agile projects must be contracted as &#8220;Time and Material&#8221; rather than as &#8220;Fix Cost&#8221;. This is because agile practice is susceptible to &#8220;scope creeps&#8221;. The concept of being able to adjust/change requirements during each release indicates that scope must be flexible. As such, contracting on &#8220;fix cost&#8221; will either limit scope changes or lead to tedious change control processes.</li>
<li>Pair programming should be limited.  It is effective only on certain circumstance such as &#8220;master-apprentice&#8221; pairing or critical components. Otherwise, it will lead to inefficiency where two people are producing half the value of their time.</li>
<li>Tools are essential for unit testing and continuous integration. It is almost impossible to implement unit tests and continuous integration without the proper tools to support the build and test process. It is important that the tool is able to run builds on pre-determined schedules and send configurable alerts. Moreover, choose a tool that can understand the unit test results and do notifications as necessary.</li>
<li>Take the <a href="http://agilemanifesto.org/">Agile Manifesto</a> with a grain of salt. Not everything in Agile works&#8230; it varies on the organization, software and project type. For organizations that are new to this concept, start by shortening your iteration release - at least to monthly. This can take you a long way going agile&#8230;</li>
</ol>
]]></content:encoded>
			<wfw:commentRss>http://www.ideyatech.com/2008/06/agilism-ideyatech-view/feed/</wfw:commentRss>
		</item>
	</channel>
</rss>
