February 18, 2003

Microsoft & Patents

Here. My retort to a report's questions about Microsoft's recent .NET patent application.
February 18, 2003

Pies & Marketing Guys

Here. The results of my marketing guy's recent foray are in...
February 18, 2003 .net

.NET Reverse Engineering Techniques

Here. From Michael Box: Understanding .NET reverse engineering techniques: file examination, disassembly, spying, using a Debugger and other tools.
February 18, 2003 spout

Microsoft & Patents

Tue, Feb 18, 2003

The buzz was all around VSLive last week about Microsoft patenting the .NET Framework API. In fact, an eWEEK reporter asked my opinion and this is what I said:

I’m no patent attorney, but in examining the patent application, it looks to me as if they’re claiming a patent for the entire .NET Framework, which comprises the classes that a .NET programmers uses to get anything done. My understanding of the patent laws says that Microsoft has every right to do this, since they invented it. The reason for them to do this is so that they can maintain control of its implementation. Hopefully Microsoft will grant a royalty free license to all implementations of the CLI ECMA standard, which makes up a large percentage of the .NET Framework, or that standard will be worthless.
Even if they grant such a license, projects like Mono are still vulnerable. They plan on implementing even the parts of .NET that aren’t standardized, like ASP.NET and WinForms. This would allow Windows programs compiled against .NET to run under Mono on Linux, providing a single API for cross-platform applications. This has been tried and failed in the past as recently as Java, but I had hoped that the Mono guys could make this work. When Microsoft is granted this patent, they can shut down the non-standardized parts of Mono whenever they want. That’s good for Microsoft share holders, but it’s not good for 3rd party developers that want to write cross-platform solutions.

What I should have added is that as far as I know, Microsoft hasn’t ever enforced its patents. Apparently they keep them for defensive reasons only. Or, they could be waiting til they have a critical mass of patents, enforce them all at once and win the game of Risk that they’re playing with the world. : )

February 17, 2003

What Is Meant By Marketing

Here. In my quest for understanding the business side of this industry, I found this amusing...
February 17, 2003

Microsoft Gets a Clue From Its Kiddie Corps

Here. A bunch of kids gather in a real-world like setting to design an app, only consulting an actual software engineer after the spec is done. Not only does the core app sound cool, i.e. groups of contacts that play/chat together in an online environment, but the way they designed it sounds cool, too. I'd like to grab a set of my customer base and hang in a trendy Seattle downtown warehouse for a month, too, but my customers are all too old to get away for that long. : )
February 16, 2003 .net

dotEASY

Here. From Juan Esteban Suarez: Academic project. Free download from www.doteasy.addr.com. Abstract: "dotEASY" is a Visual Studio .Net Add-in that evaluates C# source code and performs "advices" in order to improve software quality. The configuration and programming of the "advices" is invisible to the developer, the tool’s final user, who only requests for code evaluation. A new "advice" can be created defining metrics, thresholds and optionally programming validation classes and execution classes to automatically modify the code. The export and import capabilities allow one person to create an "advice", which can be configured and exported, so it can be used by many other people.
February 16, 2003 .net

No touch deployment

From David Taylor: I just read Chris Sell's "Distributed .config Files with Smart Clients" article: http://www.ondotnet.com/pub/a/dotnet/2003/01/27/ztd.html Here is another problem I just came across. I often use System.Diagnostics.Process.Start("http://www.sellsbrothers.com") to launch a website (or mailto, etc). However when deploying a simple URL shortcut to the actual application (on a web server), the assembly gets hosted by IEEXEC.exe. The problem is that the Process.Start method then returns a file not found error! I did get it working by directly invoking Internet Explorer, but I needed to know it's directory from the registry because it is not always in the path (and there were some other strange behaviors). So I have ended up using a minimalist setup.msi file that leaves a 5-10 line Loader.exe program on the users computer which in turn loads the assembly from the web server. That way it is *not* hosted in IEEXEC and Process.Start works as expected.

← Newer Entries Older Entries →