Posts

ASP.NET MVC RC - “REFRESH” OUT

If you are getting into the RC1 Release of ASP.NET MVC – you might want to check this post by Phil Haack – which apparently corrects a couple of problems and provides a corrected download. I have to keep synced with this now because we’re starting a major new project with a client that is already using MVC – and so I need to be able to jump in with both feet. Here is the link to the direct download to the revised installer . And here is a link to Haack’s post about the “refresh”. Phil says that the way to fully ensure you have the refresh is to right click on the downloaded file, select the Digital Signatures tab, and make sure the Time Stamp says Wednesday, January 28 and not Friday, January 23. Kindly note that the link to the “release documentation” with the new installer now links to a real Word document with all the details for your reading pleasure. Well! Let’s get going and hope there aren’t any more “hiccups”!

Which Antivirus for Windows 7?

The list of “compatible” antivirus programs for Windows 7 is short – Norton, Kaspersky, Avira, and AVG. I tried Kaspersky 8 Beta first, but after a couple of weeks I’ve determined that it’s just too bulky and “obtrusive” and has some issues that I’m not happy about.  Recently I uninstalled this (thankfully, the uninstall was very clean and left no traces) and tried AVG Free. AVG free boasts some 80 million users, is MUCH more lightweight, and at this point this is the one I recommend for Windows 7. For a “free” version – this thing has way more features than you’d expect. Since my Avast! license recently expired on my main development machine that runs Windows Vista x64, I installed AVG Free on that too. It found and eliminated nearly half a dozen known threats that Avast! never was able to find.  The only option that is disabled that I could find on AVG Free was the rootkit scan. F-Secure has a free FSBL.EXE scanner to take care of that, so the “free” antivirus option i...

Windows 7: How to remove “Send Feedback” links from all windows

Windows 7 Beta build 7000 has a “Send Feedback” link at top right of every window title bar. That’s fine, I’m happy to send feedback, but the problem is I’ve found I have been accidentally clicking these links and it’s gotten to be a real annoyance. Here’s how to remove the little buggers:   1. Run regedit. 2. Navigate to the key: HKEY_CURRENT_USER\Control Panel\Desktop . 3. Check to see if you already have a key (in the right pane) “FeedbackToolEnabled”. If so, set its value to 0. 3. If you do not have this key, then  right-click on the right pane and select New -> DWORD (32-bit) value . Name the new value FeedbackToolEnabled and set it's value to 0 . 4. Restart your machine. All of the "Send Feedback"  links will now be gone from the Windows 7 title bars.

NHibernate: More on Top-Down, Objects First Development

“I'm thirty years old, but I read at the thirty-four-year-old level.”   - Dana Carvey Recently I participated in a Twittervation (“Twitter conversation”?) that started with a respected friend, who is a very well-known MVP, book author, and article writer, complaining that Entity Framework was a “pain in the ass”. That was “out of the blue”, it wasn’t in response to somebody else’s tweet. Of course, I felt compelled to respond and tweeted, “NHibernate. Also PITA, but without all the MS data-centric baggage. (Just my 2 cents)”. Almost simultaneously, another MVP friend of mine who has a follower relationship with the first Tweeter and me said, “why not use NHibernate?”. Subsequent Tweets revolved around “Don't get me wrong, not saying you shouldn't use it or that you're wrong for doing so. Just asking if you've seen NH”, and my ending with “I did a lot of research, man. It was painful. NHibernate won. End of story.” Why did I say this? I have no beef with ...

What is Fiscal Responsibility?

We have a new Administration.  We have a number of States who can’t seem to balance their budgets.  Here’s the deal: I balance my checkbook. I have no choice: if the money isn’t there, I don’t have the luxury of some sort of fiscal “chicanery”. The money is either there, or it isn’t. Most state legislatures’ budgets specify the same:  “If the revenue isn’t there, we cannot spend it”. But, they seem to think that they are exempt from the checkbook algorithm for some reason. States are running up deficits, and now they want Uncle Sam to bail them out (along with all the other “bailout” suitors) They are not to be allowed! You don’t go to the Federal Government to allocate taxpayer revenue to “fix your problem”. What you do is to have a plan that enables your state to assess its revenues and adjust the budget to become deficit-neutral . Just like you and I  do every month with our checking accounts. What am I talking here, Greek? Lets get our financial hou...

