Archive for the 'software' Category
Monday, April 9th, 2007
On Tuesday Brian Morgan of Skyline Technologies will cover Lessons Learned Implementing Service-Based Applications at the .NET User Group meeting. In other words, this presentation will cover SOA. The term SOA has been used and abused heavily the past couple of years in relation to Web Services which is also heavily abused. In the context I have come to accept SOA means Service Oriented Application (and occasionally Architecture) which allows components to be directly or remotely connected by simply adjusting the configuration to suite the desired deployment scenario.
SOA with .NET means Windows Communication Foundation (WCF) which is a rich implementation of the WS-* specifications such as WS-ReliableMessaging. This is a timely topic for me as I have been preparing to make use of WCF for a few projects. I do not know the details of what is going to be presented, but I am certain they will review the common misconceptions of networked applications with network latency being one of the primary issues.
(more...)
Posted in dotnet, software, wcf | Comments Off
Sunday, April 8th, 2007
I just came across an ad for Visual Studio which links over to Defy All Challenges. It features videos which seem like a twist of the popular show The Office but the clips are from video games with custom voiceovers. The clips show the characters doing various things that people do in an office. Some of them are pretty funny. They even have an application on the website which allows you to create your own video which others can vote on later.
I think we got a preview of this all when Scott Guthrie did a video about ASP.NET AJAX in a Red vs Blue clip. (requires WPF/e) It makes me wonder how long before they have a Sims theme for The Office if they do not have one in the works already.
Posted in ajax, dotnet, microsoft, software | Comments Off
Saturday, March 24th, 2007
Have a mix of VB.NET and C# applications in your environment? Has someone decided to make one the standard for all applications going forward? Well, you are in luck. Today Code Converter was announced on TelerikWatch. This service brings the power of NRefactory to a web interface with the goal of making it available to all of those popular mini web applications like Yahoo! Widgets, Windows Sidebar and Google Desktop. This tool should make your work of migrating the code much easier.
[ Code Converter ]
Another way to convert code is to make use of Reflector for .NET which will disassemble any .NET assemblies and display the code in the language of your choice. I find this to be very useful when I know how a bit of code is done in one language but forget how it is done with another, such as casting types or attaching event handlers.
Posted in dotnet, software | Comments Off
Monday, March 19th, 2007
Now that I have been through the WCF Master Class I have created a mechanism for loading and hosting multiple WCF services. If you have TortoiseSVN installed you can point it to my public project called SmallSharpTools.Services and get all of the source for the project. It is a provider implementation which defines a provider called ServicesProvider which has a couple of methods to control the hosted services, Start and Stop. I then implemented a Manager Service and a desktop application which interfaces with it to control the hosted services.
(more...)
Posted in dotnet, software, wcf | 4 Comments »
Saturday, March 17th, 2007
I recently discovered the Triplet class in the System.Web.UI namespace. It can be used to hold 3 values which is immensely useful when you need to hold onto a few values which are all related. In the same namespace is the Pair class which holds onto 2 values. Without these classes I have resorted to alternative means of managing collections of related data. One such alternative is holding onto multiple collections with one value in each collection. This alternative would use a collection like IDictionary<int, string> with an index to match the values across the collections. While I may get points for using Generics, the use of multiple collections is still not very elegant because I would have to manage all of those collections and ensure I keep them synchronized with each add, update and remove. (nevermind thread safety) I may have actually done this years ago but I have actively avoided it in recent years. Another alternative is to create a custom class just to hold onto these related values, but that is just more work. The Pair and Triplet classes seem to fill this need when placed in a collection, such as IDictionary<int, Pair> or IDictionary<int, Triplet>.
(more...)
Posted in dotnet, software | Comments Off
Wednesday, March 7th, 2007
A couple of weeks ago I had a problem with my USB drive. As I copied large files (over 400MB) the USB connection would fall and drop the drive. To cope with it I created the Slow Copy Utility which worked a couple of times, but it is still not reliable. Someone suggested to me that changing the USB cable may fix the problem, and I tried that. And I am happy to report that it works! The cable that came with the external drive is the one that was failing. Now I can reach my 500GB SATA drive where I have copied tons of my data, including the ISO files I have pulled down from MSDN.
Posted in hardware, software | 1 Comment »
Sunday, February 25th, 2007
One of those hallway debates that keeps coming up lately is over the size of the popular Javascript libraries. The single most popular library is Prototype which comes in at a whopping 70KB. That large size has some developers screaming bloody murder because they think that it actually requires you to download 70KB of data, and it does, unless you take advantage of HTTP compression which is supported by IIS 6 and the Apache web server.
(more...)
Posted in javascript, software, web | 1 Comment »
Wednesday, February 21st, 2007
One way to speed up an ASP.NET application is to trim ViewState as much as possible. You can do it by turning off ViewState for controls which do not need it or to move the ViewState to the server-side by adjusting the Page State Persister. To keep an eye on your ViewState you can use the following link as a bookmarklet which will tell you the length of the ViewState for the current page.
ViewState Length [save this bookmark]
(more...)
Posted in asp.net, code, javascript, software | 1 Comment »
Thursday, February 15th, 2007
Due to my problems with copying large files over a USB 2.0 connection I created the SlowCopy Utility. (Offwhite.SlowCopy.zip) It is a command-line utility which takes a source and destination filename as well as an optional chunk size (MB) and wait time (seconds). I was able to copy that 2.6GB MSDN ISO file off my external drive successfully with this utility when a direct copy was failing after a few seconds. I did it with 100MB chunks with a 2 second wait. After 100MB it sleeps for 2 seconds which allows the buffer to clear before copying more data to the destination file.
(more...)
Posted in code, dotnet, hardware, software, tech | Comments Off
Monday, February 5th, 2007
I recently read about how you can implement an interface either implicitly or explicitly.
I have always used the implicit declaration without knowing the difference. The explicit declaration causes it to be masked from the instances of the implementation class. If you cast the implementation to the interface you can access the explicitly declared interface methods. In a way it acts like a access modifier like the public, private and protected.
In the code sample below I have created an IDog interface which can Bark, Run and Catch. And then I have 2 classes which implement it, Terrier and BullDog. The BullDog class explicitly declares the Run method. And as you can see in the screenshot to the right the Run is not available from Intellisense.
(more...)
Posted in dotnet, software, tech | 2 Comments »