<?xml version="1.0" encoding="UTF-8"?>
<?xml-stylesheet type="text/xsl" media="screen" href="/~d/styles/rss2full.xsl"?><?xml-stylesheet type="text/css" media="screen" href="http://feeds.feedburner.com/~d/styles/itemcontent.css"?><rss xmlns:blogChannel="http://backend.userland.com/blogChannelModule" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:pingback="http://madskills.com/public/xml/rss/module/pingback/" xmlns:trackback="http://madskills.com/public/xml/rss/module/trackback/" xmlns:wfw="http://wellformedweb.org/CommentAPI/" xmlns:slash="http://purl.org/rss/1.0/modules/slash/" xmlns:geo="http://www.w3.org/2003/01/geo/wgs84_pos#" xmlns:feedburner="http://rssnamespace.org/feedburner/ext/1.0" version="2.0">
  <channel>
    <title>Scott Dougherty</title>
    <description>On Software Development and Technology</description>
    <link>http://www.scottdougherty.com/blog/</link>
    <docs>http://www.rssboard.org/rss-specification</docs>
    <generator>BlogEngine.Net Syndication Generator 1.0.0.0 (http://dotnetblogengine.net/)</generator>
    <language>en-GB</language>
    <blogChannel:blogRoll>http://www.scottdougherty.com/blog/opml.axd</blogChannel:blogRoll>
    <blogChannel:blink>http://www.dotnetblogengine.net/syndication.axd</blogChannel:blink>
    <dc:creator>Scott Dougherty</dc:creator>
    <dc:title>Scott Dougherty</dc:title>
    <atom10:link xmlns:atom10="http://www.w3.org/2005/Atom" rel="self" href="http://feeds.feedburner.com/ScottDougherty" type="application/rss+xml" /><atom10:link xmlns:atom10="http://www.w3.org/2005/Atom" rel="hub" href="http://pubsubhubbub.appspot.com" /><item>
      <title>Windows Server 2008 Release Includes SP1, Makes IT Feel Warm &amp; Fuzzy</title>
      <description>&lt;p align="right"&gt;
&amp;nbsp;
&lt;/p&gt;
&lt;p&gt;
Is Microsoft really shipping Windows Server 2008 with Service Pack 1 installed or is this another Microsoft marketing debacle? 
&lt;/p&gt;
&lt;p&gt;
&lt;img src="http://www.scottdougherty.com/blog/image.axd?picture=logo-ms-ws08-v.png" alt="Windows Server 2008" width="224" height="75" align="right" /&gt;Microsoft&amp;rsquo;s director of project management for Windows Server, &lt;a href="http://blogs.msdn.com/iainmcdonald/" target="_blank"&gt;Iain McDonald&lt;/a&gt;, recently &lt;a href="http://blogs.msdn.com/iainmcdonald/archive/2008/02/15/windows-server-2008-is-called-sp1-adventures-in-doing-things-right.aspx"&gt;announced on his blog&lt;/a&gt; that Microsoft will be shipping Windows Server 2008 with Service Pack 1 already installed. According to his post this is an attempt to keep both Vista and Windows Server 2008 on the same core code base and synchronize release schedules for future patches and service packs.&amp;nbsp; 
&lt;/p&gt;
&lt;p&gt;
I don&amp;rsquo;t doubt that there is a legitimate need at Microsoft to reorganize and streamline the builds, maintenance and support of the operating system code base, ultimately the benefits of this could yield a much higher quality product. Additionally, if both products derive from the same Vista code base it would make sense to release patches, especially hot fixes for security vulnerabilities at the same time. 
&lt;/p&gt;
&lt;p&gt;
All of this sounds like a step in the right direction from an internal Microsoft perspective, an operations management and process improvement strategy to increase the quality of Windows products and support. However I don&amp;rsquo;t think a new product should ever be released and labeled with a service pack, it&amp;rsquo;s like skipping v1.0 to v1.1, is that to say that Windows Vista could or should be running in a server capacity? There are a number of potential issues here: 
&lt;/p&gt;
&lt;ol&gt;
	&lt;li&gt;
	&lt;div&gt;
	Will there be a single Service Pack 1 instance? And will this sole instance cover fixes for both Vista and Windows Server 2008? This could be a potentially confusing space for customers. 
	&lt;/div&gt;
	&lt;/li&gt;
	&lt;li&gt;
	&lt;div&gt;
	If these products are so closely related that service packs, hot fixes and release schedules will occur in unison, why not call it Vista Server or Vista Server 2008? 
	&lt;/div&gt;
	&lt;/li&gt;
	&lt;li&gt;
	&lt;div&gt;
	Vista has had an underwhelming acceptance from both the consumer and IT business markets, branding the server product similarly to the client product could create stereotypes Microsoft wants to avoid. 
	&lt;/div&gt;
	&lt;/li&gt;
	&lt;li&gt;
	&lt;div&gt;
	The IT practice of &amp;ldquo;wait until Service Pack 1 is released&amp;rdquo; has typically influenced the rate of adoption, but this looks like a red herring from Microsoft marketing to accelerate the adoption rate for Windows Server 2008. 
	&lt;/div&gt;
	&lt;/li&gt;
	&lt;li&gt;
	&lt;div&gt;
	Branding a release with Service Pack 1 insinuates that the product has been in production, not the collective fixes resulting from beta testing. 
	&lt;/div&gt;
	&lt;/li&gt;
	&lt;li&gt;
	&lt;div&gt;
	The roles and usage of Vista and Windows Server 2008 are completely separate models. Do we really need Aero glass and Dream Scene on the server? ;) 
	&lt;/div&gt;
	&lt;/li&gt;
	&lt;li&gt;
	&lt;div&gt;
	The server release has always followed the client and most likely always will. So does this mean all future Windows Server products will release with SP1 or even a SP2? 
	&lt;/div&gt;
	&lt;/li&gt;
