<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0"
	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/"
	>

<channel>
	<title>EvereQ</title>
	<atom:link href="http://blog.evereq.com/blog/index.php/feed/" rel="self" type="application/rss+xml" />
	<link>http://blog.evereq.com/blog</link>
	<description>Everything reQuired</description>
	<lastBuildDate>Thu, 26 Jan 2012 16:00:11 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.1.3</generator>
		<item>
		<title>Could not load type System.ServiceModel.Activation.HttpModule</title>
		<link>http://blog.evereq.com/blog/index.php/2012/01/could-not-load-type-system-servicemodel-activation-httpmodule/</link>
		<comments>http://blog.evereq.com/blog/index.php/2012/01/could-not-load-type-system-servicemodel-activation-httpmodule/#comments</comments>
		<pubDate>Thu, 26 Jan 2012 16:00:11 +0000</pubDate>
		<dc:creator>evereq</dc:creator>
				<category><![CDATA[.NET]]></category>
		<category><![CDATA[ASP.NET MVC]]></category>
		<category><![CDATA[ASP.NET MVC 4]]></category>
		<category><![CDATA[Could not load type]]></category>
		<category><![CDATA[Exception]]></category>
		<category><![CDATA[IIS]]></category>
		<category><![CDATA[System.ServiceModel.Activation.HttpModule]]></category>
		<category><![CDATA[Windows 2008 R2]]></category>

		<guid isPermaLink="false">http://blog.evereq.com/blog/?p=756</guid>
		<description><![CDATA[Get following exception during first load of ASP.NET MVC 4 site in IIS7.5 under Window 2008 R2: Could not load type &#8216;System.ServiceModel.Activation.HttpModule&#8217; from assembly &#8216;System.ServiceModel, Version=3.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089&#8242;. Easy to fix using following command (run as administrator): C:\Windows\Microsoft.NET\Framework64\v4.0.30319\aspnet_regiis.exe -iru Done P.S. if for some strange reason you still use 32 bit Windows, you should update [...]]]></description>
			<content:encoded><![CDATA[<p>Get following exception during first load of ASP.NET MVC 4 site in IIS7.5 under Window 2008 R2:</p>
<blockquote><p>Could not load type &#8216;System.ServiceModel.Activation.HttpModule&#8217; from assembly &#8216;System.ServiceModel, Version=3.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089&#8242;.</p></blockquote>
<p>Easy to fix using following command (run as administrator):<br />
C:\Windows\Microsoft.NET\Framework64\v4.0.30319\aspnet_regiis.exe -iru</p>
<p>Done <img src='http://blog.evereq.com/blog/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' /> </p>
<p>P.S. if for some strange reason you still use 32 bit Windows, you should update framework path in command above.</p>
]]></content:encoded>
			<wfw:commentRss>http://blog.evereq.com/blog/index.php/2012/01/could-not-load-type-system-servicemodel-activation-httpmodule/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>HTTP Error 403.14 &#8211; Forbidden fix</title>
		<link>http://blog.evereq.com/blog/index.php/2012/01/http-error-403-14-forbidden-fix/</link>
		<comments>http://blog.evereq.com/blog/index.php/2012/01/http-error-403-14-forbidden-fix/#comments</comments>
		<pubDate>Thu, 26 Jan 2012 14:20:31 +0000</pubDate>
		<dc:creator>evereq</dc:creator>
				<category><![CDATA[.NET]]></category>
		<category><![CDATA[ASP.NET MVC]]></category>
		<category><![CDATA[403.14]]></category>
		<category><![CDATA[7.5]]></category>
		<category><![CDATA[Fix]]></category>
		<category><![CDATA[Forbidden]]></category>
		<category><![CDATA[HTTP Error]]></category>
		<category><![CDATA[IIS]]></category>

		<guid isPermaLink="false">http://blog.evereq.com/blog/?p=752</guid>
		<description><![CDATA[You just setup new Windows 2008 R2 Server, enable IIS role, install ASP.NET MVC 1/2/3 or 4, upload your site, configure IIS (i.e. IIS pool, rights, certificates etc) and get following error in browser: HTTP Error 403.14 &#8211; Forbidden The Web server is configured to not list the contents of this directory. Hm&#8230; EASY to [...]]]></description>
			<content:encoded><![CDATA[<p>You just setup new Windows 2008 R2 Server, enable IIS role, install ASP.NET MVC 1/2/3 or 4, upload your site, configure IIS (i.e. IIS pool, rights, certificates etc) and get following error in browser:</p>
<blockquote><p>HTTP Error 403.14 &#8211; Forbidden<br />
The Web server is configured to not list the contents of this directory.</p></blockquote>
<p>Hm&#8230; EASY to fix with following command (run command prompt as administrator!):<br />
C:\Windows\Microsoft.NET\Framework64\v4.0.30319\aspnet_regiis.exe -i</p>
<p>Done <img src='http://blog.evereq.com/blog/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' /> </p>
<p>P.S. if for some strange reason you still use 32 bit Windows, you should update framework path in command above.</p>
]]></content:encoded>
			<wfw:commentRss>http://blog.evereq.com/blog/index.php/2012/01/http-error-403-14-forbidden-fix/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>ASP.NET Session state system everytime returns different values for SessionID</title>
		<link>http://blog.evereq.com/blog/index.php/2011/12/asp-net-session-state-system-everytime-returns-different-values-for-sessionid/</link>
		<comments>http://blog.evereq.com/blog/index.php/2011/12/asp-net-session-state-system-everytime-returns-different-values-for-sessionid/#comments</comments>
		<pubDate>Mon, 12 Dec 2011 14:48:01 +0000</pubDate>
		<dc:creator>evereq</dc:creator>
				<category><![CDATA[.NET]]></category>
		<category><![CDATA[ASP.NET]]></category>
		<category><![CDATA[different]]></category>
		<category><![CDATA[Session]]></category>
		<category><![CDATA[SessionID]]></category>

		<guid isPermaLink="false">http://blog.evereq.com/blog/?p=749</guid>
		<description><![CDATA[Suppose you have ASP.NET (or ASP.NET MVC) site. You want to use Session.SessionID value somewhere (say as shopping cart id), which normally should be SAME value for each request from the same browser (sure unless session expire or user clean cookies, or you forget to store session in some distributed storage and use Web Farm [...]]]></description>
			<content:encoded><![CDATA[<p>Suppose you have ASP.NET (or ASP.NET MVC) site.<br />
You want to use Session.SessionID value somewhere (say as shopping cart id), which normally should be SAME value for each request from the same browser (sure unless session expire or user clean cookies, or you forget to store session in some distributed storage and use Web Farm with multiple front-end servers, or you forget to &#8230; actually many things might be here).<br />
However you may see every time DIFFERENT value for Session.SessionID for anonymous user!<br />
How? Reason: <strong>new SessionID is generated by ASP.NET, UNLESS YOU STORE SOMETHING IN THE SESSION!</strong><br />
For example do something like this: Session["Something"] = 1 after first user request and you will see that SessionID remains unchanged.<br />
Sounds crazy, right???</p>
]]></content:encoded>
			<wfw:commentRss>http://blog.evereq.com/blog/index.php/2011/12/asp-net-session-state-system-everytime-returns-different-values-for-sessionid/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>What do you think about Amazon ElasticCache?</title>
		<link>http://blog.evereq.com/blog/index.php/2011/11/what-you-think-about-amazon-elasticcache/</link>
		<comments>http://blog.evereq.com/blog/index.php/2011/11/what-you-think-about-amazon-elasticcache/#comments</comments>
		<pubDate>Mon, 07 Nov 2011 11:23:30 +0000</pubDate>
		<dc:creator>evereq</dc:creator>
				<category><![CDATA[Uncategorized]]></category>
		<category><![CDATA[Amazon]]></category>
		<category><![CDATA[AMZ]]></category>
		<category><![CDATA[AWS]]></category>
		<category><![CDATA[cost]]></category>
		<category><![CDATA[ElasticCache]]></category>
		<category><![CDATA[price]]></category>

		<guid isPermaLink="false">http://blog.evereq.com/blog/?p=744</guid>
		<description><![CDATA[What do you think about Amazon ElasticCache? (http://aws.amazon.com/elasticache) High-Memory Quadruple Extra Large Cache Node (cache.m2.4xlarge): 68 GB memory, 26 ECUs (8 virtual cores with 3.25 ECUs each), 64-bit platform, High I/O Capacity cost 2.24$ per hour or about 1600$ per month! For about 5000-6000$ you can purchase server with following hardware: 4x AMD Opteron 6128 [...]]]></description>
			<content:encoded><![CDATA[<p>What do you think about Amazon ElasticCache? (http://aws.amazon.com/elasticache)</p>
<p>High-Memory Quadruple Extra Large Cache Node (cache.m2.4xlarge): 68 GB memory, 26 ECUs (8 virtual cores with 3.25 ECUs each), 64-bit platform, High I/O Capacity cost 2.24$ per hour or about 1600$ per month!</p>
<p>For about 5000-6000$ you can purchase server with following hardware:<br />
4x AMD Opteron 6128 / 2,00GHz Eight-Core (i.e. 32 CORES)<br />
64GB ECC registered DDR3<br />
2 * 80GB 2,5 Intel SSD with Adaptec RAID<br />
1+1 1400W redundant (Hot-Swap) PSU<br />
etc.</p>
<p>Now install here your favorite free Linux and Memcached and you are ready to go <img src='http://blog.evereq.com/blog/wp-includes/images/smilies/icon_biggrin.gif' alt=':D' class='wp-smiley' /> </p>
<p><strong>Totally:</strong></p>
<p>Server with better hardware (32 real 2GHz cores instead of 26 ECUs i.e. 8 virtual cores in AMZ, very fast DDR3 memory, redundant power supply and brand MB (Supermicro) instead of &#8220;well know instance lifetime issues in AMZ&#8221; etc) will cost you something like 3-4 month of AMZ instance rent! Sure, you can say like: what about Collocation cost? Hm&#8230; 1U server probably MAX 100$ per month (including some big traffic) etc.</p>
<p><strong>Instead of Conclusion:</strong></p>
<p>So you still think same about Amazon ElasticCache ???</p>
]]></content:encoded>
			<wfw:commentRss>http://blog.evereq.com/blog/index.php/2011/11/what-you-think-about-amazon-elasticcache/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>How Hyper-V eats disk space</title>
		<link>http://blog.evereq.com/blog/index.php/2011/06/how-hyper-v-eats-disk-space/</link>
		<comments>http://blog.evereq.com/blog/index.php/2011/06/how-hyper-v-eats-disk-space/#comments</comments>
		<pubDate>Thu, 09 Jun 2011 13:25:13 +0000</pubDate>
		<dc:creator>evereq</dc:creator>
				<category><![CDATA[Uncategorized]]></category>
		<category><![CDATA[Hyper-V]]></category>
		<category><![CDATA[Microsoft]]></category>
		<category><![CDATA[Space]]></category>
		<category><![CDATA[System drive]]></category>
		<category><![CDATA[Virtualization]]></category>

		<guid isPermaLink="false">http://blog.evereq.com/blog/?p=738</guid>
		<description><![CDATA[Use Microsoft Hyper-V for virtualization? Most probably you already store your virtual disks not in the system drive (i.e. not in drive &#8216;C&#8217; for example), which is right approach (for performance and other considerations) However not everybody know that in the C:\ProgramData\Microsoft\Windows\Hyper-V\Virtual Machines folder, Hyper-V actually store huge files (*.bin) for each virtual machine that [...]]]></description>
			<content:encoded><![CDATA[<p>Use Microsoft Hyper-V for virtualization?</p>
<p>Most probably you already store your virtual disks not in the system drive (i.e. not in drive &#8216;C&#8217; for example), which is right approach (for performance and other considerations)</p>
<p>However not everybody know that in the <strong>C:\ProgramData\Microsoft\Windows\Hyper-V\Virtual Machines</strong> folder, Hyper-V actually store huge files (*.bin) for each virtual machine that you run on your Hyper-V host! That may be huge issue in case, if you have a lot of virtual machines in use and your system drive space limited. In addition, it also may introduce fragmentation problems, due to the fact that such files maybe created and removed each time you run your instance or when you create some snapshots etc.</p>
<p>So basically there are 2 main questions you may ask:<br />
a) Why such files (*.bin) are created? And why they are so big? You may notice that size of such files actually equal to amount of virtual memory which you allocate for the virtual instance. So answer is simple &#8211; it just a place (such file) to store memory dump for Virtual Machine (instance) and required by Hyper-V<br />
b) Can I get rid of such files? Answer &#8211; no <img src='http://blog.evereq.com/blog/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' />  In current version of Hyper-V it is not possible. However it is completely possible to move such huge files to separate disk(s) out from system disk! That SHOULD be done I think in any Hyper-V host anyway, in case if you have additional disks here. It is very easy to do that: on the first step of Wizard to create Virtual Machine, do not forget to change location for virtual machine from default one to location, where you have enough space to store both virtual machine memory dump and possible snapshots (in case if you plan to use them sure thing).</p>
<p><img class="alignnone size-full wp-image-739" title="HyperVDi" src="http://blog.evereq.com/blog/wp-content/uploads/2011/06/HyperVDi.png" alt="HyperVDi" width="697" height="511" /></p>
]]></content:encoded>
			<wfw:commentRss>http://blog.evereq.com/blog/index.php/2011/06/how-hyper-v-eats-disk-space/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>.NET performance and your hardware</title>
		<link>http://blog.evereq.com/blog/index.php/2011/04/net-performance-and-your-hardware/</link>
		<comments>http://blog.evereq.com/blog/index.php/2011/04/net-performance-and-your-hardware/#comments</comments>
		<pubDate>Thu, 14 Apr 2011 14:32:22 +0000</pubDate>
		<dc:creator>evereq</dc:creator>
				<category><![CDATA[.NET]]></category>
		<category><![CDATA[Hardware]]></category>
		<category><![CDATA[performance]]></category>
		<category><![CDATA[testing]]></category>
		<category><![CDATA[Tests]]></category>

		<guid isPermaLink="false">http://blog.evereq.com/blog/?p=729</guid>
		<description><![CDATA[Was inspired by Ayende post (see http://ayende.com/Blog/archive/2011/04/14/performance-numbers-in-the-pub.aspx) and want to check how much objects my work PC may create Moreover, now seems best time to do that &#8211; my company order today new SUPER machines for our team, so it will be interesting to see difference with current PC using such &#8220;.NET&#8221; test. My current [...]]]></description>
			<content:encoded><![CDATA[<p>Was inspired by Ayende post (see http://ayende.com/Blog/archive/2011/04/14/performance-numbers-in-the-pub.aspx) and want to check how much objects my work PC may create <img src='http://blog.evereq.com/blog/wp-includes/images/smilies/icon_biggrin.gif' alt=':D' class='wp-smiley' /><br />
Moreover, now seems best time to do that &#8211; my company order today new SUPER machines for our team, so it will be interesting to see difference with current PC using such &#8220;.NET&#8221; test.</p>
<p>My current PC is Intel Q8200 4 Cores / 8Gb memory / SSD Intel 80Gb etc &#8211; you get idea <img src='http://blog.evereq.com/blog/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' /> </p>
<p>Main difference between my code and Ayende code (as well as many blog comments code) is that I create objects using multiple threads. What is interesting for me that most of people even today, just forget the fact that they have multiple cores in PC (or Server) and modern development should be done with that &#8220;stick&#8221; idea in your mind: &#8220;multitask / multithreading / async may be used if you want to utilize optimally your hardware&#8221;. Sure it&#8217;s not always make sense to go that &#8220;hard way&#8221; &#8211; some tasks just not scale too much with that approach. At the same time, in that specific tests I was able to get about 50% performance gain using very simple threading model compared to the single threaded. Not bad enough, right?</p>
<p>Sure it&#8217;s not really optimal strategy (more optimal for sure to just use C / C++) and I think memory speed restrict CPU power in that specific tests (i.e. no matter how many cores you use in CPU, if your memory / memory controller just can&#8217;t get / process all that in the parallel).  In addition I also initialize each created object integer field with some value to restrict some possible optimizations in CLI.  You can also found multiple small optimizations to avoid some overhead etc. Sure it&#8217;s not best code out there, but effective enough to demonstrate how TPL can improve results even in such a simple task. Maybe later will found time and write same using C++ with Parallel Patterns Library (PPL) to measure the difference <img src='http://blog.evereq.com/blog/wp-includes/images/smilies/icon_biggrin.gif' alt=':D' class='wp-smiley' /> </p>
<p>On my PC test create 4 new threads and each thread create multiple objects. Note that test works 10 seconds to give you more precise results <img src='http://blog.evereq.com/blog/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' /> </p>
<p>Tests results: <strong>around 150M created and initialized objects per second</strong> (don&#8217;t forget to build in Release mode if you really want to run it)<br />
I promise to publish new results when new PC arrive to our office;-)</p>
<p>Btw, if you get your own results, will be glad to see and compare <img src='http://blog.evereq.com/blog/wp-includes/images/smilies/icon_biggrin.gif' alt=':D' class='wp-smiley' /> </p>
<p>Stay tuned <img src='http://blog.evereq.com/blog/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' /> </p>
<p>P.S. Code is not finally optimized and is not &#8220;production ready&#8221;. Means that I just want to play a bit with what Ayende originally wrote&#8230;<br />
For example, you probably may note that test will take longer than 10 seconds to run if your PC already busy with some tasks (simply because I use too much threads for such environment) etc.</p>
<p>P.P.S. No warranties <img src='http://blog.evereq.com/blog/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' />  Please do not run that code on your production servers <img src='http://blog.evereq.com/blog/wp-includes/images/smilies/icon_biggrin.gif' alt=':D' class='wp-smiley' /> </p>
<p><strong>Update #1</strong>: My colleague have notebook with Intel i5 CPU (4 Cores) and he just get  215M result <img src='http://blog.evereq.com/blog/wp-includes/images/smilies/icon_biggrin.gif' alt=':D' class='wp-smiley' /> </p>
<p><strong>Update #2: Just get new PC with CPU Intel i7-2600K (at 3.5Ghz) / 8Gb DDR3 1600Mhz memory etc. I get just amazing result: 700M with same source code <img src='http://blog.evereq.com/blog/wp-includes/images/smilies/icon_biggrin.gif' alt=':D' class='wp-smiley' />  WOW! </strong></p>
<pre style="font-family:Consolas;font-size:15;font-weight:bold;color:white;background:black;"><span style="color:#f2761a;">using</span> <span style="color:#f2fbd9;">System</span>;
<span style="color:#f2761a;">using</span> <span style="color:#f2fbd9;">System</span>.<span style="color:#f2fbd9;">Collections</span>.<span style="color:#f2fbd9;">Generic</span>;
<span style="color:#f2761a;">using</span> <span style="color:#f2fbd9;">System</span>.<span style="color:#f2fbd9;">Diagnostics</span>;
<span style="color:#f2761a;">using</span> <span style="color:#f2fbd9;">System</span>.<span style="color:#f2fbd9;">Threading</span>;
<span style="color:#f2761a;">using</span> <span style="color:#f2fbd9;">System</span>.<span style="color:#f2fbd9;">Threading</span>.<span style="color:#f2fbd9;">Tasks</span>;
<span style="color:#f2761a;">using</span> <span style="color:#f2fbd9;">System</span>.<span style="color:#f2fbd9;">Timers</span>;

<span style="color:#f2761a;">namespace</span> <span style="color:#f2fbd9;">Testing</span>
{
    <span style="color:#f2761a;">class</span> <span style="color:yellow;">Program</span>
    {
        <span style="color:#f2761a;">static</span> <span style="color:#f2761a;">volatile</span> <span style="color:#f2761a;">bool</span> <span style="color:#fff4ff;">_isContinue</span> = <span style="color:#f2761a;">true</span>;

        <span style="color:#f2761a;">static</span> <span style="color:#f2761a;">long</span> <span style="color:#fff4ff;">_total</span>;

        <span style="color:#f2761a;">const</span> <span style="color:#f2761a;">int</span> <span style="color:#ff6cff;">TestTimeSec</span> = <span style="color:#6897bb;">10000</span>;

        <span style="color:#f2761a;">static</span> <span style="color:yellow;">Stopwatch</span> <span style="color:#fff4ff;">_sp</span>;

        <span style="color:#f2761a;">static</span> <span style="color:#f2761a;">void</span> Main(<span style="color:#f2761a;">string</span>[] <span style="color:#dadacf;">args</span>)
        {

            <span style="color:#f2761a;">var</span> <span style="color:#fff4fe;">tasks</span> = <span style="color:#f2761a;">new</span> <span style="color:yellow;">List</span>&lt;<span style="color:yellow;">Task</span>&gt;();

            <span style="color:#f2761a;">int</span> <span style="color:#fff4fe;">processors</span> = <span style="color:#ffff59;">Environment</span>.<span style="color:#fff4ff;">ProcessorCount</span>;

            <span style="color:#ffff59;">Console</span>.WriteLine(<span style="color:#cf5252;">"Detected {0} cores"</span>, <span style="color:#fff4fe;">processors</span>);

            <span style="color:#f2761a;">var</span> <span style="color:#fff4fe;">timer</span> = <span style="color:#f2761a;">new</span> <span style="color:#f2fbd9;">System</span>.<span style="color:#f2fbd9;">Timers</span>.<span style="color:yellow;">Timer</span>(<span style="color:#ff6cff;">TestTimeSec</span>);
            <span style="color:#fff4fe;">timer</span>.<span style="color:magenta;">Elapsed</span> += TimerElapsed;
            <span style="color:#fff4fe;">timer</span>.<span style="color:#fff4ff;">AutoReset</span> = <span style="color:#f2761a;">false</span>;
            <span style="color:#fff4fe;">timer</span>.Start();

            <span style="color:#fff4ff;">_sp</span> = <span style="color:yellow;">Stopwatch</span>.StartNew();

            <span style="color:#f2761a;">for</span> (<span style="color:#f2761a;">int</span> <span style="color:#f4e3f4;">t</span> = <span style="color:#6897bb;">0</span>; <span style="color:#f4e3f4;">t</span> &lt; <span style="color:#fff4fe;">processors</span>; <span style="color:#f4e3f4;">t</span>++)
            {
                <span style="color:#fff4fe;">tasks</span>.Add(<span style="color:yellow;">Task</span>.<span style="color:#fff4ff;">Factory</span>.StartNew(
                    () =&gt;
                    {
                        <span style="color:#f2761a;">long</span> <span style="color:#f4e3f4;">i</span> = <span style="color:#6897bb;">0</span>;

                        <span style="color:#f2761a;">while</span> (<span style="color:#fff4ff;">_isContinue</span>)
                        {
                            <span style="color:#f2761a;">var</span> <span style="color:#fff4fe;">obj</span> = <span style="color:#f2761a;">new</span> <span style="color:yellow;">MyClass</span>();
                            <span style="color:#f4e3f4;">i</span>++;
                            <span style="color:#fff4fe;">obj</span>.<span style="color:#fff4ff;">B</span> = <span style="color:#f4e3f4;">i</span>;
                        }

                        <span style="color:#ffff59;">Interlocked</span>.Add(<span style="color:#f2761a;">ref</span> <span style="color:#fff4ff;">_total</span>, <span style="color:#f4e3f4;">i</span>);
                    }
                ));
            }

            <span style="color:gray;">// let's complete all the tasks to get results into _total</span>
            <span style="color:yellow;">Task</span>.WaitAll(<span style="color:#fff4fe;">tasks</span>.ToArray());

            <span style="color:#fff4ff;">_sp</span>.Stop();

            <span style="color:#ffff59;">Console</span>.WriteLine(<span style="color:#cf5252;">"Created {0} objects in {1}"</span>, <span style="color:#fff4ff;">_total</span> / <span style="color:#6897bb;">10</span>, <span style="color:#fff4ff;">_sp</span>.<span style="color:#fff4ff;">Elapsed</span>.<span style="color:#fff4ff;">TotalMilliseconds</span> / <span style="color:#6897bb;">10</span>);
            <span style="color:#ffff59;">Console</span>.ReadKey();

        }

        <span style="color:#f2761a;">static</span> <span style="color:#f2761a;">void</span> TimerElapsed(<span style="color:#f2761a;">object</span> sender, <span style="color:yellow;">ElapsedEventArgs</span> e)
        {
            <span style="color:#fff4ff;">_isContinue</span> = <span style="color:#f2761a;">false</span>;
            <span style="color:#ffff59;">Console</span>.WriteLine(<span style="color:#cf5252;">"Stopping..."</span>);
        }

        <span style="color:#f2761a;">public</span> <span style="color:#f2761a;">class</span> <span style="color:yellow;">MyClass</span>
        {
            <span style="color:#f2761a;">public</span> <span style="color:#f2761a;">string</span> <span style="color:#fff4ff;">A</span>;
            <span style="color:#f2761a;">public</span> <span style="color:#f2761a;">long</span> <span style="color:#fff4ff;">B</span>;
            <span style="color:#f2761a;">public</span> <span style="color:#fcdf14;">DateTime</span> <span style="color:#fff4ff;">C</span>;
        }

    }
}</pre>
]]></content:encoded>
			<wfw:commentRss>http://blog.evereq.com/blog/index.php/2011/04/net-performance-and-your-hardware/feed/</wfw:commentRss>
		<slash:comments>3</slash:comments>
		</item>
		<item>
		<title>Bug fixing time estimation</title>
		<link>http://blog.evereq.com/blog/index.php/2011/03/bug-fixing-time-estimation/</link>
		<comments>http://blog.evereq.com/blog/index.php/2011/03/bug-fixing-time-estimation/#comments</comments>
		<pubDate>Thu, 10 Mar 2011 09:20:54 +0000</pubDate>
		<dc:creator>evereq</dc:creator>
				<category><![CDATA[Uncategorized]]></category>
		<category><![CDATA[Agile]]></category>
		<category><![CDATA[bugs]]></category>
		<category><![CDATA[ETA]]></category>
		<category><![CDATA[issues]]></category>
		<category><![CDATA[Project Management]]></category>

		<guid isPermaLink="false">http://blog.evereq.com/blog/?p=726</guid>
		<description><![CDATA[Recently got question from my colleague how I think it make sense to estimate time you will spend on bug fixing. My colleague point 2 common ways how to do that: a) Rough ETA x 4 OR b) Periodical updates of ETA I found both make sense to use together, so I recommend something like this: Initially [...]]]></description>
			<content:encoded><![CDATA[<p>Recently got question from my colleague how I think it make sense to estimate time you will spend on bug fixing.<br />
My colleague point 2 common ways how to do that:</p>
<p>a) Rough ETA x 4</p>
<p>OR</p>
<p>b) Periodical updates of ETA</p>
<p>I found both make sense to use together, so I recommend something like this:</p>
<ol>
<li><strong>Initially Estimate Rough ETA x2 or x 4 (depends how you feel yourself confident with given issue), with precision to hour / day (round value up).<br />
</strong><strong>Forget minutes precision in all cases, forget hour precision in many cases. If you feel that issue takes 2 minutes to fix &#8211; put estimation 0. If you feel that it&#8217;s more like 15 minutes &#8211; put estimation 1 hour. If you feel it&#8217;s like 3-4 hours, put estimation 1 day. Don&#8217;t try to be precise. Instead it should be realistic.</strong><br />
For example you think it takes 20 minutes to fix issue but you don&#8217;t have previous experience with such issues, so you got 20&#215;4 = 80 minutes and round it up to 2 hours. Put value 2 hours into issues tracking software.  If your software support ranges, put here 20 &#8211; 80 minutes range.</li>
<li><strong>If you use estimation precision as hour, you should update your estimation at least every hour, if you see that now you can measure ETA better.  If you use precision day, update your estimation at least ones per day. As more frequently you update your estimation as better. Sure don&#8217;t be too paranoiac - update previous estimation only if it changes significantly. </strong><strong><br />
</strong>For example say you estimate issue initially to 2 hours, so after first hour you working on issue, compare your initial estimation (2 hours) with what you think you have now (don&#8217;t forget about ETA x 4), for example now you feel that you need another 35 minutes to fix, so you multiple 35 * 4 and got 140 minutes = 3 hours. So you adjust your initial estimation from 2 hours to 4 hours (1 hour you already spend plus 3 hours you think it will take more).</li>
</ol>
<p>Advantages:</p>
<ol>
<li>You update your estimations frequently so even if you made serious mistake in estimation before, you quickly resolve. Fail quickly <img src='http://blog.evereq.com/blog/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' />  Your colleges and boss know where you are, so excellent transparency and you agile <img src='http://blog.evereq.com/blog/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' /> </li>
<li>You don&#8217;t care if you need to go to made coffee, go to rest for a while etc. You made your estimation SAFE enough (x2 or x4!) and you know that in next hour (or day if bug is complex) you always may update estimation again with more precise value.</li>
</ol>
<p>In contrast to approach above, it can better in some cases (in most of cases in my experience)  to use &#8220;relative&#8221; measurement instead of time measurement.  Unfortunately in reality, seems it&#8217;s a bit more hard to begin with in some less agile teams. Another issue is that it&#8217;s just not every issues / bug tracking software support that.  In that alternative approach you think how much more complicated given issue is, compared to other issues you have / you done before and made your estimations relative.</p>
<div>In conclusion, as with other estimations and planning tasks it just make sense to remember Agile principles: transparency, fail quickly and resolve, frequent updates, short iterations, etc.</div>
<div></div>
<div>P.S. Many people don&#8217;t like x4. Sure it&#8217;s completely optional. I saw people (and I am one of them <img src='http://blog.evereq.com/blog/wp-includes/images/smilies/icon_biggrin.gif' alt=':D' class='wp-smiley' /> ) that can do exact estimations in most of cases: in some cases because of luck, in other cases because of experience. In different cases because of both. Maybe it&#8217;s because usually they (and me) do that calculation x2-x4 in the mind and do not do it formally.<br />
Taking to attention fact that it&#8217;s impossible to work 9-12 hours per day with same focus (hope my boss don&#8217;t read that <img src='http://blog.evereq.com/blog/wp-includes/images/smilies/icon_biggrin.gif' alt=':D' class='wp-smiley' />  Joke), it&#8217;s best way to always remember that effectively you have about 4-5-6 hours &#8220;crazy&#8221; time per day when you really can do your job with high focus and with maximum performance, while other time is required to prepare yourself for that &#8220;fight / micro-sprint&#8221;. So at least x2 should be applied in most of cases to be safe and I recommend to do it in your mind so your colleges get only one final estimation value, not intermediate result. It&#8217;s not about transparency. It&#8217;s more about &#8216;useless information&#8217; for everyone, how exactly you calculate your estimations. Everybody may value you only by how your real time to fix issue was different to what you estimate.  And in most cases if that is not important! But what is true is that nobody care how you calculate ETA after you made your job done. People trust you because of results of your work, not because you do nice calculations, but it takes you 10x times more to fix issue than you think initially.</div>
<div>Just keep it simple, as always <img src='http://blog.evereq.com/blog/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' /> </div>
]]></content:encoded>
			<wfw:commentRss>http://blog.evereq.com/blog/index.php/2011/03/bug-fixing-time-estimation/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Visual Studio 2010 Extensions</title>
		<link>http://blog.evereq.com/blog/index.php/2010/12/visual-studio-2010-extensions/</link>
		<comments>http://blog.evereq.com/blog/index.php/2010/12/visual-studio-2010-extensions/#comments</comments>
		<pubDate>Tue, 28 Dec 2010 15:26:33 +0000</pubDate>
		<dc:creator>evereq</dc:creator>
				<category><![CDATA[MyFaTo]]></category>
		<category><![CDATA[AnkhSVN]]></category>
		<category><![CDATA[JavaScript]]></category>
		<category><![CDATA[Jetbrains]]></category>
		<category><![CDATA[NuGet]]></category>
		<category><![CDATA[PowerCommands]]></category>
		<category><![CDATA[Pro Power Tools]]></category>
		<category><![CDATA[Productivity Power Tools]]></category>
		<category><![CDATA[ReSharper]]></category>
		<category><![CDATA[SlickEdit]]></category>
		<category><![CDATA[Visual Studio]]></category>
		<category><![CDATA[VsCommands]]></category>

		<guid isPermaLink="false">http://blog.evereq.com/blog/?p=717</guid>
		<description><![CDATA[I got used VS 2010 so much last time! But always luck some advanced or just nice to have features&#8230; Some of them, especially features that I used to in IntelliJ IDEA, my favorite tool ReSharper 5 bring into VS (really waiting version 6 from Jetbrains! It will be huge +++ for me, really). Other [...]]]></description>
			<content:encoded><![CDATA[<p>I got used VS 2010 so much last time! But always luck some advanced or just nice to have features&#8230; Some of them, especially features that I used to in IntelliJ IDEA, my favorite tool ReSharper 5 bring into VS (really waiting version 6 from Jetbrains! It will be huge +++ for me, really). Other features I add with help of many free extensions:</p>
<p>* <strong>JetBrains ReSharper 5</strong> (<a href="http://www.jetbrains.com/resharper">http://www.jetbrains.com/resharper</a>) &#8211; best productivity add-in for Visual Studio. Don&#8217;t use it and code in .NET? You miss whole world (and I probably will not hire you <img src='http://blog.evereq.com/blog/wp-includes/images/smilies/icon_biggrin.gif' alt=':D' class='wp-smiley' /> )!!! I put it here in first place, so don&#8217;t miss it out!</p>
<p><strong>*</strong> <strong>Visual Studio 2010 Pro Power Tools</strong> extension to VS 2010 (<a href="http://visualstudiogallery.msdn.microsoft.com/en-us/d0d33361-18e2-46c0-8ff2-4adea1e34fef">http://visualstudiogallery.msdn.microsoft.com/en-us/d0d33361-18e2-46c0-8ff2-4adea1e34fef</a>) &#8211; amazing features, including vertical tabs for opened files in VS)</p>
<p>* <strong>PowerCommands for Visual Studio 2010</strong> (<a href="http://visualstudiogallery.msdn.microsoft.com/en-us/e5f41ad9-4edc-4912-bca3-91147db95b99">http://visualstudiogallery.msdn.microsoft.com/en-us/e5f41ad9-4edc-4912-bca3-91147db95b99</a>) &#8211; a lot of nice to have and useful features in VS 2010</p>
<p>* <strong>VsCommands for VS 2010</strong> (<a href="http://mokosh.co.uk/vscommands">http://mokosh.co.uk/vscommands</a>) &#8211; same like above and more <img src='http://blog.evereq.com/blog/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' /> </p>
<p><strong>*</strong><strong> SlickEdit Gadgets</strong> for Microsoft Visual Studio (<a style="color: #6e7173; text-decoration: underline;" href="http://www.slickedit.com/content/view/441">http://www.slickedit.com/content/view/441</a>)   &#8211; amazing and free gadgets… mostly i like “line ruler and indentation   guide” &#8211; just take a look and you will never drop this feature (but   first be sure that you enable it!). What’s important is this gadget   works well with VS 2005 / 2008 and don’t cause any problems with a lot   of other gadgets / plugins! Try it! Cool and Free!</p>
<p>* <strong>AnkhSVN</strong> plug-in for Visual Studio (<a style="color: #6e7173; text-decoration: underline;" href="http://ankhsvn.open.collab.net/">http://ankhsvn.open.collab.net/</a>)  &#8211; working with SVN repositories directly from Visual Studio… Previous  versions have problems with performance, but looks like latest versions  2.x have no problems at all!</p>
<p>* <strong>JavaScript &amp; CSS Outlining</strong> (<a href="http://jsoutlining.codeplex.com">http://jsoutlining.codeplex.com</a>)</p>
<p>* <strong>JavaScript Parser</strong> (<a href="http://code.google.com/p/js-addin">http://code.google.com/p/js-addin</a>)</p>
<p>* <strong>JScript Brace Matching Extension</strong> (search in gallery by name, it was created by Microsoft!)</p>
<p>* <strong>JScript Editor Extensions</strong> (same, was created by Microsoft)</p>
<p>* <strong>JScript IntelliSense Para Extension</strong> (same)</p>
<p>* <strong>JScript Outlining Extension</strong> (same)</p>
<p>* <strong>JScript Word Highlighter Extension</strong> (same)</p>
<p>* <strong>NuGet Package Manager</strong> (<a href="http://nuget.codeplex.com">http://nuget.codeplex.com</a>) &#8211; you still add references manually and download / update libraries your hands? Try out NuGet and you will forgot mess of installing, upgrading, configuration (well, not completely, but at least initially)  and removing packages!)</p>
<p>Other tools that I use you can found at <a href="http://sh.evereq.com/MyFaTo">http://sh.evereq.com/MyFaTo</a></p>
]]></content:encoded>
			<wfw:commentRss>http://blog.evereq.com/blog/index.php/2010/12/visual-studio-2010-extensions/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Simple Cloud API and maybe I should go to PHP</title>
		<link>http://blog.evereq.com/blog/index.php/2010/11/simple-cloud-api-and-maybe-i-should-go-to-php/</link>
		<comments>http://blog.evereq.com/blog/index.php/2010/11/simple-cloud-api-and-maybe-i-should-go-to-php/#comments</comments>
		<pubDate>Tue, 02 Nov 2010 16:35:33 +0000</pubDate>
		<dc:creator>evereq</dc:creator>
				<category><![CDATA[Uncategorized]]></category>
		<category><![CDATA[.NET]]></category>
		<category><![CDATA[API]]></category>
		<category><![CDATA[Cloud]]></category>
		<category><![CDATA[Microsoft]]></category>
		<category><![CDATA[PHP]]></category>
		<category><![CDATA[SimpleCloud]]></category>

		<guid isPermaLink="false">http://blog.evereq.com/blog/?p=713</guid>
		<description><![CDATA[Maybe I should go &#8230;.to PHP ? (&#8230; I mean just go, not &#8220;go down&#8221; or &#8220;go up&#8221; or &#8220;go away from .NET&#8221; &#8211; read next why, really!) Projects like Simple Cloud API (http://simplecloud.org) in PHP, together with Zend Framework and many other PHP related stuff  sometimes KILLS me, .NET developer / architect! Why, WHY [...]]]></description>
			<content:encoded><![CDATA[<p>Maybe I should go &#8230;.to PHP <img src='http://blog.evereq.com/blog/wp-includes/images/smilies/icon_wink.gif' alt=';-)' class='wp-smiley' />  ?<br />
(&#8230; I mean just go, not &#8220;go down&#8221; or &#8220;go up&#8221; or &#8220;go away from .NET&#8221; &#8211; read next why, really!)</p>
<p>Projects like Simple Cloud API (<a href="http://simplecloud.org">http://simplecloud.org</a>) in PHP, together with Zend Framework and many other PHP related stuff  sometimes KILLS me, .NET developer / architect!</p>
<p>Why, WHY we do not have something like Simple Cloud API in .NET??? Or at least it&#8217;s not well known! Is it so hard to build and promote it ?? NO! Why it takes whole a lot of time to introduce ASP.NET MVC, if we do it so many years in Java or PHP !? Great .NET framework, tons of projects, but so limited amount of &#8220;innovative&#8221; open source projects in .NET! <img src='http://blog.evereq.com/blog/wp-includes/images/smilies/icon_sad.gif' alt=':(' class='wp-smiley' /> </p>
<p>Take a look, most of famous .NET open source projects go in same versions or even few versions behind if compare to corresponding projects from Java (see Lucene.NET for example), but do not introduce really &#8220;innovations&#8221; in the software programming! Some projects do not even exists in .NET space like Solr (i.e. you should use Java VM to run it)! Some projects like ASP.NET MVC comes much later other MVC frameworks in Ruby (RoR), Python (Django) or even PHP (Zend Framework)&#8230; And Microsoft last time spend whole a lot of effort to bring Java  / PHP into Azure&#8230; instead of increase sponsorship for example innovative OSS projects in .NET and by this push developers to go for .NET from other frameworks!</p>
<p>Should somebody build library like SimpleCloud in .NET ASAP!? YES! (please don&#8217;t tell me that I should build it <img src='http://blog.evereq.com/blog/wp-includes/images/smilies/icon_biggrin.gif' alt=':D' class='wp-smiley' /> ) Why?</p>
<p>Too many companies really need same thing to be able to abstract away Windows Azure or any other Cloud specific solution using some open source  libraries (like SimpleCloud in PHP) and made solution portable across Clouds, before they spend $$$ and stuck with one Cloud supplier forever <img src='http://blog.evereq.com/blog/wp-includes/images/smilies/icon_sad.gif' alt=':(' class='wp-smiley' />  See my post <a href="http://blog.evereq.com/blog/index.php/2010/10/cloud-migrate/">about this</a>!<br />
And too many developers really expect .NET platform to be more innovative !!!</p>
<p>P.S. sometimes innovations can waste your time / effort, if parent company stop support it &#8211; see my <a href="http://blog.evereq.com/blog/index.php/2010/10/silverlight-killed-or/">post about Silverlight</a></p>
]]></content:encoded>
			<wfw:commentRss>http://blog.evereq.com/blog/index.php/2010/11/simple-cloud-api-and-maybe-i-should-go-to-php/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Silverlight Killed or?</title>
		<link>http://blog.evereq.com/blog/index.php/2010/10/silverlight-killed-or/</link>
		<comments>http://blog.evereq.com/blog/index.php/2010/10/silverlight-killed-or/#comments</comments>
		<pubDate>Sat, 30 Oct 2010 12:36:54 +0000</pubDate>
		<dc:creator>evereq</dc:creator>
				<category><![CDATA[Uncategorized]]></category>
		<category><![CDATA[.NET]]></category>
		<category><![CDATA[Flash]]></category>
		<category><![CDATA[HTML5]]></category>
		<category><![CDATA[Microsoft]]></category>
		<category><![CDATA[Silverlight]]></category>

		<guid isPermaLink="false">http://blog.evereq.com/blog/?p=711</guid>
		<description><![CDATA[Silverlight Killed or? I don&#8217;t think so&#8230; Unfortunately, in some sense http://mashable.com/2010/10/29/microsoft-silverlgiht-html made correct statement: &#8220;Microsoft Shifts From Silverlight to HTML5&#8243; and that&#8217;s a FACT now! Why this happens!?? Here is my thoughts: Silverlight, like many other interesting concepts from MSFT was implemented with many technology related issues in early versions! Performance and fonts issues [...]]]></description>
			<content:encoded><![CDATA[<p><strong>Silverlight Killed or? </strong><strong>I don&#8217;t think so&#8230;</strong><br />
Unfortunately, in some sense <a href="http://mashable.com/2010/10/29/microsoft-silverlgiht-html">http://mashable.com/2010/10/29/microsoft-silverlgiht-html</a> made correct statement: &#8220;Microsoft Shifts From Silverlight to HTML5&#8243; and that&#8217;s a <strong>FACT</strong> now!</p>
<p>Why this happens!?? Here is my thoughts:</p>
<ol>
<li>Silverlight, like many other interesting concepts from MSFT was implemented with <strong>many technology related issues</strong> in early versions!<br />
<strong>Performance</strong> and <strong>fonts issues</strong> I can name as most important! I do NOT like how Silverlight apps looks at my TFT monitors (because of fonts issues), same like WPF applications! Sometimes, when I scroll something, it push me think that I should go to doctor to check my eyes again! (and same issues with fonts I see with IE9 beta, not sure MSFT will fix it someway or not before final release)</li>
<li>Silverlight supported on much<strong> less devices</strong> than HTML / CSS / JS / Flash and it seems like because it&#8217;s proprietary this can&#8217;t be changed in near future!</li>
<li>Development of Silverlight can be done right <strong>only using Microsoft tools</strong> like Visual Studio and Microsoft Expression Studio (some apps from it) <strong>that cost $$$</strong></li>
<li>If you know Java, Python Django, RoR, PHP, Grails or any other language / platform / framework for web development, it&#8217;s much more <strong>easy to use HTML5 because you already know HTML / CSS / JS stack</strong> (as well as many web frameworks) than to move to something new like XAML / C# etc! I.e. basically only developers in .NET can consider using Silverlight, not other wide audience of Web developers! And while I can&#8217;t sure thing compare power of Silverlight and HTML5, MOST of required things can be done easy with nice JavaScript frameworks (think jQuery), HTML5, CSS3 etc.</li>
<li>Silverlight apps are always have <strong>big size</strong>! Sometimes there are even so heavy that web users probably will not wait so much time! Compare it to current compressed Javascript code and HTML5 compressed using standard gzip compression and / or different other compressors! What to feel it? Go to <a href="http://www.microsoft.com/windowsphone/en-us/buy/7/phones.aspx">http://www.microsoft.com/windowsphone/en-us/buy/7/phones.aspx</a> and check how long it takes to really get it in your browser!</li>
</ol>
<p>I can give many other arguments around it, but generally when Silverlight out I made my choice &#8211; AVOID using it (as well as WPF, but that&#8217;s other story) for any live projects, until I will really feel the need of &#8220;all in one&#8221; web client application with really rich and heavy graphics / Video / Voice requirements!<br />
It&#8217;s real fact that MOST of flash based sites, where site COMPLETELY was made in Flash FAIL, unless they touch some very specific area! I.e. it so easy to see that web users want &#8220;light&#8221; pages (HTML / CSS / Javascript) and not heavy as Flash / Silverlight get produced!<br />
But again: I DO see big future anyway for Silverlight as really best framework to build RIAs out there in .NET space! More so, now it seems like Silverlight can take it place in WP7 development!</p>
<p>Just always you should ask yourself &#8211; are you sure you want to build (or customers ask you to build) RIA? Maybe you want to build super light, not heavy Web 2.0 (3.0) web site? Or may be you want to build something using only open / cross-platform technologies?<br />
Than don&#8217;t even think about Silverlight, at least for now!</p>
]]></content:encoded>
			<wfw:commentRss>http://blog.evereq.com/blog/index.php/2010/10/silverlight-killed-or/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
	</channel>
</rss>
<!-- WP Super Cache is installed but broken. The path to wp-cache-phase1.php in wp-content/advanced-cache.php must be fixed! -->
