<?xml version='1.0' encoding='UTF-8'?><rss xmlns:atom="http://www.w3.org/2005/Atom" xmlns:openSearch="http://a9.com/-/spec/opensearchrss/1.0/" xmlns:blogger="http://schemas.google.com/blogger/2008" xmlns:georss="http://www.georss.org/georss" xmlns:gd="http://schemas.google.com/g/2005" xmlns:thr="http://purl.org/syndication/thread/1.0" version="2.0"><channel><atom:id>tag:blogger.com,1999:blog-157854688600865238</atom:id><lastBuildDate>Fri, 01 Nov 2024 10:39:12 +0000</lastBuildDate><category>php</category><category>mongodb</category><category>mongo</category><category>zend framework</category><category>linux</category><category>linux programming</category><category>yum repos</category><category>mysql</category><category>php profiling</category><category>programming bad practices</category><category>yum</category><category>cloud computing</category><category>database administration</category><category>subversion</category><category>system administration</category><category>zend framework 2</category><category>backend programming</category><category>centos</category><category>errors</category><category>php errors</category><category>systems administration</category><category>web services</category><category>yum install</category><category>RPM</category><category>application testing</category><category>code loops</category><category>computer science</category><category>distributed computing</category><category>elasticsearch</category><category>exceptions</category><category>nosql databases</category><category>performance optimization</category><category>php exceptions</category><category>phpstorm</category><category>xdebug</category><category>zend framework modules</category><category>apache</category><category>caching</category><category>command line</category><category>continuous integration</category><category>data center automation</category><category>development</category><category>ecommerce</category><category>event-driven php</category><category>jenkins</category><category>linux desktop</category><category>mariadb</category><category>memcache</category><category>memcached</category><category>phpunit</category><category>replication</category><category>rhel</category><category>rhel repos</category><category>rpm repos</category><category>selinux</category><category>shrew soft</category><category>svn</category><category>ubuntu</category><category>unit testing</category><category>url routes</category><category>varnish</category><category>vpn</category><category>xdebug_profile</category><category>yum errors</category><category>zf2</category><category>404</category><category>adjacency list</category><category>barries</category><category>computer trivia</category><category>configuration management</category><category>cookies</category><category>data hierarchy</category><category>disk I/O</category><category>e-commerce platform</category><category>edison</category><category>failure</category><category>fastestmirror plugin</category><category>fedora</category><category>flow control constructs</category><category>front-end page optimization</category><category>functional testing</category><category>git</category><category>hash lookup</category><category>huge loops</category><category>ignore files</category><category>improve system performance</category><category>inotify</category><category>input validation</category><category>internet explorer 9</category><category>ios</category><category>ios development</category><category>iterative external resource calls</category><category>java</category><category>javascript</category><category>jquery</category><category>js</category><category>linkedin api</category><category>mac</category><category>memory leaks</category><category>mobile applications development</category><category>mongo master/slave</category><category>mongodb replication</category><category>monit</category><category>monitoring</category><category>mount</category><category>multi-processing</category><category>multi-threading</category><category>nested loops</category><category>network administration</category><category>noatime</category><category>oauth</category><category>online shop</category><category>opcode caching</category><category>os x</category><category>page speed</category><category>paypal</category><category>paypal issues</category><category>pear</category><category>performance testing</category><category>performance testing tools</category><category>php debugging</category><category>php editor</category><category>php extensions</category><category>php optimization</category><category>php server variables</category><category>process monitoring</category><category>program errors</category><category>program exceptions</category><category>puppet</category><category>qa testing</category><category>quality assurance</category><category>quotes</category><category>r3</category><category>redirects</category><category>remote</category><category>replica sets</category><category>request_uri</category><category>rest</category><category>rest api</category><category>reverse proxy</category><category>rewrite rule</category><category>ruby</category><category>samba</category><category>script_uri</category><category>session</category><category>share</category><category>shell functions</category><category>shell scripting</category><category>shopping cart</category><category>soa</category><category>software testing</category><category>sql</category><category>ssh</category><category>state-based attacks</category><category>success</category><category>swift development</category><category>testing</category><category>unyielding loops</category><category>up2date repos</category><category>url jumping</category><category>virtual box</category><category>web application disaster scenario</category><category>web security</category><category>xcache</category><category>xcode 6</category><category>xdebugtoolkit</category><title>Walk Through The Cloud</title><description>Articles in this blog contain theories, musings, work and actual experiences of RUM, an internet and cloud computing technologist, as he ventures the realm of information technology,  computer science, systems administration, and statistics.</description><link>http://ulaptech.blogspot.com/</link><managingEditor>noreply@blogger.com (Unknown)</managingEditor><generator>Blogger</generator><openSearch:totalResults>125</openSearch:totalResults><openSearch:startIndex>1</openSearch:startIndex><openSearch:itemsPerPage>25</openSearch:itemsPerPage><item><guid isPermaLink="false">tag:blogger.com,1999:blog-157854688600865238.post-1203186726431844782</guid><pubDate>Wed, 17 Dec 2014 16:16:00 +0000</pubDate><atom:updated>2014-12-17T08:17:20.597-08:00</atom:updated><category domain="http://www.blogger.com/atom/ns#">ios</category><category domain="http://www.blogger.com/atom/ns#">ios development</category><category domain="http://www.blogger.com/atom/ns#">mobile applications development</category><category domain="http://www.blogger.com/atom/ns#">swift development</category><category domain="http://www.blogger.com/atom/ns#">xcode 6</category><title>Swift Shell / Swift Console</title><description>Very much like Python, including its syntax, Swift programming language actually has a shell. Isn&#39;t that cool?&lt;br /&gt;
&lt;br /&gt;
From your terminal, type:&lt;br /&gt;
&lt;br /&gt;
# xcrun swift&lt;br /&gt;
&lt;br /&gt;
You will then see&lt;br /&gt;
&lt;br /&gt;
Welcome to Swift! &amp;nbsp;Type :help for assistance.&lt;br /&gt;
&amp;nbsp; 1&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Enjoy!</description><link>http://ulaptech.blogspot.com/2014/12/swift-shell-swift-console.html</link><author>noreply@blogger.com (Unknown)</author><thr:total>0</thr:total></item><item><guid isPermaLink="false">tag:blogger.com,1999:blog-157854688600865238.post-5548457024420579041</guid><pubDate>Thu, 18 Sep 2014 15:02:00 +0000</pubDate><atom:updated>2014-09-18T08:03:47.235-07:00</atom:updated><title>Install MongooseIM on Ubuntu</title><description>Ever wondered what awesome technology is used behind WhatsApp which was sold at $10B? It&#39;s MongooseIM. And here&#39;s how to get you started using it, in Ubuntu..&lt;br /&gt;
&lt;br /&gt;
Install the Pre-Built Package:&lt;br /&gt;
&lt;br /&gt;
&lt;pre style=&quot;background: black; color: white; padding: 5px;&quot;&gt;wget http://packages.erlang-solutions.com/site/esl/mongooseim/FLAVOUR_1_main/mongooseim_1.4.0-1~ubuntu~trusty_amd64.deb