&lt;/ol&gt;
&lt;p&gt;
I think nearly all customers view both Vista and Windows Server 2008 as separate Windows products, despite whether one is derived from the other. 
&lt;/p&gt;
&lt;p&gt;
The bottom line, it makes sense to fix a car before it leaves the plant instead of issuing a re-call. If it improves the quality and delivery of the software it&amp;rsquo;s a great thing, but at the same time it appears Microsoft still doesn&amp;rsquo;t know how to market and version their own products. I think it&amp;rsquo;s safe to say most IT managers will wait for Service Pack 2. 
&lt;/p&gt;
&lt;p&gt;
Perhaps this helps to validate &lt;a href="http://www.joelonsoftware.com/items/2008/01/29b.html"&gt;Joel Spolsky&amp;rsquo;s post&lt;/a&gt;? 
&lt;/p&gt;
&lt;p&gt;
The &lt;a href="http://www.microsoft.com/heroeshappenhere/default.mspx"&gt;big launch day&lt;/a&gt; is on February 27th. 
&lt;/p&gt;&lt;img src="http://feeds.feedburner.com/~r/ScottDougherty/~4/RHPFAJj4oq0" height="1" width="1"/&gt;</description>
      <link>http://feedproxy.google.com/~r/ScottDougherty/~3/RHPFAJj4oq0/post.aspx</link>
      <author>Scott Dougherty</author>
      <comments>http://www.scottdougherty.com/blog/post/Windows-Server-2008-Release-Includes-SP12c-Makes-IT-Feel-Warm--Fuzzy.aspx#comment</comments>
      <guid isPermaLink="false">http://www.scottdougherty.com/blog/post.aspx?id=d8b43d9a-8f72-4d67-8176-0061f5339238</guid>
      <pubDate>Tue, 19 Feb 2008 21:00:00 -0500</pubDate>
      <category>Windows</category>
      <dc:publisher>Scott Dougherty</dc:publisher>
      <pingback:server>http://www.scottdougherty.com/blog/pingback.axd</pingback:server>
      <pingback:target>http://www.scottdougherty.com/blog/post.aspx?id=d8b43d9a-8f72-4d67-8176-0061f5339238</pingback:target>
      <slash:comments>0</slash:comments>
      <trackback:ping>http://www.scottdougherty.com/blog/trackback.axd?id=d8b43d9a-8f72-4d67-8176-0061f5339238</trackback:ping>
      <wfw:comment>http://www.scottdougherty.com/blog/post/Windows-Server-2008-Release-Includes-SP12c-Makes-IT-Feel-Warm--Fuzzy.aspx#comment</wfw:comment>
      <wfw:commentRss>http://www.scottdougherty.com/blog/syndication.axd?post=d8b43d9a-8f72-4d67-8176-0061f5339238</wfw:commentRss>
    <feedburner:origLink>http://www.scottdougherty.com/blog/post.aspx?id=d8b43d9a-8f72-4d67-8176-0061f5339238</feedburner:origLink></item>
    <item>
      <title>Adding SyntaxHighlighter to BlogEngine.NET</title>
      <description>&lt;p&gt;
