<?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: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-5696640219596502453</id><updated>2011-11-27T17:34:38.581-08:00</updated><category term='install'/><category term='drupal'/><category term='apache'/><category term='mysql'/><category term='php'/><title type='text'>Developers Corner</title><subtitle type='html'></subtitle><link rel='http://schemas.google.com/g/2005#feed' type='application/atom+xml' href='http://dev-corner.blogspot.com/feeds/posts/default'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5696640219596502453/posts/default?max-results=100'/><link rel='alternate' type='text/html' href='http://dev-corner.blogspot.com/'/><link rel='hub' href='http://pubsubhubbub.appspot.com/'/><author><name>My Vision</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><generator version='7.00' uri='http://www.blogger.com'>Blogger</generator><openSearch:totalResults>8</openSearch:totalResults><openSearch:startIndex>1</openSearch:startIndex><openSearch:itemsPerPage>100</openSearch:itemsPerPage><entry><id>tag:blogger.com,1999:blog-5696640219596502453.post-2737990225848720888</id><published>2009-03-08T13:42:00.000-07:00</published><updated>2009-03-08T13:43:18.876-07:00</updated><title type='text'>New Blog</title><content type='html'>This blog will move to &lt;a href="http://www.milkshakesystems.com/"&gt;http://www.milkshakesystems.com&lt;/a&gt;&lt;br /&gt;starting from the mid of march&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5696640219596502453-2737990225848720888?l=dev-corner.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://dev-corner.blogspot.com/feeds/2737990225848720888/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=5696640219596502453&amp;postID=2737990225848720888' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5696640219596502453/posts/default/2737990225848720888'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5696640219596502453/posts/default/2737990225848720888'/><link rel='alternate' type='text/html' href='http://dev-corner.blogspot.com/2009/03/new-blog.html' title='New Blog'/><author><name>My Vision</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5696640219596502453.post-336744279884028043</id><published>2008-11-19T23:28:00.000-08:00</published><updated>2008-11-27T13:08:23.696-08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='install'/><category scheme='http://www.blogger.com/atom/ns#' term='mysql'/><category scheme='http://www.blogger.com/atom/ns#' term='drupal'/><category scheme='http://www.blogger.com/atom/ns#' term='php'/><category scheme='http://www.blogger.com/atom/ns#' term='apache'/><title type='text'>Installing drupal 6.6 ,PHP ,Apache and MySql on Windows</title><content type='html'>&lt;p&gt;In this tutorial ,I try to write exaclty the steps I passed through while installing Apache,MySql,PHP and druap for the first time on windows.&lt;/p&gt;&lt;ol&gt;&lt;br /&gt;&lt;li&gt;Download Apache web server from &lt;a href="http://httpd.apache.org/download.cgi"&gt;http://httpd.apache.org/download.cgi&lt;/a&gt;&lt;br /&gt;,for this tutorial I downloaded version 2.2.10 Win32 Binary without crypto (no mod_ssl)&lt;br /&gt;MSI Installer &lt;/li&gt;&lt;br /&gt;&lt;li&gt;Run the installer , during installation I kept the default settings, the installation folder is&lt;br /&gt;&lt;i&gt;&lt;b&gt;"C:\Program Files\Apache Software Foundation\Apache2.2"&lt;/b&gt;&lt;/i&gt;&lt;/li&gt;&lt;br /&gt;&lt;li&gt;For the Network Domain,Server Name and Administrator's Email Address I entered &lt;i&gt;&lt;b&gt;localhost,localhost and admin@localhost&lt;/b&gt;&lt;/i&gt; respectively&lt;/li&gt;&lt;br /&gt;&lt;li&gt;Download and install MySql Community server from &lt;a href="http://dev.mysql.com/downloads/"&gt;&lt;br /&gt;http://dev.mysql.com/downloads/&lt;/a&gt;&lt;/li&gt;&lt;br /&gt;&lt;li&gt;Download and install MySql GUI Tools from &lt;a href="http://dev.mysql.com/downloads/gui-tools/5.0.html"&gt;&lt;br /&gt;http://dev.mysql.com/downloads/gui-tools/5.0.html&lt;/a&gt; , although these tools are&lt;br /&gt;not required but they make it easy to manage MySql Server&lt;/li&gt;&lt;br /&gt;&lt;li&gt;Download PHP from &lt;a href="http://www.php.net/downloads.php" target="_blank"&gt;http://www.php.net/downloads.php&lt;/a&gt;&lt;br /&gt;, for this tutorial I downloaded version 5.2.6 zip package&lt;/li&gt;&lt;br /&gt;&lt;li&gt;Extract the PHP zip file into folder &lt;i&gt;&lt;b&gt;c:\php&lt;/b&gt;&lt;/i&gt;&lt;/li&gt;&lt;br /&gt;&lt;li&gt;Add PHP folder to the system path&lt;br /&gt;&lt;ul&gt;&lt;br /&gt;&lt;li&gt;Right click on My Computer&lt;/li&gt;&lt;br /&gt;&lt;li&gt;Choose &lt;i&gt;&lt;b&gt;Advanced&lt;/b&gt;&lt;/i&gt; Tab&lt;/li&gt;&lt;br /&gt;&lt;li&gt;Click on &lt;i&gt;&lt;b&gt;Environment Variables&lt;/b&gt;&lt;/i&gt; button&lt;/li&gt;&lt;br /&gt;&lt;li&gt;From &lt;i&gt;&lt;b&gt;System variables&lt;/b&gt;&lt;/i&gt; , select Path&lt;/li&gt;&lt;br /&gt;&lt;li&gt;Click Edit&lt;/li&gt;&lt;br /&gt;&lt;li&gt;Add the folder where PHP is extracted (i.e. "c:\php") to the end of the &lt;i&gt;&lt;b&gt;Variable value&lt;/b&gt;&lt;/i&gt;&lt;/li&gt;&lt;br /&gt;&lt;li&gt;The Path Variable might look something like &lt;i&gt;&lt;b&gt;%SystemRoot%\system32;%SystemRoot%;C:\Program&lt;br /&gt;Files\MySQL\MySQL Server 5.0\bin;C:\php&lt;/b&gt;&lt;/i&gt;&lt;/li&gt;&lt;br /&gt;&lt;/ul&gt;&lt;/li&gt;&lt;br /&gt;&lt;li&gt;Restart your computer for the Path vaialbe to be reflected on the system&lt;/li&gt;&lt;br /&gt;&lt;li&gt;Go to PHP installation folder ("c:\php") ,make a copy of php.ini-recommended and rename it to php.ini&lt;/li&gt;&lt;br /&gt;&lt;li&gt;Edit php.ini&lt;br /&gt;&lt;ul&gt;&lt;br /&gt;&lt;li&gt;Set &lt;i&gt;&lt;b&gt;max_execution_time = 300&lt;/b&gt;&lt;/i&gt; (line 303) , the default value is 30 but some drupal actions take longer time&lt;/li&gt;&lt;br /&gt;&lt;li&gt;Set &lt;i&gt;&lt;b&gt;display_errors = On&lt;/b&gt;&lt;/i&gt; (line 372), the default value is Off&lt;/li&gt;&lt;br /&gt;&lt;li&gt;Set &lt;i&gt;&lt;b&gt;display_startup_errors = On&lt;/b&gt;&lt;/i&gt; (line 377), the default value is Off&lt;/li&gt;&lt;br /&gt;&lt;li&gt;set &lt;i&gt;&lt;b&gt;extension_dir = ".\ext\"&lt;/b&gt;&lt;/i&gt; (line 536), this the folder where PHP extensions reside&lt;/li&gt;&lt;br /&gt;&lt;li&gt;Uncomment the following lines by removing the semicolon at the begining of each line ,to enable the corresponding extensions&lt;br /&gt;&lt;ul&gt;&lt;br /&gt;&lt;li&gt;&lt;i&gt;&lt;b&gt;;extension=php_gd2.dll&lt;/b&gt;&lt;/i&gt; (line 661)&lt;/li&gt;&lt;br /&gt;&lt;li&gt;&lt;i&gt;&lt;b&gt;;extension=php_mbstring.dll&lt;/b&gt;&lt;/i&gt; (line 668)&lt;/li&gt;&lt;br /&gt;&lt;li&gt;&lt;i&gt;&lt;b&gt;;extension=php_mysql.dll&lt;/b&gt;&lt;/i&gt; (line 675)&lt;/li&gt;&lt;br /&gt;&lt;li&gt;&lt;i&gt;&lt;b&gt;;extension=php_mysqli.dll&lt;/b&gt;&lt;/i&gt; (line 676)&lt;/li&gt;&lt;br /&gt;&lt;/ul&gt;&lt;/li&gt;&lt;br /&gt;&lt;/ul&gt;&lt;/li&gt;&lt;br /&gt;&lt;li&gt;Edit httpd.conf found in &lt;i&gt;&lt;b&gt;"C:\Program Files\Apache Software Foundation\Apache2.2\conf"&lt;/b&gt;&lt;/i&gt;&lt;br /&gt;&lt;ul&gt;&lt;br /&gt;&lt;li&gt;To change your WWW root folder change &lt;i&gt;&lt;b&gt;DocumentRoot&lt;/b&gt;&lt;/i&gt; value (line 177) to your WWW root folder e.g. &lt;i&gt;&lt;b&gt;DocumentRoot "C:/wwwroot"&lt;/b&gt;&lt;/i&gt; &lt;/li&gt;&lt;br /&gt;&lt;li&gt;change &amp;lt;Directory "C:/Program Files/Apache Software Foundation/Apache2.2/htdocs"&gt; (line 204) to &amp;lt;Directory "C:/wwwroot"&gt;&lt;/li&gt;&lt;br /&gt;&lt;li&gt;To Enable mod rewrite&lt;br /&gt;&lt;ul&gt;&lt;br /&gt;&lt;li&gt;Uncomment the following line &lt;i&gt;&lt;b&gt;#LoadModule rewrite_module modules/mod_rewrite.so&lt;/b&gt;&lt;/i&gt; (line 116) by removing the hash at the begning of the line&lt;/li&gt;&lt;br /&gt;&lt;li&gt;inside tag &lt;i&gt;&lt;b&gt;&amp;lt;Directory "C:/wwwroot"&gt;&lt;/b&gt;&lt;/i&gt; (line 204) , change &lt;i&gt;&lt;b&gt;AllowOverride None&lt;/b&gt;&lt;/i&gt; (line 224) to &lt;i&gt;&lt;b&gt;AllowOverride All&lt;/b&gt;&lt;/i&gt;&lt;/li&gt;&lt;br /&gt;&lt;/ul&gt;&lt;/li&gt;&lt;br /&gt;&lt;li&gt;To Enable PHP&lt;br /&gt;&lt;ul&gt;&lt;br /&gt;&lt;li&gt;Inside tag &lt;i&gt;&lt;b&gt;&amp;lt;IfModule dir_module&gt; line&lt;/b&gt;&lt;/i&gt; (238) change &lt;i&gt;&lt;b&gt;DirectoryIndex index.html&lt;/b&gt;&lt;/i&gt; to &lt;i&gt;&lt;b&gt;DirectoryIndex index.php index.html&lt;/b&gt;&lt;/i&gt; so index.php will be regonized as a default file&lt;/li&gt;&lt;br /&gt;&lt;li&gt;at the end of the file add the following lines&lt;br /&gt;&lt;br /&gt;&lt;i&gt;&lt;b&gt;&lt;br /&gt;#Enable PHP 5.2.6&lt;br /&gt;&lt;br /&gt;LoadModule php5_module "C:/php/php5apache2_2.dll"&lt;br /&gt;&lt;br /&gt;AddType application/x-httpd-php .php&lt;br /&gt;&lt;br /&gt;# configure the path to php.ini&lt;br /&gt;&lt;br /&gt;PHPIniDir "C:/php"&lt;/b&gt;&lt;/i&gt;&lt;/li&gt;&lt;br /&gt;&lt;/ul&gt;&lt;/li&gt;&lt;br /&gt;&lt;/ul&gt;&lt;/li&gt;&lt;br /&gt;&lt;li&gt;Using MySql query browser create a new schema called &lt;i&gt;&lt;b&gt;"drupalDB"&lt;/b&gt;&lt;/i&gt;&lt;/li&gt;&lt;br /&gt;&lt;li&gt;Download Drupal 6.6 from &lt;a href="http://drupal.org/project/Drupal+project"&gt;Drupal Download&lt;/a&gt;&lt;/li&gt;&lt;br /&gt;&lt;li&gt;extract the downloaded file to &lt;i&gt;&lt;b&gt;c:\wwwroot\drupal&lt;/b&gt;&lt;/i&gt;&lt;/li&gt;&lt;br /&gt;&lt;li&gt;Go to drupal installation folder ("c:\wwwroot\drupal") ,make a copy of &lt;i&gt;&lt;b&gt;default.settings.php&lt;/b&gt;&lt;/i&gt; and rename it to &lt;i&gt;&lt;b&gt;settings.php&lt;/b&gt;&lt;/i&gt;&lt;/li&gt;&lt;br /&gt;&lt;li&gt;If &lt;i&gt;&lt;b&gt;settings.php&lt;/b&gt;&lt;/i&gt; is readonly make it writeable&lt;/li&gt;&lt;br /&gt;&lt;li&gt;Open your briwser and go the url &lt;i&gt;&lt;b&gt;http://localhost/drupal/&lt;/b&gt;&lt;/i&gt; click make a new drupal installation and follow the wizard&lt;/li&gt;&lt;br /&gt;&lt;/ol&gt;&lt;br /&gt;That's it Done&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5696640219596502453-336744279884028043?l=dev-corner.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://dev-corner.blogspot.com/feeds/336744279884028043/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=5696640219596502453&amp;postID=336744279884028043' title='1 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5696640219596502453/posts/default/336744279884028043'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5696640219596502453/posts/default/336744279884028043'/><link rel='alternate' type='text/html' href='http://dev-corner.blogspot.com/2008/11/installing-drupal-66-php-apache-and.html' title='Installing drupal 6.6 ,PHP ,Apache and MySql on Windows'/><author><name>My Vision</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5696640219596502453.post-9186513464691258459</id><published>2008-07-02T23:23:00.000-07:00</published><updated>2008-07-02T23:32:19.538-07:00</updated><title type='text'>Singleton pattern in a multi-threaded C# application</title><content type='html'>This is piece of code will assure the creation of a single instance of the singleton class in a multi-threaded application and at the same time highly performing&lt;br /&gt;&lt;pre&gt;&lt;br /&gt;    public class Singleton&lt;br /&gt;    {&lt;br /&gt;        private static Singleton _instance;&lt;br /&gt;        private static readonly object syncObject = new object();&lt;br /&gt;&lt;br /&gt;        public static Singleton instance&lt;br /&gt;        {&lt;br /&gt;            get&lt;br /&gt;            {&lt;br /&gt;                if (_instance == null)&lt;br /&gt;                {&lt;br /&gt;                    lock (syncObject)&lt;br /&gt;                    {&lt;br /&gt;                        if (_instance == null)&lt;br /&gt;                            _instance = new Singleton();&lt;br /&gt;                    }&lt;br /&gt;                }&lt;br /&gt;                return _instance;&lt;br /&gt;            }&lt;br /&gt;        }&lt;br /&gt;&lt;br /&gt;    }&lt;br /&gt;&lt;/pre&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5696640219596502453-9186513464691258459?l=dev-corner.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://dev-corner.blogspot.com/feeds/9186513464691258459/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=5696640219596502453&amp;postID=9186513464691258459' title='1 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5696640219596502453/posts/default/9186513464691258459'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5696640219596502453/posts/default/9186513464691258459'/><link rel='alternate' type='text/html' href='http://dev-corner.blogspot.com/2008/07/singleton-pattern-in-multi-threaded-c.html' title='Singleton pattern in a multi-threaded C# application'/><author><name>My Vision</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5696640219596502453.post-150863557277736634</id><published>2008-03-30T08:36:00.000-07:00</published><updated>2008-03-30T08:55:33.698-07:00</updated><title type='text'>How my coding habits changed since 1990?</title><content type='html'>I start writing code since 1990 when I was in high school , today 18 years later when I think how my coding habits changed, I found three major events that effected the way I write code:&lt;br /&gt;&lt;ul&gt;&lt;li&gt;Introduction of design patterns by GOF&lt;/li&gt;&lt;li&gt;Introduction of  garbage collector in Java and I need no more to free allocated memory&lt;/li&gt;&lt;li&gt;Introduction of Test driven development&lt;/li&gt;&lt;/ul&gt;other than this I think the way I write code remain the same wither I code in Java, C# , Ruby or whatever else&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5696640219596502453-150863557277736634?l=dev-corner.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://dev-corner.blogspot.com/feeds/150863557277736634/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=5696640219596502453&amp;postID=150863557277736634' title='1 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5696640219596502453/posts/default/150863557277736634'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5696640219596502453/posts/default/150863557277736634'/><link rel='alternate' type='text/html' href='http://dev-corner.blogspot.com/2008/03/how-my-coding-habits-changed-since-1990.html' title='How my coding habits changed since 1990?'/><author><name>My Vision</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5696640219596502453.post-7065165574556340694</id><published>2008-03-03T10:11:00.000-08:00</published><updated>2008-03-03T20:08:07.212-08:00</updated><title type='text'>Advantages of Offshore development in Egypt</title><content type='html'>Egypt is a great place and I would like to point here to some advantages of doing offshore development in Egypt:&lt;br /&gt;&lt;br /&gt;&lt;ul&gt;&lt;li&gt;Large pool of technical skills&lt;/li&gt;&lt;li&gt;Egypt shares a time zone with many European countries, which make Egypt actually a near shore location&lt;/li&gt;&lt;li&gt;Egypt has a multilingual workforce&lt;/li&gt;&lt;li&gt;Familiarity with western culture&lt;/li&gt;&lt;br /&gt;&lt;/ul&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5696640219596502453-7065165574556340694?l=dev-corner.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://dev-corner.blogspot.com/feeds/7065165574556340694/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=5696640219596502453&amp;postID=7065165574556340694' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5696640219596502453/posts/default/7065165574556340694'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5696640219596502453/posts/default/7065165574556340694'/><link rel='alternate' type='text/html' href='http://dev-corner.blogspot.com/2008/03/advantages-of-offshore-development-in.html' title='Advantages of Offshore development in Egypt'/><author><name>My Vision</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5696640219596502453.post-7606507794732388637</id><published>2008-01-31T13:07:00.000-08:00</published><updated>2008-01-31T13:39:31.707-08:00</updated><title type='text'>My .Net development ToolBox</title><content type='html'>When I start developing .Net applications some years ago, most of the open source projects available today were beta and can't be used in real world applications so we had to develop a custom framework with lot of functionalities available today. but today its more feasible to use existing open source projects and currently my .Net toolbox consists mainly of the following open source projects:&lt;br /&gt;&lt;br /&gt;&lt;ul&gt;&lt;br /&gt;&lt;li&gt;&lt;a href="http://www.hibernate.org/343.html"&gt;NHibernate &lt;/a&gt;for ORM and data persistence&lt;/li&gt;&lt;li&gt;&lt;a href="http://logging.apache.org/log4net/"&gt;Log4Net &lt;/a&gt;for logging&lt;/li&gt;&lt;li&gt;&lt;a href="http://www.nunit.org/"&gt;NUnit &lt;/a&gt;for unit testing&lt;/li&gt;&lt;li&gt;&lt;a href="http://www.springframework.net/"&gt;Spring.Net&lt;/a&gt; for orchestrating the above modules and I mostly use Spring.Net Nhibernate integration and declarative transactions&lt;/li&gt;&lt;li&gt;&lt;a href="http://www.mygenerationsoftware.com/portal/default.aspx"&gt;MyGeneration &lt;/a&gt;for code generation and any routine tasks that requires code generation&lt;/li&gt;&lt;/ul&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5696640219596502453-7606507794732388637?l=dev-corner.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://dev-corner.blogspot.com/feeds/7606507794732388637/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=5696640219596502453&amp;postID=7606507794732388637' title='3 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5696640219596502453/posts/default/7606507794732388637'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5696640219596502453/posts/default/7606507794732388637'/><link rel='alternate' type='text/html' href='http://dev-corner.blogspot.com/2008/01/my-net-toolbox.html' title='My .Net development ToolBox'/><author><name>My Vision</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>3</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5696640219596502453.post-2880810622158960802</id><published>2008-01-19T11:10:00.000-08:00</published><updated>2008-01-20T01:23:59.943-08:00</updated><title type='text'>Successful development environment</title><content type='html'>Delivering successful software projects requires healthy software development environment. Among successful environments I have seen there are common practises independent of the methodology used, here I will try to summarize those point:&lt;br /&gt;&lt;br /&gt;&lt;ol&gt;&lt;li&gt;Have a clear standards for Design,Coding , Database, Unit Testing , Security, Source Control , UI Design and any aspects relevant to your environment.&lt;/li&gt;&lt;li&gt;Use software development framework&lt;/li&gt;&lt;li&gt;Break project into Independent tasks as much as possible&lt;/li&gt;&lt;li&gt;Minimize effort spend in maintaining UI and have clear separation between UI and business , poorly developed UI consume a lot of time maintaining it more then any other part of the application&lt;/li&gt;&lt;li&gt;Start with small team of senior developers then increase the size of the team&lt;/li&gt;&lt;li&gt;Use custom code generators for common task instead of copy and paste but make sure the generated code is maintainable&lt;/li&gt;&lt;li&gt;Avoid bad developers if you have them get rid of them immediately&lt;/li&gt;&lt;li&gt;Use ORM tools and minimize SQL statements&lt;/li&gt;&lt;li&gt;Avoid using heavy project management tools , use the simplest tools&lt;/li&gt;&lt;li&gt;Don't write documentation that no one will read&lt;/li&gt;&lt;li&gt;Don't let developers got bored in long projects otherwise they will leave&lt;/li&gt;&lt;/ol&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5696640219596502453-2880810622158960802?l=dev-corner.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://dev-corner.blogspot.com/feeds/2880810622158960802/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=5696640219596502453&amp;postID=2880810622158960802' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5696640219596502453/posts/default/2880810622158960802'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5696640219596502453/posts/default/2880810622158960802'/><link rel='alternate' type='text/html' href='http://dev-corner.blogspot.com/2008/01/successful-development-environment.html' title='Successful development environment'/><author><name>My Vision</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5696640219596502453.post-1923797584309426429</id><published>2008-01-13T23:28:00.000-08:00</published><updated>2008-01-13T23:35:16.918-08:00</updated><title type='text'>Books that influenced my software development career</title><content type='html'>Last night I was thinking about IT books that influenced my software development career and was of great value to me, I came up with this list of 11 books and as you can see there are nearly no books about recent programming languages and software tools on the list because I do think that these are only tools and any developer with the basic knowledge will take him maximum a week or two to learn any new programming language or tool. And from my experience once you are good at C++ you will learn any programming language easily.&lt;br /&gt;Here is the list:&lt;br /&gt;&lt;ol&gt;&lt;br /&gt;&lt;li&gt;Assembly Language Primer for the IBM PC &amp;amp; XT by Robert Lafore&lt;br /&gt;&lt;li&gt;The Waite Group's Object-Oriented Programming in C++ Robert Lafore&lt;br /&gt;&lt;li&gt;The Waite Group's C Programming Using Turbo C by Robert Lafore&lt;br /&gt;&lt;li&gt;Computer Networks by Andrew S. Tanenbaum&lt;br /&gt;&lt;li&gt;Modern Operating Systems by Andrew S. Tanenbaum&lt;br /&gt;&lt;li&gt;Extreme Programming Explained: Embrace Change by Kent Beck&lt;br /&gt;&lt;li&gt;Head First Design Patterns by Elisabeth Freeman , Eric Freeman, Bert Bates, Kathy Sierra&lt;br /&gt;&lt;li&gt;Design Patterns: Elements of Reusable Object-Oriented Software by Erich Gamma, Richard Helm, Ralph Johnson, and John M. Vlissides&lt;br /&gt;&lt;li&gt;Applying UML and Patterns: An Introduction to Object-Oriented Analysis and Design and Iterative Development by Craig Larman&lt;br /&gt;&lt;li&gt;Patterns of Enterprise Application Architecture by Martin Fowler&lt;br /&gt;&lt;li&gt;Refactoring: Improving the Design of Existing Code by Martin Fowler, Kent Beck, John Brant, and William Opdyke&lt;br /&gt;&lt;/ol&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5696640219596502453-1923797584309426429?l=dev-corner.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://dev-corner.blogspot.com/feeds/1923797584309426429/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=5696640219596502453&amp;postID=1923797584309426429' title='2 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5696640219596502453/posts/default/1923797584309426429'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5696640219596502453/posts/default/1923797584309426429'/><link rel='alternate' type='text/html' href='http://dev-corner.blogspot.com/2008/01/books-that-influenced-my-software.html' title='Books that influenced my software development career'/><author><name>My Vision</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>2</thr:total></entry></feed>