dpkg -i mongooseim_1.4.0-1~ubuntu~trusty_amd64.deb
&lt;/pre&gt;
&lt;br /&gt;
Configure it&lt;br /&gt;
&lt;br /&gt;
&lt;pre style=&quot;background: black; color: white; padding: 5px;&quot;&gt;cd /usr/lib/mongooseim/etc
vim ejabberd.cfg
&lt;/pre&gt;
&lt;br /&gt;
Run it&lt;br /&gt;
&lt;br /&gt;
&lt;pre style=&quot;background: black; color: white; padding: 5px;&quot;&gt;mongooseimctl live
&lt;/pre&gt;
</description><link>http://ulaptech.blogspot.com/2014/09/install-mongooseim-on-ubuntu.html</link><author>noreply@blogger.com (Unknown)</author><thr:total>0</thr:total></item><item><guid isPermaLink="false">tag:blogger.com,1999:blog-157854688600865238.post-7057423900935897646</guid><pubDate>Mon, 30 Jun 2014 14:03:00 +0000</pubDate><atom:updated>2014-06-30T07:04:40.675-07:00</atom:updated><category domain="http://www.blogger.com/atom/ns#">linux</category><category domain="http://www.blogger.com/atom/ns#">linux programming</category><title>Linux: Deleted a File and Its NOT Freeing Up Space?</title><description>&lt;br /&gt;
There is only one reason for it - the file is held by a process.&lt;br /&gt;
&lt;br /&gt;
To fix the issue:&lt;br /&gt;
&lt;br /&gt;
1) Find which process is holding it.&lt;br /&gt;
&lt;br /&gt;
Check open files and return the process using an unlinked file (deleted file)&lt;br /&gt;
# lsof&amp;nbsp;+L1&lt;br /&gt;
&lt;br /&gt;
2) Kill the process&lt;br /&gt;
&lt;br /&gt;
# kill -9 &amp;lt;pid&amp;gt;&lt;br /&gt;
&lt;br /&gt;
For a graceful kill but can/may take a while.&lt;br /&gt;
&lt;br /&gt;
# kill -15 &amp;lt;pid&amp;gt;</description><link>http://ulaptech.blogspot.com/2014/06/linux-deleted-file-and-its-yielding.html</link><author>noreply@blogger.com (Unknown)</author><thr:total>0</thr:total></item><item><guid isPermaLink="false">tag:blogger.com,1999:blog-157854688600865238.post-289135200704056363</guid><pubDate>Fri, 30 May 2014 19:54:00 +0000</pubDate><atom:updated>2014-05-30T12:54:38.227-07:00</atom:updated><category domain="http://www.blogger.com/atom/ns#">paypal</category><category domain="http://www.blogger.com/atom/ns#">paypal issues</category><title>PayPal: You must specify valid values for the A3, P3, and T3 parameters </title><description>&lt;br /&gt;
When you the error &quot;You must specify valid values for the A3, P3, and T3 parameters&quot; it means that the values you sent to PayPal are invalid.&lt;br /&gt;
&lt;br /&gt;
It could mean that,&lt;br /&gt;
&lt;br /&gt;
1) A3 is not a number&lt;br /&gt;
2) P3 is beyond the acceptable limits&lt;br /&gt;
3) T3 is not valid.&lt;br /&gt;
&lt;br /&gt;
Usually, the problem is a combination of P3 and T3 issue.&lt;br /&gt;
&lt;br /&gt;
In my case, it was sending more than 24 mos for P3. The solution is to convert T3=M to T3=Y and change the P3 to rounded up years, so P3=3. This solve the issue. I wasn&#39;t able to find any documentation associated with the acceptable ranges and user inputs to these 3 required parameters for integration recurring payment button.&lt;br /&gt;
&lt;br /&gt;</description><link>http://ulaptech.blogspot.com/2014/05/paypal-you-must-specify-valid-values.html</link><author>noreply@blogger.com (Unknown)</author><thr:total>0</thr:total></item><item><guid isPermaLink="false">tag:blogger.com,1999:blog-157854688600865238.post-3973175257039133060</guid><pubDate>Mon, 19 May 2014 06:33:00 +0000</pubDate><atom:updated>2014-05-18T23:49:29.465-07:00</atom:updated><category domain="http://www.blogger.com/atom/ns#">continuous integration</category><category domain="http://www.blogger.com/atom/ns#">jenkins</category><category domain="http://www.blogger.com/atom/ns#">ubuntu</category><title>Install Jenkins on Ubuntu/Debian</title><description>&lt;pre style=&quot;font-family: &#39;Courier New&#39;, Courier, monospace; font-size: 13px; line-height: 1.3; overflow: auto; padding: 0px;&quot;&gt;If you wish to install Jenkins (fork of Hudson, maintained by original developers), do the following:&lt;/pre&gt;
&lt;pre style=&quot;font-family: &#39;Courier New&#39;, Courier, monospace; font-size: 13px; line-height: 1.3; overflow: auto; padding: 0px;&quot;&gt;&lt;/pre&gt;
&lt;pre style=&quot;font-family: &#39;Courier New&#39;, Courier, monospace; font-size: 13px; line-height: 1.3; overflow: auto; padding: 0px;&quot;&gt;sudo -i&lt;/pre&gt;
&lt;pre style=&quot;font-family: &#39;Courier New&#39;, Courier, monospace; font-size: 13px; line-height: 1.3; overflow: auto; padding: 0px;&quot;&gt;wget -q -O - http://pkg.jenkins-ci.org/debian/jenkins-ci.org.key | sudo apt-key add -&lt;/pre&gt;
&lt;pre style=&quot;font-family: &#39;Courier New&#39;, Courier, monospace; font-size: 13px; line-height: 1.3; overflow: auto; padding: 0px;&quot;&gt;&lt;pre style=&quot;font-family: &#39;Courier New&#39;, Courier, monospace; line-height: 1.3; overflow: auto; padding: 0px;&quot;&gt;sh -c &#39;echo deb http://pkg.jenkins-ci.org/debian binary/ &amp;gt; /etc/apt/sources.list.d/jenkins.list&#39;&lt;/pre&gt;
&lt;pre style=&quot;font-family: &#39;Courier New&#39;, Courier, monospace; line-height: 1.3; overflow: auto; padding: 0px;&quot;&gt;apt-get update&lt;/pre&gt;
&lt;pre style=&quot;font-family: &#39;Courier New&#39;, Courier, monospace; line-height: 1.3; overflow: auto; padding: 0px;&quot;&gt;apt-get install jenkins&lt;/pre&gt;
&lt;pre style=&quot;font-family: &#39;Courier New&#39;, Courier, monospace; line-height: 1.3; overflow: auto; padding: 0px;&quot;&gt;&lt;/pre&gt;
&lt;pre style=&quot;font-family: &#39;Courier New&#39;, Courier, monospace; line-height: 1.3; overflow: auto; padding: 0px;&quot;&gt;&lt;/pre&gt;
&lt;pre style=&quot;font-family: &#39;Courier New&#39;, Courier, monospace; line-height: 1.3; overflow: auto; padding: 0px;&quot;&gt;Note: make sure JAVA is installed.&lt;/pre&gt;
&lt;/pre&gt;
</description><link>http://ulaptech.blogspot.com/2014/05/install-jenkins-on-ubuntudebian.html</link><author>noreply@blogger.com (Unknown)</author><thr:total>0</thr:total></item><item><guid isPermaLink="false">tag:blogger.com,1999:blog-157854688600865238.post-3155587315375801485</guid><pubDate>Mon, 19 May 2014 05:17:00 +0000</pubDate><atom:updated>2014-05-18T22:28:44.756-07:00</atom:updated><category domain="http://www.blogger.com/atom/ns#">elasticsearch</category><category domain="http://www.blogger.com/atom/ns#">ubuntu</category><title>Install ElasticSearch 1.0.x on Ubuntu/Debian</title><description>ES released an apt-get repo for ElasticSearch. It is the recommended package-driven deployment.&lt;br /&gt;
&lt;br /&gt;
&lt;pre class=&quot;prettyprint lang=js&quot; style=&quot;background-color: #f0f0f0; border-bottom-right-radius: 5px; border-left-color: rgb(116, 183, 63); border-left-width: 3px; border-style: none none none solid; border-top-right-radius: 5px; box-sizing: border-box; margin-bottom: 15px; margin-top: 1em; overflow: auto; padding: 8px 10px 8px 18px; word-wrap: break-word;&quot;&gt;&lt;span class=&quot;pln&quot; style=&quot;box-sizing: border-box; color: black; font-family: Monaco, &#39;DejaVu Sans Mono&#39;, &#39;Bitstream Vera Sans Mono&#39;, &#39;Lucida Console&#39;, monospace !important; font-size: 14px; line-height: 23px; white-space: pre-wrap;&quot;&gt;sudo -i
apt-get install openjdk-7-jre-headless -y
wget &lt;/span&gt;&lt;span class=&quot;pun&quot; style=&quot;box-sizing: border-box; color: #666600; font-family: Monaco, &#39;DejaVu Sans Mono&#39;, &#39;Bitstream Vera Sans Mono&#39;, &#39;Lucida Console&#39;, monospace !important; font-size: 14px; line-height: 23px; white-space: pre-wrap;&quot;&gt;-&lt;/span&gt;&lt;span class=&quot;pln&quot; style=&quot;box-sizing: border-box; color: black; font-family: Monaco, &#39;DejaVu Sans Mono&#39;, &#39;Bitstream Vera Sans Mono&#39;, &#39;Lucida Console&#39;, monospace !important; font-size: 14px; line-height: 23px; white-space: pre-wrap;&quot;&gt;O &lt;/span&gt;&lt;span class=&quot;pun&quot; style=&quot;box-sizing: border-box; color: #666600; font-family: Monaco, &#39;DejaVu Sans Mono&#39;, &#39;Bitstream Vera Sans Mono&#39;, &#39;Lucida Console&#39;, monospace !important; font-size: 14px; line-height: 23px; white-space: pre-wrap;&quot;&gt;-&lt;/span&gt;&lt;span class=&quot;pln&quot; style=&quot;box-sizing: border-box; color: black; font-family: Monaco, &#39;DejaVu Sans Mono&#39;, &#39;Bitstream Vera Sans Mono&#39;, &#39;Lucida Console&#39;, monospace !important; font-size: 14px; line-height: 23px; white-space: pre-wrap;&quot;&gt; http&lt;/span&gt;&lt;span class=&quot;pun&quot; style=&quot;box-sizing: border-box; color: #666600; font-family: Monaco, &#39;DejaVu Sans Mono&#39;, &#39;Bitstream Vera Sans Mono&#39;, &#39;Lucida Console&#39;, monospace !important; font-size: 14px; line-height: 23px; white-space: pre-wrap;&quot;&gt;:&lt;/span&gt;&lt;span class=&quot;com&quot; style=&quot;box-sizing: border-box; color: #880000; font-family: Monaco, &#39;DejaVu Sans Mono&#39;, &#39;Bitstream Vera Sans Mono&#39;, &#39;Lucida Console&#39;, monospace !important; font-size: 14px; line-height: 23px; white-space: pre-wrap;&quot;&gt;//packages.elasticsearch.org/GPG-KEY-elasticsearch | apt-key add -

vim &lt;/span&gt;&lt;span style=&quot;background-color: #eeeeee;&quot;&gt;&lt;span style=&quot;color: #74b73f; font-family: Monaco, DejaVu Sans Mono, Bitstream Vera Sans Mono, Lucida Console, monospace;&quot;&gt;&lt;span style=&quot;font-size: 14px; line-height: 17.804800033569336px; white-space: pre-wrap;&quot;&gt;/etc/apt/sources.list

#Append the following, then save

deb http://packages.elasticsearch.org/elasticsearch/1.0/debian stable main
&lt;/span&gt;&lt;/span&gt;&lt;span style=&quot;font-family: Consolas, Menlo, Monaco, Lucida Console, Liberation Mono, DejaVu Sans Mono, Bitstream Vera Sans Mono, Courier New, monospace, serif;&quot;&gt;&lt;span style=&quot;font-size: 14px; line-height: 17.804800033569336px; white-space: pre-wrap;&quot;&gt;


apt-get update
&lt;/span&gt;&lt;/span&gt;&lt;span style=&quot;font-family: Monaco, DejaVu Sans Mono, Bitstream Vera Sans Mono, Lucida Console, monospace;&quot;&gt;&lt;span style=&quot;font-size: 14px; line-height: 17.804800033569336px; white-space: pre-wrap;&quot;&gt;apt-get install elasticsearch