Just about every technical article or blog that posts source code typically implements some kind of tool to render source code syntax highlighting for a variety of programming languages. The benefits of this are obvious, most importantly readability, followed by easy access to copy and paste snippets of source code without intermixing CSS and/or HTML markup. Although BlogEngine.NET 1.3 comes with an extension to highlight source code syntax, I prefer a tool called SyntaxHighlighter which is entirely CSS and JavaScript based and can be used within virtually any web application. SyntaxHighlighter uses JavaScript regular expressions to highlight syntax and it has been noted that with large blocks of code performance can be slow. 
&lt;/p&gt;
&lt;p&gt;
You can add source code using the CodeFormatterExtension that is available with BlogEnginge.NET 1.3 and utilizes bb style markup to generate the desired highlighted syntax. The CodeFormatterExtension makes it relatively easy to add source code to a post using the bb markup method, however the caveat to this is that it transforms the HTML output of your post by adding CSS class attributes to the code which is probably not an issue for most. 
&lt;/p&gt;
&lt;h2&gt;Install SyntaxHighlighter&lt;/h2&gt;
&lt;p&gt;
To get started visit the &lt;a href="http://code.google.com/" target="_blank"&gt;Google Code&lt;/a&gt; project web site to &lt;a href="http://code.google.com/p/syntaxhighlighter/" target="_blank"&gt;download the latest release of SyntaxHighlighter&lt;/a&gt;. This post applies to the SyntaxHighlighter 1.5.1 release. After unpackaging the files I chose to rename the directory from &amp;quot;dp.SyntaxHighlighter&amp;quot; to &amp;quot;SyntaxHighlighter&amp;quot; and only uploaded the Scripts and Styles sub directories to the BlogEngine.NET root path. I chose to keep these sub directories within a SyntaxHighlighter parent directory only for organizational purposes, however it does not matter where you upload the files as long as you remember the paths so the stylesheet and scripts can be referenced. The Uncompressed subdirectory does not need to be uploaded as it is a copy of all of the JavaScript files before they were compressed or trimmed of white space in order to minimize the file sizes. 
&lt;/p&gt;
&lt;p&gt;
The next step is to sign in to your BlogEngine.NET account and within the Settings Control Panel add references to the SyntaxHighlighter stylesheet and scripts. The references can be added to either the HTML Head Section or the Tracking Script section and should be referenced using the full path, instead of relative paths. This will prevent any problems loading these files from all of the various locations within BlogEngine.NET. 
&lt;/p&gt;
&lt;p&gt;
For example: 
&lt;/p&gt;
&lt;pre class="xhtml" name="code"&gt;
&lt;script language="javascript" src="http://www.example.com/BlogEngine/SyntaxHighlighter/Scripts/shCore.js"&gt;
&lt;/script&gt;
&lt;script language="javascript" src="http://www.example.com/BlogEngine/SyntaxHighlighter/Scripts/shBrushCSharp.js"&gt;
&lt;/script&gt;
&lt;script language="javascript" src="http://www.example.com/BlogEngine/SyntaxHighlighter/Scripts/shBrushXml.js"&gt;
&lt;/script&gt;
&lt;/pre&gt;
&lt;p&gt;
In the Tracking Script section copy the following JavaScript, by adding the script to the bottom of the page this helps to ensure that the required stylesheet and script files have been loaded by the browser. 
&lt;/p&gt;
&lt;pre class="html" name="code"&gt;
&lt;script language="javascript"&gt;

