<?xml version="1.0" encoding="UTF-8"?>
<?xml-stylesheet type="text/xsl" media="screen" href="/~d/styles/rss2full.xsl"?><?xml-stylesheet type="text/css" media="screen" href="http://feeds.feedburner.com/~d/styles/itemcontent.css"?><rss xmlns:content="http://purl.org/rss/1.0/modules/content/" xmlns:wfw="http://wellformedweb.org/CommentAPI/" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:atom="http://www.w3.org/2005/Atom" xmlns:sy="http://purl.org/rss/1.0/modules/syndication/" xmlns:slash="http://purl.org/rss/1.0/modules/slash/" version="2.0">

<channel>
	<title>devexp</title>
	
	<link>http://www.devexp.eu</link>
	<description>DEVelopment EXPerience, shared with the world!</description>
	<lastBuildDate>Wed, 19 Dec 2012 11:48:18 +0000</lastBuildDate>
	<language>en-US</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.5.1</generator>
		<atom10:link xmlns:atom10="http://www.w3.org/2005/Atom" rel="self" type="application/rss+xml" href="http://feeds.feedburner.com/development-experience" /><feedburner:info xmlns:feedburner="http://rssnamespace.org/feedburner/ext/1.0" uri="development-experience" /><atom10:link xmlns:atom10="http://www.w3.org/2005/Atom" rel="hub" href="http://pubsubhubbub.appspot.com/" /><feedburner:emailServiceId xmlns:feedburner="http://rssnamespace.org/feedburner/ext/1.0">development-experience</feedburner:emailServiceId><feedburner:feedburnerHostname xmlns:feedburner="http://rssnamespace.org/feedburner/ext/1.0">http://feedburner.google.com</feedburner:feedburnerHostname><item>
		<title>Adlogix is hiring a Senior PHP Developer</title>
		<link>http://www.devexp.eu/2012/12/19/adlogix-is-hiring-a-senior-php-developer/</link>
		<comments>http://www.devexp.eu/2012/12/19/adlogix-is-hiring-a-senior-php-developer/#comments</comments>
		<pubDate>Wed, 19 Dec 2012 11:45:43 +0000</pubDate>
		<dc:creator>Van de Voorde Toni</dc:creator>
				<category><![CDATA[php]]></category>
		<category><![CDATA[Symfony]]></category>
		<category><![CDATA[carreer]]></category>
		<category><![CDATA[composer]]></category>
		<category><![CDATA[developer]]></category>
		<category><![CDATA[git]]></category>
		<category><![CDATA[job]]></category>
		<category><![CDATA[mysql]]></category>
		<category><![CDATA[oo]]></category>
		<category><![CDATA[performance]]></category>
		<category><![CDATA[rabbitmq]]></category>
		<category><![CDATA[subversion]]></category>
		<category><![CDATA[test]]></category>

		<guid isPermaLink="false">http://www.devexp.eu/?p=1103</guid>
		<description><![CDATA[Adlogix, the company I work for, is urgently searching for an experienced PHP developer to join our development team in Belgium. Adlogix is a powerful online sales and operations management system trusted by leading media companies. Adlogix helps media companies to maximize their online revenue and optimize their advertising processes. We integrate Adlogix with your [...]]]></description>
				<content:encoded><![CDATA[<!-- Start Shareaholic LikeButtonSetTop Automatic --><!-- End Shareaholic LikeButtonSetTop Automatic --><p><a href="http://www.adlogix.eu"><img src="http://www.devexp.eu/wp-content/uploads/2012/12/logo.png" alt="Adlogix.eu" width="205" height="76" class="alignright size-full wp-image-1105" /></a><a title="Adlogix" href="http://www.adlogix.eu" target="_blank">Adlogix</a>, the company I work for, is urgently searching for an experienced PHP developer to join our development team in Belgium.</p>
<blockquote><p>Adlogix is a powerful online sales and operations management system trusted by leading media companies. Adlogix helps media companies to maximize their online revenue and optimize their advertising processes. We integrate Adlogix with your systems (ad server, crm, erp, billing) to eliminate data redundancy and create process transparency.</p></blockquote>
<ul>
<li>You&#8217;ll be part of the R&amp;D team and involved in the development of Adlogix&#8217; digital advertising management platform.</li>
<li>You&#8217;ll participate in the full development life-cycle</li>
<li>You&#8217;ll help build the architecture of the internal frameworks</li>
<li>Gather technical requirements from external partners</li>
<li>Enjoy your job and come up with crazy ideas</li>
</ul>
<blockquote><p>We’re looking for someone who has experience with web services, database design, setup and administration, as well as PHP development with well structured, scalable and maintainable code.</p></blockquote>
<p><strong>DESIRED SKILLS &amp; EXPERIENCE</strong></p>
<ul>
<li>Knowledge of Composer is a +</li>
<li>Good knowledge of REST</li>
<li>Strong debugging skills and the ability to easily and quickly read and modify code</li>
<li>You&#8217;ve dealt with scalability issues, caching, queuing and distributed storage</li>
<li>You&#8217;re well versed in OOP, synchronous and asynchronous design patterns, the DRY principle, and unit testing (maybe even TDD)</li>
<li>You have deep experience with relational databases and database architecture (maybe some nosql experience too)</li>
<li>You&#8217;re a master of HTML/CSS/JavaScript and can bend the browser to your will</li>
<li>You&#8217;re familiar with MVC and application frameworks for PHP (ideally Symfony1 and/or Symfony2)</li>
<li>You&#8217;ve worked with a (D)VCS like Subversion and Git (or are excited to work somewhere that uses it)</li>
<li>You thrive in a fast paced, agile, iterative and collaborative engineering environment where quality well tested code is highly valued</li>
<li>You&#8217;re experienced with technologies like RabbitMQ</li>
<li>You have a solid foundation in computer science with strong competencies in data structures, algorithms and software design</li>
<li>Ideally you have a degree in Computer Science, Electrical Engineering, Applied Math or Physics and/or 5+ years of relevant engineering experience. <strong>If anything, you have to be crazy about PHP and web applications</strong>.</li>
</ul>
<p>If this is you, contact Adlogix ASAP (<a href="info@adlogix.eu" target="_blank">info@adlogix.eu</a> or <a href="http://www.Adlogix.eu" title="www.Adlogix.eu" target="_blank">www.Adlogix.eu</a>), or share to help us spread the world (or Belgium that would already be very good <img src='http://www.devexp.eu/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' />  )</p>
<div class="shr-publisher-1103"></div><!-- Start Shareaholic LikeButtonSetBottom Automatic --><!-- End Shareaholic LikeButtonSetBottom Automatic -->]]></content:encoded>
			<wfw:commentRss>http://www.devexp.eu/2012/12/19/adlogix-is-hiring-a-senior-php-developer/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Easy SSH tunneling with Putty</title>
		<link>http://www.devexp.eu/2012/11/27/easy-ssh-tunneling-with-putty/</link>
		<comments>http://www.devexp.eu/2012/11/27/easy-ssh-tunneling-with-putty/#comments</comments>
		<pubDate>Tue, 27 Nov 2012 12:58:55 +0000</pubDate>
		<dc:creator>Van de Voorde Toni</dc:creator>
				<category><![CDATA[database]]></category>
		<category><![CDATA[DEVelopment EXPerience]]></category>
		<category><![CDATA[General]]></category>
		<category><![CDATA[mysql]]></category>
		<category><![CDATA[Tips and Tricks]]></category>
		<category><![CDATA[forwarding]]></category>
		<category><![CDATA[localhost]]></category>
		<category><![CDATA[port]]></category>
		<category><![CDATA[port forwarding]]></category>
		<category><![CDATA[putty]]></category>
		<category><![CDATA[rabbitmq]]></category>
		<category><![CDATA[remote]]></category>
		<category><![CDATA[ssh]]></category>

		<guid isPermaLink="false">http://www.devexp.eu/?p=1068</guid>
		<description><![CDATA[Need to access a MySQL server, a RabbitMQ management server or any other (web) server configured on a dedicated/virtual server which is not (or you don&#8217;t want to) open to the outside world? A simple SSH connection and Putty makes this possible: 1. Requirements Putty SSH client (download) SSH access to a server 2. Configure [...]]]></description>
				<content:encoded><![CDATA[<!-- Start Shareaholic LikeButtonSetTop Automatic --><!-- End Shareaholic LikeButtonSetTop Automatic --><p><img alt="" src="http://cs.payap.ac.th/bob/images/putty.png" title="Putty Logo" class="alignright" width="128" height="128" />Need to access a MySQL server, a RabbitMQ management server or any other (web) server configured on a dedicated/virtual server which is not (or you don&#8217;t want to) open to the outside world?</p>
<p>A simple SSH connection and Putty makes this possible:</p>
<p><strong>1. Requirements</strong></p>
<ul>
<li>Putty SSH client (<a title="download" href="http://www.chiark.greenend.org.uk/~sgtatham/putty/download.html" target="_blank">download</a>)</li>
<li>SSH access to a server</li>
</ul>
<p><strong>2. Configure Putty</strong></p>
<p>Open the Putty Configuration client, and fill in the field &#8216;<em>Host Name (or IP address)</em>&#8216; with the IP or host name of your remote server. In the <em>Connection type</em> section you should select <em>SSH</em> which will set the port automatically to <em>22</em>.</p>
<p><a href="http://www.devexp.eu/wp-content/uploads/2012/11/putty-ip-screen.png"><img class="aligncenter size-full wp-image-1069" title="Putty IP configuration screen" src="http://www.devexp.eu/wp-content/uploads/2012/11/putty-ip-screen.png" alt="" width="466" height="448" /></a></p>
<p>Once this is done, open the <em>Tunnels</em> section in the menu <em>Connection -> SSH</em>. In this section we are going to configure the port forwarding. Assume we want to access the RabbitMQ management web server which runs on the port 55672. We need to tell Putty to listen on a <em>Source port</em> (=local), and to forward it to the <em>Destination</em> (=remote). </p>
<p>For this example we will configure putty to forward port <em>1234</em> to the remote port <em>55672</em>. </p>
<p>Fill in the ports as displayed in following screen and then click on <em>Add</em>:</p>
<p><a href="http://www.devexp.eu/wp-content/uploads/2012/11/putty-ssh-tunnel-screen.png"><img src="http://www.devexp.eu/wp-content/uploads/2012/11/putty-ssh-tunnel-screen.png" alt="" title="Putty SSH tunnel screen" width="466" height="448" class="aligncenter size-full wp-image-1077" /></a></p>
<p>If everything is correctly configured click <em>Open</em>. This will open a SSH connection with your remote server and at the same time the configured port forwarding. The major drawback is that you cannot see the port forwarding from that screen. If you also use putty to manage your remote server, you will not see the difference. Of course you can always configure the putty screen to be a different color (if you know alternative tricks, please share <img src='http://www.devexp.eu/wp-includes/images/smilies/icon_wink.gif' alt=';)' class='wp-smiley' />  )</p>
<p><a href="http://www.devexp.eu/wp-content/uploads/2012/11/putty-open-connection-screen.png"><img src="http://www.devexp.eu/wp-content/uploads/2012/11/putty-open-connection-screen.png" alt="" title="Putty open connections screen" width="847" height="314" class="aligncenter size-full wp-image-1084" /></a></p>
<p>While the putty connection screens remains open you should be able to access the RabbitMQ management web server by calling <em>http://localhost:1234</em> in your favorite browser.</p>
<p><a href="http://www.devexp.eu/wp-content/uploads/2012/11/putty-port-rabbitmq.png"><img src="http://www.devexp.eu/wp-content/uploads/2012/11/putty-port-rabbitmq.png" alt="" title="Putty port to RabbitMQ" width="825" height="541" class="aligncenter size-full wp-image-1088" /></a></p>
<p>As you can see the procedure is really simple and opens a lot of possibilities without having to open different ports on your remote server. </p>
<p>Enjoy</p>
<div class="shr-publisher-1068"></div><!-- Start Shareaholic LikeButtonSetBottom Automatic --><!-- End Shareaholic LikeButtonSetBottom Automatic -->]]></content:encoded>
			<wfw:commentRss>http://www.devexp.eu/2012/11/27/easy-ssh-tunneling-with-putty/feed/</wfw:commentRss>
		<slash:comments>2</slash:comments>
		</item>
		<item>
		<title>How to use a symfony 1 layout from a different directory</title>
		<link>http://www.devexp.eu/2011/10/28/how-to-use-a-symfony-1-layout-from-a-different-directory/</link>
		<comments>http://www.devexp.eu/2011/10/28/how-to-use-a-symfony-1-layout-from-a-different-directory/#comments</comments>
		<pubDate>Fri, 28 Oct 2011 11:48:36 +0000</pubDate>
		<dc:creator>Van de Voorde Toni</dc:creator>
				<category><![CDATA[General]]></category>
		<category><![CDATA[Layout]]></category>
		<category><![CDATA[php]]></category>
		<category><![CDATA[Tips and Tricks]]></category>
		<category><![CDATA[plugin]]></category>
		<category><![CDATA[Symfony]]></category>

		<guid isPermaLink="false">http://www.devexp.eu/?p=1042</guid>
		<description><![CDATA[In symfony 1 it is possible to have different layouts for an application. But they all have to be put into the directory &#8216;myproject/apps/frontend/templates/&#8217;. But what if you want to use a layout from another location? Assume you make a plugin with a specific layout, it would be nice to load the layout from the [...]]]></description>
				<content:encoded><![CDATA[<!-- Start Shareaholic LikeButtonSetTop Automatic --><!-- End Shareaholic LikeButtonSetTop Automatic --><p><a href="http://www.devexp.eu/wp-content/uploads/2009/04/symfony.jpg"><img src="http://www.devexp.eu/wp-content/uploads/2009/04/symfony.jpg" alt="" title="Symfony" width="127" height="35" class="alignright size-full wp-image-727" /></a>In symfony 1 it is possible to have different layouts for an application. But they all have to be put into the directory &#8216;myproject/apps/frontend/templates/&#8217;. But what if you want to use a layout from another location? </p>
<p>Assume you make a plugin with a specific layout, it would be nice to load the layout from the plugin directory, and not to have to copy the file to the global directory.</p>
<p>Here is how you can achieve this:</p>
<pre class="brush: php; title: ; notranslate">
$template = $this-&gt;getContext()-&gt;getConfiguration()-&gt;getTemplateDir('MODULE', 'LAYOUT_FILE.php');
$this-&gt;setLayout($template . '/LAYOUT_FILE');
</pre>
<p>Let&#8217;s say you have the following:</p>
<pre class="brush: plain; title: ; notranslate">
my_project/
  plugins/
    my_plugin/
      modules/
        MyUser/
          actions/
            actions.php
          templates/
            indexSuccess.php
            MyUserLayout.php
</pre>
<p>The actions.php class could be something like this:</p>
<pre class="brush: php; title: ; notranslate">
class MyUserAction extends sfActions {

  public function preExecute() {
    $template = $this-&gt;getContext()-&gt;getConfiguration()-&gt;getTemplateDir('MyUser', 'MyUserLayout.php');

    $this-&gt;setLayout($template . '/MyUserLayout');
  }

  public function executeIndex() {

  }
}
</pre>
<p>Have fun!</p>
<div class="shr-publisher-1042"></div><!-- Start Shareaholic LikeButtonSetBottom Automatic --><!-- End Shareaholic LikeButtonSetBottom Automatic -->]]></content:encoded>
			<wfw:commentRss>http://www.devexp.eu/2011/10/28/how-to-use-a-symfony-1-layout-from-a-different-directory/feed/</wfw:commentRss>
		<slash:comments>3</slash:comments>
		</item>
		<item>
		<title>Symfony Live 2010 – day 1 #sflive2010</title>
		<link>http://www.devexp.eu/2010/02/16/symfony-live-2010-day-1-sflive2010/</link>
		<comments>http://www.devexp.eu/2010/02/16/symfony-live-2010-day-1-sflive2010/#comments</comments>
		<pubDate>Tue, 16 Feb 2010 12:20:47 +0000</pubDate>
		<dc:creator>van Rumste Kenneth</dc:creator>
				<category><![CDATA[General]]></category>
		<category><![CDATA[#sflive2010]]></category>
		<category><![CDATA[symfony live]]></category>

		<guid isPermaLink="false">http://www.devexp.eu/?p=1020</guid>
		<description><![CDATA[So far everything went great, well not great but ok, the periferique in paris was hell this morning, and we had a 5 hour drive from brussels to paris, thx to a train accident. But&#8230; most important&#8230; we got here. We mist the first session on i18n but the second one on admin generator gave [...]]]></description>
				<content:encoded><![CDATA[<!-- Start Shareaholic LikeButtonSetTop Automatic --><!-- End Shareaholic LikeButtonSetTop Automatic --><p>So far everything went great, well not great but ok, the periferique in paris was hell this morning, and we had a 5 hour drive from brussels to paris, thx to a train accident. But&#8230; most important&#8230; we got here.</p>
<p>We mist the first session on i18n but the second one on admin generator gave me som gr8 ideas on layout. After that, the Microsoft crew came on to stage, and pffff.. shitty presentation&#8230; just a promotion and selling of their Azure product. And I wasn&#8217;t impressed at all!!!</p>
<p>now lunch, simple but ok. and we&#8217;ll see what the next hours bring&#8230;</p>
<p>sessions are about to start&#8230;</p>
<p>well well well, that was an interesting session by Mr Bachelet. I regret it that he didn&#8217;t do the session in french, it would have been better!!! a bit of an overview of all handlers and helper, just isn&#8217;t enough I guess&#8230;</p>
<p>Questions are answered quite good&#8230;. He knows his stuff real good! take your time to present next time.</p>
<p>doctrine migrations was nice. interesting and in particular the question session with a very kind host, answering all questions asked. And believe me, there were a lot of questions <img src='http://www.devexp.eu/wp-includes/images/smilies/icon_smile.gif' alt=':-)' class='wp-smiley' /> </p>
<div class="shr-publisher-1020"></div><!-- Start Shareaholic LikeButtonSetBottom Automatic --><!-- End Shareaholic LikeButtonSetBottom Automatic -->]]></content:encoded>
			<wfw:commentRss>http://www.devexp.eu/2010/02/16/symfony-live-2010-day-1-sflive2010/feed/</wfw:commentRss>
		<slash:comments>2</slash:comments>
		</item>
		<item>
		<title>Symfony Live 2010 #sflive2010</title>
		<link>http://www.devexp.eu/2010/02/10/symfony-live-2010-sflive2010/</link>
		<comments>http://www.devexp.eu/2010/02/10/symfony-live-2010-sflive2010/#comments</comments>
		<pubDate>Wed, 10 Feb 2010 07:21:54 +0000</pubDate>
		<dc:creator>van Rumste Kenneth</dc:creator>
				<category><![CDATA[General]]></category>
		<category><![CDATA[Symfony]]></category>
		<category><![CDATA[Paris]]></category>
		<category><![CDATA[Symfony Live 2010]]></category>

		<guid isPermaLink="false">http://www.devexp.eu/?p=1014</guid>
		<description><![CDATA[On the 16-17th of February the Symfony Live 2010 conference will be held in Paris. A lot promising developers and evangelists will be speakers on this conference like: Fabien Potencier Jonathan Wage Dustin Whittle Stefan Koopmanschap &#8230; My colleague and I will attend this conference and, if everything goes well, we will try to update [...]]]></description>
				<content:encoded><![CDATA[<!-- Start Shareaholic LikeButtonSetTop Automatic --><!-- End Shareaholic LikeButtonSetTop Automatic --><p><a href="http://www.devexp.eu/wp-content/uploads/2010/02/banner_square.jpg"><img class="alignright size-full wp-image-1015" title="Symfony Live 2010" src="http://www.devexp.eu/wp-content/uploads/2010/02/banner_square.jpg" alt="" width="215" height="215" /></a>On the 16-17th of February the Symfony Live 2010 conference will be held in Paris. A lot promising developers and evangelists will be speakers on this conference like:</p>
<ul>
<li>Fabien Potencier</li>
<li>Jonathan Wage</li>
<li>Dustin Whittle</li>
<li>Stefan Koopmanschap</li>
<li>&#8230;</li>
</ul>
<p>My colleague and I will attend this conference and, if everything goes well, we will try to update our DevExp blog with live feedback or summarized posts on some of the most interesting sessions.</p>
<div class="shr-publisher-1014"></div><!-- Start Shareaholic LikeButtonSetBottom Automatic --><!-- End Shareaholic LikeButtonSetBottom Automatic -->]]></content:encoded>
			<wfw:commentRss>http://www.devexp.eu/2010/02/10/symfony-live-2010-sflive2010/feed/</wfw:commentRss>
		<slash:comments>2</slash:comments>
		</item>
		<item>
		<title>Read from Excel in ASP</title>
		<link>http://www.devexp.eu/2009/10/14/read-from-excel-in-asp/</link>
		<comments>http://www.devexp.eu/2009/10/14/read-from-excel-in-asp/#comments</comments>
		<pubDate>Wed, 14 Oct 2009 10:14:28 +0000</pubDate>
		<dc:creator>van Rumste Kenneth</dc:creator>
				<category><![CDATA[ASP]]></category>
		<category><![CDATA[General]]></category>
		<category><![CDATA[excel]]></category>
		<category><![CDATA[read]]></category>
		<category><![CDATA[vb]]></category>

		<guid isPermaLink="false">http://www.devexp.eu/?p=998</guid>
		<description><![CDATA[I always had a hard time finding correct documentation on the old ASP (active server pages) language and I needed it one more time in the last few days to create a script that read from an excel file. As I believe that it might be handy for a handful of people around the world [...]]]></description>
				<content:encoded><![CDATA[<!-- Start Shareaholic LikeButtonSetTop Automatic --><!-- End Shareaholic LikeButtonSetTop Automatic --><p>I always had a hard time finding correct documentation on the old ASP (active server pages) language and I needed it one more time in the last few days to create a script that read from an excel file.</p>
<p>As I believe that it might be handy for a handful of people around the world (is there actually anybody else still developing in ASP these days?), I hereby share my little piece of code with you guys.</p>
<p>Any suggestions or comments are always welcome.</p>
<p>In my example we read from an excel file that has 1 small table that has 1000 lines and columns from A until G.<br />
The first row contains all the column names.</p>
<pre class="brush: vb; title: ; notranslate">
'initialize variables
Dim objConn, strSQL
Dim x

Set objConn = Server.CreateObject(&quot;ADODB.Connection&quot;)
objConn.Open &quot;DRIVER={Microsoft Excel Driver (*.xls)}; IMEX=1; HDR=NO; &quot;&amp;_
 &quot;Excel 8.0; DBQ=&quot; &amp; Server.MapPath(&quot;filename.xls&quot;) &amp; &quot;; &quot;
strSQL = &quot;SELECT * FROM A1:G1000&quot;

Response.Write(&quot;&lt;table border=&quot;&quot;1&quot;&quot;&gt;&quot;)
Response.Write(&quot;&lt;tr&gt;&quot;)
'write all columnNames
For x=0 To objRS.Fields.Count-1
 Response.Write(&quot;&lt;th&gt;&quot; &amp; objRS.Fields(x).Name &amp; &quot;&lt;/th&gt;&quot;)
Next
Response.Write(&quot;&lt;/tr&gt;&quot;)

Do Until objRS.EOF

' write as much columns as there are in your excel file
Response.Write(&quot;&lt;td&gt;&quot; &amp; objRS.Fields(0).Value &amp; &quot;&lt;/td&gt;&quot;)
Response.Write(&quot;&lt;td&gt;&quot; &amp; objRS.Fields(1).Value &amp; &quot;&lt;/td&gt;&quot;)
Response.Write(&quot;&lt;td&gt;&quot; &amp; objRS.Fields(2).Value &amp; &quot;&lt;/td&gt;&quot;)
Response.Write(&quot;&lt;td&gt;&quot; &amp; objRS.Fields(3).Value &amp; &quot;&lt;/td&gt;&quot;)
Response.Write(&quot;&lt;td&gt;&quot; &amp; objRS.Fields(4).Value &amp; &quot;&lt;/td&gt;&quot;)
Response.Write(&quot;&lt;td&gt;&quot; &amp; objRS.Fields(5).Value &amp; &quot;&lt;/td&gt;&quot;)
Response.Write(&quot;&lt;td&gt;&quot; &amp; objRS.Fields(6).Value &amp; &quot;&lt;/td&gt;&quot;)

objRS.Close

Response.Write(&quot;&lt;/table&gt;&quot;)

Set objRS=Nothing

</pre>
<div class="shr-publisher-998"></div><!-- Start Shareaholic LikeButtonSetBottom Automatic --><!-- End Shareaholic LikeButtonSetBottom Automatic -->]]></content:encoded>
			<wfw:commentRss>http://www.devexp.eu/2009/10/14/read-from-excel-in-asp/feed/</wfw:commentRss>
		<slash:comments>4</slash:comments>
		</item>
		<item>
		<title>Interview: Jean-Baptiste Jung</title>
		<link>http://www.devexp.eu/2009/09/28/interview-jean-baptiste-jung/</link>
		<comments>http://www.devexp.eu/2009/09/28/interview-jean-baptiste-jung/#comments</comments>
		<pubDate>Mon, 28 Sep 2009 06:32:02 +0000</pubDate>
		<dc:creator>van Rumste Kenneth</dc:creator>
				<category><![CDATA[General]]></category>
		<category><![CDATA[Interview]]></category>
		<category><![CDATA[cats]]></category>
		<category><![CDATA[Jean-Baptiste Jung]]></category>
		<category><![CDATA[wordpress]]></category>

		<guid isPermaLink="false">http://www.devexp.eu/?p=982</guid>
		<description><![CDATA[You can never get enough interviews, at least if they are a bit interesting… This time we got an interview with Mr Jean-Baptiste Jung, a very friendly and ambitious guy with little spare time as he mentioned in his interview. My name is Jean-Baptiste Jung (Pronounce: Young) and I&#8217;m a 27 years old blogger, web [...]]]></description>
				<content:encoded><![CDATA[<!-- Start Shareaholic LikeButtonSetTop Automatic --><!-- End Shareaholic LikeButtonSetTop Automatic --><p>You can never get enough interviews, at least if they are a bit interesting…<br />
This time we got an interview with Mr Jean-Baptiste Jung, a very friendly and ambitious guy with little spare time as he mentioned in his interview.</p>
<blockquote><p>My name is Jean-Baptiste Jung (Pronounce: Young) and I&#8217;m a 27 years old blogger, web developer and web designer from the French-speaking part of Belgium.<br />
I started blogging in 2006 by writing a blog in French about the Python programming language. I quickly dropped this blog and created a new one, <a href="http://www.Lyxia.org" target="_blank">Lyxia.org</a> to discuss a lot of nice things about the Internet: Web development, Web design, blogging, WordPress and much more. After this successful experience, I decided to create a similar blog, but in English. This is how, in June 2008, I created <a href="http://www.catswhocode.com/blog/" target="_blank">Cats Who Code</a>.<br />
I&#8217;m also an author on several popular blogs as such as <a href="http://wphacks.com/" target="_blank">WpHacks</a>, <a href="http://www.problogdesign.com/" target="_blank">ProBlogDesign</a> and <a href="http://www.smashingmagazine.com" target="_blank">Smashing Magazine</a> where I provide various tutorials, how-tos and lists, mostly about WordPress. I have released some WordPress themes as well, the most popular is called OpenBook and the most recent NYC Theme. Apart from blogging, I work as a web developer in a French company and have a lovely wife and a very cute cat.</p></blockquote>
<p><strong>What projects are you currently working on?</strong><br />
Lots! I&#8217;m making big changes to<a href="http://www.wprecipes.com" target="_blank"> wprecipes.com</a> with a new design and lots of new featur</p>
<p>es. I&#8217;m working on CatsWHoCode.com to improve the blog even more. And at last, I&#8217;m on the point to publish my first blog which is not about web dev things!</p>
<p><span id="more-982"></span></p>
<p><img class="alignright size-full wp-image-985" style="border: 0pt none; margin: 5px;" title="Mr Jean-Baptiste Jung" src="http://www.devexp.eu/wp-content/uploads/2009/09/jbjwpr.jpg" alt="jbjwpr" width="200" height="267" /></p>
<p><strong>What technologies will become important in your line of work in the near future?</strong><br />
I don&#8217;t have any particular technologies in mind, but I wish I have more spare time so I could learn programming for new devices as such as iPhone or Android. That seems so interesting.</p>
<p><strong>What do you think, is the success of your blog? What would you like to do different if you could start over?</strong><br />
Well, I will not call any of my blog &#8220;successful&#8221;. They&#8217;re not ignored, that&#8217;s a sure thing, but they&#8217;re far from being at the level of successful blogs as such as SixRevisions.com!<br />
I regret lots of bad or poor articles I wrote on CatsWhoCode. If I started with better posts as such as the ones I write now. CWC will be a lot more popular now.</p>
<p><strong>How did you get the knowledge you master today? Where there seminars, lessons, people, self education or other ways important to become who you are today?</strong><br />
I attended web dev training in France some years ago, and I have learned most of my knowledge myself. I&#8217;m so proud of that.<br />
People should realize that if they want, they can. They don&#8217;t need a teacher or anything. You want to be a good developer? Search, Learn, Work&#8230;and you&#8217;ll be good.</p>
<p><strong>Do your blogs, CatsWhoCode and lyxia.org, ask a lot of time? How do you handle that workload?</strong><br />
I have sold Lyxia.org 7 or 8 months ago, but yes my blogs takes lot of time. You see, it is 11PM and I&#8217;m answering your interview <img src='http://www.devexp.eu/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' /><br />
I have no problem handling the workload because I like what I do. It&#8217;s not a job; it is a hobby, something I do with passion.</p>
<p><strong>What environment do you work on and what applications are important to you?</strong><br />
I mostly work on Macs but I use Linux and Windows (Although I don&#8217;t really like it) too. My favorite editors are Vi – because you can find it everywhere – and TextMate because it is powerful and load quickly. I also enjoy Photoshop a lot, but that&#8217;s another story <img src='http://www.devexp.eu/wp-includes/images/smilies/icon_wink.gif' alt=';)' class='wp-smiley' /> </p>
<p><strong>If you could start over again from the moment you left high school, what would you do different?</strong><br />
Definitely, I&#8217;d launch Premium WordPress themes the first before Darren Hoyt and Brian Gardner. I would be quite rich by now <img src='http://www.devexp.eu/wp-includes/images/smilies/icon_wink.gif' alt=';)' class='wp-smiley' /> </p>
<p><strong>Do you have any special hobbies or interests?</strong><br />
Beside blogging and web dev related things, I love travelling, especially to New York City. I&#8217;m addicted to that city. Another thing I love are animals. I love doing all I can do to help the Animal Rights cause.</p>
<p><strong>What are your plans for 2010 or the future in general?</strong><br />
Continue to work on my blogs, do my best and maybe, make them successful.</p>
<p><strong>Quick answers, just answer in  maximum 5 words  when you read these words:</strong></p>
<p>1.<strong> Belgium </strong>love that country.<br />
2. <strong>Apple </strong>The best computers!<br />
3. <strong>Twitter </strong>Follow @catswhocode <img src='http://www.devexp.eu/wp-includes/images/smilies/icon_wink.gif' alt=';)' class='wp-smiley' /><br />
4. <strong> Cats </strong>Meow! I just love them.<br />
5. <strong> WordPress </strong>My favorite tool to build websites.<br />
6. <strong>Framework </strong>Use lots of them!<br />
7.  <strong>Global Warming </strong>A tragedy for humans, animals and nature.<br />
8.  <strong>Programming</strong> One of my biggest passions.<br />
9. <strong> Internet </strong>10 years I can&#8217;t live without!</p>
<p>Thx a lot Mr Jung, we wish you all the best in the future, and tons of success</p>
<div class="shr-publisher-982"></div><!-- Start Shareaholic LikeButtonSetBottom Automatic --><!-- End Shareaholic LikeButtonSetBottom Automatic -->]]></content:encoded>
			<wfw:commentRss>http://www.devexp.eu/2009/09/28/interview-jean-baptiste-jung/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Interview: Jacob Gube</title>
		<link>http://www.devexp.eu/2009/09/23/interview-jacob-gube/</link>
		<comments>http://www.devexp.eu/2009/09/23/interview-jacob-gube/#comments</comments>
		<pubDate>Wed, 23 Sep 2009 11:42:03 +0000</pubDate>
		<dc:creator>van Rumste Kenneth</dc:creator>
				<category><![CDATA[General]]></category>
		<category><![CDATA[Interview]]></category>
		<category><![CDATA[Jacob Gube]]></category>
		<category><![CDATA[Six Revisions]]></category>

		<guid isPermaLink="false">http://www.devexp.eu/?p=967</guid>
		<description><![CDATA[Well, well, well after our first interview I guess our ball got rollin’ and we are proud to present our second interview. This time we got in contact with Jacob Gube who is the founder and maintainer of the Six Revisions weblog having over 35K RSS readers. Let’s hope we reach the same amount one [...]]]></description>
				<content:encoded><![CDATA[<!-- Start Shareaholic LikeButtonSetTop Automatic --><!-- End Shareaholic LikeButtonSetTop Automatic --><p><img class="alignright size-full wp-image-972" style="border: 0pt none; margin: 5px;" title="Six Revisions" src="http://www.devexp.eu/wp-content/uploads/2009/09/blogthumb4.jpg" alt="blogthumb4" width="160" height="160" />Well, well, well after our first interview I guess our ball got rollin’ and we are proud to present our second interview.</p>
<p>This time we got in contact with Jacob Gube who is the founder and maintainer of the Six Revisions weblog having over 35K RSS readers. Let’s hope we reach the same amount one day!!!</p>
<blockquote><p>Jacob Gube, a web developer and designer who works with PHP, .NET, Flash/ActionScript, XHTML, JavaScript/jQuery/MooTools and MySQL, is the creator and primary author of <a href="http://sixrevisions.com/">Six Revisions</a> &#8211; a weblog the provides practical, useful information for the modern, standards-compliant web designer and web developer.</p></blockquote>
<p><strong> What projects are you currently working on?</strong></p>
<p>I&#8217;m working on a PHP/MySQL social news site start-up that&#8217;s self-funded. No release dates yet and there&#8217;s still a lot of work to be done! Also, I&#8217;m trying to finish up a JavaScript book.</p>
<p><span id="more-967"></span></p>
<p><strong>What our the projects, blogs or websites you get inspired by and why is that?</strong></p>
<p>I love Digg because I believe in the concept that you should let your users dictate what should be on the site: whether it&#8217;s what site features are needed or what content to display on the front page, and even what advertisements they want to see (which Digg is doing now) &#8212; otherwise, you&#8217;re just playing a guessing game with your UI and development teams.</p>
<p>I love Smashing Magazine because they provide great stuff on a regular basis and their writing style is in tune with my tastes: comprehensive, easy to understand, and visually appealing.</p>
<p>Projects that inspire me are apps released by 37Signals &#8211; they&#8217;re simple and minimalist, something that I admire since it&#8217;s easier to load things up with 100 useless features rather than create 1 or 2 that are absolutely well-done.</p>
<p><strong>How did you get the knowledge you master today? Where there seminars, lessons, people, self education or other ways important to become who you are today?</strong></p>
<p>That&#8217;s a question that can&#8217;t be answered in a brief manner since it&#8217;s been a long journey to get to a point where I am now. I&#8217;ve been a web professional for over 8 years, so as you can imagine there were a lot of trials and tribulations involved in that journey.</p>
<p>I&#8217;m mostly self-taught and I think that most of the people that innovate in this industry are self-taught or come from a discipline that is completely remote from web development. I like to use Eric Meyer and Jeffrey Zeldman whenever I talk about this topic: both accomplished book authors, creators of A List Apart, people who&#8217;ve contributed to the progression of CSS, HTML and web standards &#8212; Meyer got a B.A. in History, minoring in English, Zeldman got a B.A. in English (from the same university I went to, which I just found out just now).</p>
<p><strong>Do you consider yourself a lucky guy or did you earn all your success because of yourself?</strong></p>
<p>I think a combination of both. I work very hard, but there are times where you just catch a lucky break.</p>
<p><strong>What environment do you work on and what applications are important to you?</strong></p>
<p>Server: Preferably a LAMP environment, but I&#8217;ve worked in WIMP&#8217;s (MSSQL) and WAMP&#8217;s (Apache/MySQL).</p>
<p>Desktop: Windows Vista (just upgraded from XP this year), it&#8217;ll be Windows 7 soon when I get to upgrading. Applications I use are Notepad++, Dreamweaver CS4, and Photoshop, Firebug, Web Developer Toolbar.</p>
<p>Web Applications: Basecamp, Gmail, Freshbooks.</p>
<p><strong>What would you do if this was your last day on earth?</strong></p>
<p>Spend time with my family.</p>
<p><strong>If you could start over again from the moment you left high school, what would you do different?</strong></p>
<p>I would not have spent that much time raiding the Molten Core and Black Wing Lair in World of Warcraft.</p>
<p><strong> Do you have any special hobbies or interests?</strong></p>
<p>I like building computers &#8211; it&#8217;s an expensive hobby. I also do a bit of photography.</p>
<p><strong> What are your plans for 2010 or the future in general?</strong></p>
<p>I don&#8217;t believe in making plans &#8211; I let things develop on its own, to grow organically. I have goals, but I&#8217;m ready to change and adapt when things precipitate a different way.</p>
<p><strong> Quick answers, just answer in  max 5 words  when you read these words:</strong></p>
<p><strong>1.    PHP</strong> &#8211; include(/it/in/your/projects.php)<br />
<strong>2.    date()</strong> &#8211; JavaScript 2 will fix it (hopefully)<br />
<strong>3.    Barack Obama</strong> &#8211; no comment<br />
<strong>4.    Clowd </strong>- Cloud computing with clowns<br />
<strong>5.    Windows 7</strong> &#8211; They finally did it right<br />
<strong>6.    Design</strong> &#8211; art and science working together<br />
<strong>7.    Pair programming</strong> &#8211; it works with OOP<br />
<strong>8.    Design patterns</strong> &#8211; quantifies effective user interfaces<br />
<strong>9.    Delicious</strong> &#8211; great source of links</p>
<p>Thx a lot for this interview, greetings and hear you next time!!!</p>
<div class="shr-publisher-967"></div><!-- Start Shareaholic LikeButtonSetBottom Automatic --><!-- End Shareaholic LikeButtonSetBottom Automatic -->]]></content:encoded>
			<wfw:commentRss>http://www.devexp.eu/2009/09/23/interview-jacob-gube/feed/</wfw:commentRss>
		<slash:comments>3</slash:comments>
		</item>
		<item>
		<title>How to force symfony colors on windows with PuttyCyg?</title>
		<link>http://www.devexp.eu/2009/09/22/how-to-force-symfony-colors-on-windows-with-cygwinputtycyg/</link>
		<comments>http://www.devexp.eu/2009/09/22/how-to-force-symfony-colors-on-windows-with-cygwinputtycyg/#comments</comments>
		<pubDate>Tue, 22 Sep 2009 13:18:14 +0000</pubDate>
		<dc:creator>Van de Voorde Toni</dc:creator>
				<category><![CDATA[Framework]]></category>
		<category><![CDATA[General]]></category>
		<category><![CDATA[php]]></category>
		<category><![CDATA[Symfony]]></category>
		<category><![CDATA[framework]]></category>
		<category><![CDATA[tips]]></category>

		<guid isPermaLink="false">http://www.devexp.eu/?p=936</guid>
		<description><![CDATA[Those of you who’re developing with symfony under windows will have noticed that, when running tasks in the command prompt, no colors are used. This is because the windows command prompt isn’t compatible with the color notation. Most of you also have cygwin installed (shame on you if you didn’t :p). But even if you [...]]]></description>
				<content:encoded><![CDATA[<!-- Start Shareaholic LikeButtonSetTop Automatic --><!-- End Shareaholic LikeButtonSetTop Automatic --><p>Those of you who’re developing with symfony under windows will have noticed that, when running tasks in the command prompt, no colors are used. This is because the windows command prompt isn’t compatible with the color notation.<br />
Most of you also have <a href="http://www.cygwin.com/">cygwin</a> installed (shame on you if you didn’t :p). But even if you run the tasks through “<a href="http://code.google.com/p/puttycyg/">PuttyCyg</a>”, which is fully compatible with the color notation, you will not benefit from the colors. </p>
<p>Why?</p>
<p><span id="more-936"></span><br />
The problem resides in the symfony class “sfAnsiColorFormatter” in the method “supportsColors($stream)”:</p>
<pre class="brush: php; title: ; notranslate">
  /**
   * Returns true if the stream supports colorization.
   *
   * Colorization is disabled if not supported by the stream:
   *
   *  -  windows
   *  -  non tty consoles
   *
   * @param mixed $stream A stream
   *
   * @return Boolean true if the stream supports colorization, false otherwise
   */
  public function supportsColors($stream)
  {
    return DIRECTORY_SEPARATOR != '\\' &amp;&amp; function_exists('posix_isatty') &amp;&amp; @posix_isatty($stream);
  }
</pre>
<p>The method supportsColors($stream) decides whether or not colors are supported. And as you can see, one of the checks is the directory separator which in our case will always return false because we are on a windows operating system. So even if you run tasks through puttycyg the directory separator will remain the same.</p>
<p><strong>Possibility 1</strong></p>
<p>If you always work through the puttycyg you could simply set the method to always return true, but in a command prompt it will look like this:<br />
<div id="attachment_946" class="wp-caption aligncenter" style="width: 310px"><a href="http://www.devexp.eu/wp-content/uploads/2009/09/command_output.png"><img src="http://www.devexp.eu/wp-content/uploads/2009/09/command_output-300x236.png" alt="Dos Command Output" title="Dos Command Output" width="300" height="236" class="size-medium wp-image-946" /></a><p class="wp-caption-text">Dos Command Output</p></div></p>
<p><strong>Possibility 2</strong></p>
<p>Detect if cygwin is used. This way when you use the dos command the output will work and when cygwin is used you&#8217;ll have the colors <img src='http://www.devexp.eu/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' /> .</p>
<p>I checked the $_SERVER array to find something that could help me to distinguish the cygwin prompt with the dos prompt, and I found that the &#8216;PWD&#8217; key is only available on *nix shells. And when I print the value of $_SERVER['PWD'] in the cygwin prompt it gives me &#8220;/cygdrive/f/sandbox/adlogix/branch-3.2/frontend&#8221;. </p>
<p>Knowing that, here is how we can change the supportsColors method:</p>
<pre class="brush: php; title: ; notranslate">
  /**
   * Returns true if the stream supports colorization.
   *
   * Colorization is disabled if not supported by the stream:
   *
   *  -  windows
   *  -  non tty consoles
   *
   * @param mixed $stream A stream
   *
   * @return Boolean true if the stream supports colorization, false otherwise
   */
  public function supportsColors($stream)
  {
    $supported = DIRECTORY_SEPARATOR != '\\' &amp;&amp; function_exists('posix_isatty') &amp;&amp; @posix_isatty($stream);
    
    return $supported ? true : !is_bool(strpos(@$_SERVER['PWD'], &quot;/cygdrive&quot;));
  }
</pre>
<p>What I did, is still using the check symfony used, but when it returns false I do a second check to see if the $_SERVER['PWD'] exists and that it contains the String &#8220;/cygdrive&#8221;.</p>
<p>Now when I run the taks through cygwin I get the colors and when I run it in dos it displays correctly.<br />
<div id="attachment_950" class="wp-caption aligncenter" style="width: 310px"><a href="http://www.devexp.eu/wp-content/uploads/2009/09/puttycyg-versus-dos.png"><img src="http://www.devexp.eu/wp-content/uploads/2009/09/puttycyg-versus-dos-300x187.png" alt="PuttyCyg versus Dos" title="PuttyCyg versus Dos" width="300" height="187" class="size-medium wp-image-950" /></a><p class="wp-caption-text">PuttyCyg versus Dos</p></div></p>
<p>I only tested it on my machine, so if you have troubles or a better way to do it, please let me know <img src='http://www.devexp.eu/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' /> .</p>
<p><strong>Update:</strong> This is only tested with symfony 1.2 and as from sf 1.3 there will be an option &#8211;color to force the colors.</p>
<p><strong>Update:</strong> For some reason it does not work in the cygwin bash shell. When I set the message manually (echo -e &#8220;\033[31mHello World\033[0m&#8221;) in the command the colors appear, but through symfony not.  I suspect that the cygwin bash shell miss interprets the returns of php, but I have no idea why it does work on puttyCyg (which only launches the cygwin shell) &#8230; probably some startup configuration of the bash ?!</p>
<div class="shr-publisher-936"></div><!-- Start Shareaholic LikeButtonSetBottom Automatic --><!-- End Shareaholic LikeButtonSetBottom Automatic -->]]></content:encoded>
			<wfw:commentRss>http://www.devexp.eu/2009/09/22/how-to-force-symfony-colors-on-windows-with-cygwinputtycyg/feed/</wfw:commentRss>
		<slash:comments>13</slash:comments>
		</item>
		<item>
		<title>Interview: Stefan Koopmanschap</title>
		<link>http://www.devexp.eu/2009/09/22/interview-stefan-koopmanschap/</link>
		<comments>http://www.devexp.eu/2009/09/22/interview-stefan-koopmanschap/#comments</comments>
		<pubDate>Tue, 22 Sep 2009 06:24:18 +0000</pubDate>
		<dc:creator>van Rumste Kenneth</dc:creator>
				<category><![CDATA[General]]></category>
		<category><![CDATA[Interview]]></category>
		<category><![CDATA[Koopmanschap]]></category>
		<category><![CDATA[php]]></category>
		<category><![CDATA[Stefan]]></category>
		<category><![CDATA[Symfony]]></category>

		<guid isPermaLink="false">http://www.devexp.eu/?p=928</guid>
		<description><![CDATA[A few weeks ago I thought it might be cool to get some interesting guys, which are occupied with projects in PHP, interviewed. And guess what, we got on contact with Mr. Stefan Koopmanschap and he was kind enough to answer all our questions. Stefan Koopmanschap (&#8216;left&#8217;) is a PHP developer, consultant and trainer with [...]]]></description>
				<content:encoded><![CDATA[<!-- Start Shareaholic LikeButtonSetTop Automatic --><!-- End Shareaholic LikeButtonSetTop Automatic --><p><img class="alignright size-full wp-image-977" style="border: 0pt none; margin: 5px;" title="3317597132_6be12c93c7" src="http://www.devexp.eu/wp-content/uploads/2009/09/3317597132_6be12c93c7.jpg" alt="3317597132_6be12c93c7" width="160" height="240" /></p>
<p>A few weeks ago I thought it might be cool to get some interesting guys, which are occupied with projects in PHP, interviewed. And guess what, we got on contact with Mr. Stefan Koopmanschap and he was kind enough to answer all our questions.</p>
<blockquote><p>Stefan Koopmanschap (&#8216;left&#8217;) is a PHP developer, consultant and trainer with an eye for best practices. He works at <a href="http://www.unet.nl/" target="_blank">Unet</a> as (symfony) developer and development team leader. He is a community person and is active in the european PHP community as secretary of the <a href="http://www.phpbenelux.eu/" target="_blank">phpBenelux</a> Usergroup as well as in the Symfony community by advocating symfony and as the Community Manager.</p>
<p>Stefan has a wide history in Open Source, having been Support Team Leader for phpBB, documentation translator for Zend Framework and community manager, plugin developer and maintainer plus various other things for symfony.</p>
<p>Stefan is also a best practices advocate. He prefers easy and useful explanations of best practices over the academic and theoretical stuff found in most literature.</p></blockquote>
<p>Hope you enjoy this interview!</p>
<p><strong>Hello Stefan, first of all, thx for taking the time to answer all our questions.</strong></p>
<p><strong>Can you tell us what projects you are currently working on?</strong></p>
<p>At work I am involved in a big project to build an application that will handle all the administration, provisioning and handling of user accounts etc. for the whole VOiP and connectivity of the services we offer. Aside from that, my main projects are being the Community Manager for symfony and also preparing some new talks for the upcoming conferences.</p>
<p><span id="more-928"></span></p>
<p><strong>What technologies will become important in your line of work in the<br />
near future?</strong></p>
<p>Obviously, a big part of my life is currently being ruled by Symfony. It is the framework we use at my work, and because of my involvement in the project it also rules a big part of my private time. Also, other frameworks (such as Zend Framework) take a part of my life for projects I&#8217;m working on. For one of my personal development projects I&#8217;m also looking into jobqueue/message servers such as <a href="http://www.dropr.org/" target="_blank">Dropr </a>and <a href="http://www.gearman.org/" target="_blank">Gearman</a>. And of course I&#8217;m always reading into new technologies to know what they can do, so I can apply that knowledge at a later date.</p>
<p><strong>How did you get the knowledge you master today? Where there seminars, lessons, people, self education or other ways important to become who you are today?</strong></p>
<p>I have no Computer Science background, most of my current knowledge is self-taught or I picked up through experience over the years. Sometimes this is a good thing but often this has been a problem since over the years I have reinvented the wheel. Reading about design patterns for instance I often found out the things I &#8220;invented&#8221; were really thought about way before me by much smarter people who also considered many more things that I had considered. But by reading about many of these topics and best practices, I&#8217;ve picked up quite a bit of knowledge over the years. Combine that with the variation of projects I&#8217;ve been involved in and you get the knowledge and experience I&#8217;ve picked up.</p>
<p><strong>Do you consider yourself a lucky guy or did you earn all your  success because of yourself?<br />
</strong><br />
A bit of both. I&#8217;ve obviously done a lot of work to get to the point where I am right now, yet I also consider myself a lucky guy. The amount of conferences I get accepted to speaking at these days allows me to travel around the world and meet the brightest minds of the PHP community. I&#8217;ve gotten a lot of help, pointers, code reviews etc by people from the community that helped me improve myself. Many of these I did not ask for, yet I&#8217;ve found it very helpful.</p>
<p><strong>What environment do you work on and what applications are important to  you?</strong></p>
<p>My personal preference is Apple computers with OSX. That environment allows me to work in the most efficient way. A good second choice, and the one I currently use at work, is an Ubuntu linux environment running KDE. The applications I run to help me in my work are an IDE (Zend Studio is my personal favorite), a MySQL frontend (phpMyAdmin is what I usually use), a webserver (Apache) with PHP installed with Xdebug. The main framework of choice would be symfony, with the help of additional components from Zend Framework, PEAR and ezComponents.</p>
<p><strong>If you could start over again from the moment you left high school,  what would you do different?</strong></p>
<p>I would do at least part-time study computer sciences to give me a better theoretical base on the development concepts I work with on a daily basis. But the thing that helps me most is the experience I built up over the years, so aside from that; I would not really do many things in a different way.</p>
<p><strong>Do you have any special hobbies or interests?</strong></p>
<p>Aside from PHP and Open Source, I like listening to music and read books.</p>
<p><strong>What are your plans for 2010 or the future in general?<br />
</strong><br />
I want to keep promoting best practices, and hope to improve the general level of knowledge in the PHP community.</p>
<p><strong>Quick answers, just answer in  max 5 words  when you read these words:</strong><br />
<strong>1.      IE</strong> &#8211; the bane of my existence<br />
<strong>2.      Apple </strong>- the ultimate operating system<br />
<strong>3.      Twitter</strong> &#8211; great communication and network channel<br />
<strong>4.      Face book</strong> &#8211; interesting platform<br />
<strong>5.      Analyze</strong> &#8211; important phase of any project<br />
<strong>6.      Layout</strong> &#8211; I&#8217;m more a back end guy<br />
<strong>7.      Religion</strong> &#8211; The root of all evil<br />
<strong>8.      Programming </strong>- Fantastic source of joy<br />
<strong>9.      Internet</strong> &#8211; Greatest invention ever</p>
<div class="shr-publisher-928"></div><!-- Start Shareaholic LikeButtonSetBottom Automatic --><!-- End Shareaholic LikeButtonSetBottom Automatic -->]]></content:encoded>
			<wfw:commentRss>http://www.devexp.eu/2009/09/22/interview-stefan-koopmanschap/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
	</channel>
</rss>
