Skip to content

New VS Theme Site + Desert Nights 2008 Theme Updated – ReSharper + VS 2010 Support!

30-Apr-10

Just heard news of a sweet new website dedicated to Theming and Styling Visual Studio, called “StudioStyles” now that’s my kinda site.  Go check it out, tons of themes to choose from if your VS IDE is looking kinda drab or you’re sick of looking at that same old blue and white… :)

I also just updated my own Desert Nights theme variation, “Desert Nights Reloaded”; it’s now available for VS 2010 as well as VS 2008 with ReSharper 5 color coding support! Cool! So go get it, officially from my blog or go check it out on StudioStyles! What are you waiting for !?! :)

Not much else happening in blogger-verse right now, but I will let you know if anything exciting happens…

VN:F [1.9.1_1087]
Rating: 4.0/5 (4 votes cast)
VN:F [1.9.1_1087]
Rating: +2 (from 2 votes)

View Contents of HTTP WCF Message with Message Logging & Service Trace Viewer

15-Apr-10

If you would like to see the contents of your WCF message body packet as understood by the server, you can enable WCF message logging via a few adjustments in your WCF Service Web.config file and by then by using the Microsoft Service Trace Viewer application to view it.

I found best results by creating a directory on your system drive, C:\logs\ and storing your WCF messages in there. Everytime I specified the .svclog file to be in the same directory as where my app was, it wasn’t being created, but that could just be my local system permissions at play.

So all you need to do to enable this is in the Web.config of your WCF Service (Host):

  <system.diagnostics>
    <sources>
      <source name="System.ServiceModel.MessageLogging" switchValue="Warning, ActivityTracing">
        <listeners>
          <add type="System.Diagnostics.DefaultTraceListener" name="Default">
            <filter type="" />
          </add>
          <add name="ServiceModelMessageLoggingListener">
            <filter type="" />
          </add>
        </listeners>
      </source>
    </sources>
    <sharedListeners>
      <add initializeData="c:\logs\web_messages.svclog" type="System.Diagnostics.XmlWriterTraceListener"
       name="ServiceModelMessageLoggingListener" traceOutputOptions="Timestamp">
        <filter type="" />
      </add>
    </sharedListeners>
    <trace autoflush="true" />
  </system.diagnostics>

  <system.serviceModel>
    <diagnostics>
      <messageLogging logEntireMessage="true" logMalformedMessages="true"
       logMessagesAtServiceLevel="true" logMessagesAtTransportLevel="true"
       maxSizeOfMessageToLog="2147483647" />
    </diagnostics>

Then run the client app and perform your WCF call, a new web_messages.svclog file should have been created which can now be opened and viewed.

The most interesting data will be under the XML and Messages tabs once you have clicked a message to view.

The default view is not bad, but by pressing ALT-3 within the trace viewer application you will enter message view which I feel is better suited for messaging viewing (how profound).

<system.diagnostics>
<sources>
<source name=”System.ServiceModel.MessageLogging” switchValue=”Warning, ActivityTracing”>
<listeners>
<add type=”System.Diagnostics.DefaultTraceListener” name=”Default”>
<filter type=”" />
</add>
<add name=”ServiceModelMessageLoggingListener”>
<filter type=”" />
</add>
</listeners>
</source>
</sources>
<sharedListeners>
<add initializeData=”c:\logs\web_messages.svclog” type=”System.Diagnostics.XmlWriterTraceListener, System, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089″
name=”ServiceModelMessageLoggingListener” traceOutputOptions=”Timestamp”>
<filter type=”" />
</add>
</sharedListeners>
<trace autoflush=”true” />
</system.diagnostics>

<system.serviceModel>
<diagnostics>
<messageLogging logEntireMessage=”true” logMalformedMessages=”true”
logMessagesAtServiceLevel=”true” logMessagesAtTransportLevel=”true”
maxSizeOfMessageToLog=”2147483647″ />
</diagnostics>

VN:F [1.9.1_1087]
Rating: 3.0/5 (1 vote cast)
VN:F [1.9.1_1087]
Rating: +1 (from 1 vote)

.Net Enum Values As Bit Flags

13-Apr-10

Every now and then I find myself needing to set multiple values to an enum object and test this later on, synonymously I usually find myself also scouring the net on the best practice on how to set, access and test these enum flags :)

