Saturday, September 30, 2006

Virtual People & lonelygirl15

I saw this Wikipedia page about one of the most popular virtual people, lonelygirl15 on Myspace.com

Pretty interesting concepts behind this. The creation of "virtual celebrities" that actually represent (much like "real" celebrities) the work of hundreds or possibly thousands of content creators and marketeers.

I must admit I am most intrigued by this concept. Where will this go in the future I wonder?

Tuesday, September 26, 2006

Fuzzy Logic and Other Math Help

My brother found this great site on the subject of fuzzy logic and computer programming. It has one a high quality treatment of the general concepts as well as great examples and of course some tutorial on how to apply and understand fuzzy logic solutions to everyday problems.

The actual software is call the Fuzzy Logic Toolbox and is a collection of useful functions for MATLAB, however the general information like overview and foundations provide terrific introduction material for anyone interested in Fuzzy Logic.

Monday, September 18, 2006

Guidance Automation Extensions(GAX), NDepend, CLR Analytics, Oh My!!!

I've been a busy guy today, running all over the net reading about various stuff.  One of the more interesting things I saw today was Guidance Automation Extensions
 
The "GAX" as it is called is an extension to Visual Studio 2005 (IDE) that allows architects (framework developers) to author rich, integrated user experiences for (programming) reusable (code) assets including frameworks, components and patterns. The resulting Guidance Packages are composed of templates (code snippets), wizards (automated guides) and recipes (live howtos), which help developers build (code) solutions in a way consistent with the architecture guidance (framework best practices.)
 
Another amazing piece of software, this time, more general for any CLR project, is the NDepend and Code Query Language (CQL).  The NDepend product, which was free in its initial version, leverages the amazing DOM-based CQL suite to analyze and map CLR/.Net libraries, applications, assemblies and modules. 
 
NDepend provides a rapid prototyping and visualization engine for coming to a greater understanding of the complexities, relationships and makups of your CLR applications.

Saturday, September 16, 2006

COM+ Object .Net Cleanup / Dispose

I found a blog entry on the DotNetJunkies site about Dispose the COM+ objects in managed apps that I found very helpful with a resource management issue I was facing today.  My particular problem was that the database connections created inside my unmanaged COM+ application were not being released when the .Net managed application (written in C#) invoked them.

Friday, September 08, 2006

What is P3P, W3C Privacy Policy Summary

What is P3P?

  • Participating Web sites answer a set of multiple-choice questions creating a summary of the site's privacy practices, which can then be interpreted and displayed by P3P-enabled browsers. 
  • When you use a P3P-enabled browser to visit a site participating in P3P, the browser automatically reads the site's P3P summary comparing the site's privacy practices to the privacy preferences you've set. The browser might display an alert or block transmission of certain data, such as cookies, if a Web site's practices differ from your preferences.

Here is the deployment guide for P3P from W3C.  This covers the development of the technical P3P, the human readable P3P and some technical details about how the code-level implementation of P3P is executed.

Here is the "how-to establish P3P at your site" document from the W3C.  This covers writing ( or generating) the policy, tools to assist with the generation and some details about what types of information must be defined by the "business" before they can be placed into a formalized privacy policy.

Monday, September 04, 2006

Perl Design Patterns, Examples & Explainations

I ran across this somewhat old, but very good, O'Reilly Perl Design Pattern's article that covers Iterators, Decorators, Singletons and Fly-weights.

CLR Runtime Assembly Loading in .Net

The CLR does not first look in the application's private bin directory.
 
Before the CLR can load an assembly, it must be able to find it. To do this, the CLR makes use of the Assembly Resolver to find the physical assembly and then pass it to the assembly binding mechanism.  After binding the application can use the types defined in the assembly.

The Assembly Resolver resolves for assemblies from different sources in the following order:

1. The GAC, for a native image of the assembly
2. The GAC, for a non-native image of the assembly
3. CodeBase location, if one was defined
4. AppBase directory, otherwise known as the private bin directory
5. Any sub directories as specified in the probing paths, if defined in the application config file

As you can see, the application's private bin directory is #4 , not #1 location. Assemblies in the GAC are system-wide assemblies and therefore take precedence over everything else (assuming versions and other criteria match.)

Sunday, September 03, 2006