<?xml version="1.0" encoding="UTF-8"?><rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	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/"
		>
<channel>
	<title>Comments for Sherif&#039;s Tech Blog</title>
	<atom:link href="http://sheriframadan.com/comments/feed/" rel="self" type="application/rss+xml" />
	<link>http://sheriframadan.com</link>
	<description>Just another guy on the Internet with a keyboard...</description>
	<lastBuildDate>Sat, 21 Apr 2012 15:45:15 +0000</lastBuildDate>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.3.2</generator>
	<item>
		<title>Comment on Load Balancing Software as a Service by Yugandhar</title>
		<link>http://sheriframadan.com/2011/11/load-balancing-software-as-a-service/#comment-849</link>
		<dc:creator>Yugandhar</dc:creator>
		<pubDate>Sat, 21 Apr 2012 15:45:15 +0000</pubDate>
		<guid isPermaLink="false">http://sheriframadan.com/?p=363#comment-849</guid>
		<description>A very well written article... I implemented varnish cache as a load balancer for one of my websites that gets sudden traffic spikes of around 4000 users per second for a short period of time and it have me the best possible results ever.

Thanks for the nice article :-)</description>
		<content:encoded><![CDATA[<p>A very well written article&#8230; I implemented varnish cache as a load balancer for one of my websites that gets sudden traffic spikes of around 4000 users per second for a short period of time and it have me the best possible results ever.</p>
<p>Thanks for the nice article :-)</p>
]]></content:encoded>
	</item>
	<item>
		<title>Comment on Development Environment by L0cky</title>
		<link>http://sheriframadan.com/phpcorner/development/#comment-703</link>
		<dc:creator>L0cky</dc:creator>
		<pubDate>Fri, 06 Apr 2012 18:20:56 +0000</pubDate>
		<guid isPermaLink="false">http://sheriframadan.com/?page_id=685#comment-703</guid>
		<description>That should be:
NET USE W: \\(host)\www (password) /USER:(username) /PERSISTENT:NO</description>
		<content:encoded><![CDATA[<p>That should be:<br />
NET USE W: \\(host)\www (password) /USER:(username) /PERSISTENT:NO</p>
]]></content:encoded>
	</item>
	<item>
		<title>Comment on Development Environment by L0cky</title>
		<link>http://sheriframadan.com/phpcorner/development/#comment-699</link>
		<dc:creator>L0cky</dc:creator>
		<pubDate>Thu, 05 Apr 2012 16:57:40 +0000</pubDate>
		<guid isPermaLink="false">http://sheriframadan.com/?page_id=685#comment-699</guid>
		<description>One thing I like to do is set up Virtualbox in headless mode.  This allows you to run your web server without displaying the screen.  You can then ssh using an ssh client like putty (http://www.chiark.greenend.org.uk/~sgtatham/putty/) as you might do on a production server.

To run your vm in headless mode on Windows you can use:
  VBoxHeadless.exe - startvm &quot;My New Development Server&quot;

I also set up some simple batch scripts, vb scripts and shortcuts so that I can start and stop the server and mount a mapped drive to a samba file share running on the server. The vb scripts simply prevent a command prompt from opening while the vm is running:

server_run.bat
&quot;C:\Program Files\VirtualBox\VBoxHeadless.exe&quot; -startvm &quot;My New Development Server&quot;
NET USE V: \\\www  /USER: /PERSISTENT:NO

server_run.vbs
Set WshShell = CreateObject(&quot;WScript.Shell&quot;)
WshShell.Run chr(34) &amp; &quot;server_run.bat&quot; &amp; Chr(34), 0
Set WshShell = Nothing

server_stop.bat
&quot;C:\Program Files\VirtualBox\VBoxManage.exe&quot; controlvm &quot;My New Development Server&quot; savestate

server_stop.vbs
Set WshShell = CreateObject(&quot;WScript.Shell&quot;)
WshShell.Run chr(34) &amp; &quot;server_stop.bat&quot; &amp; Chr(34), 0
Set WshShell = Nothing

You can then make shortcuts of the vb scripts and stick them in your Start Menu, Quick Launch, desktop etc.  I customised mine to use the vbox icon :)</description>
		<content:encoded><![CDATA[<p>One thing I like to do is set up Virtualbox in headless mode.  This allows you to run your web server without displaying the screen.  You can then ssh using an ssh client like putty (<a href="http://www.chiark.greenend.org.uk/~sgtatham/putty/" rel="nofollow">http://www.chiark.greenend.org.uk/~sgtatham/putty/</a>) as you might do on a production server.</p>
<p>To run your vm in headless mode on Windows you can use:<br />
  VBoxHeadless.exe &#8211; startvm &#8220;My New Development Server&#8221;</p>
<p>I also set up some simple batch scripts, vb scripts and shortcuts so that I can start and stop the server and mount a mapped drive to a samba file share running on the server. The vb scripts simply prevent a command prompt from opening while the vm is running:</p>
<p>server_run.bat<br />
&#8220;C:\Program Files\VirtualBox\VBoxHeadless.exe&#8221; -startvm &#8220;My New Development Server&#8221;<br />
NET USE V: \\\www  /USER: /PERSISTENT:NO</p>
<p>server_run.vbs<br />
Set WshShell = CreateObject(&#8220;WScript.Shell&#8221;)<br />
WshShell.Run chr(34) &amp; &#8220;server_run.bat&#8221; &amp; Chr(34), 0<br />
Set WshShell = Nothing</p>
<p>server_stop.bat<br />
&#8220;C:\Program Files\VirtualBox\VBoxManage.exe&#8221; controlvm &#8220;My New Development Server&#8221; savestate</p>
<p>server_stop.vbs<br />
Set WshShell = CreateObject(&#8220;WScript.Shell&#8221;)<br />
WshShell.Run chr(34) &amp; &#8220;server_stop.bat&#8221; &amp; Chr(34), 0<br />
Set WshShell = Nothing</p>
<p>You can then make shortcuts of the vb scripts and stick them in your Start Menu, Quick Launch, desktop etc.  I customised mine to use the vbox icon :)</p>
]]></content:encoded>
	</item>
	<item>
		<title>Comment on Why Programmers Write Bad Code by GoogleGuy</title>
		<link>http://sheriframadan.com/2011/04/why-programmers-write-bad-code/#comment-689</link>
		<dc:creator>GoogleGuy</dc:creator>
		<pubDate>Mon, 02 Apr 2012 06:40:56 +0000</pubDate>
		<guid isPermaLink="false">http://sheriframadan.com/?p=195#comment-689</guid>
		<description>Not at all. You seemed to have missed the point entirely.

First, by removing the &quot;Extends&quot; keyword from the class definition we lose inheritance. That means we can no longer extend the functionality of DateTime, but are now simply coupling two different objects together. Second, we don&#039;t have to call the parent constructor at all if we didn&#039;t overload the constructor. We could have simply left the entire constructor out, but for demonstration purposes I left it in to give you an idea of how you could further do any necessary logic upon instantiating the object.

Baz is not trying to create a new class, but merely modify the behavior of the existing object slightly. According to the SOLID OOP principle of Open/Close:



&lt;blockquote&gt;In object-oriented programming, the open/closed principle states &quot;software entities (classes, modules, functions, etc.) should be open for extension, but closed for modification&quot;;[1] that is, such an entity can allow its behaviour to be modified without altering its source code. -- Source http://en.wikipedia.org/wiki/Open/closed_principle&lt;/blockquote&gt;

Baz is doing two things here. 1) He is following KISS (Keep It Simple Stupid), 2) He is complying with the Open/Close SOLID OOP principle and thus he doesn&#039;t have to worry about how the DateTime object is being used elsewhere since it still complies with all of the other SOLID OOP principles (including the Liskov substitution principle - which is a design by contract).