So today I thought I would post a definitive reference I found on the net..

Specify flag-annotated enum:

[Flags]
public enum Column
{
None = 0,
Priority = 1 << 0,
Customer = 1 << 1,
Contract = 1 << 2,
Description = 1 << 3,
Tech = 1 << 4,
Created = 1 << 5,
Scheduled = 1 << 6,
DueDate = 1 << 7,
All = int.MaxValue
};

The [Flags] attribute allows you to do this:

Column MyColumns = Column.Customer | Column.Contract;

To check if contains flag:

if ((MyColumns & Column.Customer) != 0)

To check if has flag or higher:

if (MyColumns >= Column.Customer)

To check if has flag or lower:

if (MyColumns <= Column.Customer)

To set a flag:

MyColumns |= Column.Tech;

To clear a flag:

MyColumns &= ~Column.Tech;

To toggle (flip) a flag:

MyColumns ^= Column.Contract;

To clear all flags:

MyColumns = Column.None;

To set all flags:

MyColumns = Column.All;

To set all flags EXCEPT one or more:

MyColumns = Column.All ^ Column.Tech ^ Column.Status;

Credit to Jeremy Lundy for the comprehensive write up.

VN:F [1.9.1_1087]
Rating: 4.2/5 (5 votes cast)
VN:F [1.9.1_1087]
Rating: +1 (from 1 vote)

Error connecting to WAS-enabled Net Tcp WCF Service Hosted Through IIS

01-Apr-10

As you may be aware, setting up a TCP-based full duplex WCF service can have some pretty awesome advantages over regular HTTP-based WCF services, such as the ability for a true client/server persistent connection and the ability for the server to call back to the client at any time and there are a few good guides here and here on how to use them, but they have proven to have some real teething problems through setup.. So if you are attempting to host a WAS-enabled WCF service in IIS 7 using the net.tcp binding for duplex communication, and suffering from any connectivity or setup issues, particularly this one.. read on.

Could not connect to net.tcp://127.0.0.1/WCFService/Service1.svc.
The connection attempt lasted for a time span of 00:00:01.0464395.
TCP error code 10061: No connection could be made because the target machine actively refused it 127.0.0.1:808.

