<?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 Development Outsourcing Philippines</description>
	<pubDate>Tue, 10 Aug 2010 03:26:53 +0000</pubDate>
	<generator>http://wordpress.org/?v=2.5.1</generator>
	<language>en</language>
			<item>
		<title>Database Evolve: Managing Database Versions Programmatically</title>
		<link>http://www.ideyatech.com/2010/08/database-evolve-managing-database-versions-programmatically/</link>
		<comments>http://www.ideyatech.com/2010/08/database-evolve-managing-database-versions-programmatically/#comments</comments>
		<pubDate>Sat, 07 Aug 2010 16:18:50 +0000</pubDate>
		<dc:creator>Allan Tan</dc:creator>
		
		<category><![CDATA[Java]]></category>

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

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

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

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

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

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

		<guid isPermaLink="false">http://www.ideyatech.com/?p=268</guid>
		<description><![CDATA[<img class="alignleft" src="http://www.ideyatech.com/wp-content/uploads/thumbs/database-evolve.png" alt="Database Evolve: Managing Database Versions Programmatically" title="Database Evolve: Managing Database Versions Programmatically" />

How can you ensure that during development, all developers works on the latest database schema to reduce code conflicts? And during production roll-out, how can you ensure that applications on different servers are compatible and consistent with their respective database schema?]]></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%2F08%2Fdatabase-evolve-managing-database-versions-programmatically%2F"><img src="http://api.tweetmeme.com/imagebutton.gif?url=http%3A%2F%2Fwww.ideyatech.com%2F2010%2F08%2Fdatabase-evolve-managing-database-versions-programmatically%2F" height="61" width="51" /></a></div><p><img class="alignright"  src="http://www.ideyatech.com/wp-content/uploads/2010/08/database-evolve.png" width="200" height="119" alt="Database Evolve: Managing Database Versions Programmatically" title="Database Evolve: Managing Database Versions Programmatically" /></p>
<p>I find it hard to believe that there are very few articles online talking about database evolve. To think that database is the lifeblood of many application, and yet, very few seem concerned about efficiently managing different versions of a database&#8230; while many manage their database manually through their DBA.</p>
<p>But how can you ensure that:</p>
<ol>
<li>during development, all developers works on the latest database schema to reduce code conflicts?</li>
<li>during production roll-out, applications on different servers are compatible and consistent with their respective database schema?</li>
</ol>
<p>If you are doing this manually, then perhaps its time to reconsider your approach by asking yourself - &#8220;<em>Is there a way to automate this?</em>&#8220;.</p>
<p>Our solution is one that we&#8217;ve used for the past three years and has been very effective. It&#8217;s a simple approach with just few Java classes. The concept is to keep track of the database version  from the application and keep the database up to date every time the application starts.</p>
<p>For example, if the database is in version 21 and application is in version 24, then the application will apply evolve scripts 22,23 and 24 to get the database into version 24. It&#8217;s a fairly simple concept but saves a lot of coordination effort and headache.</p>
<p>I&#8217;m posting below the snippets of database evolve we have. You can find the complete set of codes in Open-tides(<a title="Open-Tides" href="http://code.google.com/p/open-tides/" target="_blank">http://code.google.com/p/open-tides/</a>).</p>
<p>Below is the DBEvolve interface that should be extended by all evolve scripts. The evolve scripts contain SQL scripts to update the database from the previous version to the current script&#8217;s version.</p>
<pre name="code" class="java">public interface DBEvolve {
	/**
	 * Actual database evolve script operations.
	 */
	@Transactional
	public void execute();
	/**
	 * Returns the description of evolve script.
	 * @return
	 */
	public String getDescription();
	/**
	 * Returns the version of this evolve script.
	 * Ensures that execution of evolve script is in proper
	 * sequence.
	 * @return
	 */
	public int getVersion();
}</pre>
<p>Below is the main logic that compares the database version with the list of evolve script. evolveList is a collection of DBEvolve to keeps the database updated. It is assumed that evolveList contains a sequential list of evolve scripts.</p>
<pre name="code" class="java">
                // get current db version
		SystemCodes version = systemCodesDAO.loadBySystemCodesByKey("DB_VERSION");
		if (version==null) {
			// no version available yet, lets create one
			version = new SystemCodes();
			version.setKey("DB_VERSION");
			version.setNumberValue(0l);
			systemCodesDAO.saveEntityModel(version);
		}

		// skip evolve if there is nothing in the evolve list
		if (evolveList.isEmpty()) {
			_log.info("No evolve scripts found.");
			return;
		}

		// sort the evolve list
		Collections.sort(evolveList, new VersionComparator());
		// check for duplicate version numbers
		for (int i=0; i&lt;(evolveList.size()-1); i++) {
			if (evolveList.get(i).getVersion() == evolveList.get(i+1).getVersion()) {
				// we have a duplicate version... exit
				throw new InvalidImplementationException(
						"Duplicate version number [" + evolveList.get(i).getVersion() +
						"] detected on evolve script for &#8221; +
						evolveList.get(i).getClass().getName() +
						&#8221; and &#8221; + evolveList.get(i+1).getClass().getName());
			}
		}

		// get number of latest evolve script
		int currVersion   = version.getNumberValue().intValue();
		int latestVersion = evolveList.get(evolveList.size()-1).getVersion();

		if (currVersion&gt;=latestVersion) {
			_log.info(&#8221;Database is updated at version &#8221; + currVersion);
			return;
		} else {
			_log.info(&#8221;Updating database from version &#8221; + currVersion +&#8221; to version &#8221; + latestVersion );
		}

		// execute new evolve scripts
		for (DBEvolve evolve:evolveList) {
			if (evolve.getVersion() &gt; currVersion) {
				// let&#8217;s execute this evolve script
				_log.info(&#8221;Executing evolve version ["+evolve.getVersion()+"] - &#8220;+evolve.getDescription());
				evolve.execute();
				// if successful, update current db version
				version.setNumberValue(new Long(evolve.getVersion()));
				systemCodesDAO.saveEntityModel(version);
				_log.info(&#8221;Success.&#8221;);
			}
		}
		// as precaution let&#8217;s update db version again
		version.setNumberValue(new Long(latestVersion));
		systemCodesDAO.saveEntityModel(version);

		_log.info(&#8221;Database is now updated to version &#8220;+latestVersion);
	}</pre>
<p>A few more things to note:</p>
<ol>
<li> The snippet uses Spring and Hibernate. The main evolve should be under Spring transaction to ensure proper rollback in case of failed updates.</li>
<li> When application failed to update, it should not start-up to alert the developer of the failure.</li>
<li>Due to its simplicity, the code above does not support multiple branches of application and database.</li>
</ol>
<p>&nbsp;</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><script language="javascript" src="http://www.ideyatech.com/wp-content/plugins/google-syntax-highlighter/Scripts/shBrushJava.js"></script><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/2010/08/database-evolve-managing-database-versions-programmatically/feed/</wfw:commentRss>
		</item>
		<item>
		<title>Blade Servers : Are they worth it?</title>
		<link>http://www.ideyatech.com/2010/07/blade-servers-are-they-worth-it/</link>
		<comments>http://www.ideyatech.com/2010/07/blade-servers-are-they-worth-it/#comments</comments>
		<pubDate>Tue, 20 Jul 2010 01:52:46 +0000</pubDate>
		<dc:creator>Allan Tan</dc:creator>
		
		<category><![CDATA[Stories]]></category>

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

		<category><![CDATA[blade server]]></category>

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

		<category><![CDATA[production server]]></category>

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

		<category><![CDATA[super computer]]></category>

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

		<guid isPermaLink="false">http://www.ideyatech.com/?p=267</guid>
		<description><![CDATA[<img class="alignleft" src="http://www.ideyatech.com/wp-content/uploads/thumbs/blade-servers.png" alt="Blade Servers : Are they worth it?" title="Blade Servers : Are they worth it?" />

After experiencing a number of production roll-outs, on both blade and rack mounted servers, I began to think about the advantages of one over the other. In general, blade servers sounded like a better approach, but it appears to be more of a marketing hype than reality.]]></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%2F07%2Fblade-servers-are-they-worth-it%2F"><img src="http://api.tweetmeme.com/imagebutton.gif?url=http%3A%2F%2Fwww.ideyatech.com%2F2010%2F07%2Fblade-servers-are-they-worth-it%2F" height="61" width="51" /></a></div><p><img class="alignright" src="http://www.ideyatech.com/wp-content/uploads/2010/07/blade-servers/blade-servers.png" alt="Blade Servers : Are they worth it?" title="Blade Servers : Are they worth it?" /></p>
<p>After experiencing a number of production roll-outs, on both blade and rack mounted servers, I began to think about the advantages of one over the other. In general, blade servers sounded like a better approach, but it appears to be more of a marketing hype than reality. I&#8217;m not a hardware or infrastructure expert, but my comments are based on my experience in rolling out enterprise applications to various organizations and below are some of my thoughts about blade servers.</p>
<p><strong>1. Blade servers are more expensive.</strong> To setup a blade server, you&#8217;ll need to purchase a chassis. The price of the chassis alone is already comparable to 2 rack mounted servers. On the average, the price of blade server setup is about 20%-30% higher than a comparable rack mounted server setup. Unless of course, you get to fill-up the entire chassis with 14 blades.</p>
<p><strong>2. Blade servers are less powerful. </strong>Processor configurations on blade servers are less powerful than their rack-mounted counterparts. How much processor can you really put into that small form factor? Blade servers are also known for smaller disk capacity because its designed to use SAN storage.</p>
<p><strong>3. Blade servers are not fail-safe. </strong>Contrary to the popular belief, blade servers are not fully-redundant (at least the once I&#8217;ve seen). Each blade connects to a blade controller which is a single point of failure, if that controller fails, then all blade fails. Some chassis also uses a single power supply, thereby - another single point of failure.</p>
<p><strong>4. Blade servers cannot be super computers. </strong>No you cannot combine multiple blades and make them into one single super computer. At least not without the right software. But with the right software, you can also achieve the same on rack mounted servers.</p>
<p><strong>5. Virtualization is not only for blade server. </strong>Virtualization can also be set-up on multiple rack servers. Virtualization is a software-based technology and is not hardware dependent. Blade servers + Virtualization is a fuzz.</p>
<p><strong>6. Blade servers are restrictive. </strong>Since blade technologies differ from vendor to vendor, adding new processors require purchase of blades from the same vendor. You are even restricted within the blade model supported by the chassis.</p>
<p><strong>Bottom-line:</strong> I had high expectations on blade servers and got disappointed with the results. Get your facts straight from the technical merits of using blade servers than listening to the marketing hype presented by that salesperson in a nice suit.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.ideyatech.com/2010/07/blade-servers-are-they-worth-it/feed/</wfw:commentRss>
		</item>
		<item>
		<title>Book Review: JavaScript: The Definitive Guide 5th Edition</title>
		<link>http://www.ideyatech.com/2010/06/book-review-javascript-the-definitive-guide-5th-edition/</link>
		<comments>http://www.ideyatech.com/2010/06/book-review-javascript-the-definitive-guide-5th-edition/#comments</comments>
		<pubDate>Thu, 24 Jun 2010 03:58:25 +0000</pubDate>
		<dc:creator>John Jason Reyes</dc:creator>
		
		<category><![CDATA[Book Review]]></category>

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

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

		<category><![CDATA[definitive guide]]></category>

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

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

		<guid isPermaLink="false">http://www.ideyatech.com/?p=265</guid>
		<description><![CDATA[<img class="alignleft" src="http://www.ideyatech.com/wp-content/uploads/thumbs/javascript-the-definitive-guide.png" alt="Book Review - JavaScript: The Definitive Guide 5th Edition" title="Book Review - JavaScript: The Definitive Guide 5th Edition" />

Considered as an essential resource for JavaScript programmers. O'Reilly's JavaScript: The Definitive Guide 5th edition is one of the books to look for when it comes to JavaScript.

As good as the introduction sounds, the book is unfriendly to those who are unfamiliar with programming. But, is a good book to those who know programming but is new to JavaScript.]]></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%2F06%2Fbook-review-javascript-the-definitive-guide-5th-edition%2F"><img src="http://api.tweetmeme.com/imagebutton.gif?url=http%3A%2F%2Fwww.ideyatech.com%2F2010%2F06%2Fbook-review-javascript-the-definitive-guide-5th-edition%2F" height="61" width="51" /></a></div><p><img class="alignright" src="http://www.ideyatech.com/wp-content/uploads/2010/06/javascript-the-definitive-guide/javascript-the-definitive-guide.png" alt="Book Review - JavaScript: The Definitive Guide 5th Edition" title="Book Review - JavaScript: The Definitive Guide 5th Edition" /></p>
<p>Considered as an essential resource for JavaScript programmers. O&#8217;Reilly&#8217;s JavaScript: The Definitive Guide 5th edition is one of the books to look for when it comes to JavaScript.</p>
<p>As good as the introduction sounds, the book is unfriendly to those who are unfamiliar with programming. But, is a good book to those who know programming but is new to JavaScript. The book is formatted to suit reference use, it is divided into 4 parts. The first part is dedicated to core JavaScript, which includes primitive datatypes, functions, and objects. The second part discusses Client-Side JavaScript (DOM scripting, Cookies, and Graphics). The third and fourth part contains references for Core and Client-Side JavaScript respectively.</p>
<p>As a student, I always expect my books to be extensive and in-depth. That is why I buy books- to get quality information that you can only get in books. If you agree with me, then this is the book you&#8217;re looking for. The book&#8217;s content is extensive. It covers almost everything that you need to know about JavaScript. Explanation is also good, since it explains the inner workings of JavaScript.</p>
<p>One of the complaints I have about the book is its lack of examples. Most of the programming books I have read had sufficient examples that served as guidelines for syntax and structure. Having few examples, the book relies mostly on explanation to discuss JavaScript elements. It will really help if you have background in Java or C, since JavaScript syntax is similar to them.</p>
<p>If you are already familiar with the programming languages mentioned above, you might want to skim over the first part of the book. The first part is a lengthy discussion of the different core JavaScript components, which most should be familiar to you (if you are familiar with Java or C). Otherwise, if you are inexperienced in Java or C, it is recommended that you read through the first part of the book since these are essential to learning JavaScript.</p>
<p>Due to a wide array of different web browsers (each with different versions) developed by different groups, incompatibility of JavaScript elements became an issue. It required JavaScript books to be able to pinpoint which JavaScript element works in which browser and of what version. The author responds to this issue by mentioning in which version of JavaScript and EcmaScript would a specific bit of code work. Complementing this method of explanation is a paragraph in the introduction chapter in which the author mentions  what version of JavaScript (or EcmaScript) works on what version of a web browser.</p>
<p>Bottom line: a one of a kind book that is worth reading for those who want to learn JavaScript. But, like any book, it also has flaws. With that said, I give the book 4 out of 5 stars.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.ideyatech.com/2010/06/book-review-javascript-the-definitive-guide-5th-edition/feed/</wfw:commentRss>
		</item>
		<item>
		<title>Book Review: MySQL 5.0 Certification Study Guide</title>
		<link>http://www.ideyatech.com/2010/06/mysql-5-csg/</link>
		<comments>http://www.ideyatech.com/2010/06/mysql-5-csg/#comments</comments>
		<pubDate>Sun, 20 Jun 2010 19:24:55 +0000</pubDate>
		<dc:creator>John Jason Reyes</dc:creator>
		
		<category><![CDATA[Book Review]]></category>

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

		<category><![CDATA[certification study guide]]></category>

		<category><![CDATA[mysql 5.0]]></category>

		<guid isPermaLink="false">http://www.ideyatech.com/?p=264</guid>
		<description><![CDATA[<img class="alignleft" src="http://www.ideyatech.com/wp-content/uploads/thumbs/mysql-5.png" alt="Book Review: MySQL 5.0 Certification Study Guide" title="Book Review: MySQL 5.0 Certification Study Guide" />

The MySQL 5.0 Certification Study Guide, written by Paul DuBois, Stefan Hinz and Carsten Pedersen, is a must-read for individuals interested in obtaining MySQL certifications. It is designed to get you that title that you want. Currently, MySQL offers 2 certification titles — the MySQL Developer Certification and the MySQL Database Administrator Certification.]]></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%2F06%2Fmysql-5-csg%2F"><img src="http://api.tweetmeme.com/imagebutton.gif?url=http%3A%2F%2Fwww.ideyatech.com%2F2010%2F06%2Fmysql-5-csg%2F" height="61" width="51" /></a></div><p><img class="alignright" src="http://www.ideyatech.com/wp-content/uploads/2010/06/mysql-5/mysql-5.png" alt="Book Review: MySQL 5.0 Certification Study Guide" title="Book Review: MySQL 5.0 Certification Study Guide" />The MySQL 5.0 Certification Study Guide is a must-read for individuals interested in obtaining MySQL certifications. It is designed to get you that title that you want. Currently, MySQL offers 2 certification titles — the MySQL Developer Certification and the MySQL Database Administrator Certification.</p>
<p>What gives the book authority? Well, the book is authored by Paul DuBois, Stefan Hinz, and Carsten Pedersen. Paul is a member of the MySQL documentation team and one of the leading authors on MySQL books. On the other hand, Stefan is the MySQL documentation lead and Carsten is MySQL AB&#8217;s certification manager. Coincidence that people from MySQL wrote a study guide for their exams? I think not.</p>
<p>The book is divided into 4 parts. Each part contains topics for an exam. Examinees need only to read content that their exams require. Since each title requires you to pass 2 exams you will need to read 2 parts (4 parts if you want both titles). Here&#8217;s what you can find in the book:</p>
<ul>
<li>Details 	about the exams</li>
<li>Data 	Types</li>
<li>Tables 	and Indexes</li>
<li>Querying 	for data, SQL expressions</li>
<li>Joins 	and subqueries</li>
<li>Stored 	procedures and functions</li>
<li>Table 	maintenance</li>
<li>Data 	backup and recovery methods</li>
<li>Optimizing 	queries, databases, and the server</li>
</ul>
<p>The book comes with a CD (if you purchased the printed version) that contains exercises and a world.sql file which contains the database used for the exercises. It also contains a sufficient amount of examples to aid in understanding queries.</p>
<p>After you hang your certificate on the wall, use the book for reference. Although the book is not intended for reference use, it still makes a very good one. It is also quite useful for individuals who don&#8217;t plan on taking the certification exams, but desires to learn about MySQL.</p>
<p>Overall, the book is technically accurate, easy to understand, and the topics are well organized. I give it 4 out of 5 stars!</p>
]]></content:encoded>
			<wfw:commentRss>http://www.ideyatech.com/2010/06/mysql-5-csg/feed/</wfw:commentRss>
		</item>
		<item>
		<title>Virtualization with Ubuntu 10.04 - Lucid Lynx</title>
		<link>http://www.ideyatech.com/2010/05/virtualization-with-ubuntu-1004-lucid-lynx/</link>
		<comments>http://www.ideyatech.com/2010/05/virtualization-with-ubuntu-1004-lucid-lynx/#comments</comments>
		<pubDate>Wed, 12 May 2010 09:16:41 +0000</pubDate>
		<dc:creator>Allan Tan</dc:creator>
		
		<category><![CDATA[Custom Programming]]></category>

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

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

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

		<category><![CDATA[virtual machine]]></category>

		<guid isPermaLink="false">http://www.ideyatech.com/?p=262</guid>
		<description><![CDATA[<img class="alignleft" src="http://www.ideyatech.com/wp-content/uploads/thumbs/ubuntu-lucid-lynx.png" alt="Virtualization with Ubuntu 10.04 - Lucid Lynx" title="Virtualization with Ubuntu 10.04 - Lucid Lynx" />

With the growing projects, we've decided to upgrade our test servers to a production grade server and setup virtual machines within the server. This move really makes sense because instead of allocating a workstation for each project as test machine, we are cutting it down into one server with multiple test VMs.]]></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%2F05%2Fvirtualization-with-ubuntu-1004-lucid-lynx%2F"><img src="http://api.tweetmeme.com/imagebutton.gif?url=http%3A%2F%2Fwww.ideyatech.com%2F2010%2F05%2Fvirtualization-with-ubuntu-1004-lucid-lynx%2F" height="61" width="51" /></a></div><p>With the growing projects, we&#8217;ve decided to upgrade our test servers to a production grade server and setup virtual machines within the server. This move really makes sense because instead of allocating a workstation for each project as test machine, we are cutting it down into one server with multiple test VMs.</p>
<p>At the time of this writing, there are no official documentation on Lucid Lynx yet. There are a couple of variations on the configuration as compared  to Ubuntu 9.10. This setup guide is to configure a KVM on Ubuntu Server and management of the VMs is done remotely from another machine running Ubuntu Desktop.</p>
<p>So, here is the step-by-step guide:</p>
<p><b>STEP #1:</b> Install lib-virt package.</p>
<pre name="code" class="java">sudo apt-get install kvm libvirt-bin</pre>
<p><b>STEP #2:</b> Create user to manage lib-virt.</p>
<pre name="code" class="java">sudo adduser $USER libvirtd</pre>
<p>where $USER is the username who will perform VM management.</p>
<p><b>STEP #3:</b> Install bridge utilities.</p>
<pre name="code" class="java">sudo apt-get install bridge-utils</pre>
<p><b>STEP #4:</b> Configure network to bridge setup.</p>
<p>Edit /etc/network/interfaces and add the following (assumes dhcp bridge):</p>
<pre name="code" class="java">
auto virbr1
iface virbr1 inet dhcp
bridge_ports eth0
bridge_fd 9
bridge_hello 2
bridge_maxage 12
bridge_stp off
</pre>
<p><b>STEP #5:</b> Restart networking service.</p>
<pre name="code" class="java">sudo /etc/init.d/networking restart</pre>
<p>If bridge is properly configured you should still be able to connect to any external network. (e.g. ping www.google.com). Once this work, proceed to Ubuntu Desktop to create the VM guests.</p>
<p><b>STEP #6:</b> Install Virtual Machine Manager (on Ubuntu Desktop machine).</p>
<pre name="code" class="java">sudo apt-get install virt-manager</pre>
<p><b>STEP #7:</b> Invoke virt-manager and connect to Ubuntu Server.</p>
<pre name="code" class="java">virt-manager -c qemu+ssh://&lt;ubuntu_server&gt;/system</pre>
<p>where &lt;ubuntu_server&gt; is hostname or IP address of the server.</p>
<p><b>STEP #8:</b> Create the Guest VM image. Virtual Machine Manager provides a GUI to easily create an image. Just right-click on the server and select &#8220;New&#8221;. You will then be prompted step-by-step on the variables (e.g. # of processors, memory, etc.) needed to be configured for your VM.</p>
<p><b>STEP #9:</b> Install the Guest VM OS. Use your regular CD/DVD installer or iso image to install the operating system on the VM. In my case, we use Ubuntu Server and Ubuntu Desktop on the guest VMs.</p>
<p><b>STEP #10:</b> Change guest network connection to use pre-configured bridge. VMM does not have the option to configure bridge network. To setup the bridge, manually change the configuration file (xml) from libvirt. On Ubuntu Server, edit the xml configuration file under /etc/libvirt/qemu by changing the network portion to:</p>
<pre name="code" class="java">
&lt;interface type='bridge'&gt;
&lt;source bridge='virbr0'/&gt;
&lt;/interface&gt;
</pre>
<p><b>STEP #11:</b> Restart VM. Upon restart, you should be able to access external network and VM is accessible from external network. On Ubuntu guests, the network device is found as eth3 and you may need to enable eth3 on /etc/network/interfaces.</p>
<p>That&#8217;s it. You can repeat steps (#8-#11) to setup additional guest VMs.</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><script language="javascript" src="http://www.ideyatech.com/wp-content/plugins/google-syntax-highlighter/Scripts/shBrushJava.js"></script><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/2010/05/virtualization-with-ubuntu-1004-lucid-lynx/feed/</wfw:commentRss>
		</item>
		<item>
		<title>Book Review: Head First Java 2nd Edition</title>
		<link>http://www.ideyatech.com/2010/05/book-review-head-first-java-2nd-edition/</link>
		<comments>http://www.ideyatech.com/2010/05/book-review-head-first-java-2nd-edition/#comments</comments>
		<pubDate>Wed, 12 May 2010 06:05:45 +0000</pubDate>
		<dc:creator>John Jason Reyes</dc:creator>
		
		<category><![CDATA[Book Review]]></category>

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

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

		<category><![CDATA[book review]]></category>

		<category><![CDATA[head first java]]></category>

		<guid isPermaLink="false">http://www.ideyatech.com/?p=263</guid>
		<description><![CDATA[<img class="alignleft" src="http://www.ideyatech.com/wp-content/uploads/thumbs/head-first-java.png" alt="Book Review: Head First Java 2nd Edition" title="Book Review: Head First Java 2nd Edition" />

Ever seen a Java book with graphical images and humorous text on every page? You may think of it as a style of publishing books to attract readers. You may even think that it's not worth reading. But you’re wrong! Head First Java 2nd Edition is one of the most fun and motivating Java books you'll ever find. Check out my lil book review...]]></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%2F05%2Fbook-review-head-first-java-2nd-edition%2F"><img src="http://api.tweetmeme.com/imagebutton.gif?url=http%3A%2F%2Fwww.ideyatech.com%2F2010%2F05%2Fbook-review-head-first-java-2nd-edition%2F" height="61" width="51" /></a></div><p><img class="alignright" title="Book Review: Head First Java 2nd Edition" src="http://www.ideyatech.com/wp-content/uploads/2010/05/head-first-java/head-first-java.png" alt="Book Review: Head First Java 2nd Edition" /></p>
<p>Ever seen a Java book with graphical images and humorous text on every page? You may think that it&#8217;s not worth reading. If so, then you’re wrong! Head First Java 2nd Edition is one of the most fun and motivating Java books you&#8217;ll ever find. The book is loaded with images from some 50&#8217;s television show with speech bubbles containing humorous text. But, don&#8217;t overlook it&#8217;s content. The book delivers content that is technically accurate and easy to understand. So, if you&#8217;re the type of person who hates boring Java programming classes, but still wants to learn Java, then this book is for you.</p>
<p>Most programmers start their careers doing procedural programming. That is why most also have trouble understanding OOP concepts. Head first addresses that problem by giving readers clear distinctions between procedural and object-oriented programming. Another unique feature of the book is that it gives a lot of analogies about OOP concepts that makes OOP easy to understand.</p>
<p class="first-line-indent" style="text-indent: 0cm;">Here are some of the book&#8217;s contents you might be interested in:</p>
<ul>
<li>
<p class="first-line-indent">OOP (of course)</p>
</li>
<li>
<p class="first-line-indent">Creating graphical user interfaces 	(GUI)</p>
</li>
<li>
<p class="first-line-indent">Using the Java API</p>
</li>
<li>
<p class="first-line-indent">Exception handling</p>
</li>
<li>
<p class="first-line-indent">Sorting data structures</p>
</li>
<li>
<p class="first-line-indent">Serializing and deserializing 	objects (writing to a text file)</p>
</li>
<li>
<p class="first-line-indent">Creating network applications 	(create a chat client)</p>
</li>
</ul>
<p class="first-line-indent" style="text-indent: 0cm;">OOP is discussed in the earlier parts of the book since you&#8217;ll be needing most of its concepts for other chapters like creating graphical user interfaces. You&#8217;ll need inheritance (which is an OOP concept) to implement a listener before a single button can even work on your GUI.</p>
<p class="first-line-indent" style="text-indent: 0cm;" lang="en-US">In a classroom environment most students will have one or two questions about the lesson. That is why the book includes exercises and “There are no dumb questions” sections after every chapter. Basically, the exercises are activities for the readers. On the other hand, the “There are no dumb questions” section answers the frequently asked questions that readers will have on every chapter. With that said, head first is definitely a book for beginners. But, people with absolutely no background in programming (including those with only HTML background) should not directly learn from the book. Learn basic programming first before proceeding to tackle Head First Java.</p>
<p class="first-line-indent" style="text-indent: 0cm;">
]]></content:encoded>
			<wfw:commentRss>http://www.ideyatech.com/2010/05/book-review-head-first-java-2nd-edition/feed/</wfw:commentRss>
		</item>
		<item>
		<title>Introduction to Java Content Repository and Apache Jackrabbit</title>
		<link>http://www.ideyatech.com/2010/04/introduction-to-java-content-repository-and-apache-jackrabbit/</link>
		<comments>http://www.ideyatech.com/2010/04/introduction-to-java-content-repository-and-apache-jackrabbit/#comments</comments>
		<pubDate>Tue, 13 Apr 2010 05:29:29 +0000</pubDate>
		<dc:creator>Erickson Javines</dc:creator>
		
		<category><![CDATA[Java]]></category>

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

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

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

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

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

		<guid isPermaLink="false">http://www.ideyatech.com/?p=258</guid>
		<description><![CDATA[<img class="alignleft" src="http://www.ideyatech.com/wp-content/uploads/thumbs/jackrabbit.png" alt="Introduction to Java Content Repository and Apache Jackrabbit" title="Introduction to Java Content Repository and Apache Jackrabbit" />

With the growing demand in integrating content like photos, music, videos &#038; office docs into business &#038; web applications, we need a content management system that is rich in features, flexible &#038; easy to learn. The Java Community Process developed a solution to this trend – the JSR-170 &#038; JSR-283, also known as the Java Content Repository (JCR) API.]]></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%2F04%2Fintroduction-to-java-content-repository-and-apache-jackrabbit%2F"><img src="http://api.tweetmeme.com/imagebutton.gif?url=http%3A%2F%2Fwww.ideyatech.com%2F2010%2F04%2Fintroduction-to-java-content-repository-and-apache-jackrabbit%2F" height="61" width="51" /></a></div><p>With the growing demand in integrating content like photos, music, videos and office documents into business and web applications, we need a content management system that is rich in features, flexible and easy to learn. The Java Community Process developed a solution to this trend – the JSR-170 and JSR-283, also known as the Java Content Repository (JCR) API.</p>
<p>The JCR specification provides a unified interface that different vendors can implement to meet the needs of a content management system. Application developers, on the other hand, are saved from learning different propriety APIs, thus, reducing time-to-market. They just need to learn one API that is compatible with any JSR-170/283 compliant repository. This framework is not only vendor neutral. It is also not tied to any particular underlying architecture. The back-end data storage could be a file system, a WEBDAV repository, an XML-backed system or an SQL-based database. In addition to flexibility, the Java Content Repository has a lot more features to offer.</p>
<p style="0cm;">A content repository is like a fusion of a database and a file system. Among the valuable features of this integration are:</p>
<ul>
<li>support for both structured and 	unstructured content</li>
</ul>
<ul>
<li>
<p style="0cm;">hierarchical design</p>
</li>
<li>
<p style="0cm;">SQL and/or XPath query</p>
</li>
<li>
<p style="0cm;">access control</p>
</li>
<li>
<p style="0cm;">locking</p>
</li>
<li>
<p style="0cm;">full-text search</p>
</li>
<li>
<p style="0cm;">versioning</p>
</li>
</ul>
<p style="0cm;">Everything stored in the repository is managed as NODES and PROPERTIES. For example, in blog repository, we could say that each node of blog entry must have properties like title, author, text article, and file attachments (photo/video). The JCR API has several pre-defined node types like “nt:folder”, “nt:file”, and “nt:unstructured” but developers can also define their custom node types.</p>
<p style="0cm;"><img src="http://onjava.com/onjava/2006/10/04/graphics/repositorymodel3.gif" alt="repo model" width="550" height="263" /></p>
<p style="0cm;">
<p style="0cm;">
<p style="0cm;"><a name="_GoBack"></a>A lot of JCR-compliant repositories are already available in the market. Among them are Day CRX, IBM CM, Oracle XML DB, Alfresco ECM, and Apache Jackrabbit. Let&#8217;s explore what Apache Jackrabbit has to offer.</p>
<p style="0cm;">
<p style="0cm;"><strong>Apache Jackrabbit</strong></p>
<p style="0cm;">&lt;!&#8211; 		@page { margin: 2cm } 		P { margin-bottom: 0.21cm } 	&#8211;&gt;Apache Jackrabbit is a fully conforming implementation of the Java Content Repository. It complies with level 1 and 2 of JCR and adds more advanced features. Shown below are the features supported by each level:</p>
<p style="0cm;"><img src="http://jackrabbit.apache.org/jcr-api.data/level-1.jpg" alt="Level 1" width="400" height="300" /></p>
<p style="0cm;"><img src="http://jackrabbit.apache.org/jcr-api.data/level-2.jpg" alt="Level 2" width="400" height="300" /></p>
<p style="0cm;"><img src="http://jackrabbit.apache.org/jcr-api.data/level-adv.jpg" alt="Advanced" width="400" height="300" /></p>
<p style="0cm;">
<p style="0cm;">To start developing applications with Apache Jackrabbit, you may download the Jackrabbit web application module from the <a title="Apache Downloads" href="http://www.apache.org/dyn/closer.cgi/jackrabbit/2.0.0/jackrabbit-webapp-2.0.0.war" target="_blank">Apache Downloads</a>, get the <a title="JCR spec" href="http://jcp.org/aboutJava/communityprocess/final/jsr170/index.html" target="_blank">JCR specification</a> and javax.jcr package, study the <a title="javax.jcr API" href="http://www.day.com/maven/jsr170/javadocs/jcr-1.0/" target="_blank">JCR API</a> and use the following model for your repository application:</p>
<p><img style="middle;" src="http://jackrabbit.apache.org/deployment-models.data/deploy-1.png" alt="Webapplication deployment model" width="400" height="300" /></p>
<p>For more information, you may visit the Apache Jackrabbit site at <a href="http://jackrabbit.apache.org/">http://jackrabbit.apache.org/</a></p>
]]></content:encoded>
			<wfw:commentRss>http://www.ideyatech.com/2010/04/introduction-to-java-content-repository-and-apache-jackrabbit/feed/</wfw:commentRss>
		</item>
		<item>
		<title>Company Outing 2010</title>
		<link>http://www.ideyatech.com/2010/04/company-outing-2010/</link>
		<comments>http://www.ideyatech.com/2010/04/company-outing-2010/#comments</comments>
		<pubDate>Wed, 07 Apr 2010 21:07:27 +0000</pubDate>
		<dc:creator>Kervi Cioco</dc:creator>
		
		<category><![CDATA[Corporate News]]></category>

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

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

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

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

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

		<category><![CDATA[company outing]]></category>

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

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

		<guid isPermaLink="false">http://www.ideyatech.com/?p=261</guid>
		<description><![CDATA[<img class="alignleft" src="http://www.ideyatech.com/wp-content/uploads/thumbs/company-outing-10.png" alt="Company Outing 2010" title="Company Outing 2010" />

If there's one word to describe how people from this side of the world is currently feeling about the weather — I bet cool, freezing or cold will be such a surprise to hear cause summer in the Philippines has always been crazy HOT! So while the scorching heat is in full effect we took advantage and what else could be much more fun than hitting the blue seas!]]></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%2F04%2Fcompany-outing-2010%2F"><img src="http://api.tweetmeme.com/imagebutton.gif?url=http%3A%2F%2Fwww.ideyatech.com%2F2010%2F04%2Fcompany-outing-2010%2F" height="61" width="51" /></a></div><p>If there&#8217;s one word to describe how people from this side of the world is currently feeling about the weather — I bet cool, freezing or cold will be such a surprise to hear cause summer in the Philippines has always been crazy HOT! Actually, with global warming and all, &#8220;crazy hot&#8221; is even an understatment.</p>
<p>It&#8217;s all good though cause brutal sunny days is definitely so much better than gloomy rainy ones. So while the scorching heat is in full effect we took advantage, have a lil break and what else could be much more fun than hitting the blue seas far away from the city!</p>
<p>This year, the company had its annual summer outing down south at Stilts Calatagan Beach Resort located in Calatagan, Batangas. It&#8217;s a predominantly white sand, blue water resort 3-4 hours away from the city. Trip&#8217;s a lil exhausting, really, but the awesome scenery, the soothing scent of the ocean, everything — it&#8217;s all super worth it. Actually, reliving the memories as I&#8217;m writing this blog kind of brings back the relaxing feeling I got from the whole getaway. T&#8217;was a lot of fun! See what went down from our over night escapade. Enjoy!</p>
<div class="gallery">
<dl class="gallery-item">
<dt class="gallery-icon"> <a title="Company Outing 2010" href="http://www.ideyatech.com/wp-content/uploads/2010/04/outing2010/fullsize/stilts-01.jpg"><img class="attachment-thumbnail" src="http://www.ideyatech.com/wp-content/uploads/2010/04/outing2010/thumbnail/stilts-01.jpg" alt="Company Outing 2010" width="150" height="100" /></a> </dt>
</dl>
<dl class="gallery-item">
<dt class="gallery-icon"> <a title="Company Outing 2010" href="http://www.ideyatech.com/wp-content/uploads/2010/04/outing2010/fullsize/stilts-02.jpg"><img class="attachment-thumbnail" src="http://www.ideyatech.com/wp-content/uploads/2010/04/outing2010/thumbnail/stilts-02.jpg" alt="Company Outing 2010" width="150" height="100" /></a> </dt>
</dl>
<dl class="gallery-item">
<dt class="gallery-icon"> <a title="Company Outing 2010" href="http://www.ideyatech.com/wp-content/uploads/2010/04/outing2010/fullsize/stilts-03.jpg"><img class="attachment-thumbnail" src="http://www.ideyatech.com/wp-content/uploads/2010/04/outing2010/thumbnail/stilts-03.jpg" alt="Company Outing 2010" width="150" height="100" /></a> </dt>
</dl>
<dl class="gallery-item">
<dt class="gallery-icon"> <a title="Company Outing 2010" href="http://www.ideyatech.com/wp-content/uploads/2010/04/outing2010/fullsize/stilts-04.jpg"><img class="attachment-thumbnail" src="http://www.ideyatech.com/wp-content/uploads/2010/04/outing2010/thumbnail/stilts-04.jpg" alt="Company Outing 2010" width="150" height="100" /></a> </dt>
</dl>
<dl class="gallery-item">
<dt class="gallery-icon"> <a title="Company Outing 2010" href="http://www.ideyatech.com/wp-content/uploads/2010/04/outing2010/fullsize/stilts-05.jpg"><img class="attachment-thumbnail" src="http://www.ideyatech.com/wp-content/uploads/2010/04/outing2010/thumbnail/stilts-05.jpg" alt="Company Outing 2010" width="150" height="100" /></a> </dt>
</dl>
<dl class="gallery-item">
<dt class="gallery-icon"> <a title="Company Outing 2010" href="http://www.ideyatech.com/wp-content/uploads/2010/04/outing2010/fullsize/stilts-06.jpg"><img class="attachment-thumbnail" src="http://www.ideyatech.com/wp-content/uploads/2010/04/outing2010/thumbnail/stilts-06.jpg" alt="Company Outing 2010" width="150" height="100" /></a> </dt>
</dl>
<dl class="gallery-item">
<dt class="gallery-icon"> <a title="Company Outing 2010" href="http://www.ideyatech.com/wp-content/uploads/2010/04/outing2010/fullsize/stilts-07.jpg"><img class="attachment-thumbnail" src="http://www.ideyatech.com/wp-content/uploads/2010/04/outing2010/thumbnail/stilts-07.jpg" alt="Company Outing 2010" width="150" height="100" /></a> </dt>
</dl>
<dl class="gallery-item">
<dt class="gallery-icon"> <a title="Company Outing 2010" href="http://www.ideyatech.com/wp-content/uploads/2010/04/outing2010/fullsize/stilts-08.jpg"><img class="attachment-thumbnail" src="http://www.ideyatech.com/wp-content/uploads/2010/04/outing2010/thumbnail/stilts-08.jpg" alt="Company Outing 2010" width="150" height="100" /></a> </dt>
</dl>
<dl class="gallery-item">
<dt class="gallery-icon"> <a title="Company Outing 2010" href="http://www.ideyatech.com/wp-content/uploads/2010/04/outing2010/fullsize/stilts-09.jpg"><img class="attachment-thumbnail" src="http://www.ideyatech.com/wp-content/uploads/2010/04/outing2010/thumbnail/stilts-09.jpg" alt="Company Outing 2010" width="150" height="100" /></a> </dt>
</dl>
<dl class="gallery-item">
<dt class="gallery-icon"> <a title="Company Outing 2010" href="http://www.ideyatech.com/wp-content/uploads/2010/04/outing2010/fullsize/stilts-10.jpg"><img class="attachment-thumbnail" src="http://www.ideyatech.com/wp-content/uploads/2010/04/outing2010/thumbnail/stilts-10.jpg" alt="Company Outing 2010" width="150" height="100" /></a> </dt>
</dl>
<dl class="gallery-item">
<dt class="gallery-icon"> <a title="Company Outing 2010" href="http://www.ideyatech.com/wp-content/uploads/2010/04/outing2010/fullsize/stilts-11.jpg"><img class="attachment-thumbnail" src="http://www.ideyatech.com/wp-content/uploads/2010/04/outing2010/thumbnail/stilts-11.jpg" alt="Company Outing 2010" width="150" height="100" /></a> </dt>
</dl>
<dl class="gallery-item">
<dt class="gallery-icon"> <a title="Company Outing 2010" href="http://www.ideyatech.com/wp-content/uploads/2010/04/outing2010/fullsize/stilts-12.jpg"><img class="attachment-thumbnail" src="http://www.ideyatech.com/wp-content/uploads/2010/04/outing2010/thumbnail/stilts-12.jpg" alt="Company Outing 2010" width="150" height="100" /></a> </dt>
</dl>
<dl class="gallery-item">
<dt class="gallery-icon"> <a title="Company Outing 2010" href="http://www.ideyatech.com/wp-content/uploads/2010/04/outing2010/fullsize/stilts-13.jpg"><img class="attachment-thumbnail" src="http://www.ideyatech.com/wp-content/uploads/2010/04/outing2010/thumbnail/stilts-13.jpg" alt="Company Outing 2010" width="150" height="100" /></a> </dt>
</dl>
<dl class="gallery-item">
<dt class="gallery-icon"> <a title="Company Outing 2010" href="http://www.ideyatech.com/wp-content/uploads/2010/04/outing2010/fullsize/stilts-14.jpg"><img class="attachment-thumbnail" src="http://www.ideyatech.com/wp-content/uploads/2010/04/outing2010/thumbnail/stilts-14.jpg" alt="Company Outing 2010" width="150" height="100" /></a> </dt>
</dl>
<dl class="gallery-item">
<dt class="gallery-icon"> <a title="Company Outing 2010" href="http://www.ideyatech.com/wp-content/uploads/2010/04/outing2010/fullsize/stilts-15.jpg"><img class="attachment-thumbnail" src="http://www.ideyatech.com/wp-content/uploads/2010/04/outing2010/thumbnail/stilts-15.jpg" alt="Company Outing 2010" width="150" height="100" /></a> </dt>
</dl>
<dl class="gallery-item">
<dt class="gallery-icon"> <a title="Company Outing 2010" href="http://www.ideyatech.com/wp-content/uploads/2010/04/outing2010/fullsize/stilts-16.jpg"><img class="attachment-thumbnail" src="http://www.ideyatech.com/wp-content/uploads/2010/04/outing2010/thumbnail/stilts-16.jpg" alt="Company Outing 2010" width="150" height="100" /></a> </dt>
</dl>
<dl class="gallery-item">
<dt class="gallery-icon"> <a title="Company Outing 2010" href="http://www.ideyatech.com/wp-content/uploads/2010/04/outing2010/fullsize/stilts-17.jpg"><img class="attachment-thumbnail" src="http://www.ideyatech.com/wp-content/uploads/2010/04/outing2010/thumbnail/stilts-17.jpg" alt="Company Outing 2010" width="150" height="100" /></a> </dt>
</dl>
<dl class="gallery-item">
<dt class="gallery-icon"> <a title="Company Outing 2010" href="http://www.ideyatech.com/wp-content/uploads/2010/04/outing2010/fullsize/stilts-18.jpg"><img class="attachment-thumbnail" src="http://www.ideyatech.com/wp-content/uploads/2010/04/outing2010/thumbnail/stilts-18.jpg" alt="Company Outing 2010" width="150" height="100" /></a> </dt>
</dl>
<dl class="gallery-item">
<dt class="gallery-icon"> <a title="Company Outing 2010" href="http://www.ideyatech.com/wp-content/uploads/2010/04/outing2010/fullsize/stilts-19.jpg"><img class="attachment-thumbnail" src="http://www.ideyatech.com/wp-content/uploads/2010/04/outing2010/thumbnail/stilts-19.jpg" alt="Company Outing 2010" width="150" height="100" /></a> </dt>
</dl>
<dl class="gallery-item">
<dt class="gallery-icon"> <a title="Company Outing 2010" href="http://www.ideyatech.com/wp-content/uploads/2010/04/outing2010/fullsize/stilts-20.jpg"><img class="attachment-thumbnail" src="http://www.ideyatech.com/wp-content/uploads/2010/04/outing2010/thumbnail/stilts-20.jpg" alt="Company Outing 2010" width="150" height="100" /></a> </dt>
</dl>
<dl class="gallery-item">
<dt class="gallery-icon"> <a title="Company Outing 2010" href="http://www.ideyatech.com/wp-content/uploads/2010/04/outing2010/fullsize/stilts-21.jpg"><img class="attachment-thumbnail" src="http://www.ideyatech.com/wp-content/uploads/2010/04/outing2010/thumbnail/stilts-21.jpg" alt="Company Outing 2010" width="150" height="100" /></a> </dt>
</dl>
<dl class="gallery-item">
<dt class="gallery-icon"> <a title="Company Outing 2010" href="http://www.ideyatech.com/wp-content/uploads/2010/04/outing2010/fullsize/stilts-22.jpg"><img class="attachment-thumbnail" src="http://www.ideyatech.com/wp-content/uploads/2010/04/outing2010/thumbnail/stilts-22.jpg" alt="Company Outing 2010" width="150" height="100" /></a> </dt>
</dl>
<dl class="gallery-item">
<dt class="gallery-icon"> <a title="Company Outing 2010" href="http://www.ideyatech.com/wp-content/uploads/2010/04/outing2010/fullsize/stilts-23.jpg"><img class="attachment-thumbnail" src="http://www.ideyatech.com/wp-content/uploads/2010/04/outing2010/thumbnail/stilts-23.jpg" alt="Company Outing 2010" width="150" height="100" /></a> </dt>
</dl>
<dl class="gallery-item">
<dt class="gallery-icon"> <a title="Company Outing 2010" href="http://www.ideyatech.com/wp-content/uploads/2010/04/outing2010/fullsize/stilts-24.jpg"><img class="attachment-thumbnail" src="http://www.ideyatech.com/wp-content/uploads/2010/04/outing2010/thumbnail/stilts-24.jpg" alt="Company Outing 2010" width="150" height="100" /></a> </dt>
</dl>
<dl class="gallery-item">
<dt class="gallery-icon"> <a title="Company Outing 2010" href="http://www.ideyatech.com/wp-content/uploads/2010/04/outing2010/fullsize/stilts-25.jpg"><img class="attachment-thumbnail" src="http://www.ideyatech.com/wp-content/uploads/2010/04/outing2010/thumbnail/stilts-25.jpg" alt="Company Outing 2010" width="150" height="100" /></a> </dt>
</dl>
<dl class="gallery-item">
<dt class="gallery-icon"> <a title="Company Outing 2010" href="http://www.ideyatech.com/wp-content/uploads/2010/04/outing2010/fullsize/stilts-26.jpg"><img class="attachment-thumbnail" src="http://www.ideyatech.com/wp-content/uploads/2010/04/outing2010/thumbnail/stilts-26.jpg" alt="Company Outing 2010" width="150" height="100" /></a> </dt>
</dl>
<dl class="gallery-item">
<dt class="gallery-icon"> <a title="Company Outing 2010" href="http://www.ideyatech.com/wp-content/uploads/2010/04/outing2010/fullsize/stilts-27.jpg"><img class="attachment-thumbnail" src="http://www.ideyatech.com/wp-content/uploads/2010/04/outing2010/thumbnail/stilts-27.jpg" alt="Company Outing 2010" width="150" height="100" /></a> </dt>
</dl>
<dl class="gallery-item">
<dt class="gallery-icon"> <a title="Company Outing 2010" href="http://www.ideyatech.com/wp-content/uploads/2010/04/outing2010/fullsize/stilts-28.jpg"><img class="attachment-thumbnail" src="http://www.ideyatech.com/wp-content/uploads/2010/04/outing2010/thumbnail/stilts-28.jpg" alt="Company Outing 2010" width="150" height="100" /></a> </dt>
</dl>
<dl class="gallery-item">
<dt class="gallery-icon"> <a title="Company Outing 2010" href="http://www.ideyatech.com/wp-content/uploads/2010/04/outing2010/fullsize/stilts-29.jpg"><img class="attachment-thumbnail" src="http://www.ideyatech.com/wp-content/uploads/2010/04/outing2010/thumbnail/stilts-29.jpg" alt="Company Outing 2010" width="150" height="100" /></a> </dt>
</dl>
<dl class="gallery-item">
<dt class="gallery-icon"> <a title="Company Outing 2010" href="http://www.ideyatech.com/wp-content/uploads/2010/04/outing2010/fullsize/stilts-30.jpg"><img class="attachment-thumbnail" src="http://www.ideyatech.com/wp-content/uploads/2010/04/outing2010/thumbnail/stilts-30.jpg" alt="Company Outing 2010" width="150" height="100" /></a> </dt>
</dl>
<dl class="gallery-item">
<dt class="gallery-icon"> <a title="Company Outing 2010" href="http://www.ideyatech.com/wp-content/uploads/2010/04/outing2010/fullsize/stilts-31.jpg"><img class="attachment-thumbnail" src="http://www.ideyatech.com/wp-content/uploads/2010/04/outing2010/thumbnail/stilts-31.jpg" alt="Company Outing 2010" width="150" height="100" /></a> </dt>
</dl>
<dl class="gallery-item">
<dt class="gallery-icon"> <a title="Company Outing 2010" href="http://www.ideyatech.com/wp-content/uploads/2010/04/outing2010/fullsize/stilts-32.jpg"><img class="attachment-thumbnail" src="http://www.ideyatech.com/wp-content/uploads/2010/04/outing2010/thumbnail/stilts-32.jpg" alt="Company Outing 2010" width="150" height="100" /></a> </dt>
</dl>
<dl class="gallery-item">
<dt class="gallery-icon"> <a title="Company Outing 2010" href="http://www.ideyatech.com/wp-content/uploads/2010/04/outing2010/fullsize/stilts-33.jpg"><img class="attachment-thumbnail" src="http://www.ideyatech.com/wp-content/uploads/2010/04/outing2010/thumbnail/stilts-33.jpg" alt="Company Outing 2010" width="150" height="100" /></a> </dt>
</dl>
<dl class="gallery-item">
<dt class="gallery-icon"> <a title="Company Outing 2010" href="http://www.ideyatech.com/wp-content/uploads/2010/04/outing2010/fullsize/stilts-34.jpg"><img class="attachment-thumbnail" src="http://www.ideyatech.com/wp-content/uploads/2010/04/outing2010/thumbnail/stilts-34.jpg" alt="Company Outing 2010" width="150" height="100" /></a> </dt>
</dl>
<dl class="gallery-item">
<dt class="gallery-icon"> <a title="Company Outing 2010" href="http://www.ideyatech.com/wp-content/uploads/2010/04/outing2010/fullsize/stilts-35.jpg"><img class="attachment-thumbnail" src="http://www.ideyatech.com/wp-content/uploads/2010/04/outing2010/thumbnail/stilts-35.jpg" alt="Company Outing 2010" width="150" height="100" /></a> </dt>
</dl>
<dl class="gallery-item">
<dt class="gallery-icon"> <a title="Company Outing 2010" href="http://www.ideyatech.com/wp-content/uploads/2010/04/outing2010/fullsize/stilts-36.jpg"><img class="attachment-thumbnail" src="http://www.ideyatech.com/wp-content/uploads/2010/04/outing2010/thumbnail/stilts-36.jpg" alt="Company Outing 2010" width="150" height="100" /></a> </dt>
</dl>
<dl class="gallery-item">
<dt class="gallery-icon"> <a title="Company Outing 2010" href="http://www.ideyatech.com/wp-content/uploads/2010/04/outing2010/fullsize/stilts-37.jpg"><img class="attachment-thumbnail" src="http://www.ideyatech.com/wp-content/uploads/2010/04/outing2010/thumbnail/stilts-37.jpg" alt="Company Outing 2010" width="150" height="100" /></a> </dt>
</dl>
<dl class="gallery-item">
<dt class="gallery-icon"> <a title="Company Outing 2010" href="http://www.ideyatech.com/wp-content/uploads/2010/04/outing2010/fullsize/stilts-38.jpg"><img class="attachment-thumbnail" src="http://www.ideyatech.com/wp-content/uploads/2010/04/outing2010/thumbnail/stilts-38.jpg" alt="Company Outing 2010" width="150" height="100" /></a> </dt>
</dl>
<dl class="gallery-item">
<dt class="gallery-icon"> <a title="Company Outing 2010" href="http://www.ideyatech.com/wp-content/uploads/2010/04/outing2010/fullsize/stilts-39.jpg"><img class="attachment-thumbnail" src="http://www.ideyatech.com/wp-content/uploads/2010/04/outing2010/thumbnail/stilts-39.jpg" alt="Company Outing 2010" width="150" height="100" /></a> </dt>
</dl>
<dl class="gallery-item">
<dt class="gallery-icon"> <a title="Company Outing 2010" href="http://www.ideyatech.com/wp-content/uploads/2010/04/outing2010/fullsize/stilts-40.jpg"><img class="attachment-thumbnail" src="http://www.ideyatech.com/wp-content/uploads/2010/04/outing2010/thumbnail/stilts-40.jpg" alt="Company Outing 2010" width="150" height="100" /></a> </dt>
</dl>
<dl class="gallery-item">
<dt class="gallery-icon"> <a title="Company Outing 2010" href="http://www.ideyatech.com/wp-content/uploads/2010/04/outing2010/fullsize/stilts-41.jpg"><img class="attachment-thumbnail" src="http://www.ideyatech.com/wp-content/uploads/2010/04/outing2010/thumbnail/stilts-41.jpg" alt="Company Outing 2010" width="150" height="100" /></a> </dt>
</dl>
<dl class="gallery-item">
<dt class="gallery-icon"> <a title="Company Outing 2010" href="http://www.ideyatech.com/wp-content/uploads/2010/04/outing2010/fullsize/stilts-42.jpg"><img class="attachment-thumbnail" src="http://www.ideyatech.com/wp-content/uploads/2010/04/outing2010/thumbnail/stilts-42.jpg" alt="Company Outing 2010" width="150" height="100" /></a> </dt>
</dl>
<dl class="gallery-item">
<dt class="gallery-icon"> <a title="Company Outing 2010" href="http://www.ideyatech.com/wp-content/uploads/2010/04/outing2010/fullsize/stilts-43.jpg"><img class="attachment-thumbnail" src="http://www.ideyatech.com/wp-content/uploads/2010/04/outing2010/thumbnail/stilts-43.jpg" alt="Company Outing 2010" width="150" height="100" /></a> </dt>
</dl>
<dl class="gallery-item">
<dt class="gallery-icon"> <a title="Company Outing 2010" href="http://www.ideyatech.com/wp-content/uploads/2010/04/outing2010/fullsize/stilts-44.jpg"><img class="attachment-thumbnail" src="http://www.ideyatech.com/wp-content/uploads/2010/04/outing2010/thumbnail/stilts-44.jpg" alt="Company Outing 2010" width="150" height="100" /></a> </dt>
</dl>
<dl class="gallery-item">
<dt class="gallery-icon"> <a title="Company Outing 2010" href="http://www.ideyatech.com/wp-content/uploads/2010/04/outing2010/fullsize/stilts-45.jpg"><img class="attachment-thumbnail" src="http://www.ideyatech.com/wp-content/uploads/2010/04/outing2010/thumbnail/stilts-45.jpg" alt="Company Outing 2010" width="150" height="100" /></a> </dt>
</dl>
<dl class="gallery-item">
<dt class="gallery-icon"> <a title="Company Outing 2010" href="http://www.ideyatech.com/wp-content/uploads/2010/04/outing2010/fullsize/stilts-46.jpg"><img class="attachment-thumbnail" src="http://www.ideyatech.com/wp-content/uploads/2010/04/outing2010/thumbnail/stilts-46.jpg" alt="Company Outing 2010" width="150" height="100" /></a> </dt>
</dl>
<dl class="gallery-item">
<dt class="gallery-icon"> <a title="Company Outing 2010" href="http://www.ideyatech.com/wp-content/uploads/2010/04/outing2010/fullsize/stilts-47.jpg"><img class="attachment-thumbnail" src="http://www.ideyatech.com/wp-content/uploads/2010/04/outing2010/thumbnail/stilts-47.jpg" alt="Company Outing 2010" width="150" height="100" /></a> </dt>
</dl>
<dl class="gallery-item">
<dt class="gallery-icon"> <a title="Company Outing 2010" href="http://www.ideyatech.com/wp-content/uploads/2010/04/outing2010/fullsize/stilts-48.jpg"><img class="attachment-thumbnail" src="http://www.ideyatech.com/wp-content/uploads/2010/04/outing2010/thumbnail/stilts-48.jpg" alt="Company Outing 2010" width="150" height="100" /></a> </dt>
</dl>
<dl class="gallery-item">
<dt class="gallery-icon"> <a title="Company Outing 2010" href="http://www.ideyatech.com/wp-content/uploads/2010/04/outing2010/fullsize/stilts-49.jpg"><img class="attachment-thumbnail" src="http://www.ideyatech.com/wp-content/uploads/2010/04/outing2010/thumbnail/stilts-49.jpg" alt="Company Outing 2010" width="150" height="100" /></a> </dt>
</dl>
<dl class="gallery-item">
<dt class="gallery-icon"> <a title="Company Outing 2010" href="http://www.ideyatech.com/wp-content/uploads/2010/04/outing2010/fullsize/stilts-50.jpg"><img class="attachment-thumbnail" src="http://www.ideyatech.com/wp-content/uploads/2010/04/outing2010/thumbnail/stilts-50.jpg" alt="Company Outing 2010" width="150" height="100" /></a> </dt>
</dl>
<dl class="gallery-item">
<dt class="gallery-icon"> <a title="Company Outing 2010" href="http://www.ideyatech.com/wp-content/uploads/2010/04/outing2010/fullsize/stilts-51.jpg"><img class="attachment-thumbnail" src="http://www.ideyatech.com/wp-content/uploads/2010/04/outing2010/thumbnail/stilts-51.jpg" alt="Company Outing 2010" width="150" height="100" /></a> </dt>
</dl>
<dl class="gallery-item">
<dt class="gallery-icon"> <a title="Company Outing 2010" href="http://www.ideyatech.com/wp-content/uploads/2010/04/outing2010/fullsize/stilts-52.jpg"><img class="attachment-thumbnail" src="http://www.ideyatech.com/wp-content/uploads/2010/04/outing2010/thumbnail/stilts-52.jpg" alt="Company Outing 2010" width="150" height="100" /></a> </dt>
</dl>
<dl class="gallery-item">
<dt class="gallery-icon"> <a title="Company Outing 2010" href="http://www.ideyatech.com/wp-content/uploads/2010/04/outing2010/fullsize/stilts-53.jpg"><img class="attachment-thumbnail" src="http://www.ideyatech.com/wp-content/uploads/2010/04/outing2010/thumbnail/stilts-53.jpg" alt="Company Outing 2010" width="150" height="100" /></a> </dt>
</dl>
<dl class="gallery-item">
<dt class="gallery-icon"> <a title="Company Outing 2010" href="http://www.ideyatech.com/wp-content/uploads/2010/04/outing2010/fullsize/stilts-54.jpg"><img class="attachment-thumbnail" src="http://www.ideyatech.com/wp-content/uploads/2010/04/outing2010/thumbnail/stilts-54.jpg" alt="Company Outing 2010" width="150" height="100" /></a> </dt>
</dl>
<dl class="gallery-item">
<dt class="gallery-icon"> <a title="Company Outing 2010" href="http://www.ideyatech.com/wp-content/uploads/2010/04/outing2010/fullsize/stilts-55.jpg"><img class="attachment-thumbnail" src="http://www.ideyatech.com/wp-content/uploads/2010/04/outing2010/thumbnail/stilts-55.jpg" alt="Company Outing 2010" width="150" height="100" /></a> </dt>
</dl>
<dl class="gallery-item">
<dt class="gallery-icon"> <a title="Company Outing 2010" href="http://www.ideyatech.com/wp-content/uploads/2010/04/outing2010/fullsize/stilts-56.jpg"><img class="attachment-thumbnail" src="http://www.ideyatech.com/wp-content/uploads/2010/04/outing2010/thumbnail/stilts-56.jpg" alt="Company Outing 2010" width="150" height="100" /></a> </dt>
</dl>
<dl class="gallery-item">
<dt class="gallery-icon"> <a title="Company Outing 2010" href="http://www.ideyatech.com/wp-content/uploads/2010/04/outing2010/fullsize/stilts-57.jpg"><img class="attachment-thumbnail" src="http://www.ideyatech.com/wp-content/uploads/2010/04/outing2010/thumbnail/stilts-57.jpg" alt="Company Outing 2010" width="150" height="100" /></a> </dt>
</dl>
<dl class="gallery-item">
<dt class="gallery-icon"> <a title="Company Outing 2010" href="http://www.ideyatech.com/wp-content/uploads/2010/04/outing2010/fullsize/stilts-58.jpg"><img class="attachment-thumbnail" src="http://www.ideyatech.com/wp-content/uploads/2010/04/outing2010/thumbnail/stilts-58.jpg" alt="Company Outing 2010" width="150" height="100" /></a> </dt>
</dl>
<dl class="gallery-item">
<dt class="gallery-icon"> <a title="Company Outing 2010" href="http://www.ideyatech.com/wp-content/uploads/2010/04/outing2010/fullsize/stilts-59.jpg"><img class="attachment-thumbnail" src="http://www.ideyatech.com/wp-content/uploads/2010/04/outing2010/thumbnail/stilts-59.jpg" alt="Company Outing 2010" width="150" height="100" /></a> </dt>
</dl>
<dl class="gallery-item">
<dt class="gallery-icon"> <a title="Company Outing 2010" href="http://www.ideyatech.com/wp-content/uploads/2010/04/outing2010/fullsize/stilts-60.jpg"><img class="attachment-thumbnail" src="http://www.ideyatech.com/wp-content/uploads/2010/04/outing2010/thumbnail/stilts-60.jpg" alt="Company Outing 2010" width="150" height="100" /></a> </dt>
</dl>
<dl class="gallery-item">
<dt class="gallery-icon"> <a title="Company Outing 2010" href="http://www.ideyatech.com/wp-content/uploads/2010/04/outing2010/fullsize/stilts-61.jpg"><img class="attachment-thumbnail" src="http://www.ideyatech.com/wp-content/uploads/2010/04/outing2010/thumbnail/stilts-61.jpg" alt="Company Outing 2010" width="150" height="100" /></a> </dt>
</dl>
<dl class="gallery-item">
<dt class="gallery-icon"> <a title="Company Outing 2010" href="http://www.ideyatech.com/wp-content/uploads/2010/04/outing2010/fullsize/stilts-62.jpg"><img class="attachment-thumbnail" src="http://www.ideyatech.com/wp-content/uploads/2010/04/outing2010/thumbnail/stilts-62.jpg" alt="Company Outing 2010" width="150" height="100" /></a> </dt>
</dl>
<dl class="gallery-item">
<dt class="gallery-icon"> <a title="Company Outing 2010" href="http://www.ideyatech.com/wp-content/uploads/2010/04/outing2010/fullsize/stilts-63.jpg"><img class="attachment-thumbnail" src="http://www.ideyatech.com/wp-content/uploads/2010/04/outing2010/thumbnail/stilts-63.jpg" alt="Company Outing 2010" width="150" height="100" /></a> </dt>
</dl>
<dl class="gallery-item">
<dt class="gallery-icon"> <a title="Company Outing 2010" href="http://www.ideyatech.com/wp-content/uploads/2010/04/outing2010/fullsize/stilts-64.jpg"><img class="attachment-thumbnail" src="http://www.ideyatech.com/wp-content/uploads/2010/04/outing2010/thumbnail/stilts-64.jpg" alt="Company Outing 2010" width="150" height="100" /></a> </dt>
</dl>
<dl class="gallery-item">
<dt class="gallery-icon"> <a title="Company Outing 2010" href="http://www.ideyatech.com/wp-content/uploads/2010/04/outing2010/fullsize/stilts-65.jpg"><img class="attachment-thumbnail" src="http://www.ideyatech.com/wp-content/uploads/2010/04/outing2010/thumbnail/stilts-65.jpg" alt="Company Outing 2010" width="150" height="100" /></a> </dt>
</dl>
<p>	<br style="clear: both;" />    </p>
</div>
]]></content:encoded>
			<wfw:commentRss>http://www.ideyatech.com/2010/04/company-outing-2010/feed/</wfw:commentRss>
		</item>
		<item>
		<title>Using CSS Position in Creating Boxes w/ Rounded Corners</title>
		<link>http://www.ideyatech.com/2010/03/using-css-position-in-creating-boxes-with-rounded-corners/</link>
		<comments>http://www.ideyatech.com/2010/03/using-css-position-in-creating-boxes-with-rounded-corners/#comments</comments>
		<pubDate>Tue, 23 Mar 2010 04:15:18 +0000</pubDate>
		<dc:creator>Kervi Cioco</dc:creator>
		
		<category><![CDATA[Website Design]]></category>

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

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

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

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

		<guid isPermaLink="false">http://www.ideyatech.com/?p=260</guid>
		<description><![CDATA[<img class="alignleft" src="http://www.ideyatech.com/wp-content/uploads/thumbs/css-position.png" alt="Using CSS Position in Creating Boxes with Rounded Corners" title="Using CSS Position in Creating Boxes with Rounded Corners" />

There’s this CSS trick I came across a couple of years ago that never seize to amaze me. It’s the use of 2 position attributes to control elements within a defined boundary. It is, by far, one of the most lucrative piece of info that I get to apply in so many design situations and actually, if you’re starting to learn about CSS, this is going to take you far.]]></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%2F03%2Fusing-css-position-in-creating-boxes-with-rounded-corners%2F"><img src="http://api.tweetmeme.com/imagebutton.gif?url=http%3A%2F%2Fwww.ideyatech.com%2F2010%2F03%2Fusing-css-position-in-creating-boxes-with-rounded-corners%2F" height="61" width="51" /></a></div><p>There’s this CSS trick I came across a couple of years ago that never seize to amaze me. It’s the use of two position attributes to control elements within a defined boundary. It is, by far, one of the most lucrative piece of CSS information that I get to apply in so many design situations and actually, if you’re just starting to learn about CSS, this is going to take you far.</p>
<p>To better understand how this trick works, let us use it an actual design scenario, for example — creating boxes with rounded corners.</p>
<p>Long before people knew about CSS3, designers have already been fond of using boxes with rounded corners. Nowadays, creating these have been relatively easy especially with the aid of CSS3, particularly, the –moz-border-radius or –webkit-border properties.</p>
<p>Handy as it may seem, some CSS3 properties such as what I’ve just mentioned tend to have cross-browser compatibility limitations. It’s inevitable. Finding alternative ways to get around it is the only thing we can do.</p>
<p>So if you ask me, using images maneuvered with few CSS position properties are still the less hassle way of dealing with boxes with rounded corners.</p>
<p>Here’s what we’re trying to produce.</p>
<p><img title="Using CSS Position in Creating Boxes with Rounded Corners" src="http://www.ideyatech.com/wp-content/uploads/2010/03/position/sample.png" alt="sample" width="575" height="225" /></p>
<p>Basically, it&#8217;s a green box with 4 rounded corners with some text inside. And here’s how we go about it.</p>
<p><strong>I.   Producing the Rounded Corner Images</strong></p>
<p>Normally, I&#8217;ll slice square images of the 4 rounded corners in Adobe Photoshop and export it as image files. Here are links to my sample images:</p>
<ul>
<li><a title="TL.jpg" href="http://www.ideyatech.com/wp-content/uploads/2010/03/position/TL.jpg">Top-Left Corner</a></li>
<li><a title="TR.jpg" href="http://www.ideyatech.com/wp-content/uploads/2010/03/position/TR.jpg">Top-Right Corner</a></li>
<li><a title="BL.jpg" href="http://www.ideyatech.com/wp-content/uploads/2010/03/position/BL.jpg">Bottom-Left Corner</a></li>
<li><a title="BR.jpg" href="http://www.ideyatech.com/wp-content/uploads/2010/03/position/BR.jpg">Bottom-Right Corner</a></li>
</ul>
<p><strong>II.   The HTML Code</strong></p>
<pre name="code" class="html">
<div class="box">
<div class="TL"><img src="images/TL.jpg" width="10" height="10" /></div>
<div class="TR"><img src="images/TR.jpg" width="10" height="10" /></div>
<div class="BL"><img src="images/BL.jpg" width="10" height="10" /></div>
<div class="BR"><img src="images/BR.jpg" width="10" height="10" /></div>
<p class="text">Lorem ipsum dolor sit amet, consectetur adipiscing elit. Phasellus rhoncus iaculis est et convallis. Cras sed turpis a ligula blandit tempus. Maecenas orci nibh, dapibus ac iaculis et, porta nec ipsum. Praesent sollicitudin, nisi non fringilla venenatis, ligula quam molestie felis, eu hendrerit leo sem non lectus. Sed semper malesuada pharetra. In eu ipsum a nisi tristique suscipit. Pellentesque hendrerit ornare mi in feugiat.
</div>
</pre>
<p>What we did here was to create a containing div element and under it are the 4 rounded corner images in its own div that we’ve given class names of TL, TR, BL &amp; BR respectively. Then there&#8217;s the paragraph that should be seen inside the box.</p>
<p><strong>III.   The CSS Code</strong></p>
<pre name="code" class="css">
.box { position: relative; border: solid 1px #7cbb30; }
.TL, .TR, .BL, .BR { position: absolute; }
.TL { top: 0; left: 0; }
.TR { top: 0; right: 0; }
.BL { bottom: 0; left: 0; }
.BR { bottom: 0; right: 0; }
</pre>
<p>Using CSS, we are tying to manipulate where the different elements should be located. This is where THE trick should come in.</p>
<p>The first line was for the containing div of our box. The position: relative; that we’ve given for it will set the boundaries as to where our images can go. It limits the extent on how far everything inside it will be positioned. Then the border properties were given to make it look like an actual box.</p>
<p>The second line was for our 4 images. The position: absolute; that we’ve given for it will position the images relative to our containing box. With the help of directional attributes, it controls where exactly inside the box these images should be positioned.</p>
<p>Then the succeeding lines are just directional attributes that dictate which corners should our images go.</p>
<p>The combination of the two position attributes in creating boundaries and maneuvering elements within that boundary are very crucial in this example. Understanding how they work together is one CSS trick that you’ll find very useful in a lot of situations.</p>
<p><script src="http://www.ideyatech.com/wp-content/plugins/google-syntax-highlighter/Scripts/shCore.js"></script><script src="http://www.ideyatech.com/wp-content/plugins/google-syntax-highlighter/Scripts/shBrushCss.js"></script><script src="http://www.ideyatech.com/wp-content/plugins/google-syntax-highlighter/Scripts/shBrushXml.js"></script><script type="text/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/2010/03/using-css-position-in-creating-boxes-with-rounded-corners/feed/</wfw:commentRss>
		</item>
		<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]]></category>

		<category><![CDATA[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]]></category>

		<category><![CDATA[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[About Us]]></category>

		<category><![CDATA[Corporate News]]></category>

		<category><![CDATA[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[<div class="thumbnail"><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" /></div>

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 significant 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>
<p><i>If you want to know more about Ideyatech, you can find more information on our <a href="http://www.ideyatech.com/company/">company</a> page.</i></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]]></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 class="alignright" src="http://www.ideyatech.com/wp-content/uploads/open-tides.jpg" alt="Open-tides" alt="Open-tides" width="179" height="65" /></p>
<p>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.</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[Corporate News]]></category>

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

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

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

		<category><![CDATA[company outing]]></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[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 [...]]]></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[About Us]]></category>

		<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[<div class="thumbnail"><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" /></div>

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><img class="alignright" title="Ortigas Center, Pasig City" src="http://www.ideyatech.com/wp-content/uploads/2009/04/ortigas.png" border="0" alt="Ortigas Center, Pasig City" width="200" height="200" /></p>
<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 title="Ortigas" src="http://www.ideyatech.com/wp-content/uploads/ortigas/thumbs/ortigas-01_s.jpg" border="0" alt="Ortigas" width="75" height="75" /></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 title="Ortigas" src="http://www.ideyatech.com/wp-content/uploads/ortigas/thumbs/ortigas-02_s.jpg" border="0" alt="Ortigas" width="75" height="75" /></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 title="Ortigas" src="http://www.ideyatech.com/wp-content/uploads/ortigas/thumbs/ortigas-03_s.jpg" border="0" alt="Ortigas" width="75" height="75" /></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 title="Ortigas" src="http://www.ideyatech.com/wp-content/uploads/ortigas/thumbs/ortigas-04_s.jpg" border="0" alt="Ortigas" width="75" height="75" /></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 title="Ortigas" src="http://www.ideyatech.com/wp-content/uploads/ortigas/thumbs/ortigas-05_s.jpg" border="0" alt="Ortigas" width="75" height="75" /></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 title="Ortigas" src="http://www.ideyatech.com/wp-content/uploads/ortigas/thumbs/ortigas-06_s.jpg" border="0" alt="Ortigas" width="75" height="75" /></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 title="Ortigas" src="http://www.ideyatech.com/wp-content/uploads/ortigas/thumbs/ortigas-07_s.jpg" border="0" alt="Ortigas" width="75" height="75" /></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 title="Ortigas" src="http://www.ideyatech.com/wp-content/uploads/ortigas/thumbs/ortigas-08_s.jpg" border="0" alt="Ortigas" width="75" height="75" /></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 title="Ortigas" src="http://www.ideyatech.com/wp-content/uploads/ortigas/thumbs/ortigas-09_s.jpg" border="0" alt="Ortigas" width="75" height="75" /></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 title="Ortigas" src="http://www.ideyatech.com/wp-content/uploads/ortigas/thumbs/ortigas-10_s.jpg" border="0" alt="Ortigas" width="75" height="75" /></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 title="Ortigas" src="http://www.ideyatech.com/wp-content/uploads/ortigas/thumbs/ortigas-11_s.jpg" border="0" alt="Ortigas" width="75" height="75" /></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 title="Ortigas" src="http://www.ideyatech.com/wp-content/uploads/ortigas/thumbs/ortigas-12_s.jpg" border="0" alt="Ortigas" width="75" height="75" /></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 title="Ortigas" src="http://www.ideyatech.com/wp-content/uploads/ortigas/thumbs/ortigas-13_s.jpg" border="0" alt="Ortigas" width="75" height="75" /></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 title="Ortigas" src="http://www.ideyatech.com/wp-content/uploads/ortigas/thumbs/ortigas-14_s.jpg" border="0" alt="Ortigas" width="75" height="75" /></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 title="Ortigas" src="http://www.ideyatech.com/wp-content/uploads/ortigas/thumbs/ortigas-15_s.jpg" border="0" alt="Ortigas" width="75" height="75" /></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 title="Ortigas" src="http://www.ideyatech.com/wp-content/uploads/ortigas/thumbs/ortigas-16_s.jpg" border="0" alt="Ortigas" width="75" height="75" /></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 title="Ortigas" src="http://www.ideyatech.com/wp-content/uploads/ortigas/thumbs/ortigas-17_s.jpg" border="0" alt="Ortigas" width="75" height="75" /></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 title="Ortigas" src="http://www.ideyatech.com/wp-content/uploads/ortigas/thumbs/ortigas-18_s.jpg" border="0" alt="Ortigas" width="75" height="75" /></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 title="Ortigas" src="http://www.ideyatech.com/wp-content/uploads/ortigas/thumbs/ortigas-19_s.jpg" border="0" alt="Ortigas" width="75" height="75" /></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 title="Ortigas" src="http://www.ideyatech.com/wp-content/uploads/ortigas/thumbs/ortigas-20_s.jpg" border="0" alt="Ortigas" width="75" height="75" /></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 title="Ortigas" src="http://www.ideyatech.com/wp-content/uploads/ortigas/thumbs/ortigas-21_s.jpg" border="0" alt="Ortigas" width="75" height="75" /></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 title="Ortigas" src="http://www.ideyatech.com/wp-content/uploads/ortigas/thumbs/ortigas-22_s.jpg" border="0" alt="Ortigas" width="75" height="75" /></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 title="Ortigas" src="http://www.ideyatech.com/wp-content/uploads/ortigas/thumbs/ortigas-23_s.jpg" border="0" alt="Ortigas" width="75" height="75" /></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 title="Ortigas" src="http://www.ideyatech.com/wp-content/uploads/ortigas/thumbs/ortigas-24_s.jpg" border="0" alt="Ortigas" width="75" height="75" /></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 title="Ortigas" src="http://www.ideyatech.com/wp-content/uploads/ortigas/thumbs/ortigas-25_s.jpg" border="0" alt="Ortigas" width="75" height="75" /></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 title="Ortigas" src="http://www.ideyatech.com/wp-content/uploads/ortigas/thumbs/ortigas-26_s.jpg" border="0" alt="Ortigas" width="75" height="75" /></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 title="Ortigas" src="http://www.ideyatech.com/wp-content/uploads/ortigas/thumbs/ortigas-27_s.jpg" border="0" alt="Ortigas" width="75" height="75" /></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 title="Ortigas" src="http://www.ideyatech.com/wp-content/uploads/ortigas/thumbs/ortigas-28_s.jpg" border="0" alt="Ortigas" width="75" height="75" /></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 title="Ortigas" src="http://www.ideyatech.com/wp-content/uploads/ortigas/thumbs/ortigas-29_s.jpg" border="0" alt="Ortigas" width="75" height="75" /></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 title="Ortigas" src="http://www.ideyatech.com/wp-content/uploads/ortigas/thumbs/ortigas-30_s.jpg" border="0" alt="Ortigas" width="75" height="75" /></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 title="Ortigas" src="http://www.ideyatech.com/wp-content/uploads/ortigas/thumbs/ortigas-31_s.jpg" border="0" alt="Ortigas" width="75" height="75" /></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 title="Ortigas" src="http://www.ideyatech.com/wp-content/uploads/ortigas/thumbs/ortigas-32_s.jpg" border="0" alt="Ortigas" width="75" height="75" /></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 title="Ortigas" src="http://www.ideyatech.com/wp-content/uploads/ortigas/thumbs/ortigas-33_s.jpg" border="0" alt="Ortigas" width="75" height="75" /></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 title="Ortigas" src="http://www.ideyatech.com/wp-content/uploads/ortigas/thumbs/ortigas-34_s.jpg" border="0" alt="Ortigas" width="75" height="75" /></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 title="Ortigas" src="http://www.ideyatech.com/wp-content/uploads/ortigas/thumbs/ortigas-35_s.jpg" border="0" alt="Ortigas" width="75" height="75" /></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 title="Ortigas" src="http://www.ideyatech.com/wp-content/uploads/ortigas/thumbs/ortigas-36_s.jpg" border="0" alt="Ortigas" width="75" height="75" /></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 title="Ortigas" src="http://www.ideyatech.com/wp-content/uploads/ortigas/thumbs/ortigas-37_s.jpg" border="0" alt="Ortigas" width="75" height="75" /></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 title="Ortigas" src="http://www.ideyatech.com/wp-content/uploads/ortigas/thumbs/ortigas-38_s.jpg" border="0" alt="Ortigas" width="75" height="75" /></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 title="Ortigas" src="http://www.ideyatech.com/wp-content/uploads/ortigas/thumbs/ortigas-39_s.jpg" border="0" alt="Ortigas" width="75" height="75" /></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 title="Ortigas" src="http://www.ideyatech.com/wp-content/uploads/ortigas/thumbs/ortigas-40_s.jpg" border="0" alt="Ortigas" width="75" height="75" /></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>
<p><i>If you want to know more about Ideyatech, you can find more information on our <a href="http://www.ideyatech.com/company/">company</a> page.</i></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]]></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 class="alignright" src="http://www.ideyatech.com/wp-content/uploads/open-tides.jpg" alt="Open-tides. Java Outsourcing Solution" title="Open-tides. Java Outsourcing Solution" width="179" height="65" /></p>
<p>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><img class="alignright" src="http://www.ideyatech.com/wp-content/uploads/2009/01/saas-implementation.png" alt="Integrated data management and delivery should figure in SaaS implementation" title="Integrated data management and delivery should figure in SaaS implementation" width="200" height="200" /></p>
<p>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[Corporate News]]></category>

		<category><![CDATA[Events]]></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]]></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[About Us]]></category>

		<category><![CDATA[Corporate News]]></category>

		<category><![CDATA[Events]]></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[<div class="thumbnail"><img class="alignleft" src="http://www.ideyatech.com/wp-content/uploads/thumbs/first-year-anniversary" alt="Celebrating Ideyatech Success" title="Celebrating Ideyatech Success" /></div>

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 17 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 \" src="http://www.ideyatech.com/wp-content/uploads/2008/10/pa210112_2-300x225.jpg" alt="Allan\'s Report" width="300" height="225" /></p>
<p><i>If you want to know more about Ideyatech, you can find more information on our <a href="http://www.ideyatech.com/company/">company</a> page.</i></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[About Us]]></category>

		<category><![CDATA[Corporate News]]></category>

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

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

		<guid isPermaLink="false">http://www.ideyatech.com/?p=197</guid>
		<description><![CDATA[<div class="thumbnail"><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" /></div>

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>
<p><i>If you want to know more about Ideyatech, you can find more information on our <a href="http://www.ideyatech.com/company/">company</a> page.</i></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[About Us]]></category>

		<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[<div class="thumbnail"><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" /></div>

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><strong>Overall Business Environment</strong></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><strong>IT Infrastructure</strong></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><strong>Human Capital</strong></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><strong>Support for IT Developments</strong></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>
<p><i>If you want to know more about Ideyatech, you can find more information on our <a href="http://www.ideyatech.com/company/">company</a> page.</i></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]]></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[About Us]]></category>

		<category><![CDATA[Corporate News]]></category>

		<category><![CDATA[Idea Center]]></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[<div class="thumbnail"><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 " /></div>

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>
<p><i>If you want to know more about Ideyatech, you can find more information on our <a href="http://www.ideyatech.com/company/">company</a> page.</i></p>
]]></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>
	</channel>
</rss>