Your suggestions would actually break the code entirely and defy the purpose since Baz intends for this to work with the existing DateTime objects being used throughout the code (i.e. any dates retrieved from the database and stored as datetime objects throughout).

&lt;strong&gt;Baz did his job perfectly and shouldn&#039;t have done it any other way.&lt;/strong&gt;

</description>
		<content:encoded><![CDATA[<p>Not at all. You seemed to have missed the point entirely.</p>
<p>First, by removing the &#8220;Extends&#8221; keyword from the class definition we lose inheritance. That means we can no longer extend the functionality of DateTime, but are now simply coupling two different objects together. Second, we don&#8217;t have to call the parent constructor at all if we didn&#8217;t overload the constructor. We could have simply left the entire constructor out, but for demonstration purposes I left it in to give you an idea of how you could further do any necessary logic upon instantiating the object.</p>
<p>Baz is not trying to create a new class, but merely modify the behavior of the existing object slightly. According to the SOLID OOP principle of Open/Close:</p>
<blockquote><p>In object-oriented programming, the open/closed principle states &#8220;software entities (classes, modules, functions, etc.) should be open for extension, but closed for modification&#8221;;[1] that is, such an entity can allow its behaviour to be modified without altering its source code. &#8212; Source <a href="http://en.wikipedia.org/wiki/Open/closed_principle" rel="nofollow">http://en.wikipedia.org/wiki/Open/closed_principle</a></p></blockquote>
<p>Baz is doing two things here. 1) He is following KISS (Keep It Simple Stupid), 2) He is complying with the Open/Close SOLID OOP principle and thus he doesn&#8217;t have to worry about how the DateTime object is being used elsewhere since it still complies with all of the other SOLID OOP principles (including the Liskov substitution principle &#8211; which is a design by contract).</p>
<p>Your suggestions would actually break the code entirely and defy the purpose since Baz intends for this to work with the existing DateTime objects being used throughout the code (i.e. any dates retrieved from the database and stored as datetime objects throughout).</p>
<p><strong>Baz did his job perfectly and shouldn&#8217;t have done it any other way.</strong></p>
]]></content:encoded>
	</item>
	<item>
		<title>Comment on Why Programmers Write Bad Code by Izkata, since</title>
		<link>http://sheriframadan.com/2011/04/why-programmers-write-bad-code/#comment-590</link>
		<dc:creator>Izkata, since</dc:creator>
		<pubDate>Sat, 17 Mar 2012 02:32:50 +0000</pubDate>
		<guid isPermaLink="false">http://sheriframadan.com/?p=195#comment-590</guid>
		<description>Baz wrote bad code, as well.  Are you trying to extend DateTime or create a wrapper?  &#039;Cause that example code is a horrible mishmash of both.