Check to ensure you have ticked off the below steps (as I went through them all!) when I encountered my issue connecting via a net.tcp:// WCF service today:

  1. Ensure you are running IIS 7. IIS 6 and below does not support Windows Process Activation Services (WAS) which boils down to no other binding support except for http (such as net.tcp).
    1. If you receive an error installing this component in Windows Features (like I did, I pretty much got every error possible setting all this up), it’s probably because you have the .NET Framework 4 installed (hmz – RC in my case), you know you shouldn’t have this installed! How dare you! So to get the component installed, .NET Framework 4 must be uninstalled (and all traces of it), the non-http activation component then installed, and then .NET Framework 4 reinstalled.  I tried a way to avoid this, but no luck; I found it was the only way the darn thing it would install.
    2. If everything has gone down the tubes even more, and now even your regular WCF services aren’t loading at all, and you’re encountering a MIME type error in the browser, it’s probably because attempting to install the windows feature borked it when it didn’t work first time and took down half of the WCF IIS configuration with it.  So see my previous post on how to fix a corrupt WCF IIS configuration.
  2. Double check that you have your WCF Service hosted and activated in IIS correctly, here is a great guide provided by SingingEels.
    1. This includes enabling “Windows Communication Foundation Non-HTTP Activation” via. Control Panel -> Programs and Features -> Turn Windows features on or off (under .NET Framework option).
    2. Ensuring the “Net.Tcp Protocol” in your web site is enabled under: IIS (7.0) Admin -> Right Click on your Web Site -> Manage Website -> Advanced Settings… (The ‘Enabled Protocols’ field should be set as http,net.tcp.  Note that is a comma, then a dot.)
    3. Then finally, Configure the “Site Bindings” in IIS. (Double check the port you are using, if it’s 808:* your service will be accessible under net.tcp://localhost/MyServices/Service1.svc, but if it’s 12345:* for example, or any other custom port, make sure you address it as such in your Web/App.config for your client connection as net.tcp://localhost:12345/MyServices/Service1.svc.
  3. Thirdly, try loading it now – if you are still receiving an error and you had to follow step 2.1 and had to activate the “Windows Communication Foundation Non-HTTP Activation” component and HAVE NOT rebooted since yet (lol), go into your local services and start the service entitled “Net.Tcp Listener Adapter“.  Fun and games.  That last point 3 was the one that really got me. As described it “Receives activation requests over the net.tcp protocol and passes them to the Windows Process Activation Service.”, Windows kindly forgot to turn that on after I had installed the component in Program Features.

That should be it, I didn’t encounter any other problem, so I hope you don’t either. I had no firewall issues so it shouldn’t ever be that.

Good luck.

VN:F [1.9.1_1087]
Rating: 3.0/5 (2 votes cast)
VN:F [1.9.1_1087]
Rating: 0 (from 2 votes)

.NET Framework/ASP.NET/C# Development Ultimate Learning Resources (Tutorials for Beginners to Advanced)

15-Mar-10

Howdy everyone, firstly I would like to apologise for the lack of blog updates, I have seriously been flat out on development with our new online start-up, Fotochimp and have not had much time for blogging.

However today I am taking a few minutes time-out to share some links with you I found for a friend today who wished to start out learning ASP.NET web development.  I’m sharing them because I was absolutely astonished at how hard it was to find any decent, rich tutorial resources on the topic of ASP.NET and C# development.  Many of the top ranking links on Google I felt did not either start at the right place, were too complicated for beginners or was missing information, but more so I wanted to hand on a single reliable one-stop-shop link I could trust they could use to learn ASP.NET and C# development from beginner to advanced.

So after giving up on finding such a magical resource, I’ve compilation a set of tutorial links of text and video resources below which covers all aspects from beginner to advanced programming guides in respect to the the .NET Framework, ASP.NET and C#.  My goal was to try and deliver the “best bits” I could find on the net, and hopefully I have done that, but more importantly delivering these links in a logical numeric learning sequence which is the easiest and most effective route to follow.

You will see Ive started with a bit of background on the .NET Framework, which I feel is important in understanding how all the .NET framework components are glued together such as ASP.NET, and then we dive right into learning all about the C# programming language which I feel is a good precursor to ASP.NET (I recommend the C# programming language over VB.NET for .NET development, as I personally find it a more concise, elegant language, but it must be understood you can accomplish the same tasks in .NET with VB.NET as you can with C#, it’s simply syntactical differences and a true personal choice; see here and here for more info, however if you are impartial, and you need more convincing, keep in mind about 90% of examples you will encounter on the net are written in C# and not VB.NET).  The links on C# are hopefully some of the best free ones on the net and range from beginner through to advanced and there is an accompanied video series if you have the time.

Whilst I have put the C# programming language learning series before the ASP.NET web development framework, this order may not be everybody’s cup of tea.  You may wish to learn ASP.NET first and if you are feeling confident, learn C# along the way.  Understand though, it is ideal to learn the programming language of the framework you will be actually programming against, ASP.NET as it simply lessens the difficulty curve when you eventually get to the ASP.NET tutorials.  I personally am pretty impatient with these type of things and tend to through myself straight into the deep end and learn as I go :) (..usually learning hard lessons along the way!).  But this approach like for me, appeals to some when they can program in context against a real world framework like ASP.NET rather than focusing on the behemoth solely that can be the C# programming language.

Then last but not least, we concentrate on the ASP.NET Framework as stated, particularly; ASP.NET Web Forms (you may have heard some buzz around ASP.NET MVC, which is a very sweet framework addition, it simply is an alternative way of designing dynamic websites, but in my personal opinion, not something worth venturing down if you are a novice programmer or haven’t touched ASP.NET or OO-based languages before.  However if you’re daring, are an intermediate ASP.NET developer or have previous object-orientated or C# knowledge, check it out!) there is a great set of background info, ordered and unordered text and video based tutorial resources which contains just about everything you would need to know to get started and make a big impact in the world of ASP.NET.

So here goes.. RCMD is recommended, and highly advisable reading, OPT is optional reading,  if you have a lot of time and you want the richest understanding possible. I have numbered these in desired reading order, but it is up to you!

Firstly, resources on the .NET Framework:

  1. RCMD: http://www.codeproject.com/KB/dotnet/netbasics.aspx (Seems to be the best overview, good content, good diagrams, you can always rely on CodeProject for great stuff)
  2. RCMD: http://www.dotnet-guide.com/ (Good secondary overview, the first page seems useful, simplistic terminology)
  3. RCMD: http://www.microsoft.com/net/overview.aspx (The official Microsoft .NET site, gives you basic knowledge, good to just have a glaze over)
  4. OPT: http://devhood.com/training_modules/dist-a/intro.net/intro.net.htm (a more detailed, but harder read, uses terms which may require previous programming experience)
  5. OPT: http://msdn.microsoft.com/en-us/netframework/default.aspx (and the official MSDN Microsoft .NET Framework site)
  6. OPT: http://en.wikipedia.org/wiki/.NET_Framework (Wikipedia article giving you more detailed background and a more complex explanation and history)

Secondly, resources on C#.NET (C Sharp). (Be aware you can choose C#.NET or VB.NET as the official language you wish to program ASP.NET in, I personally recommend C#):

  1. RCMD (TEXT SERIES): http://www.csharp-station.com/Tutorial.aspx (Comprehensive, but not a totally scary C# tutorial, follow this and you’ll be a whiz in no time!)
  2. RCMD (ORDERED, VIDEO SERIES): http://idealprogrammer.com/videos/c-soup-to-nuts-22-free-one-hour-videos-from-microsoft-expert/ (Another video from the “Soup to Nuts” set, awesome video series, again need IE as it uses MS Live Meeting.)
  3. OPT (TEXT SERIES): http://www.functionx.com/csharp/ (lessons on the left, looks a little more hardcore but again more detailed).

Thirdly, our beloved ASP.NET, the subset web development technology of the .NET Framework:

  1. RCMD: http://www.javascriptkit.com/howto/aspnet.shtml (Good explanation, hand-in-hand with wikipedia article)
  2. RCMD: http://www.startvbdotnet.com/aspsite/asp/ (Again another good explanation, good bullet points, again hand-in-hand with wiki article helps)
  3. RCMD: http://en.wikipedia.org/wiki/ASP.NET (I really like this article, very comprehensive, but not as daunting as the .NET Framework Wiki article, so good reading for all beginners)
  4. RCMD (VIDEO): http://www.asp.net/learn/videos/video-9638.aspx (“What is ASP.NET” short 5 minute video on official ASP.NET site)
  5. RCMD (VIDEO): http://www.asp.net/learn/videos/video-9640.aspx (“Your 1st ASP.NET Application” 11 minute video)
  6. RCMD (TEXT SERIES): http://www.w3schools.com/aspnet/aspnet_intro.asp (ASP.NET tutorial, very simple, but that’s always nice for starting out and a nice re-cap on the previous video)
  7. RCMD (NON-ORDERED, VIDEO SERIES): http://www.asp.net/web-forms/fundamentals/ (A huge collection of official learning videos, great set, includes all ASP.NET fundamentals.)
  8. RCMD (NON-ORDERED, VIDEO SERIES): http://www.asp.net/web-forms/ (Again, huge collection of official learning videos, but you will have to know what you are looking for, or view each one by one.)
  9. RCMD (ORDERED, VIDEO SERIES): http://idealprogrammer.com/videos/learn-aspnet-from-microsoft-expert-26-hours-of-free-videos ( long, but awesomely comprehensive videos, might require IE as they use Live Meeting :( , look really good if you have the time to follow a video series, I just stumbled across it from some other recommended links)
  10. RCMD (TEXT SERIES): http://quickstarts.asp.net/QuickStartv20/aspnet/Default.aspx (Use this as a final recap, the good thing about this resource is once you have learnt the basics, it has a neat “ASP.NET Control Reference” section down the bottom, so click on the control you wanna learn more about, say “TextBox” under “standard controls” and it shows you coding examples on how to use them!)
  11. RCMD: http://www.asp.net/ (Official Microsoft ASP.NET site, good to have bookmarked as reference)
  12. RCMD (NON-ORDERED, VIDEO SERIES): http://www.asp.net/web-forms/data/ (When you have learnt the basics and you are ready to access data (such as from a database), check out this series using Microsoft .NET’s new technology, LINQ to SQL down the bottom labeled “How do I with LINQ”!)
  13. OPT: http://aspalliance.com/144 (Still haven’t got enough? Another comprehensive ASP.NET tutorial..)
  14. OPT: http://www.programmingtutorials.com/aspnet.aspx (Finally, a whole stack more of external links…)

And finally, a whole bunch of books on all three topics…

Now this is the link you want to give out :)
Hope it helps, and feel free to share this link around with others you might know wanting to learn about C# and ASP.NET Development!

Graham

VN:F [1.9.1_1087]
Rating: 3.5/5 (4 votes cast)
VN:F [1.9.1_1087]
Rating: -2 (from 2 votes)

IntelliTrace debugging is available only for x86 applications

15-Feb-10

It appears the new IntelliTrace feature of Visual Studio 2010 is only available for x86 applications?!

Don’t ask me, there is an article with more info, but Habib Heydarian shed some light on the workaround here.

It appears to get around this problem, you must set your project to a configuration platform of x86, enabling it to run as a 32-bit process.

You can do this by dropping down the “Solution Platforms” combo usually stating “Any CPU” next to your “Run” option on the menu bar and selecting “Configuration Manager”.  From there it’s just a matter of selecting “Platform” -> “New” and adding a new platform type “x86″ and you’re right to go.  IntelliTrace should now work.

Don’t forget to set this back to “Any CPU” when you are done to target both x64 (64-bit) and x86 (32-bit) platforms.

http://blogs.msdn.com/habibh/archive/2009/10/22/intellitrace-is-not-available-why.aspx
VN:F [1.9.1_1087]
Rating: 0.0/5 (0 votes cast)
VN:F [1.9.1_1087]
Rating: +1 (from 1 vote)

Disable/turn off ‘Attach Security Warning’ in Visual Studio 2008/2005

20-Jan-10

If you are fed up with continually having to press “Attach” to attach to the IIS w3wp.exe to enable debugging in Visual Studio for IIS as seen in this screenshot:

Visual Studio Debugging Attach Security Warning for IIS

Then never fear, this is a way around it.

All you need to do is adjust the registry setting (via regedit.exe) as Visual Studio wasn’t kind enough to supply as a checkbox for us on the dialog:

HKEY_CURRENT_USER\Software\Microsoft\VisualStudio\9.0\Debugger | DisableAttachSecurityWarning = 1

The same setting can be found for Visual Studio 2005 under:

HKEY_CURRENT_USER\Software\Microsoft\VisualStudio\8.0\Debugger | DisableAttachSecurityWarning = 1

*** Make sure you make this change after you have closed Visual Studio, or it may not save properly! ***

Hope that has helped ya.

PS. I’ve been swamped will full time work lately, but I have a bunch of drafts I want to inevitably publish on this blog, so stay tuned.

VN:F [1.9.1_1087]
Rating: 4.5/5 (2 votes cast)
VN:F [1.9.1_1087]
Rating: +1 (from 3 votes)

Twitter Weekly Updates for 2009-11-22

22-Nov-09
  • My day is made. Happy jQuery developer now. http://bit.ly/qlHLq #jQuery #datatables #
  • Now I've seen everything. Is everyone bored on the Internets? RT @shanselman: Madness.Truly.Who cares? RT @lachlanhardy: http://bit.ly/TIOaz #
  • Tooo much work today and no play :( #
  • MY FACE MY FACE ᵒh god no NO NOO̼O​O NΘ stop the an​*̶͑̾̾​̅ͫ͏̙̤g͇̫͛͆̾ͫ̑͆l͖͉̗̩̳̟̍ͫͥͨe̠̅s ͎a̧͈͖r̽̾̈́͒͑e n​ot rè̑ͧ̌aͨl̘̝̙̃ͤ͂̾̆ ~! #
  • http://bit.ly/4c4n5f #
  • One day I'll make it to #PDC……. #
  • lol RT @PDC09: Visit the Visual Studio booth in the Big Room for your ULTIMATE Developer henna tattoo! Mon & Tues, 2-5pm #visualstudio #
  • Never gets old… :) http://bit.ly/QHZJB #StarWarsKid #
  • Waiting for #Steam to login on my shaped #TPG account, this could take a while….. #
  • A help listener web server to boot up #VS2010 F1 Help? I'm scared. #
  • A site any budding entrepreneurs should add to their list. http://bit.ly/1d4Wyf #
  • Yaaaaaaah #JBL LSR 2328P's have arrived!! .. unboxing .. !!! #
  • What's everyone using for backing up/ripping #DVD's now a days? #GordianKnot? Something else? .. Such a time consuming mission! #
  • Last day of shaped Internet rubbish! #
  • Go away sore throats! Leave @goneale and @koneale alone! #
  • http://www.ultimatetypingchampionship.com/ But it's U.S. Only! :( #
VN:F [1.9.1_1087]
Rating: 0.0/5 (0 votes cast)
VN:F [1.9.1_1087]
Rating: 0 (from 0 votes)

This SQL Server Version (10.0) Is Not Supported

21-Nov-09

You may receive an error:

Running transformation: Microsoft.SqlServer.Management.Smo.FailedOperationException: SetParent failed for Database ‘XXXX’.  —>
Microsoft.SqlServer.Management.Common.ConnectionFailureException: Failed to connect to server XXXX. —>
Microsoft.SqlServer.Management.Common.ConnectionFailureException: This SQL Server version (10.0) is not supported.

When attempting to connect to a SQL Server 2008 database when working with T4 templates or simply accessing an SQL Server directly using the SQL Server SDK via SMO.

What I found was, my code was attempting to connecting using SQL Server 2005 reference assemblies for connection, and you must ensure that your referencing the correct SQL Server (10.0) 2008 Version assemblies. If this doesn’t sound like your problem, another one could be you are attempting to restore a SQL Server 2008 database onto an SQL Server 2005 instance, this also does not work as it’s not backwards compatible. Try scripting your schema + data instead.

But back on track, for the T4 problem, where you have your assembly import declarations at the top of your template, ensure they look like the following:

<#@ assembly name="Microsoft.SqlServer.ConnectionInfo, Version=10.0.0.0, Culture=neutral, PublicKeyToken=89845dcd8080cc91" #>
<#@ assembly name="Microsoft.SqlServer.Smo, Version=10.0.0.0, Culture=neutral, PublicKeyToken=89845dcd8080cc91" #>
<#@ assembly name="Microsoft.SqlServer.Management.Sdk.sfc, Version=10.0.0.0, Culture=neutral, PublicKeyToken=89845dcd8080cc91" #>
<#@ import namespace="Microsoft.SqlServer.Management.Smo" #>

Hope I can help. This should now compile correctly with the specified version calls.

VN:F [1.9.1_1087]
Rating: 4.0/5 (3 votes cast)
VN:F [1.9.1_1087]
Rating: +1 (from 1 vote)

Twitter Weekly Updates for 2009-11-16

16-Nov-09
  • omg #Steam #CODMW2 preloading has begun!! #
  • "I always wished that my computer would be as easy to use as my telephone. My wish has come true. I no longer know how to use my telephone." #
  • Modern Warfare 2 Is Here: Twitter Is Noticing http://bit.ly/17nqRo (via @GadgetNewZ) #
  • OMG I want to start playing MW2 already!! Some people have copies?? Darn Australia. But props to #steam preload yeah! Now to wait. #MW2 #
  • Nigeria should be taken off the Internet. #
  • I used to be indecisive, but now I'm not so sure… (via @SaschaV) lol #
  • RT @haacked: “Woah! Mono Tools for Visual Studio. http://bit.ly/2pKTwp” -@bradwilson #
  • Just in time! #Mono #VisualStudio #
  • #COD #MW2 UNLOCKED ON #STEAM! WOOHOO!! #
  • Bandwidth Monitor frikin' rocks! http://www.bwmonitor.com/ #BandwidthMonitor #
  • But BWMonitor is still not the answer for net limiting, NetLimiter is.. so hopefully they fix the problem soon. #
  • #ns7 rocks! #
VN:F [1.9.1_1087]
Rating: 0.0/5 (0 votes cast)
VN:F [1.9.1_1087]
Rating: 0 (from 0 votes)
My name is Graham O'Neale and I'm a software architect from Gold Coast, Australia. I am an overtime thinker, full time coder and awake part time in the real world. I have a keen interest in software development, particularly in the realm of programming (C#, ASP.NET, ASP.NET MVC, LINQ (2 SQL), Entity Framework, Silverlight, Blend, WCF, WPF) and a keen interest in the cutting edge and innovation. I have a new found love for design patterns, ALT.NET practices and well crafted software architecture. The purpose of this blog is to express any thoughts, findings, tips and gripes along my travels in the wonderful world of coding and technology...