<?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>Codality &#187; Visual Studio</title>
	<atom:link href="http://blog.najmanowicz.com/category/software-development/visual-studio/feed/" rel="self" type="application/rss+xml" />
	<link>http://blog.najmanowicz.com</link>
	<description>Code and Effect - solving problem with just enough amount of code - by Adam Najmanowicz</description>
	<lastBuildDate>Mon, 08 Feb 2010 12:01:38 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.0.1</generator>
		<item>
		<title>SoakIE &#8211; a Web Server Stress Tool with a twist</title>
		<link>http://blog.najmanowicz.com/2009/05/10/soakie-a-web-server-stress-tool-with-a-twist/</link>
		<comments>http://blog.najmanowicz.com/2009/05/10/soakie-a-web-server-stress-tool-with-a-twist/#comments</comments>
		<pubDate>Sun, 10 May 2009 14:27:06 +0000</pubDate>
		<dc:creator>Adam Najmanowicz</dc:creator>
				<category><![CDATA[.Net Framework]]></category>
		<category><![CDATA[ASP.NET]]></category>
		<category><![CDATA[C#]]></category>
		<category><![CDATA[Downloadable]]></category>
		<category><![CDATA[EPiServer]]></category>
		<category><![CDATA[Software Development]]></category>
		<category><![CDATA[Solution]]></category>
		<category><![CDATA[Visual Studio]]></category>
		<category><![CDATA[Web applications]]></category>

		<guid isPermaLink="false">http://blog.najmanowicz.com/2009/05/10/soakie-a-web-server-stress-tool-with-a-twist/</guid>
		<description><![CDATA[Last week or so ago a couple of friends in another project in Cognifide has run into a wall while trying to load test their website. the problem was as follows: The website is highly AJAX based – the page merely loads a stub in the initial request but then loads the rest of its [...]]]></description>
			<content:encoded><![CDATA[<p>Last week or so ago a couple of friends in another project in Cognifide has run into a wall while trying to load test their website. the problem was as follows: The website is highly AJAX based – the page merely loads a stub in the initial request but then loads the rest of its data in a dynamic matter therefore a traditional web testing tools are fairly useless. What they tried was to setup a number of Selenium clients to pound the server, but that turned out to be fairly challenging to the machine doing the testing. It was not possible to set up more than 10 clients on a fairly strong machine.</p>
<p>Also there are other limitations like time to wait for the server to timeout and time between clicks, which I am not sure the tool allowed them to adjust. Talking to them I recalled <a href="http://blog.najmanowicz.com/2006/11/17/how-to-get-website-thumbnail-in-c/">a tool for grabbing website thumbnails</a> long time ago. one way for them would be to to make a batch file with it. The tool would grab the sites’ thumbnail and stress it, but they would still have to setup a number of clients. Also it creates and tears down an instance of IE every time, making it’s not optimal for that task.</p>
<p>So a couple of evenings later (and a few back-s and forth-s during the testing sessions) out comes SoakIE:</p>
<p align="center"><a href="http://blog.najmanowicz.com/wp-content/uploads/2009/05/soakietest.png"><img style="border-bottom: 0px; border-left: 0px; display: inline; border-top: 0px; border-right: 0px" title="SoakIETest" border="0" alt="SoakIETest" src="http://blog.najmanowicz.com/wp-content/uploads/2009/05/soakietest-thumb.png" width="429" height="387" /></a> </p>
<p> <span id="more-140"></span>
<p align="left">The app uses pretty much the same trick as the <a href="http://blog.najmanowicz.com/2006/11/17/how-to-get-website-thumbnail-in-c/">tool for grabbing website thumbnails</a> but it does so in a nice UI and allows for some rudimentary settings for profiling the traffic:</p>
<p><a href="http://blog.najmanowicz.com/wp-content/uploads/2009/05/soakiesetup.png"><img style="border-bottom: 0px; border-left: 0px; display: block; float: none; margin-left: auto; border-top: 0px; margin-right: auto; border-right: 0px" title="SoakIESetup" border="0" alt="SoakIESetup" src="http://blog.najmanowicz.com/wp-content/uploads/2009/05/soakiesetup-thumb.png" width="429" height="387" /></a> </p>
<p>You can select the number of IE instances that will do the clicking, you can select a minimum time between clicks – that is how often any IE instance can click (if it already finished with the previous request). this allows you to simulate clients that will stay a minute on your site and only click after they’ve read the page. Additionally if your application can on an occasion encounter a deadlock or a hang, it allows you to specify the maximum time to live of each request. If the request takes longer than the specified time, the application will “Stop” the request.</p>
<p>One thing that we’ve noticed though is that after a long time of soak tests the IE instances get mighty fat and start to slow down dramatically. Therefore I’ve added a maximum number of clicks an IE instance can perform after which the client will no longer recycle it for more click but will tear it down and create a new IE instance to continue testing.</p>
<p>Naturally the application needs to know what to test. This is specified in the “Test setup&quot; tab in the “URLs to stress:&quot; text box. The URLs will be picked in a round-robin fashion. The first browser will get the first url, the next one will get the second and so on, if the list will get exhausted the browsers will get fed it from beginning. You can theoretically put them in the box with some other text (like pasting it from a Skype window without stripping the message decoration around them) – SoakIE should be smart enough to parse the text and get the URLs out of it.</p>
<p>You can download <a href="http://www.najmanowicz.com/blog_bin/SoakIE.zip">SoakIE here</a></p>
<img src="http://blog.najmanowicz.com/?ak_action=api_record_view&id=140&type=feed" alt="" />]]></content:encoded>
			<wfw:commentRss>http://blog.najmanowicz.com/2009/05/10/soakie-a-web-server-stress-tool-with-a-twist/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Microsoft loves programmers</title>
		<link>http://blog.najmanowicz.com/2007/03/09/microsoft-loves-programmers/</link>
		<comments>http://blog.najmanowicz.com/2007/03/09/microsoft-loves-programmers/#comments</comments>
		<pubDate>Fri, 09 Mar 2007 18:46:11 +0000</pubDate>
		<dc:creator>Adam Najmanowicz</dc:creator>
				<category><![CDATA[.Net Framework]]></category>
		<category><![CDATA[ASP.NET]]></category>
		<category><![CDATA[C#]]></category>
		<category><![CDATA[Software Development]]></category>
		<category><![CDATA[Visual Studio]]></category>
		<category><![CDATA[Web applications]]></category>

		<guid isPermaLink="false">http://blog.najmanowicz.com/2007/03/09/microsoft-loves-programmers/</guid>
		<description><![CDATA[I&#8217;ve just read a blog about a few new additions to C# 3.0 and in the context of what we&#8217;ve already learned about the whole &#8220;Orcas&#8221; project that is the simplest conclusion. Microsoft .Net Framework designers and coders are just a bunch of programmers who you can clearly see enjoy hat they do. I can&#8217;t [...]]]></description>
			<content:encoded><![CDATA[<p>I&#8217;ve just read a <a href="http://weblogs.asp.net/scottgu/archive/2007/03/08/new-c-orcas-language-features-automatic-properties-object-initializers-and-collection-initializers.aspx">blog</a> about a few new additions to <a href="http://msdn2.microsoft.com/en-us/vcsharp/aa336745.aspx">C# 3.0</a> and in the context of what we&#8217;ve already learned about the whole &#8220;Orcas&#8221; project that is the simplest conclusion.</p>
<p>Microsoft .Net Framework designers and coders are just a bunch of programmers who you can clearly see enjoy hat they do. I can&#8217;t stress enough how many times I&#8217;ve been annoyed to be forced to wrap some private variables in the obvious public properties. No longer! </p>
<p>Instantiating a class followed by a bunch of setting of properties? Now done in one line. Shweet.</p>
<p>One may argue that C# is a set of such syntactic sugar. But then again, I am sure that&#8217;s why so many programmers really like it. Even some of the most Java oriented programmers (Yes Albert I&#8217;m looking at you!) in our company are looking forward to work on .Net. </p>
<p>It is the general perception here that, comparing to Eclipse, Visual Studio is a weak IDE in terms of pure code-writing-helpers, refactoring, and discovery of code dependencies. Only the next version will even be able to target more than 1 .net framework version&#8230; Please fix that crap&#8230; But the language designers are continually doing a great job.</p>
<p>Have a read on some:</p>
<ul>
<li><a href="http://blogs.msdn.com/charlie/archive/2007/03/01/february-ctp-now-available.aspx">February/March Orcas CTP Now Available</a></li>
<li><a href="http://weblogs.asp.net/scottgu/archive/2007/02/08/my-first-look-at-orcas-presentation.aspx">ASP.Net additions</a></li>
<li><a href="http://weblogs.asp.net/scottgu/archive/2007/03/08/new-c-orcas-language-features-automatic-properties-object-initializers-and-collection-initializers.aspx">New C# &#8220;Orcas&#8221; Language Features: Automatic Properties, Object Initializers, and Collection Initializer</a></li>
<li><a href="http://themechanicalbride.blogspot.com/2007/02/do-you-know-linq-fu.html">A blogger on LINQ (Language-Integrated Query)</a></li>
<li><a href="http://www.asp.net/sandbox/app_blinq.aspx?tabid=62">Blinq &#8211; generate the database editing site with a single command line call</a></li>
<li><a href="http://msdn2.microsoft.com/en-us/netframework/aa904594.aspx">I strongly suggest you look at some of the videos of Anders hajlsberg (the main .Net designer) linked form here</a></li>
</ul>
<p>Microsoft ,may be the most annoying company in any other context, though you can&#8217;t help but to feel that sweet and sticky loving goo leftover on your cursor avery time you flip a page&#8230;.</p>
<img src="http://blog.najmanowicz.com/?ak_action=api_record_view&id=55&type=feed" alt="" />]]></content:encoded>
			<wfw:commentRss>http://blog.najmanowicz.com/2007/03/09/microsoft-loves-programmers/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>EPiServer fun</title>
		<link>http://blog.najmanowicz.com/2006/12/14/episerver-fun/</link>
		<comments>http://blog.najmanowicz.com/2006/12/14/episerver-fun/#comments</comments>
		<pubDate>Thu, 14 Dec 2006 14:27:28 +0000</pubDate>
		<dc:creator>Adam Najmanowicz</dc:creator>
				<category><![CDATA[ASP.NET]]></category>
		<category><![CDATA[EPiServer]]></category>
		<category><![CDATA[Internet Information Services]]></category>
		<category><![CDATA[Visual Studio]]></category>

		<guid isPermaLink="false">http://blog.najmanowicz.com/archives/48</guid>
		<description><![CDATA[EPiServer is an Interesting technology we&#8217;ve started working on recently. I will try to blog my impressions and the progress over the course of learning the solution. Since I just seem unable to learn by reading docs I chose to build an email obfuscating (antispam) control and a paged search as an exercise and a [...]]]></description>
			<content:encoded><![CDATA[<p>EPiServer is an Interesting technology we&#8217;ve started working on recently. I will try to blog my impressions and the progress over the course of learning the solution.</p>
<p>Since I just seem unable to learn by reading docs I chose to build an email obfuscating (antispam) control  and a paged search as an exercise and a way to learn the guts of the EPiServer. </p>
<h2>A couple of loose thoughts for a start&#8230;</h2>
<h3>Translation</h3>
<p>I am not sure I fully appreciate the way the translation is performed for the parts of the system that is editor independent . The translation is done by means of xml files stored on the disk in the /lang folder.</p>
<p>Basically what that means is that it&#8217;s much more prone to missing translations and thus is not as translation friendly as it could fairly easily be.</p>
<p>For the content I can always fall back to the e.g. english version and look what&#8217;s the original value there. not so much for the framework translations. Is there a tool for that? I will investigate that later as we&#8217;ll probably want to create a number of controls for the website we&#8217;ll be working on soon, and that will need to be translated to many languages. And not just that but also the original template files &#8211; we will need much more than what&#8217;s available originally in EPiServer.</p>
<p>So once you define your control&#8217;s content:</p>
<blockquote><div style="font-family: Courier New; font-size: 10pt; color: #282828; background: white;">
<p style="margin: 0px;"><span style="color: blue;">&lt;</span><span style="color: maroon;">asp</span><span style="color: blue;">:</span><span style="color: maroon;">LinkButton</span> <span style="color: red;">ID</span><span style="color: blue;">=&#8221;Obfuscate&#8221;</span> <span style="color: red;">runat</span><span style="color: blue;">=&#8221;server&#8221;</span> <span style="color: red;">CausesValidation</span><span style="color: blue;">=&#8221;False&#8221;</span> <span style="color: red;">OnClick</span><span style="color: blue;">=&#8221;ObfuscateEmail&#8221;&gt;</span></p>
<p style="margin: 0px;">&nbsp;&nbsp;&nbsp; <span style="color: blue;">&lt;</span><span style="color: maroon;">episerver</span><span style="color: blue;">:</span><span style="color: maroon;">translate</span> <span style="color: red;">Text</span><span style="color: blue;">=&#8221;<b>/templates/emailobfuscator/obfuscate</b>&#8220;</span> <span style="color: red;">runat</span><span style="color: blue;">=&#8221;server&#8221;</span> <span style="color: red;">ID</span><span style="color: blue;">=&#8221;Translate3&#8243;</span> <span style="color: blue;">/&gt;</span></p>
<p style="margin: 0px;"><span style="color: blue;">&lt;/</span><span style="color: maroon;">asp</span><span style="color: blue;">:</span><span style="color: maroon;">LinkButton</span><span style="color: blue;">&gt;</span></p>
</div>
</blockquote>
<p>in which you defined where the translation is to come from. (In this case the path is: &#8220;/templates/emailobfuscator/obfuscate&#8221;) you need to edito the template framework file and add the translation there with the XPath defined in the control. Which looks along the lines of:</p>
<blockquote><div style="font-family: Courier New; font-size: 10pt; color: #282828; background: white;">
<p style="margin: 0px;"><span style="color: blue;">&lt;?</span><span style="color: maroon;">xml</span><span style="color: blue;"> </span><span style="color: red;">version</span><span style="color: blue;">=</span>&#8220;<span style="color: blue;">1.0</span>&#8220;<span style="color: blue;"> </span><span style="color: red;">encoding</span><span style="color: blue;">=</span>&#8220;<span style="color: blue;">utf-8</span>&#8220;<span style="color: blue;"> </span><span style="color: red;">standalone</span><span style="color: blue;">=</span>&#8220;<span style="color: blue;">yes</span>&#8220;<span style="color: blue;">?&gt;</span></p>
<p style="margin: 0px;"><span style="color: blue;">&lt;</span><span style="color: maroon;">languages</span><span style="color: blue;">&gt;</span></p>
<p style="margin: 0px;"><span style="color: blue;">&nbsp;&nbsp;&nbsp; &lt;</span><span style="color: maroon;">language</span><span style="color: blue;"> </span><span style="color: red;">name</span><span style="color: blue;">=</span>&#8220;<span style="color: blue;">English</span>&#8220;<span style="color: blue;"> </span><span style="color: red;">id</span><span style="color: blue;">=</span>&#8220;<span style="color: blue;">EN</span>&#8220;<span style="color: blue;">&gt;</span></p>
<p style="margin: 0px;"><span style="color: blue;">&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &lt;</span><span style="color: maroon;">templates</span><span style="color: blue;">&gt;</span></p>
<p style="margin: 0px;"><span style="color: blue;">&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &lt;</span><span style="color: maroon;">emailobfuscator</span><span style="color: blue;">&gt;</span></p>
<p style="margin: 0px;"><span style="color: blue;">&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &lt;</span><span style="color: maroon;">obfuscate</span><span style="color: blue;">&gt;</span>Obfuscate<span style="color: blue;">&lt;/</span><span style="color: maroon;">obfuscate</span><span style="color: blue;">&gt;</span></p>
<p style="margin: 0px;"><span style="color: blue;">&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &lt;/</span><span style="color: maroon;">emailobfuscator</span><span style="color: blue;">&gt;</span></p>
<p style="margin: 0px;"><span style="color: blue;">&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &#8230;</span></p>
<p style="margin: 0px;"><span style="color: blue;">&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &lt;/</span><span style="color: maroon;">templates</span><span style="color: blue;">&gt;</span></p>
<p style="margin: 0px;"><span style="color: blue;">&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &#8230;</span></p>
<p style="margin: 0px;"><span style="color: blue;">&nbsp;&nbsp;&nbsp; &lt;/</span><span style="color: maroon;">language</span><span style="color: blue;">&gt;</span></p>
<p style="margin: 0px;"><span style="color: blue;">&lt;/</span><span style="color: maroon;">languages</span><span style="color: blue;">&gt;</span></p>
</div>
</blockquote>
<p>The most annoying part of it though is that it needs to be done for alll the languages if you want the site to be fully translated, which without a tool is not fun.</p>
<p>I will look more into that later. One would expect that a tool like that may exist already.</p>
<h3>Technology</h3>
<p>I am really looking forward to EPiServer 5.x to be released. It&#8217;s to be based on ASP.NET 2.0 which most probably means (I hope)that a number of EPiServer specific technologies will be replaced by a .Net generic technologies. As the ElektroPost notices: </p>
<p><strong><em>EPiServer Content Framework Is Not Unlike ASP.NET 2.0 Master Pages and Content Pages.</em></strong></p>
<p>Also the EPiServer seems to be really hard to develop for in VS.Net 2005. I still didn&#8217;t Indeed ElektroPost suggests VS 2003 as the development platform, but once switched to 2005 I personally can&#8217;t deal with VS 2003 any longer.</p>
<p>The good news though is that it is compatible with .Net 2.0 in a way that you can simply add an ASP 2.0 control and with just slight modifications work with it. You can also use .Net 2.0 partial classes &#8211; which means much cleaner code.</p>
<p>Overall the EPiServer is a really positive experience. I&#8217;m looking forward to work more with it.</p>
<p><a href="http://www.cognifide.com"><img src="http://www.cognifide.com/logo.jpg" alt="Cognifide" /></a><br />
The article is based on the knowledge I&#8217;ve gathered and work I&#8217;ve performed for <a href="http://www.cognifide.com">Cognifide</a>. <a href="http://www.cognifide.com">Cognifide</a> is an official partner <a href="http://www.episerver.com">EPiServer</a> and the real contributor of the the control. </p>
<img src="http://blog.najmanowicz.com/?ak_action=api_record_view&id=48&type=feed" alt="" />]]></content:encoded>
			<wfw:commentRss>http://blog.najmanowicz.com/2006/12/14/episerver-fun/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Linkage</title>
		<link>http://blog.najmanowicz.com/2006/12/08/linkage/</link>
		<comments>http://blog.najmanowicz.com/2006/12/08/linkage/#comments</comments>
		<pubDate>Fri, 08 Dec 2006 11:03:31 +0000</pubDate>
		<dc:creator>Adam Najmanowicz</dc:creator>
				<category><![CDATA[.Net Framework]]></category>
		<category><![CDATA[ASP.NET]]></category>
		<category><![CDATA[C#]]></category>
		<category><![CDATA[Software Development]]></category>
		<category><![CDATA[Test Driven Development]]></category>
		<category><![CDATA[Visual Studio]]></category>

		<guid isPermaLink="false">http://blog.najmanowicz.com/archives/46</guid>
		<description><![CDATA[I&#8217;ve done some research about Visual studio plugins recently, just so that I can close the tabs and move on here are some links that I cound to contain some useful information: HTML Code copy -Absolute must for any blogging .Net developer WatiN &#8211; Web applications testing in .Net &#8211; sounds like it might be [...]]]></description>
			<content:encoded><![CDATA[<p>I&#8217;ve done some research about Visual studio plugins recently, just so that I can close the tabs and move on here are some links that I cound to contain some useful information:</p>
<ul>
<li><a href="http://www.jtleigh.com/people/colin/software/CopySourceAsHtml/">HTML Code copy -Absolute must for any blogging .Net developer</a></li>
<li><a href="http://watin.sourceforge.net/">WatiN &#8211; Web applications testing in .Net &#8211; sounds like it might be THE framework for testing our web GUIs</a></li>
<li><a href="http://msdn.microsoft.com/msdnmag/issues/05/12/VisualStudioAddins/default.aspx">Visual Studio Add-Ins Every Developer Should Download Now</a></li>
<li><a href="http://www.devx.com/vstudioextensibility/Door/32727">Microsoft Visual Studio Extensibility Contest Winners</a></li>
<li><a href="http://dotnetslackers.com/articles/vs_addin/Introduction_ghostdoc.aspx">Introduction</a> to <a href="http://www.roland-weigelt.de/ghostdoc/">GhostDoc</a> &#8211; really funny tool that needs to be looked at &#8211; might be useful&#8230;. moderately. Definitely genuine.</li>
<li><a href="http://www.codekeep.net/">CodeKeep &#8211; THE repository for storing and sharing code snippets</a></li>
<li><a href="http://www.codeplex.com/PackInstaller">Visual Studio Power toys pack installer</a></li>
<li><a href="http://devlicio.us/blogs/christopher_bennage/archive/2006/10/18/Your-Development-Tools.aspx">Christopher Bennage lists some nice and worth mentioning tools as well</a></li>
<li><a href="http://www.castleproject.org/">Seems like an interesting sanbox for some cool development ideas</a></li>
<li><a href="http://blogs.msdn.com/fxcop/">FX Cop</a></li>
<li><a href="http://www.kiwidude.com/blog/">NCoverExplorer &#8211; test coverage tool</a></li>
<li><a href="http://www.ieaddons.com/AddOn.aspx?cid=2&#038;scid=70&#038;aid=a9bcc859-8419-4b67-aac3-e1b3e9749414">This is not really a .Net stuff biut rather an IE Addon but a great one at that!</a></li>
</ul>
<img src="http://blog.najmanowicz.com/?ak_action=api_record_view&id=46&type=feed" alt="" />]]></content:encoded>
			<wfw:commentRss>http://blog.najmanowicz.com/2006/12/08/linkage/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
	</channel>
</rss>
