<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>LAMP with ·dotmanila</title>
	<atom:link href="http://dotmanila.com/blog/feed/" rel="self" type="application/rss+xml" />
	<link>http://dotmanila.com/blog</link>
	<description>Linux, Apache, PHP, MySQL Musings</description>
	<lastBuildDate>Wed, 01 Feb 2012 23:32:54 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.3.1</generator>
		<item>
		<title>Promote a MySQL Slave as Master with Zero Downtime</title>
		<link>http://dotmanila.com/blog/2012/02/promote-a-mysql-slave-as-master-with-zero-downtime/</link>
		<comments>http://dotmanila.com/blog/2012/02/promote-a-mysql-slave-as-master-with-zero-downtime/#comments</comments>
		<pubDate>Wed, 01 Feb 2012 23:32:54 +0000</pubDate>
		<dc:creator>jervin</dc:creator>
				<category><![CDATA[Linux]]></category>
		<category><![CDATA[MySQL]]></category>
		<category><![CDATA[replication]]></category>

		<guid isPermaLink="false">http://dotmanila.com/blog/?p=267</guid>
		<description><![CDATA[Whether you are upgrading, decommissioning or putting your current master server in maintenance &#8211; here&#8217;s a quick howto on promoting your slave server as new master for your application writes. This instructions (for my notes and the benefit of the researching readers) covers especially if you have multiple slaves attached to the master. Let&#8217;s assume that your [...]]]></description>
			<content:encoded><![CDATA[<p>Whether you are upgrading, decommissioning or putting your current master server in maintenance &#8211; here&#8217;s a quick howto on promoting your slave server as new master for your application writes. This instructions (for my notes and the benefit of the researching readers) covers especially if you have multiple slaves attached to the master. Let&#8217;s assume that your current active master is host A and the host you&#8217;d like to promote is host B.</p>
<ol>
<li><code>STOP SLAVE;</code> on all slaves including <strong>B</strong> that are attached to <strong>A</strong> directly.</li>
<li>Make sure that <code>log_slave_updates</code> and <code>bin_log</code> is <strong>ON</strong> on <strong>B</strong>.</li>
<li>If you are not taking <strong>A</strong> out of rotation and planning to switch back to it later as your master, you can configure it as slave of <strong>B</strong> forming a master-master pair. Simply take the <code>SHOW MASTER STATUS;</code> coordinates from <strong>B</strong> and use it to <code>CHANGE MASTER TO</code> for <strong>A</strong>.</li>
<li>Save <code>SHOW MASTER STATUS;</code> output from <strong>A</strong>.</li>
<li>Start replication on all the slaves that are attach to <strong>A</strong> again, but only until the coordinates you get from #3 using the syntax <code>START SLAVE UNTIL MASTER_LOG_FILE=&lt;log_file&gt;, MASTER_LOG_POS=&lt;log_pos&gt;</code>. This ensures that all slaves are caught up at exactly the same position so you can safely point them to replicate later to <strong>B</strong>.</li>
<li>Once all slaves have caught up on the same coordinates, now its time to reconfigure the rest of the slaves except <strong>B</strong> to replicate from <strong>B</strong>. Using the <code>SHOW MASTER STATUS;</code> coordinates from <strong>B</strong>, execute a <code>CHANGE MASTER TO MASTER_HOST=B ...</code></li>
<li>Now its time to fetch the remaining events from <strong>A</strong> to <strong>B</strong>, on <strong>B</strong>, <code>STOP SLAVE;</code> then <code>START SLAVE;</code> again, this time replication will retrieve all events since the coordinates we stopped at #4.</li>
<li>Once <strong>B</strong> and its slaves has caught up on replication, you can now point your application to send writes to <strong>B</strong>.</li>
<li>Lastly if you are taking <strong>A</strong> out of rotation but keeping it online, <code>RESET SLAVE;</code> on <strong>B</strong> after <code>Exec_Master_Log_Pos</code> and <code>Read_Master_Log_Pos</code> on <strong>B</strong> have stopped on the same position so that no further writes from <strong>A</strong> is replicated to <strong>B</strong>.</li>
</ol>
<p>Did I miss anything? Of course &#8211; not all failovers are the same, this guide is meant as an overview and must be reviewed to match your situation always. Comments welcome! <img src='http://dotmanila.com/blog/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' /> </p>
]]></content:encoded>
			<wfw:commentRss>http://dotmanila.com/blog/2012/02/promote-a-mysql-slave-as-master-with-zero-downtime/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Anaconda Invalid Software RAID Metadata Version on Fedora 16</title>
		<link>http://dotmanila.com/blog/2012/01/anaconda-invalid-software-raid-metadata-version-on-fedora-16/</link>
		<comments>http://dotmanila.com/blog/2012/01/anaconda-invalid-software-raid-metadata-version-on-fedora-16/#comments</comments>
		<pubDate>Sat, 21 Jan 2012 14:58:52 +0000</pubDate>
		<dc:creator>jervin</dc:creator>
				<category><![CDATA[Linux]]></category>
		<category><![CDATA[Networking]]></category>
		<category><![CDATA[Open Source]]></category>
		<category><![CDATA[anaconda]]></category>
		<category><![CDATA[fedora]]></category>
		<category><![CDATA[software raid]]></category>

		<guid isPermaLink="false">http://dotmanila.com/blog/?p=261</guid>
		<description><![CDATA[In case you are upgrading to Fedora 16 and trying to use a software RAID for the /boot partition, at some point Anaconda is bound to complain that the RAID metadata version is invalid. Well this is a known bug and a workaround is available from this bug report. In my case if I just [...]]]></description>
			<content:encoded><![CDATA[<p>In case you are upgrading to Fedora 16 and trying to use a software RAID for the /boot partition, at some point Anaconda is bound to complain that the RAID metadata version is invalid. Well this is a known bug and a workaround is available from this <a href="https://bugzilla.redhat.com/show_bug.cgi?id=750480">bug report</a>.</p>
<p>In my case if I just specify the &#8220;updates&#8221; boot option, Anaconda will try to automatically configure networking &#8211; too bad if you don not have DHCP available. However, if you specify an alternative install method to Anaconda, it will ask you to manually configure your network, in this case you will be able ti use the updates image as well. In short, you just have to specify something like this on your boot options:</p>
<p><code>repo=http://mirror.steadfast.net/fedora/releases/16/Fedora/x86_64/os/ updates=http://dlehman.fedorapeople.org/updates/updates-750480.3.img</code></p>
<p>The only downside is that, obviously, your install media will be over the network. If you have a slow connection then that&#8217;s another story. Do you know any workaround?</p>
]]></content:encoded>
			<wfw:commentRss>http://dotmanila.com/blog/2012/01/anaconda-invalid-software-raid-metadata-version-on-fedora-16/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Where&#8217;s My PHP Debug Symbols?</title>
		<link>http://dotmanila.com/blog/2012/01/wheres-php-debug-symbols/</link>
		<comments>http://dotmanila.com/blog/2012/01/wheres-php-debug-symbols/#comments</comments>
		<pubDate>Sun, 01 Jan 2012 13:52:19 +0000</pubDate>
		<dc:creator>jervin</dc:creator>
				<category><![CDATA[Linux]]></category>
		<category><![CDATA[PHP]]></category>

		<guid isPermaLink="false">http://dotmanila.com/blog/?p=258</guid>
		<description><![CDATA[While working on a PHP script recently when I stumble upon a nasty bug that leaves only a &#8220;Segmentation fault&#8221; while preparing statements with Zend_Db_Adapter_Mysqli. Attempting to gdb the same process only results in gibberish like below and nothing more. The problem is that, the PHP cli is a stripped binary and on CentOS (and [...]]]></description>
			<content:encoded><![CDATA[<p>While working on a PHP script recently when I stumble upon a <a href="https://bugs.php.net/bug.php?id=55414">nasty bug</a> that leaves only a &#8220;Segmentation fault&#8221; while preparing statements with Zend_Db_Adapter_Mysqli. Attempting to gdb the same process only results in gibberish like below and nothing more. The problem is that, the PHP cli is a stripped binary and on CentOS (and Fedora 14 at least with PHP 5.3.8) there is no debuginfo package to provide these symbols, you&#8217;ll have to compile PHP yourself to debug further.</p>
<p><code><br />
#19635 0x000000000046b13b in ?? ()<br />
#19636 0x000000000046b231 in ?? ()<br />
#19637 0x000000000046b13b in ?? ()<br />
#19638 0x000000000046b231 in ?? ()<br />
#19639 0x000000000046cb3f in ?? ()<br />
#19640 0x000000000047c76f in php_pcre_exec ()<br />
#19641 0x0000000000480d46 in php_pcre_replace_impl ()<br />
---Type to continue, or q to quit---<br />
#19642 0x0000000000481f0d in ?? ()<br />
#19643 0x0000000000482504 in ?? ()<br />
#19644 0x0000000000482a33 in ?? ()<br />
#19645 0x00000000005e8f19 in ?? ()<br />
#19646 0x00000000005e847b in execute ()<br />
#19647 0x00000000005c1395 in zend_execute_scripts ()<br />
#19648 0x0000000000571418 in php_execute_script ()<br />
#19649 0x000000000064b5a0 in ?? ()<br />
#19650 0x000000314821d994 in __libc_start_main () from /lib64/libc.so.6<br />
#19651 0x00000000004222b9 in _start ()<br />
</code></p>
<p>My appeal to the PHP package builders (CentOS/Fedora mainstream, RPMForge, Atomic) &#8211; please please please &#8211; include a debuginfo package on your repo <img src='http://dotmanila.com/blog/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' /> </p>
]]></content:encoded>
			<wfw:commentRss>http://dotmanila.com/blog/2012/01/wheres-php-debug-symbols/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Take Control of XtraBackup Backup Directory</title>
		<link>http://dotmanila.com/blog/2011/11/take-control-of-xtrabackup-backup-directory/</link>
		<comments>http://dotmanila.com/blog/2011/11/take-control-of-xtrabackup-backup-directory/#comments</comments>
		<pubDate>Thu, 24 Nov 2011 13:23:30 +0000</pubDate>
		<dc:creator>jervin</dc:creator>
				<category><![CDATA[Backups]]></category>
		<category><![CDATA[Linux]]></category>
		<category><![CDATA[MySQL]]></category>
		<category><![CDATA[backups]]></category>
		<category><![CDATA[xtrabackup]]></category>

		<guid isPermaLink="false">http://dotmanila.com/blog/?p=227</guid>
		<description><![CDATA[When designing you backup strategy which involves using XtraBackup, it is often part of the job to be able to rotate backups not to fill the disks and not be able to take further backups. However, sometimes I&#8217;ve seen people how they can do this when XtraBackup creates its own timestamped directory (by default). Well, [...]]]></description>
			<content:encoded><![CDATA[<p>When designing you backup strategy which involves using XtraBackup, it is often part of the job to be able to rotate backups not to fill the disks and not be able to take further backups. However, sometimes I&#8217;ve seen people how they can do this when XtraBackup creates its own timestamped directory (by default). Well, here&#8217;s two.</p>
<p>1. After the backup, find the latest backup set on the backup directory using bash or whichever scripting language you are using, by default the resulting directory for new backup sets takes this sample format &#8217;2010-03-13_02-42-44&#8242;. Below is how you can achieve this with bash</p>
<p><code>CB=$(ls -1 | egrep '^[0-9]{4}-[0-9]{2}-[0-9]{2}_[0-9]{2}-[0-9]{2}-[0-9]{2}$' | sort -n | head -n 1)</code></p>
<p>2. Use the &#8211;no-timestamp option of innobackupex to control the backup directories.</p>
<blockquote><p><code>--no-timestamp<br />
This option prevents creation of a time-stamped subdirectory of the<br />
BACKUP-ROOT-DIR given on the command line. When it is specified, the<br />
backup is done in BACKUP-ROOT-DIR instead.</code></p></blockquote>
<p>With this method, you will have to create the unique backup directories from your script, which in turn you would already know the resulting name you can use for prepare. You can easily generate one based on current date with the sample bash command below:</p>
<p><code>CURDATE=$(date +%Y-%m-%d)</code></p>
<p>This is only one essential part of a good backup procedure, I might blog on more. <img src='http://dotmanila.com/blog/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' /> </p>
]]></content:encoded>
			<wfw:commentRss>http://dotmanila.com/blog/2011/11/take-control-of-xtrabackup-backup-directory/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Intel 320 Series SSD and WD RAID10 (md) sysbench Results</title>
		<link>http://dotmanila.com/blog/2011/10/intel-320-series-ssd-and-wd-raid10-md-sysbench-results/</link>
		<comments>http://dotmanila.com/blog/2011/10/intel-320-series-ssd-and-wd-raid10-md-sysbench-results/#comments</comments>
		<pubDate>Wed, 12 Oct 2011 12:28:31 +0000</pubDate>
		<dc:creator>jervin</dc:creator>
				<category><![CDATA[Hardware]]></category>
		<category><![CDATA[fileio]]></category>
		<category><![CDATA[intel 320 series]]></category>
		<category><![CDATA[sysbench]]></category>
		<category><![CDATA[wester digital caviar]]></category>

		<guid isPermaLink="false">http://dotmanila.com/blog/?p=220</guid>
		<description><![CDATA[As mentioned on my previous post, I am moving out of a Dell R210 server to a new hardware with 4x Western Digital 500G Caviar Blue and Intel 320 Series 120G for my own personal research and testing. The four WD disks are configured in RAID10 with mdadm (aka software RAID) and the SSD as [...]]]></description>
			<content:encoded><![CDATA[<p>As mentioned on my <a href="http://dotmanila.com/blog/2011/10/sas-raid1-sysbench-fileio-with-2x500gb-disks/">previous post</a>, I am moving out of a Dell R210 server to a new hardware with 4x Western Digital 500G Caviar Blue and Intel 320 Series 120G for my own personal research and testing. The four WD disks are configured in RAID10 with mdadm (aka software RAID) and the SSD as standalone. Raw results can be found on my gists page <a href="https://gist.github.com/1281040">here</a> and <a href="https://gist.github.com/1281071">here</a>.</p>
<p><img class="alignnone" title="4xWD Caviar RAID10 (md)" src="http://dotmanila.com/static/sysbench-4xhdd-raid10-md.jpg" alt="" width="500" height="360" /></p>
<p><img class="alignnone" title="Intel 320 Series 120G SSD" src="http://dotmanila.com/static/sysbench-ssd.jpg" alt="" width="500" height="360" /></p>
]]></content:encoded>
			<wfw:commentRss>http://dotmanila.com/blog/2011/10/intel-320-series-ssd-and-wd-raid10-md-sysbench-results/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>SAS RAID1 sysbench fileio with 2x500GB Disks</title>
		<link>http://dotmanila.com/blog/2011/10/sas-raid1-sysbench-fileio-with-2x500gb-disks/</link>
		<comments>http://dotmanila.com/blog/2011/10/sas-raid1-sysbench-fileio-with-2x500gb-disks/#comments</comments>
		<pubDate>Wed, 12 Oct 2011 03:32:34 +0000</pubDate>
		<dc:creator>jervin</dc:creator>
				<category><![CDATA[Hardware]]></category>
		<category><![CDATA[fileio]]></category>
		<category><![CDATA[raid1]]></category>
		<category><![CDATA[sas]]></category>
		<category><![CDATA[sysbench]]></category>

		<guid isPermaLink="false">http://dotmanila.com/blog/?p=215</guid>
		<description><![CDATA[I am migrating to another server for my testing and this blog, but before I leave this server I decided to do a simple sysbench fileio test using 60G total file size. Raw information about the server and results can be found here. See the beautiful graph below.]]></description>
			<content:encoded><![CDATA[<p>I am migrating to another server for my testing and this blog, but before I leave this server I decided to do a simple sysbench fileio test using 60G total file size. Raw information about the server and results can be found <a href="https://gist.github.com/1274579" target="_blank">here</a>. See the beautiful graph below.</p>
<p><img class="alignnone" title="SAS RAID1 sysbench fileio Results" src="http://dotmanila.com/static/sysbench-sas-raid1.jpg" alt="" /></p>
]]></content:encoded>
			<wfw:commentRss>http://dotmanila.com/blog/2011/10/sas-raid1-sysbench-fileio-with-2x500gb-disks/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>Solr DataImportHandler Converts TINYINT to Boolean</title>
		<link>http://dotmanila.com/blog/2011/08/solr-dataimporthandler-converts-tinyint-to-boolean/</link>
		<comments>http://dotmanila.com/blog/2011/08/solr-dataimporthandler-converts-tinyint-to-boolean/#comments</comments>
		<pubDate>Sat, 13 Aug 2011 14:36:06 +0000</pubDate>
		<dc:creator>jervin</dc:creator>
				<category><![CDATA[MySQL]]></category>
		<category><![CDATA[Solr]]></category>

		<guid isPermaLink="false">http://dotmanila.com/blog/?p=189</guid>
		<description><![CDATA[When using Solr DataImportHandler with MySQL, the JDBC connection treats TINYINT(1) columns as BOOLEAN even if you have other values greater than. Most likely with a properly defined field of int type on your schema.xml you will get an error while indexing: SEVERE: java.lang.NumberFormatException: For input string: &#8220;true&#8221; This is a default behavior of Connector/J [...]]]></description>
			<content:encoded><![CDATA[<p>When using Solr DataImportHandler with MySQL, the JDBC connection treats TINYINT(1) columns as BOOLEAN even if you have other values greater than. Most likely with a properly defined field of int type on your schema.xml you will get an error while indexing:</p>
<blockquote><p>SEVERE: java.lang.NumberFormatException: For input string: &#8220;true&#8221;</p></blockquote>
<p>This is a default behavior of Connector/J on the property <strong>tinyInt1isBit</strong> documented <a href="http://dev.mysql.com/doc/refman/5.0/en/connector-j-reference-configuration-properties.html">here</a>. To fix this you should add <code>tinyInt1isBit=false</code> to your JDBC connection string.</p>
]]></content:encoded>
			<wfw:commentRss>http://dotmanila.com/blog/2011/08/solr-dataimporthandler-converts-tinyint-to-boolean/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>Puppet Certificate Verification Failed</title>
		<link>http://dotmanila.com/blog/2011/07/puppet-certificate-verification-failed/</link>
		<comments>http://dotmanila.com/blog/2011/07/puppet-certificate-verification-failed/#comments</comments>
		<pubDate>Tue, 05 Jul 2011 02:13:35 +0000</pubDate>
		<dc:creator>jervin</dc:creator>
				<category><![CDATA[Linux]]></category>
		<category><![CDATA[Open Source]]></category>
		<category><![CDATA[ntp]]></category>
		<category><![CDATA[puppet]]></category>
		<category><![CDATA[ssl]]></category>

		<guid isPermaLink="false">http://dotmanila.com/blog/?p=186</guid>
		<description><![CDATA[err: Could not retrieve catalog from remote server: certificate verify failed If you&#8217;re new to puppet, this error is a bit tricky to identify. Even after recreating the certificates on the client the error still persist. If this is the case, most likely is that time on your master and the client is different. Install [...]]]></description>
			<content:encoded><![CDATA[<blockquote><p>err: Could not retrieve catalog from remote server: certificate verify failed</p></blockquote>
<p>If you&#8217;re new to puppet, this error is a bit tricky to identify. Even after recreating the certificates on the client the error still persist. If this is the case, most likely is that time on your master and the client is different. Install and sync NTP &#8211; this should be a standard component for new servers anyway.</p>
]]></content:encoded>
			<wfw:commentRss>http://dotmanila.com/blog/2011/07/puppet-certificate-verification-failed/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>rdiff-backup User and Group Mapping</title>
		<link>http://dotmanila.com/blog/2011/06/rdiff-backup-user-and-group-mapping/</link>
		<comments>http://dotmanila.com/blog/2011/06/rdiff-backup-user-and-group-mapping/#comments</comments>
		<pubDate>Tue, 07 Jun 2011 10:56:20 +0000</pubDate>
		<dc:creator>jervin</dc:creator>
				<category><![CDATA[Backups]]></category>
		<category><![CDATA[BSD/Mac OSX]]></category>
		<category><![CDATA[Linux]]></category>
		<category><![CDATA[backups]]></category>
		<category><![CDATA[rdiff-backup]]></category>
		<category><![CDATA[rsync]]></category>

		<guid isPermaLink="false">http://dotmanila.com/blog/?p=182</guid>
		<description><![CDATA[rdiff-backup is a great tool for mirroring or backing up files locally and between remote servers. It is based on rsync and works on top of SSH. To this note, I recently encountered one caveat when using the &#8211;user-mapping-file and &#8211;group-mapping-file options. Because these options intends to map a source user/group to a destination user/group [...]]]></description>
			<content:encoded><![CDATA[<p>rdiff-backup is a great tool for mirroring or backing up files locally and between remote servers. It is based on rsync and works on top of SSH. To this note, I recently encountered one caveat when using the &#8211;user-mapping-file and &#8211;group-mapping-file options. Because these options intends to map a source user/group to a destination user/group it requires rdiff-backup to run on escalated privileges much as &#8220;chown&#8221; command would do.</p>
]]></content:encoded>
			<wfw:commentRss>http://dotmanila.com/blog/2011/06/rdiff-backup-user-and-group-mapping/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Philippines Open Source Communities</title>
		<link>http://dotmanila.com/blog/2011/02/philippines-open-source-communities/</link>
		<comments>http://dotmanila.com/blog/2011/02/philippines-open-source-communities/#comments</comments>
		<pubDate>Sun, 13 Feb 2011 00:28:11 +0000</pubDate>
		<dc:creator>jervin</dc:creator>
				<category><![CDATA[Open Source]]></category>
		<category><![CDATA[foss]]></category>
		<category><![CDATA[opensource]]></category>
		<category><![CDATA[philippines]]></category>

		<guid isPermaLink="false">http://dotmanila.com/blog/?p=179</guid>
		<description><![CDATA[I keep a list of groups, list and forums I regularly visit for information on the local open source scene and share them here: Mailings lists: Philippine Linux Users Group &#8211; http://lists.linux.org.ph/mailman/listinfo/plug LAMP Pilipinas &#8211; http://tech.groups.yahoo.com/group/LAMP-Pilipinas/ Asterisk Users Group &#8211; http://tech.groups.yahoo.com/group/asterisk-ph/ Ruby Users Group &#8211; http://groups.google.com/group/ruby-phil?pli=1 Pinoy Java Developers &#8211; http://tech.groups.yahoo.com/group/pinoyjug/ Forums: PHP Users Group [...]]]></description>
			<content:encoded><![CDATA[<p>I keep a list of groups, list and forums I regularly visit for information on the local open source scene and share them here:</p>
<p>Mailings lists:</p>
<ul>
<li>Philippine Linux Users Group &#8211; <a href="http://lists.linux.org.ph/mailman/listinfo/plug">http://lists.linux.org.ph/mailman/listinfo/plug</a></li>
<li>LAMP Pilipinas &#8211; <a href="http://tech.groups.yahoo.com/group/LAMP-Pilipinas/">http://tech.groups.yahoo.com/group/LAMP-Pilipinas/</a></li>
<li>Asterisk Users Group &#8211; <a href="http://tech.groups.yahoo.com/group/asterisk-ph/">http://tech.groups.yahoo.com/group/asterisk-ph/</a></li>
<li>Ruby Users Group &#8211; <a href="http://groups.google.com/group/ruby-phil?pli=1">http://groups.google.com/group/ruby-phil?pli=1</a></li>
<li>Pinoy Java Developers &#8211; <a href="http://tech.groups.yahoo.com/group/pinoyjug/">http://tech.groups.yahoo.com/group/pinoyjug/</a></li>
</ul>
<p>Forums:</p>
<ul>
<li>PHP Users Group Philippines &#8211; <a href="http://phpugph.com/talk">http://phpugph.com/talk</a></li>
</ul>
<p>Groups:</p>
<ul>
<li>Computer Professionals Union &#8211; <a href="http://www.cp-union.com/cpunion/">http://www.cp-union.com/cpunion/</a></li>
<li>Drupal Users Group &#8211; <a href="http://groups.drupal.org/philippines">http://groups.drupal.org/philippines</a></li>
<li>Philippines Asterisk User Group (site appears to be defunct but Yahoo Group seems active) &#8211; <a href="http://asterisk.org.ph/">http://asterisk.org.ph/</a></li>
</ul>
<p>Misc:</p>
<ul>
<li>Philippines Software Freedom Day &#8211; <a href="http://sfd.ph">http://sfd.ph</a></li>
<li>8LayerTech Events &#8211; <a href="http://www.8layertech.com/index.php?start=&amp;request=1&amp;target=news">http://www.8layertech.com/index.php?start=&amp;request=1&amp;target=news</a></li>
</ul>
<p>If you&#8217;re in the Philippines, what do you regularly check in to?</p>
]]></content:encoded>
			<wfw:commentRss>http://dotmanila.com/blog/2011/02/philippines-open-source-communities/feed/</wfw:commentRss>
		<slash:comments>4</slash:comments>
		</item>
	</channel>
</rss>