service elasticsearch start&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/pre&gt;
</description><link>http://ulaptech.blogspot.com/2014/05/install-elasticsearch-10x-on.html</link><author>noreply@blogger.com (Unknown)</author><thr:total>0</thr:total></item><item><guid isPermaLink="false">tag:blogger.com,1999:blog-157854688600865238.post-1572062880355032368</guid><pubDate>Thu, 15 May 2014 19:58:00 +0000</pubDate><atom:updated>2014-05-22T08:23:08.412-07:00</atom:updated><category domain="http://www.blogger.com/atom/ns#">cloud computing</category><category domain="http://www.blogger.com/atom/ns#">elasticsearch</category><title>Yum Install ElasticSearch 1.x</title><description>Note: Works for CentOS/RHEL/Fedora.&lt;br /&gt;
&lt;div&gt;
&lt;pre class=&quot;prettyprint lang=js&quot; style=&quot;background-color: #f0f0f0; border-bottom-right-radius: 5px; border-left-color: rgb(116, 183, 63); border-left-width: 3px; border-style: none none none solid; border-top-right-radius: 5px; box-sizing: border-box; color: #74b73f; font-family: Monaco, &#39;DejaVu Sans Mono&#39;, &#39;Bitstream Vera Sans Mono&#39;, &#39;Lucida Console&#39;, monospace !important; font-size: 14px; line-height: 23px; margin-bottom: 15px; margin-top: 1em; overflow: auto; padding: 8px 10px 8px 18px; white-space: pre-wrap; word-wrap: break-word;&quot;&gt;&lt;span class=&quot;pln&quot; style=&quot;box-sizing: border-box; color: black;&quot;&gt;rpm &lt;/span&gt;&lt;span class=&quot;pun&quot; style=&quot;box-sizing: border-box; color: #666600;&quot;&gt;--&lt;/span&gt;&lt;span class=&quot;kwd&quot; style=&quot;box-sizing: border-box; color: #000088; font-weight: 700;&quot;&gt;import&lt;/span&gt;&lt;span class=&quot;pln&quot; style=&quot;box-sizing: border-box; color: black;&quot;&gt; http&lt;/span&gt;&lt;span class=&quot;pun&quot; style=&quot;box-sizing: border-box; color: #666600;&quot;&gt;:&lt;/span&gt;&lt;span class=&quot;com&quot; style=&quot;box-sizing: border-box; color: #880000;&quot;&gt;//packages.elasticsearch.org/GPG-KEY-elasticsearch&lt;/span&gt;&lt;/pre&gt;
vim /etc/yum.repos.d/elasticsearch.repo&lt;br /&gt;
&lt;pre class=&quot;prettyprint lang=js&quot; style=&quot;background-color: #f0f0f0; border-bottom-right-radius: 5px; border-left-color: rgb(116, 183, 63); border-left-width: 3px; border-style: none none none solid; border-top-right-radius: 5px; box-sizing: border-box; color: #74b73f; font-family: Monaco, &#39;DejaVu Sans Mono&#39;, &#39;Bitstream Vera Sans Mono&#39;, &#39;Lucida Console&#39;, monospace !important; font-size: 14px; line-height: 23px; margin-bottom: 15px; margin-top: 1em; overflow: auto; padding: 8px 10px 8px 18px; white-space: pre-wrap; word-wrap: break-word;&quot;&gt;&lt;span class=&quot;pun&quot; style=&quot;box-sizing: border-box; color: #666600;&quot;&gt;[&lt;/span&gt;&lt;span class=&quot;pln&quot; style=&quot;box-sizing: border-box; color: black;&quot;&gt;elasticsearch&lt;/span&gt;&lt;span class=&quot;pun&quot; style=&quot;box-sizing: border-box; color: #666600;&quot;&gt;-&lt;/span&gt;&lt;span class=&quot;lit&quot; style=&quot;box-sizing: border-box; color: #006666;&quot;&gt;1.0&lt;/span&gt;&lt;span class=&quot;pun&quot; style=&quot;box-sizing: border-box; color: #666600;&quot;&gt;]&lt;/span&gt;&lt;span class=&quot;pln&quot; style=&quot;box-sizing: border-box; color: black;&quot;&gt;
name&lt;/span&gt;&lt;span class=&quot;pun&quot; style=&quot;box-sizing: border-box; color: #666600;&quot;&gt;=&lt;/span&gt;&lt;span class=&quot;typ&quot; style=&quot;box-sizing: border-box; color: #660066; font-weight: 700;&quot;&gt;Elasticsearch&lt;/span&gt;&lt;span class=&quot;pln&quot; style=&quot;box-sizing: border-box; color: black;&quot;&gt; repository &lt;/span&gt;&lt;span class=&quot;kwd&quot; style=&quot;box-sizing: border-box; color: #000088; font-weight: 700;&quot;&gt;for&lt;/span&gt;&lt;span class=&quot;pln&quot; style=&quot;box-sizing: border-box; color: black;&quot;&gt; &lt;/span&gt;&lt;span class=&quot;lit&quot; style=&quot;box-sizing: border-box; color: #006666;&quot;&gt;1.0&lt;/span&gt;&lt;span class=&quot;pun&quot; style=&quot;box-sizing: border-box; color: #666600;&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;pln&quot; style=&quot;box-sizing: border-box; color: black;&quot;&gt;x packages
baseurl&lt;/span&gt;&lt;span class=&quot;pun&quot; style=&quot;box-sizing: border-box; color: #666600;&quot;&gt;=&lt;/span&gt;&lt;span class=&quot;pln&quot; style=&quot;box-sizing: border-box; color: black;&quot;&gt;http&lt;/span&gt;&lt;span class=&quot;pun&quot; style=&quot;box-sizing: border-box; color: #666600;&quot;&gt;:&lt;/span&gt;&lt;span class=&quot;com&quot; style=&quot;box-sizing: border-box; color: #880000;&quot;&gt;//packages.elasticsearch.org/elasticsearch/1.0/centos&lt;/span&gt;&lt;span class=&quot;pln&quot; style=&quot;box-sizing: border-box; color: black;&quot;&gt;
gpgcheck&lt;/span&gt;&lt;span class=&quot;pun&quot; style=&quot;box-sizing: border-box; color: #666600;&quot;&gt;=&lt;/span&gt;&lt;span class=&quot;lit&quot; style=&quot;box-sizing: border-box; color: #006666;&quot;&gt;1&lt;/span&gt;&lt;span class=&quot;pln&quot; style=&quot;box-sizing: border-box; color: black;&quot;&gt;
gpgkey&lt;/span&gt;&lt;span class=&quot;pun&quot; style=&quot;box-sizing: border-box; color: #666600;&quot;&gt;=&lt;/span&gt;&lt;span class=&quot;pln&quot; style=&quot;box-sizing: border-box; color: black;&quot;&gt;http&lt;/span&gt;&lt;span class=&quot;pun&quot; style=&quot;box-sizing: border-box; color: #666600;&quot;&gt;:&lt;/span&gt;&lt;span class=&quot;com&quot; style=&quot;box-sizing: border-box; color: #880000;&quot;&gt;//packages.elasticsearch.org/GPG-KEY-elasticsearch&lt;/span&gt;&lt;span class=&quot;pln&quot; style=&quot;box-sizing: border-box; color: black;&quot;&gt;
enabled&lt;/span&gt;&lt;span class=&quot;pun&quot; style=&quot;box-sizing: border-box; color: #666600;&quot;&gt;=&lt;/span&gt;&lt;span class=&quot;lit&quot; style=&quot;box-sizing: border-box; color: #006666;&quot;&gt;1&lt;/span&gt;&lt;/pre&gt;
&lt;span style=&quot;background-color: white; color: #333333; font-family: Consolas, &#39;Liberation Mono&#39;, Courier, monospace; font-size: 12px; line-height: 16.799999237060547px; white-space: pre;&quot;&gt;yum update&lt;/span&gt;&lt;br /&gt;
&lt;span style=&quot;background-color: white; color: #333333; font-family: Consolas, &#39;Liberation Mono&#39;, Courier, monospace; font-size: 12px; line-height: 16.799999237060547px; white-space: pre;&quot;&gt;yum install java-1.7.0-openjdk.i686 -y&lt;/span&gt;&lt;br /&gt;
&lt;span style=&quot;background-color: white; color: #333333; font-family: Consolas, &#39;Liberation Mono&#39;, Courier, monospace; font-size: 12px; line-height: 16.799999237060547px; white-space: pre;&quot;&gt;yum install elasticsearch&lt;/span&gt;&lt;br /&gt;
&lt;h3&gt;
&lt;span style=&quot;background-color: white; color: #333333; font-family: Consolas, &#39;Liberation Mono&#39;, Courier, monospace; font-size: 12px; line-height: 16.799999237060547px; white-space: pre;&quot;&gt;Start ElasticSearch&lt;/span&gt;&lt;/h3&gt;
&lt;span style=&quot;background-color: white; color: #333333; font-family: Consolas, &#39;Liberation Mono&#39;, Courier, monospace; font-size: 12px; line-height: 16.799999237060547px; white-space: pre;&quot;&gt;/etc/init.d/elasticsearch start&lt;/span&gt;&lt;br /&gt;
&lt;br /&gt;
If you are wondering where the data directory is for this installations steps, it is stored at:&lt;br /&gt;
&lt;br /&gt;
/var/lib/elasticsearch/elasticsearch&lt;br /&gt;
&lt;br /&gt;&lt;/div&gt;
</description><link>http://ulaptech.blogspot.com/2014/05/yum-install-elasticsearch-1x.html</link><author>noreply@blogger.com (Unknown)</author><thr:total>0</thr:total></item><item><guid isPermaLink="false">tag:blogger.com,1999:blog-157854688600865238.post-4124404763509189952</guid><pubDate>Mon, 24 Mar 2014 11:08:00 +0000</pubDate><atom:updated>2014-03-24T04:08:56.368-07:00</atom:updated><category domain="http://www.blogger.com/atom/ns#">linux programming</category><category domain="http://www.blogger.com/atom/ns#">php</category><category domain="http://www.blogger.com/atom/ns#">programming bad practices</category><title>The Idiot PHP Developer&#39;s Creed</title><description>&lt;div class=&quot;p1&quot;&gt;
I am a PHP Developer and this is my creed.&lt;/div&gt;
&lt;div class=&quot;p2&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;p1&quot;&gt;
PHP is the best programming language, ever.&amp;nbsp;&lt;/div&gt;
&lt;div class=&quot;p1&quot;&gt;
I don&#39;t need no framework or library, my native code is light and fast.&lt;/div&gt;
&lt;div class=&quot;p1&quot;&gt;
I can code anywhere, as long as it works, it is correct.&lt;/div&gt;
&lt;div class=&quot;p1&quot;&gt;
I don&#39;t need OOP, &amp;nbsp;best practices, design patterns, software architecture and all that crap. They slow me down.&lt;/div&gt;
&lt;div class=&quot;p1&quot;&gt;
I rate myself 9 out of 10 because I memorised most of the native functions or pretend to be.&lt;/div&gt;
&lt;div class=&quot;p1&quot;&gt;
I rate myself 10 out of 10 because I can build a shopping cart website within 3 days or because of whatever.&amp;nbsp;&lt;/div&gt;
&lt;div class=&quot;p1&quot;&gt;
I prefer the use of arrays because they are better than objects.&lt;/div&gt;
&lt;div class=&quot;p1&quot;&gt;
I believe project managers, business analysts and QA are useless.&lt;/div&gt;
&lt;div class=&quot;p1&quot;&gt;
I don&#39;t have to test my work, somebody else should.&lt;/div&gt;
&lt;div class=&quot;p1&quot;&gt;
I don&#39;t have to look at the error logs, my code is perfect.&lt;/div&gt;
&lt;div class=&quot;p1&quot;&gt;
I copy-paste code that the first page of my Google search results which seems cool and working.&lt;/div&gt;
&lt;div class=&quot;p1&quot;&gt;
I don&#39;t need to understand what I copy-pasted.&lt;/div&gt;
&lt;div class=&quot;p1&quot;&gt;
I claim the copy-pasted code as my own and grin with pride.&lt;/div&gt;
&lt;div class=&quot;p1&quot;&gt;
If my code CANNOT be understood, then I am super awesome.&lt;/div&gt;
&lt;div class=&quot;p1&quot;&gt;
The hardest thing I did is to build a website using WordPress.&lt;/div&gt;
&lt;div class=&quot;p1&quot;&gt;
I don&#39;t need Math, Statistics, Science, or Business to level up in my field. I can do anything with PHP.&lt;/div&gt;
&lt;div class=&quot;p1&quot;&gt;
I develop PHP using WAMP and use a Windows-based IDE while production deployment is in Linux/Unix.&lt;/div&gt;
&lt;div class=&quot;p1&quot;&gt;
I use get_browser() function to detect user agent.&lt;/div&gt;
&lt;div class=&quot;p1&quot;&gt;
I use static methods, globals, constants every chance I get.&amp;nbsp;&lt;/div&gt;
&lt;div class=&quot;p1&quot;&gt;
I only need if-then-else to implement logic and algorithm. The longer, the better. I love spaghetti.&lt;/div&gt;
&lt;div class=&quot;p1&quot;&gt;
I loop through an external resource call.&lt;/div&gt;
&lt;div class=&quot;p1&quot;&gt;
It takes an FTP uploader to deploy my code.&lt;/div&gt;
&lt;div class=&quot;p1&quot;&gt;
I have hardcoded stuff everywhere.&lt;/div&gt;
&lt;div class=&quot;p1&quot;&gt;
I don&#39;t need to document my code or put doc blocks for that matter. It takes away precious development time.&lt;/div&gt;
&lt;div class=&quot;p2&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;br /&gt;
&lt;div class=&quot;p1&quot;&gt;
(to be continued)&lt;/div&gt;
</description><link>http://ulaptech.blogspot.com/2014/03/the-idiot-php-developers-creed.html</link><author>noreply@blogger.com (Unknown)</author><thr:total>0</thr:total></item><item><guid isPermaLink="false">tag:blogger.com,1999:blog-157854688600865238.post-2456401913126862979</guid><pubDate>Tue, 18 Mar 2014 20:31:00 +0000</pubDate><atom:updated>2014-03-18T13:33:09.164-07:00</atom:updated><category domain="http://www.blogger.com/atom/ns#">data center automation</category><category domain="http://www.blogger.com/atom/ns#">database administration</category><category domain="http://www.blogger.com/atom/ns#">mariadb</category><category domain="http://www.blogger.com/atom/ns#">mysql</category><category domain="http://www.blogger.com/atom/ns#">php</category><title>Kill Sleeping MySQL Processes using Quick PHP Script</title><description>Our server was getting swamped with too many sleeping connections causing &quot;too many connections&quot; error. During production hours, manually killing them isn&#39;t an option, there are just too many and MySQL nor MariaDB doesn&#39;t have a native tool for it. I needed it fast, so I wrote a quick PHP code which can then be run every minute as a CRON job.&lt;br /&gt;
&lt;br /&gt;
Here&#39;s the code:&lt;br /&gt;
&lt;br /&gt;
&lt;pre style=&quot;background: #ccc; border: 1px solid black; padding: 10px;&quot;&gt;&amp;lt;?php
mysql_connect(&#39;yourhost&#39;, &#39;username&#39;, &#39;password&#39;);
$res = mysql_query(&quot;SHOW FULL PROCESSLIST&quot;);
while ($row=mysql_fetch_array($res)) {
&amp;nbsp; $pid=$row[&quot;Id&quot;];
&amp;nbsp; if ($row[&#39;Command&#39;]==&#39;Sleep&#39;) {
&amp;nbsp; &amp;nbsp; &amp;nbsp; if ($row[&quot;Time&quot;] &amp;gt; 3 ) { //any sleeping process more than 3 secs
&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;$sql=&quot;KILL $pid&quot;;
&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;echo &quot;\n$sql&quot;; //added for log file
&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;mysql_query($sql);
&amp;nbsp; &amp;nbsp; &amp;nbsp; }
&amp;nbsp; }
}&lt;/pre&gt;
&lt;br /&gt;
You can then save this to a file mysqlkillsleeping.php, and add it as a CRON job running every minute&lt;br /&gt;
&lt;br /&gt;
&lt;pre style=&quot;background: #ccc; border: 1px solid black; padding: 10px;&quot;&gt;vim /etc/crontab

*/1 * * * * root php /path/of/mysqlkillsleeping.php 2&amp;gt;&amp;amp;1 &amp;gt;&amp;gt; /var/log/mysqlsleep.log&lt;/pre&gt;
</description><link>http://ulaptech.blogspot.com/2014/03/kill-sleeping-mysql-using-quick-php.html</link><author>noreply@blogger.com (Unknown)</author><thr:total>0</thr:total></item><item><guid isPermaLink="false">tag:blogger.com,1999:blog-157854688600865238.post-5034600300228683828</guid><pubDate>Fri, 14 Feb 2014 05:18:00 +0000</pubDate><atom:updated>2014-02-13T21:18:29.604-08:00</atom:updated><category domain="http://www.blogger.com/atom/ns#">yum</category><category domain="http://www.blogger.com/atom/ns#">yum install</category><title>Yum Install ImageMagick</title><description>ImageMagick is an image manipulation application which supports most of the standard image formats. &amp;nbsp;It is also a very powerful command line tool for batch processing images. If you wish to use it in CentOS or Fedora, just install it using YUM package manager.&lt;br /&gt;
&lt;br /&gt;
#&amp;nbsp;yum install ImageMagick</description><link>http://ulaptech.blogspot.com/2014/02/yum-install-imagemagick.html</link><author>noreply@blogger.com (Unknown)</author><thr:total>0</thr:total></item><item><guid isPermaLink="false">tag:blogger.com,1999:blog-157854688600865238.post-3998825290172216394</guid><pubDate>Thu, 13 Feb 2014 20:26:00 +0000</pubDate><atom:updated>2014-02-13T23:59:58.684-08:00</atom:updated><category domain="http://www.blogger.com/atom/ns#">php</category><category domain="http://www.blogger.com/atom/ns#">zend framework</category><category domain="http://www.blogger.com/atom/ns#">zend framework 2</category><category domain="http://www.blogger.com/atom/ns#">zf2</category><title>How to Add 3rd Party Libraries to Zend Framework 2</title><description>You can easily add other libraries to Zend Framework 2 whether they are your custom libraries, 3rd party libraries or standard packages from packagist.org or Github. &amp;nbsp;However, the explanation and method on how to add and autoload them properly to the software architecture was not easy find, at least for me.&lt;br /&gt;
&lt;br /&gt;
Since you&#39;re here, I&#39;ve made it a tad easier for you and itemised the use-cases.&lt;br /&gt;
&lt;br /&gt;
&lt;h4&gt;
1) Adding custom libraries which are GLOBAL to your application&amp;nbsp;&lt;/h4&gt;
&amp;nbsp;Edit composer.json and add within the closure,&lt;br /&gt;
&lt;br /&gt;
&amp;nbsp; &amp;nbsp; &quot;autoload&quot;: {&lt;br /&gt;
&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &quot;psr-0&quot;: &amp;nbsp;{&quot;MyLibrary\\&quot;:&quot;vendor/my/library/path&quot;}&lt;br /&gt;
&amp;nbsp; &amp;nbsp; }&lt;br /&gt;
&lt;br /&gt;
Then run &quot;composer update&quot; from the CLI under your application root directory. This will add an entry to your &amp;lt;APPLICATION_PATH&amp;gt;/vendor/composer/autoload_namespaces.php.&lt;br /&gt;
&lt;br /&gt;
Alternatively, you can directly add an entry to it.&lt;br /&gt;
&lt;br /&gt;
return array(&lt;br /&gt;
&amp;nbsp; &amp;nbsp; &#39;Zend\\&#39; =&amp;gt; array($vendorDir . &#39;/zendframework/zendframework/library&#39;),&lt;br /&gt;
&amp;nbsp; &amp;nbsp; &#39;MyLibrary\\&#39; =&amp;gt; array($vendorDir . &#39;/my/library/path&#39;),&lt;br /&gt;
);&lt;br /&gt;
&lt;br /&gt;
&lt;a name=&#39;more&#39;&gt;&lt;/a&gt;&lt;br /&gt;
&lt;h4&gt;
2) Adding custom libraries specific to a module&lt;/h4&gt;
Edit &amp;lt;APPLICATION_PATH&amp;gt;/module/Yourmodule/Module.php&lt;br /&gt;
&lt;br /&gt;
public function getAutoloaderConfig()&lt;br /&gt;
&amp;nbsp; &amp;nbsp; {&lt;br /&gt;
&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; return array(&lt;br /&gt;
&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &#39;Zend\Loader\ClassMapAutoloader&#39; =&amp;gt; array(&lt;br /&gt;
&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; __DIR__ . &#39;/autoload_classmap.php&#39;,&lt;br /&gt;
&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; ),&lt;br /&gt;
&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &#39;Zend\Loader\StandardAutoloader&#39; =&amp;gt; array(&lt;br /&gt;
&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &#39;namespaces&#39; =&amp;gt; array(&lt;br /&gt;
&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; __NAMESPACE__ =&amp;gt; __DIR__ . &#39;/src/&#39; . __NAMESPACE__,&lt;br /&gt;
&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;&#39;YourLibrary&#39; =&amp;gt; __DIR__ . &#39;/../../vendor/your/Library&#39; &lt;i&gt;&amp;lt;&amp;lt;---- add something similar to the following&lt;/i&gt;&lt;br /&gt;
&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; )&lt;br /&gt;
&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; ),&lt;br /&gt;
&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; );&lt;br /&gt;
&amp;nbsp; &amp;nbsp; }&lt;br /&gt;
&lt;br /&gt;
&lt;h4&gt;
3) Adding standard / accepted libraries from packagist.org or any repositories which supports composer&lt;/h4&gt;
&lt;br /&gt;
Edit composer.json and add the following entry,&lt;br /&gt;
&lt;br /&gt;
&quot;require&quot;: {&lt;br /&gt;
&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &quot;php&quot;: &quot;&amp;gt;=5.3.3&quot;,&lt;br /&gt;
&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &quot;zendframework/zendframework&quot;: &quot;2.2.*&quot;,&lt;br /&gt;
&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &quot;package/name&quot;: &quot;&amp;gt;=1.0&quot; &lt;i&gt;&amp;lt;&amp;lt;--- add&amp;nbsp;&lt;/i&gt;&lt;i&gt;something&amp;nbsp;&lt;/i&gt;&lt;i&gt;similar to the following&lt;/i&gt;&lt;br /&gt;
&amp;nbsp; &amp;nbsp; },&lt;br /&gt;
&lt;br /&gt;
And if you want to include the packages required for the development of the packages like running tests etc. you can add/modify require-dev as well.&lt;br /&gt;
&lt;br /&gt;
&quot;require-dev&quot;: {&lt;br /&gt;
&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &quot;package/name&quot;: &quot;&amp;gt;=1.0&quot;&amp;nbsp;&lt;i&gt;&amp;lt;&amp;lt;--- add&amp;nbsp;&lt;/i&gt;&lt;i&gt;something&amp;nbsp;&lt;/i&gt;&lt;i&gt;similar to the following&lt;/i&gt;&lt;br /&gt;
&amp;nbsp; &amp;nbsp; },&lt;br /&gt;
&lt;br /&gt;
For adding additional repositories other than packagist.org, get more info &lt;a href=&quot;https://getcomposer.org/doc/05-repositories.md#repository&quot; rel=&quot;nofollow&quot; target=&quot;_blank&quot;&gt;here&lt;/a&gt;.&lt;br /&gt;
&lt;br /&gt;
&lt;span style=&quot;color: red;&quot;&gt;&lt;b&gt;WARNING: &lt;/b&gt;Zend Framework 2, even the earlier version, is sensitive with the usage of underscores. So, if you don&#39;t want unnecessary complications due to the autoloading quirks, avoid them. Anyway, it is why namespaces are introduced in the first place.&lt;/span&gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;</description><link>http://ulaptech.blogspot.com/2014/02/adding-3rd-party-libraries-to-zend.html</link><author>noreply@blogger.com (Unknown)</author><thr:total>0</thr:total></item><item><guid isPermaLink="false">tag:blogger.com,1999:blog-157854688600865238.post-5603707244140773575</guid><pubDate>Mon, 27 Jan 2014 12:27:00 +0000</pubDate><atom:updated>2014-01-27T04:28:28.131-08:00</atom:updated><category domain="http://www.blogger.com/atom/ns#">php</category><category domain="http://www.blogger.com/atom/ns#">zend framework</category><category domain="http://www.blogger.com/atom/ns#">zend framework 2</category><title>How to Make Your Module Default in Zend Framework 2</title><description>Just make sure you have the proper route to slash (/) and the first in the alphabetical hierarchy of the other modules.&lt;br /&gt;
&lt;br /&gt;
/module/modulename/config/module.config.php&lt;br /&gt;
&lt;br /&gt;
&#39;router&#39; =&amp;gt; array(&lt;br /&gt;
&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &#39;routes&#39; =&amp;gt; array(&lt;br /&gt;
&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &#39;home&#39; =&amp;gt; array(&lt;br /&gt;
&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &#39;type&#39; =&amp;gt; &#39;Zend\Mvc\Router\Http\Literal&#39;,&lt;br /&gt;
&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &#39;options&#39; =&amp;gt; array(&lt;br /&gt;
&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;&lt;b&gt; &#39;route&#39; &amp;nbsp; &amp;nbsp;=&amp;gt; &#39;/&#39;,&amp;nbsp;&lt;/b&gt;&lt;br /&gt;
&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &#39;defaults&#39; =&amp;gt; array(&lt;br /&gt;
&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &#39;controller&#39; =&amp;gt; &#39;Account\Controller\Index&#39;,&lt;br /&gt;
&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &#39;action&#39; &amp;nbsp; &amp;nbsp; =&amp;gt; &#39;index&#39;,&lt;br /&gt;
&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; ),&lt;br /&gt;
&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; ),&lt;br /&gt;
&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; ),&lt;br /&gt;
&amp;nbsp; &amp;nbsp; ),&lt;br /&gt;
);&lt;br /&gt;
&lt;div&gt;
&lt;br /&gt;&lt;/div&gt;
</description><link>http://ulaptech.blogspot.com/2014/01/how-to-make-your-module-default-in-zend.html</link><author>noreply@blogger.com (Unknown)</author><thr:total>0</thr:total></item><item><guid isPermaLink="false">tag:blogger.com,1999:blog-157854688600865238.post-695121756603271472</guid><pubDate>Fri, 24 Jan 2014 09:58:00 +0000</pubDate><atom:updated>2014-01-24T02:13:12.029-08:00</atom:updated><category domain="http://www.blogger.com/atom/ns#">php</category><category domain="http://www.blogger.com/atom/ns#">php editor</category><category domain="http://www.blogger.com/atom/ns#">phpstorm</category><category domain="http://www.blogger.com/atom/ns#">zend framework</category><category domain="http://www.blogger.com/atom/ns#">zend framework 2</category><title>How To Set-up ZendFramework 2 for Developers from Scratch</title><description>Here are a few easy steps to bootstrap your development using Zend Framework 2.x. This assumes that you are using PHP 5.3.x or higher on a *nix machine. Was tested to work on Fedora and CentOS.&lt;br /&gt;
&lt;br /&gt;
1) Install composer&lt;br /&gt;
&lt;br /&gt;
(make sure you are a root user)&lt;br /&gt;
# sudo -i&lt;br /&gt;
#&amp;nbsp;curl -sS https://getcomposer.org/installer | php -- --install-dir=/usr/local/src/&lt;br /&gt;
#&amp;nbsp;mv /usr/local/src/composer.phar /usr/local/bin/composer&lt;br /&gt;
&lt;br /&gt;
#&amp;nbsp;chmod +x /usr/local/bin/composer&lt;br /&gt;
&lt;br /&gt;
2) Download and install ZendFramework Skeletion Application&lt;br /&gt;
&lt;br /&gt;
# composer create-project --repository-url=&quot;http://packages.zendframework.com&quot; zendframework/skeleton-application /path/to/install/skeleton/app dev-master&lt;br /&gt;
&lt;br /&gt;
&lt;a name=&#39;more&#39;&gt;&lt;/a&gt;&lt;br /&gt;
&lt;br /&gt;
3) Create your Apache virtual host (or any web server for that matter which you can easily find tutorials - search google: configure NGINX virtual host).&lt;br /&gt;
&lt;br /&gt;
Add your vhost configuration file by copying the sample virtual host configuration to a vhost file. The file path may vary depending on your OS and filesystem setup.&lt;br /&gt;
&lt;br /&gt;
# vim /etc/httpd/conf.d/vhosts/local.dev.ulaptech.conf&lt;br /&gt;
&lt;br /&gt;
&amp;lt;VirtualHost *:80&amp;gt;&lt;br /&gt;
&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; ServerName local.dev.ulaptech.com &amp;nbsp; &lt;br /&gt;
&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; DocumentRoot&amp;nbsp;/path/to/install/skeleton/app/public&lt;br /&gt;
&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; ServerAdmin root@localhost&lt;br /&gt;
&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; ErrorLog logs/dev.ulaptech.com-error_log&lt;br /&gt;
&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; CustomLog logs/dev.ulaptech.com-access_log common&lt;br /&gt;
&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; SetEnv APPLICATION_ENV local&lt;br /&gt;
&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;lt;Directory&amp;nbsp;/path/to/install/skeleton/app&amp;gt;&lt;br /&gt;
&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; Order deny,allow&lt;br /&gt;
&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; Allowoverride All&lt;br /&gt;
&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;lt;/Directory&amp;gt;&lt;br /&gt;
&amp;lt;/VirtualHost&amp;gt;&lt;br /&gt;
# /etc/init.d/httpd configtest&lt;br /&gt;
If everything is in order, restart Apache&lt;br /&gt;
# /etc/init.d/httpd restart&lt;br /&gt;
&lt;br /&gt;
4) Add entry to your local host file, so you can check the skeleton App from your browser.&lt;br /&gt;
&lt;br /&gt;
# vim /etc/hosts&lt;br /&gt;
127.0.0.1&amp;nbsp;local.dev.ulaptech.com&lt;br /&gt;
&amp;lt;Enter.your.local.IP&amp;gt; local.dev.ulaptech.com&lt;br /&gt;
&lt;br /&gt;
5) Check your running ZF2 skeleton Application from your browser.&lt;br /&gt;
&lt;br /&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;
&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjJ5ZwmqvNabj8TJpOCqLYo9weaAjft8mjCtNaCDNXvOLtnEtmDPQu6fzYhjR0YC0rO_pDg_DwAKc4raTlpeaFoDeMzuLzet2sbApiBVu4_zndxnzxmZO7_SymhFTw3sC2KwrBKDNjm_JwN/s1600/Screen+Shot+2014-01-24+at+5.13.19+PM.png&quot; imageanchor=&quot;1&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjJ5ZwmqvNabj8TJpOCqLYo9weaAjft8mjCtNaCDNXvOLtnEtmDPQu6fzYhjR0YC0rO_pDg_DwAKc4raTlpeaFoDeMzuLzet2sbApiBVu4_zndxnzxmZO7_SymhFTw3sC2KwrBKDNjm_JwN/s1600/Screen+Shot+2014-01-24+at+5.13.19+PM.png&quot; height=&quot;180&quot; width=&quot;320&quot; /&gt;&lt;/a&gt;&lt;/div&gt;
&lt;br /&gt;
6) Add your setup to you favorite SCM tool (SVN or Git)&lt;br /&gt;
&lt;br /&gt;
# cd /path/to/install/skeleton/app&lt;br /&gt;
SVN: svn import https://your.svn.host/your/trunk -m &quot;importing ulaptech files for the first time&quot;&lt;br /&gt;
Git: git init; git commit -m &quot;initial commit&quot;; git add remote origin https://your.git.host/your/trunk.git; git push origin master;&lt;br /&gt;
&lt;br /&gt;
7) Point your skeleton app to your favorite PHP IDE/Editor - PhpStorm, NetBeans, SublimeText, Eclipse etc.&lt;br /&gt;
&lt;br /&gt;
8) Start coding :)&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;</description><link>http://ulaptech.blogspot.com/2014/01/how-setup-zendframework-2-for.html</link><author>noreply@blogger.com (Unknown)</author><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjJ5ZwmqvNabj8TJpOCqLYo9weaAjft8mjCtNaCDNXvOLtnEtmDPQu6fzYhjR0YC0rO_pDg_DwAKc4raTlpeaFoDeMzuLzet2sbApiBVu4_zndxnzxmZO7_SymhFTw3sC2KwrBKDNjm_JwN/s72-c/Screen+Shot+2014-01-24+at+5.13.19+PM.png" height="72" width="72"/><thr:total>0</thr:total></item><item><guid isPermaLink="false">tag:blogger.com,1999:blog-157854688600865238.post-7875004436665825855</guid><pubDate>Wed, 18 Dec 2013 13:38:00 +0000</pubDate><atom:updated>2013-12-18T14:20:42.163-08:00</atom:updated><category domain="http://www.blogger.com/atom/ns#">ecommerce</category><category domain="http://www.blogger.com/atom/ns#">php</category><title>PHP: Detect Credit Card Type and Simplify Payment Form</title><description>Simplifying forms is the way to go to improve the payment experience. It&#39;s pretty much becoming the standard to not ask the credit card type anymore.&lt;br /&gt;
&lt;br /&gt;
Here&#39;s a clean way to do it in PHP 5.4+.&lt;br /&gt;
&lt;i&gt;&lt;span style=&quot;font-size: x-small;&quot;&gt;Note: To work with PHP 5.3 below, change square brackets with &quot;array()&quot;&lt;/span&gt;.&lt;/i&gt;&lt;br /&gt;
&lt;br /&gt;
&lt;pre style=&quot;background: black; border: 1px solid black; color: white; padding: 10px;&quot;&gt;function getCreditCardType($str, $format = &#39;string&#39;)
    {
        if (empty($str)) {
            return false;
        }

        $matchingPatterns = [
            &#39;visa&#39; =&amp;gt; &#39;/^4[0-9]{12}(?:[0-9]{3})?$/&#39;,
            &#39;mastercard&#39; =&amp;gt; &#39;/^5[1-5][0-9]{14}$/&#39;,
            &#39;amex&#39; =&amp;gt; &#39;/^3[47][0-9]{13}$/&#39;,
            &#39;diners&#39; =&amp;gt; &#39;/^3(?:0[0-5]|[68][0-9])[0-9]{11}$/&#39;,
            &#39;discover&#39; =&amp;gt; &#39;/^6(?:011|5[0-9]{2})[0-9]{12}$/&#39;,
            &#39;jcb&#39; =&amp;gt; &#39;/^(?:2131|1800|35\d{3})\d{11}$/&#39;,
            &#39;any&#39; =&amp;gt; &#39;/^(?:4[0-9]{12}(?:[0-9]{3})?|5[1-5][0-9]{14}|6(?:011|5[0-9][0-9])[0-9]{12}|3[47][0-9]{13}|3(?:0[0-5]|[68][0-9])[0-9]{11}|(?:2131|1800|35\d{3})\d{11})$/&#39;
        ];

        $ctr = 1;
        foreach ($matchingPatterns as $key=&amp;gt;$pattern) {
            if (preg_match($pattern, $str)) {
                return $format == &#39;string&#39; ? $key : $ctr;
            }
            $ctr++;
        }
    }
&lt;/pre&gt;
&lt;br /&gt;
You can further enhance the experience on the UI part by adding a javascript equivalent of the above function and have it dynamically change credit card logos indicating credit card type dynamically as people type their credit card number.&lt;br /&gt;
&lt;br /&gt;
This implementation was based on an answer found &lt;a href=&quot;http://stackoverflow.com/questions/72768/how-do-you-detect-credit-card-type-based-on-number&quot; rel=&quot;nofollow&quot; target=&quot;_blank&quot;&gt;here&lt;/a&gt;. Fyi, Google, Github etc are using the same method for their payment forms and a lot more are doing so as the day pass by to improve their conversions.</description><link>http://ulaptech.blogspot.com/2013/12/php-detect-credit-card-type-and.html</link><author>noreply@blogger.com (Unknown)</author><thr:total>0</thr:total></item><item><guid isPermaLink="false">tag:blogger.com,1999:blog-157854688600865238.post-4085144209302410573</guid><pubDate>Thu, 12 Dec 2013 22:55:00 +0000</pubDate><atom:updated>2013-12-12T14:55:04.266-08:00</atom:updated><title>PHP: posix_getpid() is Undefined</title><description>With the most recent versions of Fedora / CentOS, the function &lt;i&gt;posix_getpid()&lt;/i&gt; maybe undefined because it has been moved to php-process module.&lt;br /&gt;
&lt;br /&gt;To fix:&lt;br /&gt;
&lt;br /&gt;
&lt;i&gt;yum install php-process&lt;/i&gt;&lt;br /&gt;
&lt;br /&gt;
Or,&lt;br /&gt;
&lt;br /&gt;
simply use &lt;i&gt;getmypid()&lt;/i&gt; as alternative.</description><link>http://ulaptech.blogspot.com/2013/12/php-posixgetpid-is-undefined.html</link><author>noreply@blogger.com (Unknown)</author><thr:total>0</thr:total></item><item><guid isPermaLink="false">tag:blogger.com,1999:blog-157854688600865238.post-821231643630804834</guid><pubDate>Wed, 06 Nov 2013 13:31:00 +0000</pubDate><atom:updated>2014-01-29T03:32:57.436-08:00</atom:updated><category domain="http://www.blogger.com/atom/ns#">yum</category><category domain="http://www.blogger.com/atom/ns#">yum install</category><category domain="http://www.blogger.com/atom/ns#">yum repos</category><title>Yum Install Percona Toolkit (Maatkit)</title><description>You need the some tools for MySQL / MariaDb administration and Percona Toolkit (formerly Maatkit) is just the right tools for you. Here&#39;s how to install them,&lt;br /&gt;
&lt;br /&gt;
1) Install the Repo.&lt;br /&gt;
&lt;br /&gt;
&lt;pre style=&quot;background-color: #f0e6d9; border: 1px dashed rgb(237, 152, 33); overflow: auto; padding: 10px;&quot;&gt;&lt;span style=&quot;color: #333333; font-size: x-small;&quot;&gt;&lt;span style=&quot;line-height: 12px;&quot;&gt;For 64-bit: rpm -Uhv http://www.percona.com/downloads/percona-release/percona-release-0.0-1.x86_64.rpm&lt;/span&gt;&lt;/span&gt;&lt;/pre&gt;
&lt;pre style=&quot;background-color: #f0e6d9; border: 1px dashed rgb(237, 152, 33); color: #333333; font-size: 10px; line-height: 12px; overflow: auto; padding: 10px;&quot;&gt;For 32-bit: rpm -Uhv http://www.percona.com/downloads/percona-release/percona-release-0.0-1.i386.rpm&lt;/pre&gt;
&lt;br /&gt;
2) Yum Install Percona Toolkit.&lt;br /&gt;
&lt;br /&gt;
&lt;pre style=&quot;background-color: #f0e6d9; border: 1px dashed rgb(237, 152, 33); color: #333333; font-size: 10px; line-height: 12px; overflow: auto; padding: 10px;&quot;&gt;yum install percona-toolkit-2.2.5-2.noarch&lt;/pre&gt;
&lt;br /&gt;
3) Then use the tools as it is.&lt;br /&gt;
&lt;br /&gt;
pt-agent&lt;br /&gt;
pt-duplicate-key-checker&lt;br /&gt;
pt-index-usage&lt;br /&gt;
pt-pmp&lt;br /&gt;
pt-slave-restart&lt;br /&gt;
pt-upgrade&lt;br /&gt;
pt-align&lt;br /&gt;
pt-fifo-split&lt;br /&gt;
pt-ioprofile&lt;br /&gt;
pt-query-digest&lt;br /&gt;
pt-stalk&lt;br /&gt;
pt-variable-advisor&lt;br /&gt;
pt-archiver&lt;br /&gt;
pt-find&lt;br /&gt;
pt-kill&lt;br /&gt;
pt-show-grants&lt;br /&gt;
pt-summary&lt;br /&gt;
pt-visual-explain&lt;br /&gt;
pt-config-diff&lt;br /&gt;
pt-fingerprint&lt;br /&gt;
pt-mext&lt;br /&gt;
pt-sift&lt;br /&gt;
pt-table-checksum&lt;br /&gt;
ptar&lt;br /&gt;
pt-deadlock-logger&lt;br /&gt;
pt-fk-error-logger&lt;br /&gt;
pt-mysql-summary&lt;br /&gt;
pt-slave-delay&lt;br /&gt;
pt-table-sync&lt;br /&gt;
ptardiff&lt;br /&gt;
pt-diskstats&lt;br /&gt;
pt-heartbeat&lt;br /&gt;
pt-online-schema-change&lt;br /&gt;
pt-slave-find&lt;br /&gt;
pt-table-usage&lt;br /&gt;
ptx&lt;br /&gt;
&lt;br /&gt;
Usage info&amp;nbsp;&lt;a href=&quot;http://www.maatkit.org/doc/&quot; target=&quot;_blank&quot;&gt;here&lt;/a&gt;&amp;nbsp;and &lt;a href=&quot;http://www.percona.com/doc/percona-toolkit/2.2/&quot; target=&quot;_blank&quot;&gt;here&lt;/a&gt;.</description><link>http://ulaptech.blogspot.com/2013/11/yum-install-percona-toolkit-maatkit.html</link><author>noreply@blogger.com (Unknown)</author><thr:total>0</thr:total></item><item><guid isPermaLink="false">tag:blogger.com,1999:blog-157854688600865238.post-4431281055917786950</guid><pubDate>Sat, 19 Oct 2013 19:23:00 +0000</pubDate><atom:updated>2013-10-19T12:23:54.200-07:00</atom:updated><category domain="http://www.blogger.com/atom/ns#">redirects</category><category domain="http://www.blogger.com/atom/ns#">url routes</category><category domain="http://www.blogger.com/atom/ns#">zend framework</category><title>How To Redirect From the Bootstrap in Zend Framework 1x</title><description>If you need to redirect from the Bootrstrap context, you can do:&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;blockquote class=&quot;tr_bq&quot;&gt;
$front = Zend_Controller_Front::getInstance();&lt;br /&gt;
$response = new Zend_Controller_Response_Http();&lt;br /&gt;
$response-&amp;gt;setRedirect(Zend_Registry::get(&#39;config&#39;)-&amp;gt;et-&amp;gt;core-&amp;gt;url . &#39;/&#39; . $args[1]);&lt;br /&gt;
$front-&amp;gt;setResponse($response);&lt;/blockquote&gt;
&lt;br /&gt;
&lt;br /&gt;
The most simplistic, basic PHP approach would be:&lt;br /&gt;
&lt;br /&gt;
&lt;blockquote class=&quot;tr_bq&quot;&gt;
&amp;nbsp;header(&quot;Location: &quot; . Zend_Registry::get(&#39;config&#39;)-&amp;gt;et-&amp;gt;core-&amp;gt;url . &#39;/&#39; . $args[1]);&lt;br /&gt;
ob_end_clean();&lt;br /&gt;
ob_end_flush();&lt;/blockquote&gt;
&lt;br /&gt;
&lt;i&gt;Note: The ob_* functions are to terminate the output buffering routine of Zend Framework and start sending headers to the browser.&lt;/i&gt;&lt;br /&gt;
&lt;br /&gt;
Or,&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;blockquote class=&quot;tr_bq&quot;&gt;
&amp;nbsp;header(&quot;Location: &quot; . Zend_Registry::get(&#39;config&#39;)-&amp;gt;et-&amp;gt;core-&amp;gt;url . &#39;/&#39; . $args[1]);&lt;br /&gt;
exit;&lt;/blockquote&gt;
&lt;br /&gt;
&lt;i&gt;Note: &amp;nbsp;the &quot;exit&quot; will force Zend Framework to reach the EOF (end of file) and thus start sending the headers to the browser.&lt;/i&gt;&lt;br /&gt;
&lt;br /&gt;
Whichever method you choose would work. Re: their advantages, convention-wise the first one is the most ideal, the fastest however would be the last.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;</description><link>http://ulaptech.blogspot.com/2013/10/how-to-redirect-from-bootstrap-in-zend.html</link><author>noreply@blogger.com (Unknown)</author><thr:total>0</thr:total></item><item><guid isPermaLink="false">tag:blogger.com,1999:blog-157854688600865238.post-2951924644786630510</guid><pubDate>Sun, 06 Oct 2013 02:49:00 +0000</pubDate><atom:updated>2013-10-07T03:21:03.799-07:00</atom:updated><category domain="http://www.blogger.com/atom/ns#">opcode caching</category><category domain="http://www.blogger.com/atom/ns#">php</category><category domain="http://www.blogger.com/atom/ns#">xcache</category><title>PHP: XCache Don&#39;t and Won&#39;t Work on CLI</title><description>The makers of XCache, opcode cacher of PHP, decided not to support it on CLI. This is a design decision more than a defect. Here&#39;s more info&amp;nbsp;&lt;a href=&quot;http://xcache.lighttpd.net/ticket/317&quot;&gt;http://xcache.lighttpd.net/ticket/317&lt;/a&gt;.&lt;br /&gt;
&lt;br /&gt;
It&#39;s not the end of the world though, there are still options like Memcache, IPCS or APC that you can use for such. Also, so your CLI doesn&#39;t show any error messages, prevent it from being used by checking it&#39;s SAPI name.&lt;br /&gt;
&lt;br /&gt;
if (function_exists(&#39;xcache_get&#39;) &amp;amp;&amp;amp; php_sapi_name() != &#39;cli&#39;) {&lt;br /&gt;
&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; //xcache_get&lt;br /&gt;
&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; //xcache_set&lt;br /&gt;
}</description><link>http://ulaptech.blogspot.com/2013/10/php-xcache-dont-and-wont-work-on-cli.html</link><author>noreply@blogger.com (Unknown)</author><thr:total>0</thr:total></item><item><guid isPermaLink="false">tag:blogger.com,1999:blog-157854688600865238.post-4278201619319781455</guid><pubDate>Thu, 19 Sep 2013 09:48:00 +0000</pubDate><atom:updated>2013-09-19T02:50:03.019-07:00</atom:updated><title>Tracking Email Perfomance from Multiple ESPs Using Google Analytics</title><description>In order to diversify the sending and make it more cost effective for us. We are now using 3 email service providers. There are cost and technical advantages/disadvantages for each but generally, we managed to lower our cost by half and our deliverability by 25%. Now the question of how effective it is remain, answer the question - how many converted from which ESP (email service provider)?.&lt;br /&gt;
&lt;div&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div&gt;
The solution, Google Analytics custom campaigns (https://support.google.com/analytics/answer/1033863?hl=en&amp;amp;ref_topic=1032998). Using it, we populated the links to our landing pages with utm_source, utm_medium and utm_campaign&lt;/div&gt;
&lt;div&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div&gt;
&lt;b&gt;utm_source&lt;/b&gt;&lt;/div&gt;
&lt;div&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div&gt;
We added the ESP descriptor here - i.e aws, mailgun, mailjet&lt;/div&gt;
&lt;div&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div&gt;
&lt;b&gt;utm_medium&lt;/b&gt;&lt;/div&gt;
&lt;div&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div&gt;
populated with &#39;email&#39;&lt;/div&gt;
&lt;div&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div&gt;
&lt;b&gt;utm_campaign&lt;/b&gt;&lt;/div&gt;
&lt;div&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div&gt;
We added the campaign name / ID here i.e product code, newsletter type&lt;/div&gt;
&lt;div&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div&gt;
And optionally from time-to-time we add a value to utm_content, which can contain a variation of the same campaign name / ID.&lt;/div&gt;
&lt;div&gt;
&lt;div&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div&gt;
The resulting landing page URL became:&lt;/div&gt;
&lt;div&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div&gt;
http://yourdomain.com/landingpage.html?utm_source=aws&amp;amp;utm_medium=email&amp;amp;utm_campaign=newsletterX&lt;/div&gt;
&lt;div&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div&gt;
In Google Analytics, we were now able to see under our Goal conversion dashboard (Conversions-&amp;gt;Goals-&amp;gt;Overview) a filter of our source/medium namely - aws/email, &amp;lt;other sources&amp;gt;/email which answered the question above - &lt;b&gt;how many converted from which ESP?&lt;/b&gt;.&lt;/div&gt;
&lt;div&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;/div&gt;
</description><link>http://ulaptech.blogspot.com/2013/09/tracking-email-perfomance-from-multiple.html</link><author>noreply@blogger.com (Unknown)</author><thr:total>0</thr:total></item><item><guid isPermaLink="false">tag:blogger.com,1999:blog-157854688600865238.post-7788839546555698871</guid><pubDate>Sat, 14 Sep 2013 22:07:00 +0000</pubDate><atom:updated>2013-09-14T15:08:54.785-07:00</atom:updated><category domain="http://www.blogger.com/atom/ns#">edison</category><category domain="http://www.blogger.com/atom/ns#">failure</category><category domain="http://www.blogger.com/atom/ns#">quotes</category><category domain="http://www.blogger.com/atom/ns#">success</category><title>I just got reminded by Edison - Am I close?</title><description>Today is my first non-technical post. For some reason, two of the best quotes of Edison that I have known so far showed up in my face without intentionally looking for them. Here they are.&lt;br /&gt;
&lt;br /&gt;
The first one I saw while browsing &lt;a href=&quot;http://ideaspace.com/&quot; rel=&quot;nofollow&quot; target=&quot;_blank&quot;&gt;IdeaSpace&lt;/a&gt;,a startup incubator / investor.&lt;br /&gt;
&lt;br /&gt;
&lt;i&gt;&quot;Vision without execution is hallucination&quot;&lt;/i&gt;&lt;br /&gt;
&lt;br /&gt;
- Thomas Edison&lt;br /&gt;
&lt;br /&gt;
The second one, a defunct calling card of a former partner / colleague.&lt;br /&gt;
&lt;br /&gt;
&lt;i&gt;&quot;Many of life&#39;s failures are experienced by people who did not realise how close they were to success when they gave up&quot;&lt;/i&gt;&lt;br /&gt;
&lt;br /&gt;
- Thomas Edison&lt;br /&gt;
&lt;br /&gt;
Is this coincidence or some minority force of nature telling me something? Who knows? Let&#39;s see.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;</description><link>http://ulaptech.blogspot.com/2013/09/i-just-got-reminded-by-edison-am-i-close.html</link><author>noreply@blogger.com (Unknown)</author><thr:total>0</thr:total></item><item><guid isPermaLink="false">tag:blogger.com,1999:blog-157854688600865238.post-2082978208122955417</guid><pubDate>Wed, 28 Aug 2013 01:38:00 +0000</pubDate><atom:updated>2013-08-27T18:43:34.678-07:00</atom:updated><title>svn: E200033: database is locked, executing statement &#39;RELEASE s0&#39;</title><description>Ok, so you&#39;re stuck when suddenly a commit transaction to svn repo crashes. SVN says you need to run &quot;svn cleanup&quot;. That doesn&#39;t work either because of the error above. This means that your wc.db (working copy db) hasn&#39;t released its lock.&lt;br /&gt;
&lt;br /&gt;
So how do you fix it? Replace your db with something new.&lt;br /&gt;
&lt;pre style=&quot;background-color: #eeeeee; border: 0px; font-family: Consolas, Menlo, Monaco, &#39;Lucida Console&#39;, &#39;Liberation Mono&#39;, &#39;DejaVu Sans Mono&#39;, &#39;Bitstream Vera Sans Mono&#39;, &#39;Courier New&#39;, monospace, serif; font-size: 14px; line-height: 18px; margin-bottom: 10px; max-height: 600px; overflow: auto; padding: 5px; vertical-align: baseline; width: auto;&quot;&gt;&lt;code style=&quot;border: 0px; font-family: Consolas, Menlo, Monaco, &#39;Lucida Console&#39;, &#39;Liberation Mono&#39;, &#39;DejaVu Sans Mono&#39;, &#39;Bitstream Vera Sans Mono&#39;, &#39;Courier New&#39;, monospace, serif; margin: 0px; padding: 0px; vertical-align: baseline;&quot;&gt;# cd /path/to/working/copy/.svn
# mv wc.db wc.db.old
# sqlite3 wc.db.old
sqlite&amp;gt; .backup main wc.db
sqlite&amp;gt; .exit&lt;/code&gt;&lt;/pre&gt;
Got this amazing info&amp;nbsp;&lt;a href=&quot;http://stackoverflow.com/questions/17274329/svn-1-7-8-database-is-locked-cannot-release&quot; rel=&quot;nofollow&quot; target=&quot;_blank&quot;&gt;here&lt;/a&gt;.</description><link>http://ulaptech.blogspot.com/2013/08/svn-e200033-database-is-locked.html</link><author>noreply@blogger.com (Unknown)</author><thr:total>0</thr:total></item><item><guid isPermaLink="false">tag:blogger.com,1999:blog-157854688600865238.post-397775838662789435</guid><pubDate>Mon, 19 Aug 2013 12:02:00 +0000</pubDate><atom:updated>2014-01-29T03:33:21.378-08:00</atom:updated><category domain="http://www.blogger.com/atom/ns#">yum</category><category domain="http://www.blogger.com/atom/ns#">yum install</category><category domain="http://www.blogger.com/atom/ns#">yum repos</category><title>Yum Install Subversion 1.7x </title><description>If you&#39;re looking to upgrade your subversion client to 1.7 on CentOS 6 which most likely have a client version of 1.6x, then the easiest way to go is using Yum RPM manager.&lt;br /&gt;
&lt;br /&gt;
First, you would need the rpmforge repo.&lt;br /&gt;
&lt;br /&gt;
vi /etc/yum.repos.d/rpmforge.repo&lt;br /&gt;
&lt;br /&gt;
&lt;pre style=&quot;background: black; color: white; padding: 5px;&quot;&gt;### Name: RPMforge RPM Repository for RHEL 6 - dag
### URL: http://rpmforge.net/
[rpmforge]
name = RHEL $releasever - RPMforge.net - dag
baseurl = http://apt.sw.be/redhat/el6/en/$basearch/rpmforge
mirrorlist = http://apt.sw.be/redhat/el6/en/mirrors-rpmforge
#mirrorlist = file:///etc/yum.repos.d/mirrors-rpmforge
enabled = 1
protect = 0
gpgkey = file:///etc/pki/rpm-gpg/RPM-GPG-KEY-rpmforge-dag
gpgcheck = 0

[rpmforge-extras]
name = RHEL $releasever - RPMforge.net - extras
baseurl = http://apt.sw.be/redhat/el6/en/$basearch/extras
mirrorlist = http://apt.sw.be/redhat/el6/en/mirrors-rpmforge-extras
#mirrorlist = file:///etc/yum.repos.d/mirrors-rpmforge-extras
enabled = 1
protect = 0
gpgkey = file:///etc/pki/rpm-gpg/RPM-GPG-KEY-rpmforge-dag
gpgcheck = 0

[rpmforge-testing]
name = RHEL $releasever - RPMforge.net - testing
baseurl = http://apt.sw.be/redhat/el6/en/$basearch/testing
mirrorlist = http://apt.sw.be/redhat/el6/en/mirrors-rpmforge-testing
#mirrorlist = file:///etc/yum.repos.d/mirrors-rpmforge-testing
enabled = 0
protect = 0
gpgkey = file:///etc/pki/rpm-gpg/RPM-GPG-KEY-rpmforge-dag
gpgcheck = 0
&lt;/pre&gt;
&lt;br /&gt;
Then, &lt;br /&gt;
&lt;br /&gt;
&lt;pre style=&quot;background: black; color: white; padding: 5px;&quot;&gt;yum remove subversion
yum install subversion.x86_64 subversion-devel.x86_64
&lt;/pre&gt;
</description><link>http://ulaptech.blogspot.com/2013/08/yum-install-subversion-17x.html</link><author>noreply@blogger.com (Unknown)</author><thr:total>0</thr:total></item><item><guid isPermaLink="false">tag:blogger.com,1999:blog-157854688600865238.post-2731368866584115382</guid><pubDate>Mon, 12 Aug 2013 01:33:00 +0000</pubDate><atom:updated>2013-08-11T22:48:23.151-07:00</atom:updated><category domain="http://www.blogger.com/atom/ns#">rest</category><category domain="http://www.blogger.com/atom/ns#">rest api</category><category domain="http://www.blogger.com/atom/ns#">web services</category><title>Test Harness for REST Services</title><description>You don&#39;t have to write one to have a GUI client to test your REST API/services layer. You can use Chrome plug-in Advance REST Client here :&lt;br /&gt;
&lt;br /&gt;
&lt;a href=&quot;https://chrome.google.com/webstore/detail/advanced-rest-client/hgmloofddffdnphfgcellkdfbfbjeloo&quot;&gt;https://chrome.google.com/webstore/detail/advanced-rest-client/hgmloofddffdnphfgcellkdfbfbjeloo&lt;/a&gt;&lt;br /&gt;
&lt;br /&gt;
If you&#39;re having trouble with JSON posts, maybe this can help.&lt;br /&gt;
&lt;br /&gt;
&lt;a href=&quot;http://stackoverflow.com/questions/11688608/how-to-test-express-node-rest-api-backend-with-advanced-rest-client-or-postman&quot;&gt;http://stackoverflow.com/questions/11688608/how-to-test-express-node-rest-api-backend-with-advanced-rest-client-or-postman&lt;/a&gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;</description><link>http://ulaptech.blogspot.com/2013/08/test-harness-for-rest-services.html</link><author>noreply@blogger.com (Unknown)</author><thr:total>0</thr:total></item><item><guid isPermaLink="false">tag:blogger.com,1999:blog-157854688600865238.post-7044850689145861168</guid><pubDate>Sun, 04 Aug 2013 20:50:00 +0000</pubDate><atom:updated>2013-08-04T13:51:05.356-07:00</atom:updated><title>Yum Install XCache Admin</title><description># yum install xcache-admin</description><link>http://ulaptech.blogspot.com/2013/08/yum-install-xcache-admin.html</link><author>noreply@blogger.com (Unknown)</author><thr:total>0</thr:total></item><item><guid isPermaLink="false">tag:blogger.com,1999:blog-157854688600865238.post-5271023816896853175</guid><pubDate>Sun, 04 Aug 2013 17:02:00 +0000</pubDate><atom:updated>2013-08-04T10:29:29.724-07:00</atom:updated><category domain="http://www.blogger.com/atom/ns#">php optimization</category><category domain="http://www.blogger.com/atom/ns#">php profiling</category><title>Yum Install XCache - A Superb Production Alternative for PHP Opcode Caching</title><description>Wanna gain as much as 5X your current PHP applications performance? Install XCache now to your server. It is tested to run in production and very stable. With XCache, no crazy error messages that has nothing to do with your code - how can a native function be mssing (APC is making a mess, remove it immediately)!?????&lt;br /&gt;
&lt;pre style=&quot;background: black; color: white; padding: 10px;&quot;&gt;PHP Fatal error: &amp;nbsp;Call to undefined function in_array()
&lt;/pre&gt;
Here&#39;s how to install it in RHEL/CentOS.&lt;br /&gt;
&lt;br /&gt;
First, you need the Remi repo information added to Yum registry. Copy and paste the following to your server repo registry.&lt;br /&gt;
&lt;br /&gt;
# vim /etc/yum.repos.d/remi.repo&lt;br /&gt;
Then paste the following,&lt;br /&gt;
&lt;br /&gt;
&lt;pre style=&quot;background: black; color: white; padding: 10px;&quot;&gt;[remi]
name=Les RPM de remi pour Enterprise Linux 6 - $basearch
#baseurl=http://rpms.famillecollet.com/enterprise/6/remi/$basearch/
mirrorlist=http://rpms.famillecollet.com/enterprise/6/remi/mirror
enabled=1
gpgcheck=1
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-remi

[remi-test]
name=Les RPM de remi en test pour Enterprise Linux 6 - $basearch
#baseurl=http://rpms.famillecollet.com/enterprise/6/test/$basearch/
mirrorlist=http://rpms.famillecollet.com/enterprise/6/test/mirror
enabled=0
gpgcheck=1
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-remi

[remi-debuginfo]
name=Les RPM de remi pour Enterprise Linux 6 - $basearch - debuginfo
baseurl=http://rpms.famillecollet.com/enterprise/6/debug-remi/$basearch/
enabled=0
gpgcheck=1
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-remi

[remi-test-debuginfo]
name=Les RPM de remi en test pour Enterprise Linux 6 - $basearch - debuginfo
baseurl=http://rpms.famillecollet.com/enterprise/6/debug-test/$basearch/
enabled=0
gpgcheck=1
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-remi
&lt;/pre&gt;
&lt;br /&gt;
# yum install php-xcache&lt;br /&gt;
&lt;br /&gt;
Then tweak the configuration to your desired setting in /etc/php.d/xcache.ini.&lt;br /&gt;
Finally, reload your webserver configuration for it to take effect.&lt;br /&gt;
&lt;br /&gt;
For more info go to&amp;nbsp;&lt;a href=&quot;http://xcache.lighttpd.net/wiki/Introduction&quot; rel=&quot;no-follow&quot; target=&quot;_blank&quot;&gt;http://xcache.lighttpd.net/wiki/Introduction&lt;/a&gt;&lt;br /&gt;
&lt;br /&gt;
I am currently using this technology for &lt;a href=&quot;http://www2.exploretalent.com/&quot;&gt;ExploreTalent.com&lt;/a&gt;&amp;nbsp;and the speed gain (~300% faster) have been very satisfying. Not to mention the cache-hit ratio of ~97% which indicates that it is indeed wonderfully working as expected. No crashes and weird missing PHP functions that you can encounter using APC or the rest especially observable in a high-traffic environment and with many cached objects.</description><link>http://ulaptech.blogspot.com/2013/08/yum-install-xcache-superb-production.html</link><author>noreply@blogger.com (Unknown)</author><thr:total>0</thr:total></item></channel></rss>