<?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>Software Rockstar &#187; Other</title>
	<atom:link href="http://www.softwarerockstar.com/tag/other/feed/" rel="self" type="application/rss+xml" />
	<link>http://www.softwarerockstar.com</link>
	<description>Coaching and mentoring on a journey from a Developer to an IT Leader</description>
	<lastBuildDate>Tue, 13 Sep 2011 17:18:30 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.2.1</generator>
		<item>
		<title>Microsoft Patents The Sudo Command</title>
		<link>http://www.softwarerockstar.com/2009/11/microsoft-patents-the-sudo-command/</link>
		<comments>http://www.softwarerockstar.com/2009/11/microsoft-patents-the-sudo-command/#comments</comments>
		<pubDate>Thu, 12 Nov 2009 17:53:22 +0000</pubDate>
		<dc:creator>SoftwareRockstar</dc:creator>
				<category><![CDATA[Other]]></category>
		<category><![CDATA[Google]]></category>
		<category><![CDATA[Patents]]></category>
		<category><![CDATA[Rants & Raves]]></category>

		<guid isPermaLink="false">http://www.softwarerockstar.com/?p=558</guid>
		<description><![CDATA[U.S. Patent and Trademark Office (USPTO) recently granted Microsoft a patent on a &#8220;personalized version&#8221; of the sudo command with GUI. Sudo is a command that has been in use since 1980&#8242;s or even before by Unix and other operating systems to allow running other commands with elevated privileges. For one, why would Microsoft try [...]]]></description>
			<content:encoded><![CDATA[<div class="imageleft"><img src="http://softwarerockstar.com/wp-content/uploads/2009/11/patent-trademark-office-plaque20m1-277x300.jpg" alt="USPTO Logo" title="USPTO Logo" width="200"/></div>
<p>U.S. Patent and Trademark Office (USPTO) recently granted Microsoft a patent on a &#8220;personalized version&#8221; of the sudo command with GUI.  Sudo is a command that has been in use since 1980&#8242;s or even before by Unix and other operating systems to allow running other commands with elevated privileges.  For one, why would Microsoft try to patent something like this?  Secondly, does USPTO grant patents on anything you ask them for?<span id="more-558"></span></p>
<p>We are witnessing a time in the history of technology when there is more free (open source or otherwise) software available than anyone ever cares to know, and it&#8217;s increasing at a higher rate than anyone can even keep track of.  For any application that one can conceivably imagine, chances are that there is a free alternative out there.  Why in the world then a company such as Microsoft would patent tiny things such as sudo commands, especially when they &#8220;borrowed&#8221; the original idea from elsewhere anyway?  On one hand we see companies like Google<a href="http://www.softwarerockstar.com/2009/11/google-go-a-new-programming-language/"> releasing entire programming languages into open source</a>, and on the other hand companies like Microsoft acquiring patents on simple sudo commands&#8230; we live in truly amazing times don&#8217;t we!</p>
<p><a href="http://www.groklaw.net/article.php?story=20091111094923390">Groklaw</a> has much more detailed information on this story.  You can also find the original Microsoft patent at the USPTO <a href="http://patft1.uspto.gov/netacgi/nph-Parser?Sect1=PTO1&#038;Sect2=HITOFF&#038;d=PALL&#038;p=1&#038;u=/netahtml/PTO/srchnum.htm&#038;r=1&#038;f=G&#038;l=50&#038;s1=7,617,530.PN.&#038;OS=PN/7,617,530&#038;RS=PN/7,617,530">here</a>.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.softwarerockstar.com/2009/11/microsoft-patents-the-sudo-command/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Improved .NET Code Analysis: FxCop 1.36</title>
		<link>http://www.softwarerockstar.com/2007/10/improved-net-code-analysis-fxcop-1-36/</link>
		<comments>http://www.softwarerockstar.com/2007/10/improved-net-code-analysis-fxcop-1-36/#comments</comments>
		<pubDate>Thu, 01 Nov 2007 01:51:00 +0000</pubDate>
		<dc:creator>SoftwareRockstar</dc:creator>
				<category><![CDATA[Development]]></category>
		<category><![CDATA[Other]]></category>
		<category><![CDATA[.NET]]></category>
		<category><![CDATA[Code Analysis]]></category>
		<category><![CDATA[Cool Tools]]></category>
		<category><![CDATA[Rants & Raves]]></category>
		<category><![CDATA[Visual Studio]]></category>

		<guid isPermaLink="false">http://mharoon.wordpress.com/2007/10/31/improved-net-code-analysis-fxcop-1-36/</guid>
		<description><![CDATA[The latest beta version of FxCop 1.36 was recently made available for download. This new version includes various features and fixes that include: 200+ bug fixes that reduce noise, missing analysis and rule crashes Support for analyzing anonymous methods and lambda expressions New option for skipping analysis over tool generated code Better support for C++/CLI [...]]]></description>
			<content:encoded><![CDATA[<div class="imageleft"><img src="http://softwarerockstar.com/wp-content/uploads/2007/10/fxcoprules.jpg" width="233" height="293" /></div>
<p>The latest beta version of FxCop 1.36 was recently made available for <a href="http://www.microsoft.com/downloads/details.aspx?FamilyID=3389f7e4-0e55-4a4d-bc74-4aeabb17997b&amp;displaylang=en">download</a>.  This new version includes various features and fixes that include:</p>
<ul>
<li>200+ bug fixes that reduce noise, missing analysis and rule crashes </li>
<li>Support for <a href="http://blogs.msdn.com/fxcop/archive/2007/09/21/new-for-visual-studio-2008-support-for-anonymous-methods-and-lambda-expressions.aspx">analyzing anonymous methods and lambda expressions</a> </li>
<li>New option for skipping analysis over tool generated code </li>
<li>Better support for C++/CLI and the Compact Framework </li>
<li>Language &#8216;friendly&#8217; API names in the UI and resolutions</li>
<li>New globalization, design and usage rules </li>
<li>Performance improvements that cut analysis by 2x and use half as much memory</li>
<li>Documentation that is <a href="http://msdn2.microsoft.com/en-us/library/bb429476(VS.80).aspx">now available on MSDN</a> </li>
</ul>
<p>FxCop is an excellent free <a title="Static code analysis" href="http://en.wikipedia.org/wiki/Static_code_analysis">static code analysis</a> tool from <a title="Microsoft" href="http://en.wikipedia.org/wiki/Microsoft">Microsoft</a> that checks <a title=".NET Framework" href="http://en.wikipedia.org/wiki/.NET_Framework">.NET</a> <a title="Managed code" href="http://en.wikipedia.org/wiki/Managed_code">managed code</a> <a title=".NET assembly" href="http://en.wikipedia.org/wiki/.NET_assembly">assemblies</a> for conformance to Microsoft&#8217;s .NET Framework Design Guidelines.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.softwarerockstar.com/2007/10/improved-net-code-analysis-fxcop-1-36/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Total Quality Management (TQM)</title>
		<link>http://www.softwarerockstar.com/2007/09/total-quality-management-tqm/</link>
		<comments>http://www.softwarerockstar.com/2007/09/total-quality-management-tqm/#comments</comments>
		<pubDate>Sun, 02 Sep 2007 17:04:00 +0000</pubDate>
		<dc:creator>SoftwareRockstar</dc:creator>
				<category><![CDATA[Leadership]]></category>
		<category><![CDATA[Process & Management]]></category>
		<category><![CDATA[Other]]></category>
		<category><![CDATA[Process Improvement]]></category>
		<category><![CDATA[Project Management]]></category>

		<guid isPermaLink="false">http://mharoon.wordpress.com/2007/09/02/total-quality-management-tqm/</guid>
		<description><![CDATA[Traditionally, quality assurance ensures the quality of a product once it&#8217;s built in order to shield customers from receiving defective product. TQM suggests that rather than putting quality assurance at the end of the product cycle, feedback loops be placed at every step of the product building process so that the actual causes of defects [...]]]></description>
			<content:encoded><![CDATA[<p>Traditionally, quality assurance ensures the quality of a product once it&#8217;s built in order to shield customers from receiving defective product.  <a href="http://en.wikipedia.org/wiki/TQM">TQM</a> suggests that rather than putting quality assurance at the end of the product cycle, feedback loops be placed at every step of the product building process so that the actual causes of defects can be identified and fixed.  Fixing causes of defects can continually increase customer satisfaction at continually lowers costs.</p></p>
]]></content:encoded>
			<wfw:commentRss>http://www.softwarerockstar.com/2007/09/total-quality-management-tqm/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Windows Installer Cleanup Utility</title>
		<link>http://www.softwarerockstar.com/2007/05/windows-installer-cleanup-utility/</link>
		<comments>http://www.softwarerockstar.com/2007/05/windows-installer-cleanup-utility/#comments</comments>
		<pubDate>Tue, 22 May 2007 13:43:00 +0000</pubDate>
		<dc:creator>SoftwareRockstar</dc:creator>
				<category><![CDATA[Development]]></category>
		<category><![CDATA[Cool Tools]]></category>
		<category><![CDATA[Other]]></category>
		<category><![CDATA[Rants & Raves]]></category>
		<category><![CDATA[Scripting]]></category>

		<guid isPermaLink="false">http://mharoon.wordpress.com/2007/05/22/windows-installer-cleanup-utility/</guid>
		<description><![CDATA[If you have ever used MSI installation packages involving Windows Installer, you are probably aware of its nuisance. I can deal with the fact that it&#8217;s a pain to create decent installations without shelling out hundreds or thousands of dollars for third party tools such as Wise and InstallShield, but I just can&#8217;t cope up [...]]]></description>
			<content:encoded><![CDATA[<p>If you have ever used MSI installation packages involving <a href="http://msdn2.microsoft.com/en-us/library/aa372866.aspx">Windows Installer</a>, you are probably aware of its nuisance.  I can deal with the fact that it&#8217;s a pain to create decent installations without shelling out hundreds or thousands of dollars for third party tools such as <a href="http://www.wise.com/">Wise</a> and <a href="http://www.installshield.com/">InstallShield</a>, but I just can&#8217;t cope up with the fact that my customers can&#8217;t install or uninstall an application built using Windows Installer for no apparent reason.  When using the Add/Remove Programs applet in the Control Panel, sometimes MSI packages can&#8217;t be removed.  I have a system with <a href="http://www.microsoft.com/biztalk/default.mspx">BizTalk Server</a> installation that I can&#8217;t get rid of.  There are even issues around upgrading an application and at times the installer complains and won&#8217;t budge.</p>
<p>To alleviate some of the pain, Microsoft finally came up with a <a href="http://support.microsoft.com/default.aspx?scid=kb;en-us;290301">Windows Installer Cleanup Utility</a>, that can be used to remove all references to a given application from your system.  This utility just saved me a few hours worth of work when Installer refused to uninstall a given application from my system so that I could install a newer version.  Without this utility I would have had to go through and search my registry for all references to the application and remove them by manually hand.  Then, if I was lucky, I would be allowed to install the newer version of the application.  With this utility I removed the application from my system in seconds and painlessly installed the newer version after that.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.softwarerockstar.com/2007/05/windows-installer-cleanup-utility/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Scratch: A Head Start For Future Technologists</title>
		<link>http://www.softwarerockstar.com/2007/05/scratch-a-head-start-for-future-technologists/</link>
		<comments>http://www.softwarerockstar.com/2007/05/scratch-a-head-start-for-future-technologists/#comments</comments>
		<pubDate>Wed, 16 May 2007 18:42:00 +0000</pubDate>
		<dc:creator>SoftwareRockstar</dc:creator>
				<category><![CDATA[Other]]></category>
		<category><![CDATA[Cool Tools]]></category>
		<category><![CDATA[Rants & Raves]]></category>

		<guid isPermaLink="false">http://mharoon.wordpress.com/2007/05/16/scratch-a-head-start-for-future-technologists/</guid>
		<description><![CDATA[After the popularity of Logo (Turtle Graphics) in the 80&#8242;s, the Massachusetts Institute of Technology (MIT) has once again come up with a new programming language for kids called Scratch. Scratch teaches kids skills necessary to become future technology professionals, such as creative thinking, clear communication, systematic analysis, iterative design, and continuous learning, while they [...]]]></description>
			<content:encoded><![CDATA[<div class="imageleft"><img src="http://softwarerockstar.com/wp-content/uploads/2007/05/logo2modify1.png" alt="Scratch" width="198" height="60" /></div>
<p>After the popularity of <a href="http://el.media.mit.edu/logo-foundation/logo/turtle.html">Logo</a> (Turtle Graphics) in the 80&#8242;s, the <a href="http://www.mit.edu/aboutmit/">Massachusetts Institute of Technology</a> (MIT) has once again come up with a new programming language for kids called <a href="http://scratch.mit.edu/">Scratch</a>.  <a href="http://scratch.mit.edu/">Scratch</a> teaches kids skills necessary to become future technology professionals, such as creative thinking, clear communication, systematic analysis, iterative design, and continuous learning, while they create fun and interesting projects such as interactive stories, graphic animations, games, music, and art.  Projects created with Scratch can be shared on the web with others.</p>
<p>In addition to home, <a href="http://scratch.mit.edu/">Scratch</a> can be used by schools, museums, community centers, or other group settings.  While the tool is intended for 8 to 16-year olds, with some adult help it can definitely be used by younger children.</p>
<p><a href="http://scratch.mit.edu/">Scratch</a> is available for both Windows and Mac platforms, and is available as a free download.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.softwarerockstar.com/2007/05/scratch-a-head-start-for-future-technologists/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>JScript Eval Method In C#</title>
		<link>http://www.softwarerockstar.com/2007/02/jscript-eval-method-in-c/</link>
		<comments>http://www.softwarerockstar.com/2007/02/jscript-eval-method-in-c/#comments</comments>
		<pubDate>Wed, 07 Feb 2007 04:15:00 +0000</pubDate>
		<dc:creator>SoftwareRockstar</dc:creator>
				<category><![CDATA[Development]]></category>
		<category><![CDATA[.NET]]></category>
		<category><![CDATA[assembly]]></category>
		<category><![CDATA[assembly results]]></category>
		<category><![CDATA[C#]]></category>
		<category><![CDATA[class]]></category>
		<category><![CDATA[dynamic evaluation]]></category>
		<category><![CDATA[evaluatorInstance]]></category>
		<category><![CDATA[expression]]></category>
		<category><![CDATA[expression string]]></category>
		<category><![CDATA[JScript]]></category>
		<category><![CDATA[Method]]></category>
		<category><![CDATA[microsoft]]></category>
		<category><![CDATA[microsoft jscript]]></category>
		<category><![CDATA[Other]]></category>
		<category><![CDATA[Reflection]]></category>
		<category><![CDATA[Scripting]]></category>
		<category><![CDATA[static object]]></category>

		<guid isPermaLink="false">http://mharoon.wordpress.com/2007/02/06/jscript-eval-method-in-c/</guid>
		<description><![CDATA[JavaScript and JScript languages provide a convenient Eval method that allows for dynamic evaluation of expressions. This functionality can be duplicated in C# using Microsoft&#8217;s JScript CodeDomProvider and Reflection. Following class automatically compiles an in-memory assembly using JScript CodeDomProvider. The Eval method uses this assembly to dynamically evaluate specified expressions: using System; using System.CodeDom.Compiler; using [...]]]></description>
			<content:encoded><![CDATA[<div class="imageleft"><img src="http://softwarerockstar.com/wp-content/uploads/2007/02/jscript-file-256x256_21.png" alt="JScript" width="184" height="184" class="alignnone size-full wp-image-315" /></div>
<p><a href="http://en.wikipedia.org/wiki/JavaScript">JavaScript</a> and <a href="http://en.wikipedia.org/wiki/JScript">JScript</a> languages provide a convenient <a href="http://javascript.about.com/od/reference/g/seval.htm">Eval</a> method that allows for dynamic evaluation of expressions. This functionality can be duplicated in C# using Microsoft&#8217;s JScript <a href="http://msdn2.microsoft.com/en-us/system.codedom.compiler.codedomprovider.aspx">CodeDomProvider</a> and <a href="http://msdn2.microsoft.com/en-us/library/system.reflection.aspx">Reflection</a>.</p>
<p>Following class automatically compiles an in-memory assembly using JScript CodeDomProvider. The Eval method uses this assembly to dynamically evaluate specified expressions:</p>
<pre class="brush: csharp">
using System;
using System.CodeDom.Compiler;
using System.Reflection;
using Microsoft.JScript;

///
/// Implements JScript/JavaScript Eval like
/// functionality in C# to allow dynamic evaluation
/// of expressions.
///
public static class ExpressionEvaluator
{
    #region Private Members

    private static Type _evaluatorType;
    private static object _evaluatorInstance;
    private static readonly string _jscriptEvalClass =
    @&quot;import System;
class JScriptEvaluator
{
public static function Eval(expression : String) : String
{
return eval(expression);
}
}&quot;;

    #endregion

    #region Private Methods

    ///
    /// Creates a dynamic in-memory assembly using JScript.NET
    /// to evaluate expressions.
    ///
    private static void Initialize()
    {

        CodeDomProvider compiler = new JScriptCodeProvider();

        CompilerParameters parameters = new CompilerParameters();
        parameters.GenerateInMemory = true;
        parameters.ReferencedAssemblies.Add(&quot;system.dll&quot;);

        CompilerResults results = compiler.CompileAssemblyFromSource(parameters, _jscriptEvalClass);

        Assembly assembly = results.CompiledAssembly;
        _evaluatorType = assembly.GetType(&quot;JScriptEvaluator&quot;);
        _evaluatorInstance = Activator.CreateInstance(_evaluatorType);
    }

    #endregion

    #region Public Methods

    ///
    /// Evaluates specified expression using reflection
    /// on the assembly generated in Initialize() method.
    ///
    /// The expression.
    /// A string representing evaluated expression.
    public static string Eval(string expression)
    {
        if (_evaluatorInstance == null)
            Initialize();

        object result = _evaluatorType.InvokeMember(
        &quot;Eval&quot;,
       BindingFlags.InvokeMethod,
        null,
       _evaluatorInstance,
        new object[] { expression }
       );

        return (result == null) ? null : result.ToString();

    }

    #endregion
}
</pre>
</p>
<p>Using this class, we can execute statements such as:
</p>
<pre class="brush: csharp">
        Console.WriteLine(ExpressionEvaluator.Eval(&quot;2 + 9&quot;));
        Console.WriteLine(ExpressionEvaluator.Eval(&quot;System.DateTime&quot;));
        Console.WriteLine(ExpressionEvaluator.Eval(&quot;Environment.OSVersion.VersionString&quot;));
</pre>
]]></content:encoded>
			<wfw:commentRss>http://www.softwarerockstar.com/2007/02/jscript-eval-method-in-c/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
	</channel>
</rss>

<!-- Dynamic page generated in 3.688 seconds. -->
<!-- Cached page generated by WP-Super-Cache on 2011-10-04 10:24:39 -->