The best way to go will be to create a wrapper.  The code only requires two changes, then:

1) Remove &quot; Extends DateTime&quot;.
2) Use &quot;new DateTime(&quot; instead of &quot;new parent(&quot; in the constructor.</description>
		<content:encoded><![CDATA[<p>Baz wrote bad code, as well.  Are you trying to extend DateTime or create a wrapper?  &#8216;Cause that example code is a horrible mishmash of both.</p>
<p>The best way to go will be to create a wrapper.  The code only requires two changes, then:</p>
<p>1) Remove &#8221; Extends DateTime&#8221;.<br />
2) Use &#8220;new DateTime(&#8221; instead of &#8220;new parent(&#8221; in the constructor.</p>
]]></content:encoded>
	</item>
	<item>
		<title>Comment on Load Balancing Software as a Service by Jellydog</title>
		<link>http://sheriframadan.com/2011/11/load-balancing-software-as-a-service/#comment-369</link>
		<dc:creator>Jellydog</dc:creator>
		<pubDate>Wed, 04 Jan 2012 02:10:07 +0000</pubDate>
		<guid isPermaLink="false">http://sheriframadan.com/?p=363#comment-369</guid>
		<description>Thank you for this very useful information. I&#039;ve been struggling with the best approach for my needs and this article made my decision simple.</description>
		<content:encoded><![CDATA[<p>Thank you for this very useful information. I&#8217;ve been struggling with the best approach for my needs and this article made my decision simple.</p>
]]></content:encoded>
	</item>
	<item>
		<title>Comment on Load Balancing Software as a Service by VallotYbarra2188</title>
		<link>http://sheriframadan.com/2011/11/load-balancing-software-as-a-service/#comment-327</link>
		<dc:creator>VallotYbarra2188</dc:creator>
		<pubDate>Fri, 25 Nov 2011 21:03:04 +0000</pubDate>
		<guid isPermaLink="false">http://sheriframadan.com/?p=363#comment-327</guid>
		<description>Hey There. I found your blog the usage of msn. That is a really neatly written article. I&#039;ll make sure to bookmark it and come back to learn extra of your helpful information. Thank you for the post. I will definitely comeback.</description>
		<content:encoded><![CDATA[<p>Hey There. I found your blog the usage of msn. That is a really neatly written article. I&#8217;ll make sure to bookmark it and come back to learn extra of your helpful information. Thank you for the post. I will definitely comeback.</p>
]]></content:encoded>
	</item>
	<item>
		<title>Comment on Understanding DNS in Order to Host Your Web Sites by Guy P.</title>
		<link>http://sheriframadan.com/2010/08/understanding-dns-in-order-to-host-your-web-sites/#comment-174</link>
		<dc:creator>Guy P.</dc:creator>
		<pubDate>Sat, 13 Nov 2010 10:02:45 +0000</pubDate>
		<guid isPermaLink="false">http://sheriframadan.com/?p=39#comment-174</guid>
		<description>Great information! I’ve been looking for something like this for a while now. Thanks!</description>
		<content:encoded><![CDATA[<p>Great information! I’ve been looking for something like this for a while now. Thanks!</p>
]]></content:encoded>
	</item>
	<item>
		<title>Comment on How to Build Web Forums Using PHP and MySQL by computer technician</title>
		<link>http://sheriframadan.com/2010/08/how-to-build-web-forums-using-php-and-mysql/#comment-132</link>
		<dc:creator>computer technician</dc:creator>
		<pubDate>Wed, 10 Nov 2010 11:04:04 +0000</pubDate>
		<guid isPermaLink="false">http://sheriframadan.com/?p=63#comment-132</guid>
		<description>this post is very usefull thx!</description>
		<content:encoded><![CDATA[<p>this post is very usefull thx!</p>
]]></content:encoded>
	</item>
	<item>
		<title>Comment on How to Build Web Forums Using PHP and MySQL by Fuscowscuse</title>
		<link>http://sheriframadan.com/2010/08/how-to-build-web-forums-using-php-and-mysql/#comment-131</link>
		<dc:creator>Fuscowscuse</dc:creator>
		<pubDate>Wed, 10 Nov 2010 03:12:46 +0000</pubDate>
		<guid isPermaLink="false">http://sheriframadan.com/?p=63#comment-131</guid>
		<description>I found lots of valuable information in this forum

Greetings to all</description>
		<content:encoded><![CDATA[<p>I found lots of valuable information in this forum</p>
<p>Greetings to all</p>
]]></content:encoded>
	</item>
</channel>
</rss>