Windows 7 Beta Upgrade Experience

“You can't wait for inspiration. You have to go after it with a club.”    - Jack London After doing quite a bit of reading to check up on various potential issues regarding the installation of the Windows 7 public Beta (build 7000),  and after having run it for a bit inside a VM,I decided it would be OK to do an upgrade over my notebook’s Windows Vista Ultimate installation. I use this machine often, but it is not my primary development box, so if things went south, it wouldn’t hurt me too much. The upgrade process was interrupted the first and second times by “incompatible software”. The first was Windows Powershell – which is installed by SQL Server 2008. There is no obvious way to uninstall this, so what I did was to rename the powershell folder under the Windows\System32 folder, and then search for the registry entries and set the installed key from “1” to “0”. That took care of the first offender. The next interruption came when Windows 7 told me Raxco Perf...

Nhibernate Fluent => hbm => SQL Schema

What luck for rulers that men do not think.  - Adolf Hitler More experimentation with NHibernate and we’re getting very close to Nirvana. The concept is (once again) – let’s develop our domain model first (similar to the “contract first” paradigm with SOA and WebServices) , create the mappings, and then create the database schema for the persistence mechanism (SQL Server, whatever) last. The Fluent.NHibernate project   API allows you to map entities in NHibernate in a more expressive and more testable manner than you are typically able to do. What it does is to give you a clear path to take your POCO s (Plain Old CLR Objects) –- without any of the “glop”  attributes or dependencies – just standalone objects – and turn them into NHibernate  .hbm XML Mapping files. This is very cool because it means your objects can be marked [Serializable] and you can send them over the wire via WCF, etc. without the – “[VendorNameHere] Baggage?” getting in your way, because the...

IIS / ASP.NET Recycling “Deadlock Detected”

I like long walks, especially when they are taken by people who annoy me.    - Noel Coward For some time I’ve been working on an ASP.NET web site issue where almost like clockwork, once an hour, the app recycles and then once again about six minutes later, it recycles again. It took a long time to find it, but it turns out that “we’re our own worst enemy”. No, it wasn’t some external process like Task Scheduler on the box, running once per hour and hogging threads. It was me having so much fun doing FireAndForget pattern RPC server pings on every search that I was shooting myself in the foot! This is what happens when we put in some new cool “thing” and then six months later, when we start to see problems, we can’t remember what we did! The ASP.NET “Deadlock detected” shows up in your Application Event log. It’s kind of cryptic, but here’s the general cause: You have a Threadpool per AppDomain. You may have a number of different operations going on (including just servin...

Referencing a non-Silverlight Assembly in a Silverlight Project

“Bailout? Hey! I’m having trouble paying my bills. How about it?” -- Me This one comes up a lot, and the bottom line is, you can’t do it. But - I think it is important to understand why it won't work: You cannot reuse non-Silverlight assemblies since the desktop CLR and Silverlight CLR are based on two different Frameworks. They are similar, but they aren’t “the same”. The BCL’s (Base Class Libraries) that are referenced in each type of project may have similar names but they are completely physically different files . But you can reuse the original code if it's compatible and available to you in source code form. In Visual Studio, you can create a new Silverlight class library project, then right click to add an existing item. You can click the arrow on the right side of the Add Button, and choose "Add As Link". This will not copy the .cs file to your new project, so when you modify the .cs file in one place, the other place will be automatically updated. You...

Silverlight 2 / Visual Studio 2008 “The project type is not supported” error.

  Recently I managed to discombobulate my Visual Studio 2008 Installation, and had to remove and reinstall the little booger. Everything went pretty much OK except after reapplying the Silverlight_Tools.exe (the combined developer installer), I tried to load an existing Silverlight 2.0 RTM project and got “The project type is not supported by this installation” dialog. I’m like, “Huh? The installation went perfectly with no errors”.  One fix I found that seems to work perfectly is to run “Devenv /setup”. For some reason this resets all the package loads and Silverlight Tools will be happy ever after. In my short happy life as a .NET developer, I’ve seen several products where MSIEXEC ends up just sitting there in memory at the end of an install session, all dressed up with no place to go, and it just hasn’t quite finished the job. While I’m on this subject, it might be appropriate for a quick review of all the DEVENV.EXE switches (the full documentation is here , alon...