window.onload = function () {
dp.SyntaxHighlighter.ClipboardSwf = 'http://www.example.com/BlogEngine/SyntaxHighlighter/Scripts/clipboard.swf';
dp.SyntaxHighlighter.HighlightAll('code');
}&lt;/script&gt;
&lt;/pre&gt;
&lt;p&gt;
Posting source code within BlogEngine.NET using SyntaxHighlighter is accomplished by entering your code in HTML mode of the TinyMCE text editor that comes default with BlogEngine.NET. Simply wrap the source code in the following &amp;lt;pre name=&amp;quot;code&amp;quot; class=&amp;quot;c-sharp&amp;quot;&amp;gt; tags to achieve the following C# syntax highlighting: 
&lt;/p&gt;
&lt;pre class="c-sharp" name="code"&gt;
public static string SayHello(string name)
{
  return String.Format(&amp;quot;Hello, {0}!&amp;quot;, name);
}
&lt;/pre&gt;
&lt;p&gt;
The caveat with this is that the TinyMCE text editor &amp;quot;cleans up&amp;quot; and reformats your markup and ultimately removes the name=&amp;quot;code&amp;quot; attribute that is required by SyntaxHighlighter. Without the name=&amp;quot;code&amp;quot; attribute SyntaxHighlighter cannot apply the appropriate styles. By adding the name=&amp;quot;code&amp;quot; attribute to the &amp;lt;pre&amp;gt; tags it also invalidates XHTML Strict implementations and therefore will not work with BlogEngine.NET themes such as &amp;quot;Leaves&amp;quot; or &amp;quot;Indigo&amp;quot; for example. This appears to be a limitation to the SyntaxHighlighter implementation. 
&lt;/p&gt;
&lt;h2&gt;Configure TinyMCE&lt;/h2&gt;
&lt;p&gt;
The way to fix this is to modify the &lt;a href="http://wiki.moxiecode.com/index.php/TinyMCE:Configuration" target="_blank"&gt;TinyMCE&lt;/a&gt; JavaScript to allow the name attribute for all &amp;lt;pre&amp;gt; tags. The TinyMCE script can be found in the BlogEngine.NET\admin\tiny_mce\tiny_mce.js or tiny_mce_src.js for the uncompressed script file. The &lt;a href="http://wiki.moxiecode.com/index.php/TinyMCE:Configuration/valid_elements" target="_blank"&gt;valid_elements settings&lt;/a&gt; list in the init function should be modified to include the name attribute. 
&lt;/p&gt;
&lt;pre class="JScript" name="code"&gt;
//valid_elements settings 
-pre[class|align|style] 
//changed to include &amp;quot;name&amp;quot; attribute, appears to invalidate xhtml strict but not transitional 
-pre[class|align|style|name] 
&lt;/pre&gt;
&lt;p&gt;
&lt;br /&gt;
At this point SyntaxHighlighter should now be working, but before you upload the modified script file there is another modification that is required to prevent the removal of carriage returns. Within the formatHTML function the TinyMCE text editor removes carriage returns resulting in every line of source code within a &amp;lt;pre&amp;gt; tag running onto a single line. 
&lt;/p&gt;
&lt;pre class="JScript" name="code"&gt;
//delete this line to allow carriage returns, within a pre tag this jumbles everything onto a single line

h = h.replace(/\r/g, &amp;#39;&amp;#39;); // Windows sux, isn&amp;#39;t carriage return a thing of the past :)
&lt;/pre&gt;
&lt;p&gt;
Now the modified TinyMCE script can be uploaded and replaced and SyntaxHighlighter should be ready to highlight your code on XHTML Transitional pages. 
&lt;/p&gt;&lt;img src="http://feeds.feedburner.com/~r/ScottDougherty/~4/jCa7jlE71EY" height="1" width="1"/&gt;</description>
      <link>http://feedproxy.google.com/~r/ScottDougherty/~3/jCa7jlE71EY/post.aspx</link>
      <author>Scott Dougherty</author>
      <comments>http://www.scottdougherty.com/blog/post/Adding-SyntaxHighlighter-to-BlogEngineNET.aspx#comment</comments>
      <guid isPermaLink="false">http://www.scottdougherty.com/blog/post.aspx?id=41cbe162-b538-41c4-a1ea-7918dd029179</guid>
      <pubDate>Wed, 23 Jan 2008 17:26:00 -0500</pubDate>
      <category>BlogEngine.NET</category>
      <category>Tools</category>
      <dc:publisher>Scott Dougherty</dc:publisher>
      <pingback:server>http://www.scottdougherty.com/blog/pingback.axd</pingback:server>
      <pingback:target>http://www.scottdougherty.com/blog/post.aspx?id=41cbe162-b538-41c4-a1ea-7918dd029179</pingback:target>
      <slash:comments>24</slash:comments>
      <trackback:ping>http://www.scottdougherty.com/blog/trackback.axd?id=41cbe162-b538-41c4-a1ea-7918dd029179</trackback:ping>
      <wfw:comment>http://www.scottdougherty.com/blog/post/Adding-SyntaxHighlighter-to-BlogEngineNET.aspx#comment</wfw:comment>
      <wfw:commentRss>http://www.scottdougherty.com/blog/syndication.axd?post=41cbe162-b538-41c4-a1ea-7918dd029179</wfw:commentRss>
    <feedburner:origLink>http://www.scottdougherty.com/blog/post.aspx?id=41cbe162-b538-41c4-a1ea-7918dd029179</feedburner:origLink></item>
  </channel>
</rss>
