<?xml version='1.0' encoding='UTF-8'?><?xml-stylesheet href="http://www.blogger.com/styles/atom.css" type="text/css"?><feed xmlns='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'><id>tag:blogger.com,1999:blog-5908817100659416807</id><updated>2024-10-07T01:22:17.689-05:00</updated><category term="php"/><category term="flex"/><category term="mn"/><category term="ubuntu"/><category term="actionscript3"/><category term="adobe air"/><category term="auto start"/><category term="cache"/><category term="chicago"/><category term="coding standards"/><category term="companies"/><category term="firefox"/><category term="firestarter"/><category term="flex 3"/><category term="flex3"/><category term="gmail notify"/><category term="hail"/><category term="lino lakes"/><category term="minnesota"/><category term="mod_rewrite"/><category term="mysql"/><category term="pear"/><category term="php arch"/><category term="scalability"/><category term="snow leopard"/><category term="symfony"/><category term="zend"/><title type='text'>PHP in MN (and other ramblings)</title><subtitle type='html'></subtitle><link rel='http://schemas.google.com/g/2005#feed' type='application/atom+xml' href='http://phpmn.blogspot.com/feeds/posts/default'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5908817100659416807/posts/default?redirect=false'/><link rel='alternate' type='text/html' href='http://phpmn.blogspot.com/'/><link rel='hub' href='http://pubsubhubbub.appspot.com/'/><author><name>Jereme Allen</name><uri>http://www.blogger.com/profile/04701777287857092720</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='31' height='32' src='//blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhXXIi23uYvRXM7tOHYKar89CQBdtvQ4wDABGr6jfN1j0OlRuDC6IufRw3L-B4vyD9okL9x88khKWYBk-YzD81qIN7eBzwULnoWJMP2mE0alXQns-pyEsHlmHWydyT3UA/s220/jeremeallen.jpg'/></author><generator version='7.00' uri='http://www.blogger.com'>Blogger</generator><openSearch:totalResults>20</openSearch:totalResults><openSearch:startIndex>1</openSearch:startIndex><openSearch:itemsPerPage>25</openSearch:itemsPerPage><entry><id>tag:blogger.com,1999:blog-5908817100659416807.post-8164424781120426444</id><published>2010-11-03T11:51:00.000-05:00</published><updated>2010-11-03T11:51:06.351-05:00</updated><title type='text'>Testing the new feed</title><content type='html'>Testing the new feed</content><link rel='replies' type='application/atom+xml' href='http://phpmn.blogspot.com/feeds/8164424781120426444/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment/fullpage/post/5908817100659416807/8164424781120426444' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5908817100659416807/posts/default/8164424781120426444'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5908817100659416807/posts/default/8164424781120426444'/><link rel='alternate' type='text/html' href='http://phpmn.blogspot.com/2010/11/testing-new-feed.html' title='Testing the new feed'/><author><name>Jereme Allen</name><uri>http://www.blogger.com/profile/04701777287857092720</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='31' height='32' src='//blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhXXIi23uYvRXM7tOHYKar89CQBdtvQ4wDABGr6jfN1j0OlRuDC6IufRw3L-B4vyD9okL9x88khKWYBk-YzD81qIN7eBzwULnoWJMP2mE0alXQns-pyEsHlmHWydyT3UA/s220/jeremeallen.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5908817100659416807.post-2005859616324865479</id><published>2010-04-16T08:05:00.000-05:00</published><updated>2010-04-16T08:05:43.207-05:00</updated><title type='text'>Sending Email from CLI task in Symfony 1.2</title><content type='html'>I kept getting the following error when trying to send an email in a task in Symfony 1.2:&lt;br /&gt;
&lt;br /&gt;
&amp;nbsp;The &quot;default&quot; context does not exist.&lt;br /&gt;
&lt;br /&gt;
Found the solution here:&lt;br /&gt;
&lt;br /&gt;
&lt;a href=&quot;http://groups.google.com/group/symfony-users/browse_thread/thread/1463d4bf4176d23d&quot;&gt;http://groups.google.com/group/symfony-users/browse_thread/thread/1463d4bf4176d23d&lt;/a&gt;</content><link rel='replies' type='application/atom+xml' href='http://phpmn.blogspot.com/feeds/2005859616324865479/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment/fullpage/post/5908817100659416807/2005859616324865479' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5908817100659416807/posts/default/2005859616324865479'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5908817100659416807/posts/default/2005859616324865479'/><link rel='alternate' type='text/html' href='http://phpmn.blogspot.com/2010/04/sending-email-from-cli-task-in-symfony.html' title='Sending Email from CLI task in Symfony 1.2'/><author><name>Jereme Allen</name><uri>http://www.blogger.com/profile/04701777287857092720</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='31' height='32' src='//blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhXXIi23uYvRXM7tOHYKar89CQBdtvQ4wDABGr6jfN1j0OlRuDC6IufRw3L-B4vyD9okL9x88khKWYBk-YzD81qIN7eBzwULnoWJMP2mE0alXQns-pyEsHlmHWydyT3UA/s220/jeremeallen.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5908817100659416807.post-8735758407545620750</id><published>2010-04-08T11:45:00.001-05:00</published><updated>2010-04-08T11:46:04.415-05:00</updated><title type='text'>Symfony Configuration Constants</title><content type='html'>&lt;pre&gt;&lt;code&gt;Located &lt;a href=&quot;http://www.symfony-project.org/book/1_2/19-Mastering-Symfony-s-Configuration-Files%20&quot;&gt;here&lt;/a&gt; in the Symfony book.&lt;/code&gt;&lt;/pre&gt;&lt;pre&gt;&lt;code&gt;&amp;nbsp;&lt;/code&gt;&lt;/pre&gt;&lt;pre&gt;&lt;code&gt;sf_root_dir           # myproject/
sf_apps_dir           #   apps/
sf_app_dir            #     frontend/
sf_app_config_dir     #       config/
sf_app_i18n_dir       #       i18n/
sf_app_lib_dir        #       lib/
sf_app_module_dir     #       modules/
sf_app_template_dir   #       templates/
sf_cache_dir          #   cache/
sf_app_base_cache_dir #     frontend/
sf_app_cache_dir      #       prod/
sf_template_cache_dir #         templates/
sf_i18n_cache_dir     #         i18n/
sf_config_cache_dir   #         config/
sf_test_cache_dir     #         test/
sf_module_cache_dir   #         modules/
sf_config_dir         #   config/
sf_data_dir           #   data/
sf_doc_dir            #   doc/
sf_lib_dir            #   lib/
sf_log_dir            #   log/
sf_test_dir           #   test/
sf_plugins_dir        #   plugins/
sf_web_dir            #   web/
sf_upload_dir         #     uploads/&lt;/code&gt;&lt;/pre&gt;</content><link rel='replies' type='application/atom+xml' href='http://phpmn.blogspot.com/feeds/8735758407545620750/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment/fullpage/post/5908817100659416807/8735758407545620750' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5908817100659416807/posts/default/8735758407545620750'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5908817100659416807/posts/default/8735758407545620750'/><link rel='alternate' type='text/html' href='http://phpmn.blogspot.com/2010/04/symfony-configuration-constants.html' title='Symfony Configuration Constants'/><author><name>Jereme Allen</name><uri>http://www.blogger.com/profile/04701777287857092720</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='31' height='32' src='//blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhXXIi23uYvRXM7tOHYKar89CQBdtvQ4wDABGr6jfN1j0OlRuDC6IufRw3L-B4vyD9okL9x88khKWYBk-YzD81qIN7eBzwULnoWJMP2mE0alXQns-pyEsHlmHWydyT3UA/s220/jeremeallen.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5908817100659416807.post-2748939704314553063</id><published>2009-09-28T09:00:00.002-05:00</published><updated>2009-09-28T09:05:18.730-05:00</updated><title type='text'>PHP Tidy on MAMP</title><content type='html'>Needed to install Tidy with MAMP.  Some googling found a few solutions, none seemed to work.  One caveat is that I am running on Snow Leopard and needed to back out PHP 5.3 to 5.2.&lt;br /&gt;&lt;br /&gt;I use the Zend Studio IDE for development.  My solution was the following:&lt;br /&gt;&lt;br /&gt;-  Goto the zend studio included tidy.so, mine was found at /Applications/Zend/Zend Studio - 7.0.0/plugins/org.zend.php.debug.debugger.macosx_5.2.26.v20090514/resources/php5/ext/tidy.so&lt;br /&gt;-  I copied the tidy.so to /Applications/MAMP/bin/php5/lib/php/extensions/no-debug-non-zts-20050922/tidy.so&lt;br /&gt;-  Open up the php.ini with MAMP, /Applications/MAMP/conf/php5/php.ini&lt;br /&gt;-  Add &#39;&#39;extension=tidy.so&quot; to your php.ini file&lt;br /&gt;-  Restart Apache&lt;br /&gt;-  Tidy should now be available</content><link rel='replies' type='application/atom+xml' href='http://phpmn.blogspot.com/feeds/2748939704314553063/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment/fullpage/post/5908817100659416807/2748939704314553063' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5908817100659416807/posts/default/2748939704314553063'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5908817100659416807/posts/default/2748939704314553063'/><link rel='alternate' type='text/html' href='http://phpmn.blogspot.com/2009/09/php-tidy-on-mamp.html' title='PHP Tidy on MAMP'/><author><name>Jereme Allen</name><uri>http://www.blogger.com/profile/04701777287857092720</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='31' height='32' src='//blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhXXIi23uYvRXM7tOHYKar89CQBdtvQ4wDABGr6jfN1j0OlRuDC6IufRw3L-B4vyD9okL9x88khKWYBk-YzD81qIN7eBzwULnoWJMP2mE0alXQns-pyEsHlmHWydyT3UA/s220/jeremeallen.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5908817100659416807.post-4519967009684117476</id><published>2009-09-21T17:00:00.002-05:00</published><updated>2009-09-21T17:04:16.205-05:00</updated><title type='text'>Google Embedded Maps</title><content type='html'>I needed to remove the embedded google map address bubble for a client. &lt;br /&gt;&lt;br /&gt;Found the solution &lt;a href=&quot;http://www.wduffy.co.uk/blog/remove-address-bubble-from-google-maps-iframe/&quot;&gt;here&lt;/a&gt;.  In short set the param &quot;iwloc=&quot;, keeping the parameter, removing the value.&lt;br /&gt;&lt;br /&gt;Hoping more links to the article will make the solution easier to find.</content><link rel='replies' type='application/atom+xml' href='http://phpmn.blogspot.com/feeds/4519967009684117476/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment/fullpage/post/5908817100659416807/4519967009684117476' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5908817100659416807/posts/default/4519967009684117476'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5908817100659416807/posts/default/4519967009684117476'/><link rel='alternate' type='text/html' href='http://phpmn.blogspot.com/2009/09/google-embedded-maps.html' title='Google Embedded Maps'/><author><name>Jereme Allen</name><uri>http://www.blogger.com/profile/04701777287857092720</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='31' height='32' src='//blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhXXIi23uYvRXM7tOHYKar89CQBdtvQ4wDABGr6jfN1j0OlRuDC6IufRw3L-B4vyD9okL9x88khKWYBk-YzD81qIN7eBzwULnoWJMP2mE0alXQns-pyEsHlmHWydyT3UA/s220/jeremeallen.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5908817100659416807.post-5171498936979222969</id><published>2009-09-15T09:57:00.004-05:00</published><updated>2009-09-15T10:17:45.459-05:00</updated><category scheme="http://www.blogger.com/atom/ns#" term="php"/><category scheme="http://www.blogger.com/atom/ns#" term="snow leopard"/><category scheme="http://www.blogger.com/atom/ns#" term="symfony"/><title type='text'>Snow Leopard and Symfony</title><content type='html'>Last week I performed the upgrade to Snow Leopard.  As a Mac newbie (recent convert from Ubuntu), I&#39;m working through the upgrade in Snow Leopard to PHP 5.3.  Due to our web hosting environment at this time we can&#39;t make the jump to PHP 5.3.&lt;br /&gt;&lt;br /&gt;After the upgrade of Snow Leopard, on the command line I started to receive the message:&lt;br /&gt;&lt;br /&gt;&lt;span style=&quot;font-weight: bold;&quot;&gt;Warning: date(): It is not safe to rely on the system&#39;s timezone settings. You are *required* to use the date.timezone setting or the date_default_timezone_set() function.&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;This morning I needed to work through generating a couple of tasks for our application.  Trying to fire up a task generated the following error:&lt;br /&gt;&lt;br /&gt;&lt;span style=&quot;font-weight: bold;&quot;&gt;Unable to open PDO connection [wrapped: SQLSTATE[HY000] [2002] No such file or directory]&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;My solution was I needed to downgrade my local install to PHP 5.2.  I&#39;m all for running the latest and greatest PHP, but now is not the time.  I work on a Macbook with MAMP installed. Understanding I am approaching this from an Ubuntu perspective and there might be a better way to accomplish the following.  Remember attempt at your own risk....&lt;br /&gt;&lt;br /&gt;&lt;ul&gt;&lt;li&gt;The php executable is location at /usr/bin&lt;/li&gt;&lt;/ul&gt;&lt;ul&gt;&lt;li&gt;I copied the php executable to make sure I could jump back to PHP 5.3, I ran &quot;sudo mv php php5.3&quot;, renaming php to php5.3 in the directory.&lt;/li&gt;&lt;/ul&gt;&lt;ul&gt;&lt;li&gt;Then I want to create a symlink to the MAMP php version &quot;sudo ln -s /Applications/MAMP/bin/php5/bin/php php&quot;, creating a symlink php which points to the MAMP installed version.&lt;/li&gt;&lt;/ul&gt;&lt;br /&gt;Now running Symfony command line commands I&#39;m using the php executable that ships with MAMP.  I hope this helps.&lt;br /&gt;&lt;br /&gt;&lt;script src=&quot;http://businesscard2.com/js/embedCard.js&quot; type=&quot;text/javascript&quot;&gt;&lt;/script&gt;&lt;script type=&quot;text/javascript&quot;&gt;var card = new com.businesscard2.Card(null, &#39;jereme.businesscard2.com&#39;);card.draw();&lt;/script&gt;</content><link rel='replies' type='application/atom+xml' href='http://phpmn.blogspot.com/feeds/5171498936979222969/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment/fullpage/post/5908817100659416807/5171498936979222969' title='7 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5908817100659416807/posts/default/5171498936979222969'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5908817100659416807/posts/default/5171498936979222969'/><link rel='alternate' type='text/html' href='http://phpmn.blogspot.com/2009/09/snow-leopard-and-symfony.html' title='Snow Leopard and Symfony'/><author><name>Jereme Allen</name><uri>http://www.blogger.com/profile/04701777287857092720</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='31' height='32' src='//blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhXXIi23uYvRXM7tOHYKar89CQBdtvQ4wDABGr6jfN1j0OlRuDC6IufRw3L-B4vyD9okL9x88khKWYBk-YzD81qIN7eBzwULnoWJMP2mE0alXQns-pyEsHlmHWydyT3UA/s220/jeremeallen.jpg'/></author><thr:total>7</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5908817100659416807.post-7284298917424389360</id><published>2008-06-23T14:08:00.002-05:00</published><updated>2008-06-23T14:20:30.691-05:00</updated><title type='text'>Audible on Ubuntu</title><content type='html'>As an avid listener to the &lt;a href=&quot;http://www.twit.tv&quot;&gt;Twit&lt;/a&gt; network podcasts, each show typically is sponsored by &lt;a href=&quot;http://www.audible.com&quot;&gt;Audible&lt;/a&gt;.  As an Ubuntu user Audible has been a no-go.  Audible software is available for Windows and Apple. &lt;br /&gt;&lt;br /&gt;In looking for solutions for Ubuntu you will typically find a couple of solutions and/or opinions (some of the comments in &lt;a href=&quot;http://ubuntuforums.org/showthread.php?t=92960&quot;&gt;this post&lt;/a&gt; highlights the following solutions):&lt;br /&gt;&lt;ul&gt;&lt;li&gt;Since the files are DRM&#39;d the most common response it the DRM is a show stopper for many Linux users.  Many Linux users disregard Audible as easily as Audible diregards requests for a Linux client.&lt;/li&gt;&lt;li&gt;Use a virtual machine or dual boot in Windows and burn CD&#39;s&lt;/li&gt;&lt;/ul&gt;I can understand both solutions.  Secondly without eough demand to warrant development, it&#39;s not Audible&#39;s fault for not providing a Linux client.&lt;br /&gt;&lt;br /&gt;Still I wanted to see what I was missing with Audible.  &lt;a href=&quot;http://dapperjack.blogspot.com/2008/03/audible-in-ubuntu.html&quot;&gt;I found this post&lt;/a&gt; which describes using Wine with Audible and Firefox to create a workable solution.&lt;br /&gt;&lt;br /&gt;The added comment to the post makes this a great solution.  Based on the comment I created an Audible.sh file containing:&lt;br /&gt;&lt;br /&gt;#!/bin/bash&lt;br /&gt;env WINEPREFIX=&quot;/home/ja/.wine&quot; wine &quot;Z:\home\ja\Audible\Audible\BIN\AudibleDownloadHelper.exe&quot; $*&lt;br /&gt;&lt;br /&gt;Make the above file executable (right click, permissions, check the make this executable then close).&lt;br /&gt;&lt;br /&gt;Now log into your Audible account, go through the process of selecting a book, check out, then goto your library.  By clicking the download link, Firefox provides the &#39;Save As&#39; dialog.  Select the above shell program in the &#39;Open With&#39; options.  This then fires the download manager and downloads the file.  When complete the player launches and your good to go.&lt;br /&gt;&lt;br /&gt;The above solution will allow Linux users to try the Audible service.</content><link rel='replies' type='application/atom+xml' href='http://phpmn.blogspot.com/feeds/7284298917424389360/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment/fullpage/post/5908817100659416807/7284298917424389360' title='2 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5908817100659416807/posts/default/7284298917424389360'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5908817100659416807/posts/default/7284298917424389360'/><link rel='alternate' type='text/html' href='http://phpmn.blogspot.com/2008/06/audible-on-ubuntu.html' title='Audible on Ubuntu'/><author><name>Jereme Allen</name><uri>http://www.blogger.com/profile/04701777287857092720</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='31' height='32' src='//blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhXXIi23uYvRXM7tOHYKar89CQBdtvQ4wDABGr6jfN1j0OlRuDC6IufRw3L-B4vyD9okL9x88khKWYBk-YzD81qIN7eBzwULnoWJMP2mE0alXQns-pyEsHlmHWydyT3UA/s220/jeremeallen.jpg'/></author><thr:total>2</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5908817100659416807.post-1344837347320821186</id><published>2008-06-10T12:48:00.002-05:00</published><updated>2008-06-10T14:22:21.161-05:00</updated><title type='text'>New Laptop</title><content type='html'>A year ago I purchased a Dell Inspiron E1505 laptop as soon as the Ubuntu pre-installed option was available from Dell.&lt;br /&gt;&lt;br /&gt;With all the hype over the &lt;a href=&quot;http://developer.apple.com/wwdc/&quot;&gt;Apple Worldwide Developers Conference&lt;/a&gt;, I wanted to review the current status of laptop offerings from the perspective of a developer who has flushed Windows from his arsenal of platforms (other than virtualized instances).&lt;br /&gt;&lt;br /&gt;The second reason for the interest is I need a new battery for the Inspiron E1505, I&#39;m down to around 30 minutes running minimal applications.  A new 9 cell battery is just under $300, or roughly 10-20% the cost of a new laptop (which will come with a 9 cell battery).&lt;br /&gt;&lt;br /&gt;I am comparing high end laptops with roughly the following characteristics:&lt;br /&gt;&lt;ul&gt;&lt;li&gt;15 inch screen, glossy (personal preference)&lt;/li&gt;&lt;li&gt;~2.5 GHz dual core, to future proof the purchase a bit&lt;/li&gt;&lt;li&gt;At least 2GB of RAM, 4GB seems to make sense, again to future proof the purchase&lt;/li&gt;&lt;li&gt;~200GB hard disk.  The reality is most of my data is in the cloud, so disk size isn&#39;t that important.&lt;/li&gt;&lt;li&gt;9 cell battery.  I&#39;ve found myself becoming more mobile, working in battery required modes more often.&lt;/li&gt;&lt;/ul&gt;I am extremely interested in a new Macbook Pro.  A number of fellow developers have been using the systems and/or are moving to the Macbook Pro&#39;s so there is some extreme interest personally.  After configuring a system to match the above specs at the &lt;a href=&quot;http://store.apple.com&quot;&gt;apple store&lt;/a&gt;, I come up with a laptop for $2,699.  Personal issues with closed development aside, kind of spendy.&lt;br /&gt;&lt;br /&gt;I went back to the &lt;a href=&quot;http://www.dell.com&quot;&gt;Dell store&lt;/a&gt; to check out their Ubuntu offerings.  The first issue was their laptops are built with Ubuntu 7.10.  Not a deal breaker, but a little disappointing right when I get a new laptop I will need to update the distro.  Using their laptop customization tool I tried to build a laptop matching the above specs.  I fell a little short.  2.2 GHz processors with 128mb video card was as close as I could get.  The processor difference is insignificant to me, the video card is a big issue for me.  128mb nVidia is more horsepower than I need now, but I don&#39;t feel that future proofs my purchase.  The price for my configured system came in at $1,700 with a $90 discount.&lt;br /&gt;&lt;br /&gt;I have heard good reviews reagarding System 76 laptops.  They have a great powerhouse comperable to the Macbook Pro, the &lt;a href=&quot;http://system76.com/product_info.php?cPath=28&amp;amp;products_id=51&quot;&gt;Serval performance line&lt;/a&gt;.  The only difference is I am configuring with a 200 GB drive versus the 250 GB drive on the Macbook Pro.  The cost comes in at $1,743.&lt;br /&gt;&lt;br /&gt;None of the above take into account shipping, which I understand could drastically alter the costs of the systems.  The other consideration is there is an Apple store 5 miles from work, so repairs and support is a 15 minute car ride away.  The Ubuntu offerings are community supported, or send in the laptop via UPS.&lt;br /&gt;&lt;br /&gt;From a price perspective, the System 76 system to me is the winner, taking into account the vastly smaller video card on the Dell system.  Ease of use, coolness factor for the Macbook Pro, is it worth $1,000 more?  That is a question everyone needs to answer for themselves.&lt;br /&gt;&lt;br /&gt;Personally I&#39;ve invested the last 12 months in becoming an expert developing on my Ubuntu system.  I know the quirks, I know the issues.  Can I afford to relearn a new os (Mac OS)?  I believe I will go with the System 76 system.</content><link rel='replies' type='application/atom+xml' href='http://phpmn.blogspot.com/feeds/1344837347320821186/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment/fullpage/post/5908817100659416807/1344837347320821186' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5908817100659416807/posts/default/1344837347320821186'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5908817100659416807/posts/default/1344837347320821186'/><link rel='alternate' type='text/html' href='http://phpmn.blogspot.com/2008/06/new-laptop.html' title='New Laptop'/><author><name>Jereme Allen</name><uri>http://www.blogger.com/profile/04701777287857092720</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='31' height='32' src='//blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhXXIi23uYvRXM7tOHYKar89CQBdtvQ4wDABGr6jfN1j0OlRuDC6IufRw3L-B4vyD9okL9x88khKWYBk-YzD81qIN7eBzwULnoWJMP2mE0alXQns-pyEsHlmHWydyT3UA/s220/jeremeallen.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5908817100659416807.post-4672143190854741420</id><published>2008-06-02T21:03:00.003-05:00</published><updated>2008-06-02T21:16:35.474-05:00</updated><title type='text'>PHP 4.x to 5.2.6</title><content type='html'>I have one last client that was using PHP 4.x, upgrading has been in the works for a long time.  The client uses PHP and COM to automate Excel and Word document generation.  The classes that performed the automation did not work in PHP 5.x.  There wasn&#39;t a compelling reason to goto the new version until PHP 4.x was end of lifed.&lt;br /&gt;&lt;br /&gt;The upgrade went surprisingly well.  A couple of PHP.ini settings and getting the appropriate PEAR packages installed was the majority of work.  The one issue was with Excel and COM.&lt;br /&gt;&lt;br /&gt;I&#39;m posting below the change that I had to make to the code.  From various Google searches I doubt the other 3 PHP developers on the planet using PHP and COM to talk to Microsoft Office will find the below helpful.  Regardless here is the change:&lt;br /&gt;&lt;br /&gt;&lt;ul&gt;&lt;li&gt;I initially used the below to write values to a specific spreadsheet, the solution was found &lt;a href=&quot;http://sydphp.org/presentations/010606-excel.html&quot;&gt;here&lt;/a&gt;:&lt;p&gt;&lt;/p&gt;&lt;p&gt;foreach($data as $key =&gt; $value ){&lt;br /&gt;      $excel_cell = $Worksheet-&gt;Range($key);&lt;br /&gt;       $excel_cell-&gt;activate;&lt;br /&gt;       $excel_cell-&gt;value = $value;&lt;br /&gt;}&lt;br /&gt;&lt;/p&gt;&lt;br /&gt;&lt;/li&gt;&lt;li&gt;The cell-&gt;activate call was not working and I modified the code to the below, suggested &lt;a href=&quot;http://www.anthony-vba.kefra.com/vba/vbabasic2.htm&quot;&gt;here&lt;/a&gt;:&lt;p&gt;&lt;/p&gt;&lt;p&gt;foreach($data as $key =&gt; $value ){&lt;br /&gt;$excel_cell = $Worksheet-&gt;Range($key)-&gt;Value = $value;&lt;br /&gt;}&lt;br /&gt;&lt;/p&gt;&lt;br /&gt;&lt;/li&gt;&lt;/ul&gt;The refactored code is much cleaner and a positive step from a code perspective.&lt;br /&gt;&lt;br /&gt;Finally, a &lt;a href=&quot;http://support.microsoft.com/default.aspx?scid=http://support.microsoft.com:80/support/kb/articles/Q257/7/57.asp&amp;amp;NoWebContent=1&quot;&gt;stern warning from Microsoft&lt;/a&gt; that the process I&#39;m using is a bad idea.</content><link rel='replies' type='application/atom+xml' href='http://phpmn.blogspot.com/feeds/4672143190854741420/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment/fullpage/post/5908817100659416807/4672143190854741420' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5908817100659416807/posts/default/4672143190854741420'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5908817100659416807/posts/default/4672143190854741420'/><link rel='alternate' type='text/html' href='http://phpmn.blogspot.com/2008/06/php-4x-to-526.html' title='PHP 4.x to 5.2.6'/><author><name>Jereme Allen</name><uri>http://www.blogger.com/profile/04701777287857092720</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='31' height='32' src='//blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhXXIi23uYvRXM7tOHYKar89CQBdtvQ4wDABGr6jfN1j0OlRuDC6IufRw3L-B4vyD9okL9x88khKWYBk-YzD81qIN7eBzwULnoWJMP2mE0alXQns-pyEsHlmHWydyT3UA/s220/jeremeallen.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5908817100659416807.post-6619193281354683511</id><published>2008-05-29T15:53:00.003-05:00</published><updated>2008-05-30T17:15:20.624-05:00</updated><category scheme="http://www.blogger.com/atom/ns#" term="flex 3"/><category scheme="http://www.blogger.com/atom/ns#" term="flex3"/><category scheme="http://www.blogger.com/atom/ns#" term="ubuntu"/><title type='text'>Flex 3 on Ubuntu Hardy (8.04)</title><content type='html'>Finally found a post that got Flex 3 to work on Ubuntu Hardy Heron, the post is located &lt;a href=&quot;http://panscendo.com/installing-flex-builder-linux-alpha-3-on-unbuntu-804/&quot;&gt;here&lt;/a&gt;.&lt;br /&gt;&lt;br /&gt;A couple of additional points or issues that I ran into:&lt;br /&gt;&lt;ul&gt;&lt;li&gt;I ran without sudo and received an ominous warning to read a flash player notice in the application directory.  The file highlighted the fact that the system might not utilize the debug version of Flash.  Figuring I was going to have an issue I removed everything and ran the install using sudo.  Running as sudo caused some other issues to crop up.  I went back and re-ran as a normal user, tested and everything was fine.&lt;/li&gt;&lt;li&gt;Starting Eclipse caused an error window to display, &quot;Could not initialize the applications security component...&quot;, the fix can be found &lt;a href=&quot;https://bugs.launchpad.net/ubuntu/+source/eclipse/+bug/188380/+viewstatus&quot;&gt;here&lt;/a&gt; (in short manually create a directory ./mozilla/eclipse).&lt;/li&gt;&lt;li&gt;The Eclipse download location mentioned inthe article can be found &lt;a href=&quot;http://www.eclipse.org/downloads/download.php?file=/eclipse/downloads/drops/R-3.3.2-200802211800/eclipse-SDK-3.3.2-linux-gtk.tar.gz&quot;&gt;here&lt;/a&gt;.&lt;br /&gt;&lt;/li&gt;&lt;/ul&gt;</content><link rel='replies' type='application/atom+xml' href='http://phpmn.blogspot.com/feeds/6619193281354683511/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment/fullpage/post/5908817100659416807/6619193281354683511' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5908817100659416807/posts/default/6619193281354683511'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5908817100659416807/posts/default/6619193281354683511'/><link rel='alternate' type='text/html' href='http://phpmn.blogspot.com/2008/05/flex-3-on-ubuntu-hardy-804.html' title='Flex 3 on Ubuntu Hardy (8.04)'/><author><name>Jereme Allen</name><uri>http://www.blogger.com/profile/04701777287857092720</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='31' height='32' src='//blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhXXIi23uYvRXM7tOHYKar89CQBdtvQ4wDABGr6jfN1j0OlRuDC6IufRw3L-B4vyD9okL9x88khKWYBk-YzD81qIN7eBzwULnoWJMP2mE0alXQns-pyEsHlmHWydyT3UA/s220/jeremeallen.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5908817100659416807.post-3013004911457796288</id><published>2008-05-29T13:17:00.004-05:00</published><updated>2008-05-29T20:39:04.412-05:00</updated><category scheme="http://www.blogger.com/atom/ns#" term="coding standards"/><category scheme="http://www.blogger.com/atom/ns#" term="pear"/><category scheme="http://www.blogger.com/atom/ns#" term="php"/><category scheme="http://www.blogger.com/atom/ns#" term="zend"/><title type='text'>PHP Coding Standards</title><content type='html'>With an article in &lt;a href=&quot;http://www.phparch.com/c/magazine/issue/72&quot;&gt;April 2008 issue of PHP Architects magazine&lt;/a&gt;, there was an article that touched on coding standards.  At PHP Architects 2008 conference in Chicago one of the sessions touched on coding standards.&lt;br /&gt;&lt;br /&gt;I typically work individually or in a group of two on development projects.  There are always differences in standards followed by programmers.  There are endless debates on the intertubes on this subject.  This post is not to sway anyone one way or the other.  I have spent some time looking into two common recommendatiosn for coding standards, the &lt;a href=&quot;http://pear.php.net/manual/en/standards.php&quot;&gt;PEAR&lt;/a&gt; and &lt;a href=&quot;http://framework.zend.com/manual/en/coding-standard.html&quot;&gt;Zend&lt;/a&gt; coding standards.&lt;br /&gt;&lt;br /&gt;Why with an if is the &#39;{&#39; on the declaration line and with a class or method the &#39;{&#39; goes after the return?  My goal is to follow the coding standards on future projects to create a standard.&lt;br /&gt;&lt;br /&gt;Upon quick review I do follow 90% of the coding standards, as do most of the pro&lt;span style=&quot;font-size:100%;&quot;&gt;gram&lt;/span&gt;mers I work with.  The one that will take sometime to digest is:&lt;br /&gt;&lt;br /&gt;&lt;pre class=&quot;programlisting&quot;&gt;&lt;span style=&quot;font-size:100%;&quot;&gt;&lt;code&gt;&lt;span style=&quot;color: rgb(0, 0, 0);&quot;&gt;if ($a != 2) {&lt;br /&gt; $a = 2;&lt;br /&gt;} elseif ($&lt;span style=&quot;font-family:times new roman;&quot;&gt;a&lt;/span&gt; == 3) {&lt;br /&gt;$a = 4;&lt;br /&gt;} else {&lt;br /&gt;$a = 7;&lt;br /&gt;}&lt;br /&gt;&lt;br /&gt;and&lt;br /&gt;&lt;br /&gt;&lt;/span&gt;&lt;/code&gt;&lt;code&gt;&lt;span style=&quot;color: rgb(0, 0, 0);&quot;&gt;class Foo&lt;br /&gt;{&lt;br /&gt; /**&lt;br /&gt;  * WRONG&lt;br /&gt;  */&lt;br /&gt; public function bar()&lt;br /&gt; {&lt;br /&gt;     return($this-&gt;bar);&lt;br /&gt; }&lt;br /&gt;&lt;br /&gt; /**&lt;br /&gt;  * RIGHT&lt;br /&gt;  */&lt;br /&gt; public function bar()&lt;br /&gt; {&lt;br /&gt;     return $this-&gt;bar;&lt;br /&gt; }&lt;br /&gt;}&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;/span&gt;&lt;/code&gt;&lt;code&gt;&lt;span style=&quot;color: rgb(0, 0, 0);&quot;&gt;&lt;/span&gt;&lt;/code&gt;&lt;/span&gt;&lt;/pre&gt;&lt;br /&gt;Why with an if is the &#39;{&#39; on the declaration line and with a class or method the &#39;{&#39; goes after the return?  My goal is to follow the coding standards on future projects to create a standard.</content><link rel='replies' type='application/atom+xml' href='http://phpmn.blogspot.com/feeds/3013004911457796288/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment/fullpage/post/5908817100659416807/3013004911457796288' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5908817100659416807/posts/default/3013004911457796288'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5908817100659416807/posts/default/3013004911457796288'/><link rel='alternate' type='text/html' href='http://phpmn.blogspot.com/2008/05/php-coding-standards.html' title='PHP Coding Standards'/><author><name>Jereme Allen</name><uri>http://www.blogger.com/profile/04701777287857092720</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='31' height='32' src='//blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhXXIi23uYvRXM7tOHYKar89CQBdtvQ4wDABGr6jfN1j0OlRuDC6IufRw3L-B4vyD9okL9x88khKWYBk-YzD81qIN7eBzwULnoWJMP2mE0alXQns-pyEsHlmHWydyT3UA/s220/jeremeallen.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5908817100659416807.post-6278457765922740766</id><published>2008-05-28T07:52:00.005-05:00</published><updated>2008-05-28T08:09:02.882-05:00</updated><category scheme="http://www.blogger.com/atom/ns#" term="auto start"/><category scheme="http://www.blogger.com/atom/ns#" term="firestarter"/><category scheme="http://www.blogger.com/atom/ns#" term="gmail notify"/><category scheme="http://www.blogger.com/atom/ns#" term="ubuntu"/><title type='text'>Ubuntu Start Up Programs</title><content type='html'>Nagging issue that I never got around to look at was auto starting applications after a delay in Ubuntu.  Depending on the location, my wireless might take a few seconds to authenticate to the router.  This delay in some environments would trip up GMail notify and display connection errors.  A small issue.  After installing &lt;a href=&quot;http://www.fs-security.com/&quot;&gt;firestarter&lt;/a&gt; I would get an error dialog box stating that the connection was unavailable.&lt;br /&gt;&lt;br /&gt;The solution was presented in an Ubuntu thread &lt;a href=&quot;http://ubuntuforums.org/showthread.php?t=104473&quot;&gt;located here&lt;/a&gt;.  So now I have an auto_start folder in my home folder with scripts for each application that requires a delay.  In my instance &lt;a href=&quot;http://www.fs-security.com/&quot;&gt;firestarter&lt;/a&gt; and &lt;a href=&quot;http://www.debianadmin.com/gmail-notifier-for-ubuntu.html&quot;&gt;gmail notify&lt;/a&gt;.  In Ubuntu under System-&gt;Preferences-&gt;Sessions I then point to the above scripts in my auto_start folder.&lt;br /&gt;&lt;br /&gt;Not sure if there is an easier solution but the above solution works.</content><link rel='replies' type='application/atom+xml' href='http://phpmn.blogspot.com/feeds/6278457765922740766/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment/fullpage/post/5908817100659416807/6278457765922740766' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5908817100659416807/posts/default/6278457765922740766'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5908817100659416807/posts/default/6278457765922740766'/><link rel='alternate' type='text/html' href='http://phpmn.blogspot.com/2008/05/ubuntu-start-up-programs.html' title='Ubuntu Start Up Programs'/><author><name>Jereme Allen</name><uri>http://www.blogger.com/profile/04701777287857092720</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='31' height='32' src='//blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhXXIi23uYvRXM7tOHYKar89CQBdtvQ4wDABGr6jfN1j0OlRuDC6IufRw3L-B4vyD9okL9x88khKWYBk-YzD81qIN7eBzwULnoWJMP2mE0alXQns-pyEsHlmHWydyT3UA/s220/jeremeallen.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5908817100659416807.post-4555098495764931793</id><published>2008-05-27T09:35:00.004-05:00</published><updated>2008-05-27T09:43:35.013-05:00</updated><title type='text'>Virtual Box Kernel Upgrade 2.6.24-17-generic</title><content type='html'>Upgrade to Hardy Heron to kernel module 2.6.24-17-generic cause Virtual Box to stop working.  No updated kernel-modules were found in the existing repositories.  I followed various web postings to try to get this working.  Non worked.  Here&#39;s what I ended up doing to get this Virtual Box working again:&lt;br /&gt;&lt;br /&gt;Step 1 (&lt;a href=&quot;http://www.ubuntu-unleashed.com/2008/04/howto-install-virtualbox-in-hardy-heron.html&quot;&gt;found via this link&lt;/a&gt;):&lt;br /&gt;&lt;span id=&quot;fullpost&quot;&gt;&lt;code&gt;&lt;span style=&quot;font-size:130%;&quot;&gt;&lt;span style=&quot;font-family: times new roman;&quot;&gt;sudo sh -c &#39;echo &quot;# VirtualBox repository for Ubuntu Gutsy&lt;/span&gt;&lt;br /&gt;&lt;span style=&quot;font-family: times new roman;&quot;&gt;deb http://www.virtualbox.org/debian gutsy non-free&quot; \&lt;/span&gt;&lt;br /&gt;&lt;span style=&quot;font-family: times new roman;&quot;&gt; &gt; /etc/apt/sources.list.d/gutsy-virtualbox.list&#39;&lt;/span&gt;&lt;br /&gt;&lt;span style=&quot;font-family: times new roman;&quot;&gt;wget http://www.virtualbox.org/debian/innotek.asc -O- | sudo apt-key add -&lt;/span&gt;&lt;br /&gt;&lt;span style=&quot;font-family: times new roman;&quot;&gt;sudo apt-get update&lt;/span&gt;&lt;br /&gt;&lt;span style=&quot;font-family: times new roman;&quot;&gt;sudo apt-get -y install virtualbox&lt;br /&gt;&lt;br /&gt;Step 2:&lt;br /&gt;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/span&gt;&lt;span id=&quot;fullpost&quot;&gt;&lt;code&gt;&lt;span style=&quot;font-size:130%;&quot;&gt;&lt;span style=&quot;font-family: times new roman;&quot;&gt;sudo /etc/init.d/vboxdrv setup&lt;br /&gt;&lt;br /&gt;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/span&gt;&lt;span id=&quot;fullpost&quot;&gt;&lt;code&gt;&lt;span style=&quot;font-size:130%;&quot;&gt;&lt;span style=&quot;font-family: times new roman;&quot;&gt;Step 3:&lt;br /&gt;sudo apt-get install virtualbox-ose&lt;br /&gt;&lt;br /&gt;Step 2 was mentioned repeatedly as solutions to the kernel module issue.  More than likely I had an issue with my initial set-up where reinstalling everything flushed the problem.&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/span&gt;&lt;span id=&quot;fullpost&quot;&gt;&lt;code&gt;&lt;span style=&quot;font-size:130%;&quot;&gt;&lt;span style=&quot;font-family: times new roman;&quot;&gt;&lt;br /&gt;&lt;br /&gt;&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;/code&gt;&lt;/span&gt;</content><link rel='replies' type='application/atom+xml' href='http://phpmn.blogspot.com/feeds/4555098495764931793/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment/fullpage/post/5908817100659416807/4555098495764931793' title='1 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5908817100659416807/posts/default/4555098495764931793'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5908817100659416807/posts/default/4555098495764931793'/><link rel='alternate' type='text/html' href='http://phpmn.blogspot.com/2008/05/virtual-box-kernel-upgrade-2624-17.html' title='Virtual Box Kernel Upgrade 2.6.24-17-generic'/><author><name>Jereme Allen</name><uri>http://www.blogger.com/profile/04701777287857092720</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='31' height='32' src='//blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhXXIi23uYvRXM7tOHYKar89CQBdtvQ4wDABGr6jfN1j0OlRuDC6IufRw3L-B4vyD9okL9x88khKWYBk-YzD81qIN7eBzwULnoWJMP2mE0alXQns-pyEsHlmHWydyT3UA/s220/jeremeallen.jpg'/></author><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5908817100659416807.post-5023526881170600595</id><published>2008-05-26T10:46:00.008-05:00</published><updated>2008-05-26T11:06:11.150-05:00</updated><category scheme="http://www.blogger.com/atom/ns#" term="hail"/><category scheme="http://www.blogger.com/atom/ns#" term="lino lakes"/><category scheme="http://www.blogger.com/atom/ns#" term="minnesota"/><category scheme="http://www.blogger.com/atom/ns#" term="mn"/><title type='text'>Hail</title><content type='html'>&lt;a onblur=&quot;try {parent.deselectBloggerImageGracefully();} catch(e) {}&quot; href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhKo1oialW2zD5Tt5yDl5ywLx6DGJ2Vc8rnnSPSaLtr_gysFxNR9tcE5mbqidpQwCmGBXZivD2M8XjVFBKdUjUICkdjPpfcNvHymxQtBjCXzlIIGvx1WOk1LmwdkYxK4nnqc6XmeeCmeJo/s1600-h/IMG_0771.JPG&quot;&gt;&lt;img style=&quot;margin: 0pt 10px 10px 0pt; float: left; cursor: pointer;&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhKo1oialW2zD5Tt5yDl5ywLx6DGJ2Vc8rnnSPSaLtr_gysFxNR9tcE5mbqidpQwCmGBXZivD2M8XjVFBKdUjUICkdjPpfcNvHymxQtBjCXzlIIGvx1WOk1LmwdkYxK4nnqc6XmeeCmeJo/s200/IMG_0771.JPG&quot; alt=&quot;&quot; id=&quot;BLOGGER_PHOTO_ID_5204717486582816754&quot; border=&quot;0&quot; /&gt;&lt;/a&gt;&lt;br /&gt;&lt;a onblur=&quot;try {parent.deselectBloggerImageGracefully();} catch(e) {}&quot; href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjjjtFVnO-zPYB5gi3hSwO4KKdxEG45c8mbWJqVqo5N-lQKnTEuwmaUSSB_nrixbht90iF9LWqC8veAFz0v0BJ5Kfil_0tavqeFPqKvCYOZW91n3NssPbaQKZIIJPqH5x-CzL_4u3B2oYo/s1600-h/IMG_0768.JPG&quot;&gt;&lt;img style=&quot;margin: 0pt 0pt 10px 10px; float: right; cursor: pointer;&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjjjtFVnO-zPYB5gi3hSwO4KKdxEG45c8mbWJqVqo5N-lQKnTEuwmaUSSB_nrixbht90iF9LWqC8veAFz0v0BJ5Kfil_0tavqeFPqKvCYOZW91n3NssPbaQKZIIJPqH5x-CzL_4u3B2oYo/s200/IMG_0768.JPG&quot; alt=&quot;&quot; id=&quot;BLOGGER_PHOTO_ID_5204717284719353826&quot; border=&quot;0&quot; /&gt;&lt;/a&gt;&lt;br /&gt;&lt;a onblur=&quot;try {parent.deselectBloggerImageGracefully();} catch(e) {}&quot; href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjzinKJh_q6gXjt0bgUmTX94Riv5POjFqiSPyB-GVRek-Pa0r5gNz_94WOOIvwumbJseF1ERHaouuMfut5y4BnpG6QTUZEjUpLjiQ9aeAkz1BL6R7V3qgZLQrpmUJ2Hu2BFcBg7roTXjyo/s1600-h/IMG_0767.JPG&quot;&gt;&lt;img style=&quot;margin: 0pt 10px 10px 0pt; float: left; cursor: pointer;&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjzinKJh_q6gXjt0bgUmTX94Riv5POjFqiSPyB-GVRek-Pa0r5gNz_94WOOIvwumbJseF1ERHaouuMfut5y4BnpG6QTUZEjUpLjiQ9aeAkz1BL6R7V3qgZLQrpmUJ2Hu2BFcBg7roTXjyo/s200/IMG_0767.JPG&quot; alt=&quot;&quot; id=&quot;BLOGGER_PHOTO_ID_5204717104330727378&quot; border=&quot;0&quot; /&gt;&lt;/a&gt;&lt;br /&gt;Sunday (5/25/2008) wasn&#39;t fun.  Driving back on Highway 169 in the morning,&lt;a href=&quot;http://maps.google.com/maps?f=q&amp;amp;hl=en&amp;amp;geocode=&amp;amp;q=princeton,+mn&amp;amp;ie=UTF8&amp;amp;ll=45.622442,-93.594589&amp;amp;spn=0.162557,0.266762&amp;amp;z=12&quot;&gt; just north of Princeton, MN&lt;/a&gt; we ran into a hail storm.  A few dents in the car, nothing to serious.&lt;br /&gt;&lt;br /&gt;Later in the evening in &lt;a href=&quot;http://maps.google.com/maps?f=q&amp;amp;hl=en&amp;amp;geocode=&amp;amp;q=Lino+Lakes,+MN&amp;amp;ie=UTF8&amp;amp;z=12&quot;&gt;Lino Lakes, MN&lt;/a&gt;, our house was hit with another hail storm (just missing a tornado that just went north of us in Hugo, MN).  A few images taken from inside the house during the hail storm.&lt;br /&gt;&lt;br /&gt;Last fall our roof and siding was replaced from last years hail storm.  There are going to have to replace everything again, the siding and roof took a worse beating this time around than last year.&lt;br /&gt;&lt;br /&gt;The next day or so will be a clean-up day around the neighborhood, more tech related postings will occur following clean-up.</content><link rel='replies' type='application/atom+xml' href='http://phpmn.blogspot.com/feeds/5023526881170600595/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment/fullpage/post/5908817100659416807/5023526881170600595' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5908817100659416807/posts/default/5023526881170600595'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5908817100659416807/posts/default/5023526881170600595'/><link rel='alternate' type='text/html' href='http://phpmn.blogspot.com/2008/05/hail.html' title='Hail'/><author><name>Jereme Allen</name><uri>http://www.blogger.com/profile/04701777287857092720</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='31' height='32' src='//blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhXXIi23uYvRXM7tOHYKar89CQBdtvQ4wDABGr6jfN1j0OlRuDC6IufRw3L-B4vyD9okL9x88khKWYBk-YzD81qIN7eBzwULnoWJMP2mE0alXQns-pyEsHlmHWydyT3UA/s220/jeremeallen.jpg'/></author><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhKo1oialW2zD5Tt5yDl5ywLx6DGJ2Vc8rnnSPSaLtr_gysFxNR9tcE5mbqidpQwCmGBXZivD2M8XjVFBKdUjUICkdjPpfcNvHymxQtBjCXzlIIGvx1WOk1LmwdkYxK4nnqc6XmeeCmeJo/s72-c/IMG_0771.JPG" height="72" width="72"/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5908817100659416807.post-5130929478074052315</id><published>2008-05-21T21:27:00.002-05:00</published><updated>2008-05-21T21:38:37.383-05:00</updated><category scheme="http://www.blogger.com/atom/ns#" term="chicago"/><category scheme="http://www.blogger.com/atom/ns#" term="mod_rewrite"/><category scheme="http://www.blogger.com/atom/ns#" term="mysql"/><category scheme="http://www.blogger.com/atom/ns#" term="php"/><category scheme="http://www.blogger.com/atom/ns#" term="php arch"/><category scheme="http://www.blogger.com/atom/ns#" term="scalability"/><title type='text'>Wednesday at php|tek in Chicago, IL</title><content type='html'>I attended a number of great session today at &lt;a href=&quot;http://tek.phparch.com/c/p/live,main&quot;&gt;php|tek in Chicago 2008&lt;/a&gt;.  Thanks to all of the presenters.  I&#39;m on absolute information overload.  My gross oversimplification of a couple of notes are listed below, all warrant further research:&lt;br /&gt;&lt;br /&gt;&lt;ul&gt;&lt;li&gt;When implementing mod_rewrite rules enable the Rewrite Log for troubleshooting.  For every incoming URI (depending on the error level) the log will contain the incoming URI and what if anything your mod_rewrite rule is doing to the string.  Make sure to only use in development.&lt;/li&gt;&lt;li&gt;Using the flag [R=301] you can use mod_rewrite to return a 301 permanent redirect header.&lt;/li&gt;&lt;li&gt;For distributed apps consider specialized subdomains that serve discrete purposes.  This can aid in the breakup of an application into discrete scalable modules.&lt;/li&gt;&lt;li&gt;For an immediate boost in performance on one box, implement some version of the following:  /var/www/webapp map to www.domain.com for serving application content (i.e. PHP scripts), /var/www/static map to static.domain.com for serving static content (i.e. Images, CSS, JS) as IE will open another pipe to retrieve this content.&lt;/li&gt;&lt;li&gt;For scalablity in your models seperate read and write functions as this will serve in scalability for when your database scales.  One &quot;easy&quot; database scalability model has one database for writes and one or more for reads.  By seperating your model upfront you allow for the before mentioned scalability.&lt;/li&gt;&lt;li&gt;Not using AutoIncrement in your apps will make scalability to a Master-Master set-up less painful.  Master-Master with AutoIncrements introduces some serious application issues.&lt;/li&gt;&lt;/ul&gt;This slides will be posted to &lt;a href=&quot;http://tek.phparch.com/c/p/live,slides&quot;&gt;this location&lt;/a&gt; when they become available.</content><link rel='replies' type='application/atom+xml' href='http://phpmn.blogspot.com/feeds/5130929478074052315/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment/fullpage/post/5908817100659416807/5130929478074052315' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5908817100659416807/posts/default/5130929478074052315'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5908817100659416807/posts/default/5130929478074052315'/><link rel='alternate' type='text/html' href='http://phpmn.blogspot.com/2008/05/wednesday-at-phptek-in-chicago-il.html' title='Wednesday at php|tek in Chicago, IL'/><author><name>Jereme Allen</name><uri>http://www.blogger.com/profile/04701777287857092720</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='31' height='32' src='//blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhXXIi23uYvRXM7tOHYKar89CQBdtvQ4wDABGr6jfN1j0OlRuDC6IufRw3L-B4vyD9okL9x88khKWYBk-YzD81qIN7eBzwULnoWJMP2mE0alXQns-pyEsHlmHWydyT3UA/s220/jeremeallen.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5908817100659416807.post-6368604729165297768</id><published>2008-05-20T16:31:00.001-05:00</published><updated>2008-05-20T16:37:33.877-05:00</updated><category scheme="http://www.blogger.com/atom/ns#" term="cache"/><category scheme="http://www.blogger.com/atom/ns#" term="firefox"/><category scheme="http://www.blogger.com/atom/ns#" term="flex"/><title type='text'>Rapid Application Development with Flex</title><content type='html'>This is probably an issue with how I program and my unframiliarity with Flex.  I&#39;m going through a serious of small tweaks and error trapping on a widget. Normally when I&#39;m doing web development I naturally do a Shift-&gt;Refresh in the browser to clear the cache.  This wasn&#39;t flushing the local cache in Firefox 3.0b5.  I was expecting a reload of the flash object and reload of the web service XML.   This wasn&#39;t occurring causing some undue gray hairs.  I&#39;m injecting a timestamp in the GET request to avoid caching of the GET request, so that shouldn&#39;t be the issue.&lt;br /&gt;&lt;br /&gt;How I got around the issue was to disable the Net monitoring in Firebug and then re-enabling.  This setting change seemed to force a reload of everything on the page.&lt;br /&gt;&lt;br /&gt;I&#39;m guessing I am missing something obvious?</content><link rel='replies' type='application/atom+xml' href='http://phpmn.blogspot.com/feeds/6368604729165297768/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment/fullpage/post/5908817100659416807/6368604729165297768' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5908817100659416807/posts/default/6368604729165297768'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5908817100659416807/posts/default/6368604729165297768'/><link rel='alternate' type='text/html' href='http://phpmn.blogspot.com/2008/05/rapid-application-development-with-flex.html' title='Rapid Application Development with Flex'/><author><name>Jereme Allen</name><uri>http://www.blogger.com/profile/04701777287857092720</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='31' height='32' src='//blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhXXIi23uYvRXM7tOHYKar89CQBdtvQ4wDABGr6jfN1j0OlRuDC6IufRw3L-B4vyD9okL9x88khKWYBk-YzD81qIN7eBzwULnoWJMP2mE0alXQns-pyEsHlmHWydyT3UA/s220/jeremeallen.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5908817100659416807.post-5717793735931947550</id><published>2008-05-19T20:18:00.000-05:00</published><updated>2008-05-19T20:32:58.302-05:00</updated><category scheme="http://www.blogger.com/atom/ns#" term="actionscript3"/><category scheme="http://www.blogger.com/atom/ns#" term="adobe air"/><category scheme="http://www.blogger.com/atom/ns#" term="flex"/><title type='text'>Flexing</title><content type='html'>I spent the day developing in Flex.  It&#39;s always fun and challenging working in a new environment.  Of course I&#39;m under an extremely tight deadline so it&#39;s learn as I go trying to create a relatively simple widget.  I&#39;ll post again when the widget has been released for public consumption.&lt;br /&gt;&lt;br /&gt;Some resources that I ran across in my Flex adventure are listed below.  Of course given more time in using Flex these observations might be trivial:&lt;br /&gt;&lt;ul&gt;&lt;li&gt;Installing the environment on Ubuntu, &lt;a href=&quot;http://www.williambrownstreet.net/wordpress/?p=100&quot;&gt;click here&lt;/a&gt;.&lt;/li&gt;&lt;li&gt;Apparently the getUrl() to goto a URL is something new in ActionScript 3, &lt;a href=&quot;http://scriptplayground.com/tutorials/as/getURL-in-Actionscript-3/&quot;&gt;click here for an example&lt;/a&gt;.&lt;/li&gt;&lt;li&gt;&lt;a href=&quot;http://scriptplayground.com/tutorials/as/getURL-in-Actionscript-3/&quot;&gt;This article&lt;/a&gt; provided good insight into ActionScript3 for those with programming experience.&lt;/li&gt;&lt;/ul&gt;The Flex framework is a blast to pick up and learn.&lt;br /&gt;&lt;br /&gt;&lt;a href=&quot;http://www.adobe.com/products/air/&quot;&gt;Adobe Air&lt;/a&gt; seems like a great technology in bringing web principles to the desktop.  I recently started using &lt;a href=&quot;http://www.twhirl.org/&quot;&gt;Twhirl&lt;/a&gt; (Adobe Air desktop app for Twitter), great simple functionality utilizing Adobe Air.</content><link rel='replies' type='application/atom+xml' href='http://phpmn.blogspot.com/feeds/5717793735931947550/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment/fullpage/post/5908817100659416807/5717793735931947550' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5908817100659416807/posts/default/5717793735931947550'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5908817100659416807/posts/default/5717793735931947550'/><link rel='alternate' type='text/html' href='http://phpmn.blogspot.com/2008/05/flexing.html' title='Flexing'/><author><name>Jereme Allen</name><uri>http://www.blogger.com/profile/04701777287857092720</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='31' height='32' src='//blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhXXIi23uYvRXM7tOHYKar89CQBdtvQ4wDABGr6jfN1j0OlRuDC6IufRw3L-B4vyD9okL9x88khKWYBk-YzD81qIN7eBzwULnoWJMP2mE0alXQns-pyEsHlmHWydyT3UA/s220/jeremeallen.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5908817100659416807.post-3629622059811884921</id><published>2008-05-18T20:17:00.000-05:00</published><updated>2008-05-18T20:27:07.317-05:00</updated><title type='text'>To framework or not to framework</title><content type='html'>Finishing a code review for a local start-up.  The application is fairly complicated out of necessity.  The issue is that the site has a number of small bugs and an ongoing issue of a bug fix usually breaking a number of other features.&lt;br /&gt;&lt;br /&gt;My first assumption was that the application was a custom job.  The application was built using a build from scratch framework.  It is the most complex pile of code I&#39;ve seen in a long time.  It&#39;s a nice object oriented approach with the concept of a controller and a mix of views and models.  This is where the niceness wears off, there are countless layers of abstraction, non conformity to a MVC approach and a hodgepodge of OO code, functional code, OO SQL abstractions and handcoded SQL that is ten times more complicated than it needs to be.&lt;br /&gt;&lt;br /&gt;Now off my soapbox, I&#39;ve done custom frameworks for my PHP work for years.  In the past 2 years I have sworn off personal custom frameworks and now utilize &lt;a href=&quot;http://www.symfony-project.org/&quot;&gt;Symfony&lt;/a&gt; (for complex and controllable environments) and &lt;a href=&quot;http://codeigniter.com/&quot;&gt;CodeIgnitor&lt;/a&gt; (for flexible virtually hosted solutions).&lt;br /&gt;&lt;br /&gt;I realize there are detractors to the framework approach.  I&#39;m not one of them, one to many times trying to figure out the mindset of the programmer I guess.</content><link rel='replies' type='application/atom+xml' href='http://phpmn.blogspot.com/feeds/3629622059811884921/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment/fullpage/post/5908817100659416807/3629622059811884921' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5908817100659416807/posts/default/3629622059811884921'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5908817100659416807/posts/default/3629622059811884921'/><link rel='alternate' type='text/html' href='http://phpmn.blogspot.com/2008/05/to-framework-or-not-to-framework.html' title='To framework or not to framework'/><author><name>Jereme Allen</name><uri>http://www.blogger.com/profile/04701777287857092720</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='31' height='32' src='//blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhXXIi23uYvRXM7tOHYKar89CQBdtvQ4wDABGr6jfN1j0OlRuDC6IufRw3L-B4vyD9okL9x88khKWYBk-YzD81qIN7eBzwULnoWJMP2mE0alXQns-pyEsHlmHWydyT3UA/s220/jeremeallen.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5908817100659416807.post-5991931319251401681</id><published>2008-05-16T15:07:00.000-05:00</published><updated>2008-05-16T15:17:55.927-05:00</updated><category scheme="http://www.blogger.com/atom/ns#" term="companies"/><category scheme="http://www.blogger.com/atom/ns#" term="mn"/><category scheme="http://www.blogger.com/atom/ns#" term="php"/><title type='text'>Minnesota PHP Opportunities</title><content type='html'>One of the overarching themes at the Minne-Bar event on May 10, 2008 was local development talent.  I met a large number of local developers and a fair amount were utilizing &lt;span style=&quot;font-weight: bold;&quot;&gt;PHP&lt;/span&gt; as their primary language.&lt;br /&gt;&lt;br /&gt;I&#39;m in a position were I am passively looking for &lt;span style=&quot;font-weight: bold;&quot;&gt;PHP&lt;/span&gt; related opportunities in the Twin Cities area.  Part of my intent here is to keep a list of companies that are utilizing PHP talent.&lt;br /&gt;&lt;br /&gt;The following is a list of local companies that are utilizing &lt;span style=&quot;font-weight: bold;&quot;&gt;PHP&lt;/span&gt; (in no particular order other than Workface is my current employer):&lt;br /&gt;&lt;br /&gt;&lt;ul&gt;&lt;li&gt;&lt;a href=&quot;http://www.workfaceinc.com&quot;&gt;Workface Inc&lt;/a&gt;&lt;/li&gt;&lt;li&gt;&lt;a href=&quot;http://regiscorp.com/&quot;&gt;Regis&lt;/a&gt;&lt;/li&gt;&lt;li&gt;&lt;a href=&quot;http://www.cotterweb.net/&quot;&gt;CotterWeb&lt;/a&gt;&lt;/li&gt;&lt;li&gt;&lt;a href=&quot;http://www.startribune.com/&quot;&gt;Star Tribune&lt;/a&gt;&lt;/li&gt;&lt;li&gt;&lt;a href=&quot;http://www.phillipsplastics.com/&quot;&gt;Phillips Plastics&lt;/a&gt;&lt;/li&gt;&lt;li&gt;&lt;a href=&quot;http://www.ehlers-inc.com&quot;&gt;Ehlers &amp;amp; Associates, Inc.&lt;/a&gt;&lt;/li&gt;&lt;li&gt;&lt;a href=&quot;http://www.dolanmedia.com/&quot;&gt;Dolan Media&lt;/a&gt;&lt;/li&gt;&lt;/ul&gt;I will continue to post more companies using &lt;span style=&quot;font-weight: bold;&quot;&gt;PHP&lt;/span&gt; as I encounter them.  Again this is not a comprehensive list, more of a reminder list to myself regarding &lt;span style=&quot;font-weight: bold;&quot;&gt;PHP&lt;/span&gt; opportunities.</content><link rel='replies' type='application/atom+xml' href='http://phpmn.blogspot.com/feeds/5991931319251401681/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment/fullpage/post/5908817100659416807/5991931319251401681' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5908817100659416807/posts/default/5991931319251401681'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5908817100659416807/posts/default/5991931319251401681'/><link rel='alternate' type='text/html' href='http://phpmn.blogspot.com/2008/05/minnesota-php-opportunities.html' title='Minnesota PHP Opportunities'/><author><name>Jereme Allen</name><uri>http://www.blogger.com/profile/04701777287857092720</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='31' height='32' src='//blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhXXIi23uYvRXM7tOHYKar89CQBdtvQ4wDABGr6jfN1j0OlRuDC6IufRw3L-B4vyD9okL9x88khKWYBk-YzD81qIN7eBzwULnoWJMP2mE0alXQns-pyEsHlmHWydyT3UA/s220/jeremeallen.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5908817100659416807.post-706781162591796581</id><published>2007-03-10T13:46:00.000-06:00</published><updated>2007-03-10T13:48:11.995-06:00</updated><title type='text'>Open Source - Management Perspective</title><content type='html'>Great article describing some fears and misconceptions faced by management regarding open source within the enterprise. &lt;br /&gt;&lt;br /&gt;Link:&lt;br /&gt;&lt;br /&gt;http://www.channelregister.co.uk/2007/03/09/open_source_licensing/</content><link rel='replies' type='application/atom+xml' href='http://phpmn.blogspot.com/feeds/706781162591796581/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment/fullpage/post/5908817100659416807/706781162591796581' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5908817100659416807/posts/default/706781162591796581'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5908817100659416807/posts/default/706781162591796581'/><link rel='alternate' type='text/html' href='http://phpmn.blogspot.com/2007/03/open-source-management-perspective.html' title='Open Source - Management Perspective'/><author><name>Jereme Allen</name><uri>http://www.blogger.com/profile/04701777287857092720</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='31' height='32' src='//blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhXXIi23uYvRXM7tOHYKar89CQBdtvQ4wDABGr6jfN1j0OlRuDC6IufRw3L-B4vyD9okL9x88khKWYBk-YzD81qIN7eBzwULnoWJMP2mE0alXQns-pyEsHlmHWydyT3UA/s220/jeremeallen.jpg'/></author><thr:total>0</thr:total></entry></feed>