Skip to main content

WYBIWYG

My friends lament how I’ve turned coat against the Java establishment and joined the ranks of Microsoft.  For the past few years, I’ve enjoyed a model of efficiency that I hadn’t had since the early days of Java.  Back then code was king, and writing software quickly and smartly is what made Java such a hit.

When .NET was released, it was 1996 all over again for me.  I could write code quickly, and so I did. As a result, many products I did develop, and many of which were libraries that would be incorporated into future products.  Like many Java to .NET’ers, I didn’t really understand the implications of the Microsoft’s library versioning, so I did not establish a clear version protocol for my early work.

Yesterday, that lack of foresight was my undoing.  After 8 hours of fighting with ASP, I finally got my application to work.  This was all the result of a minor bug fix in a core library that is used ubiquitously. Additional products of mine that are incorporated into my client’s projects were also affected by this bug fix, so I had to update them as well, and so on.

In the realm of .NET 1, this was very easy to do.  ASP.NET in version 1 was good about letting you decide what libraries would go into your web application.  I call that WYBIWYG, or “What You Build Is What You Get.”  That’s a great thing for programmers, because we tend to have lots of junk on our development machines for other clients and projects.

In the world of .NET 2, though, it is different.  Microsoft has “fixed” ASP so that it can load libraries from the GAC (shared library space) as well as from a local bin directory.  Unfortunately, you specify libraries using the configuration file of the web application or just plunk them into the project output directory.  But that really doesn’t work.  You have to use the VS.NET 2005 IDE to figure out how to include the external libraries into your project output, which doesn’t work either.  All that ever did was cause the ASP worker process to “terminate unexpectedly.”

If you try to include libraries into your project, and they turn out to also be registered in the GAC, then they will be included as GAC libraries in your web configuration file.  When you go to deploy the web project, they aren’t in the deployment output because they are assumed to be in the GAC of your server. That’s not always the case when you have a variety of projects hosted on the same server.

From all of this, I concluded that ASP.NET 2 is not WYBIWYG compliant because it includes “phantom” library references that you can not override with any measure of determination.  You simply are forced to install your libraries into the GAC and hope that they do not conflict with any other projects on the server.  That, in the Java world, is considered a dirty deployment, tantamount to sticking your library jars in the “ext” directory (no no!).

I like .NET and will continue to espouse its efficiencies and support, but I can not say the same for ASP.NET 2.  The Java Enterprise platform is much more friendly to developers because you can truly get WYBIWYG (except in early versions of JBOSS) for your projects. That, my friends, is peace of mind.

Popular posts from this blog

The Spinning Brain

Intuition is a phenomenon of the biological brain that doesn't have any physical explanation. Many people experience intuition with varying degrees of success. There are a variety of theories regarding intuition [1] and some people regard intuition with much caution [2] . Yet, I am happily in the camp that has learned to respect my intuition as it has proven time and time again to be correct. Recently, though, I'd been thinking about intuition and soothsaying . There are many cases of people who claim to see the future, whatever that might be. Maybe there is something to be said about this mystical phenomenon. Maybe there is a real physical process at work that we just haven't thought of yet. To this end, I am proposing a theory about human intuition. This theory, though requires some background in quantum mechanics . Specifically, quantum entanglement . I'm not the only person who has theorized about quantum entanglement and its role in biological congnition and th...

Stock Option Debt Income

The 2024 Presidential election has brought out a topic of interest that seems to have been perverted. There is this "Taxing Unrealized Capital Gains" [1] movement that is being falsely attributed to Vice President Harris. Clearly, this is a change in the revenue code that was designed by someone in office long before VP Harris was in office. My money is on Elizabeth Warren and Bernie Sanders. What is this change in the revenue code though? For that you have to understand what Silicon Valley zillionaires are doing with their stock options. Many of these people in this special economic area have huge discounts on stock prices for companies that are not public yet, or are public and can not be sold [2]. To be fair to these holders of equity, banks allow them to finance debt using leverage against those options. If you hold an option that is worth $5M then a bank might lend you a share of that value, thus realizing a debt against the option [3]. This is a fair debt instrument and...

Number of Primes

Anderson's Theorem (a) The number of primes in [1,n] is no more than 2+floor(n/2). The probability of n being prime when n is not prime is 1/2 - see Dasgupta,Papadimitriou,Vazirani "Algorithms" page 26. Therefore, the E(pi(n)) is n/2. (b) There does not exist another set of adjacent primes other than {1,2,3} 5: 2 + floor(5/2) = 2 + 2 = 4:=> {1,2,3,5} : 4 <= 4 7: 2 + floor(7/2) = 2 + 3 = 5 => {1,2,3,5,7} : 5 <= 5 11: 2 + floor(11/2) = 2 + 5 = 7 => {1,2,3,5,7,11} 6 <= 7 26: 2 + floor(26/2) = 15 => {1,2,3,5,7,11,13,17,19,23} : 10 <= 15 Lagrange's Theorem is Inaccurate Lagrange's theorem about primes states that pi(x) is the number of primes <= x. The pi(x) is approximately x/ln(x). He postulated that the lim of pi(x)/(x/lnx) as x-> infinity was 1. This is incorrect. if the number of primes is bounded by n/2 then refactoring and reducing Lagrange's Theorem results in the lim of ln(x) as x approaches infinity. This is alwa...