Behind the veil of Colorado's premier Interactive Agency

Author Archive

Visual Studio User Group – Introduction to VS.NET Rob Wilburn

Monday, July 14th, 2008

The Denver Visual Studio User Group is meeting on July 28th this month and they are doing a special presentation introducing Visual Studio 2008. The talk is titled “Getting into Programming” and will include an introduction to programming with VS 2008 as well as VS 2008 tips and tricks for those who are already familiar with Visual Studio. I am looking forward to seeing some of the new things in VS 2008. I haven’t had an opportunity to use it yet, so this should be a good review of what it can do. I think this will be beneficial for those folks who are either just starting their .NET programming career or those who are switching from other (lesser?) languages and programming environments. It isn’t often that this type of group goes back to basics but I love that they are willing to do so. I know a number of young folks who would like to break into programming; I think this will be very helpful to them.

Of course, the great content isn’t the only reason to go to the VSUG. You may be interested to know that one of the door prizes last month was worth at least $5,000 and there were enough door prizes (most smaller but still cool) for about half the people there! So if you are a .NET developer or want to be a .NET developer – and you live near Denver of course – then be sure to find me and say Hi when you come to the Denver Visual Studio User Group on July 28th!

http://www.denvervisualstudio.net/

Dotnet & SQL User Groups Rob Wilburn

Friday, June 6th, 2008

Yesterday I listened to a great .NET Rocks! podcast on user groups and building community. I have not been to a user group before but I have been involved in leading groups focused on building community so I really appreciated their discussion of the benifits of these groups as well as some of the problems they have faced and how they dealt with them. I thought it was funny that they mentioned “that one guy” that seems to be in every group. He is the guy that sits in the back and always disagrees with whoever is speaking. That seems to be a universal trend; I guess some folks just need a place to vent.

The podcast really reminded me of the value of community, especially when you are dealing with seemingly intractable issues – be they code issue, management issues, or just life issues. There have been a number of code problems we have come up against that I’m sure would have been much easier to solve if we had been more connected with the local user groups.

Coincidentally, I was speaking with our new addition to Client Services, Krista Williams, the other day and she happened to mention that she has contacts in the local SQL user group. Krista wisely encouraged me to get involved. So between Krista and this DNR podcast, I think I will be getting more involved in the local user groups. Hopefully it will be educational as well as a lot of fun!

If you are interested, both the Denver Visual Studio User Group and the Denver SQL User Group meet once a month at the Microsoft offices in the Denver Tech Center. Here are their links:

Denver Visual Studio User Group

Denver SQL User Group

.NET Rocks! is also worth listening to if you are a .NET developer – yet another way to be involved in the .NET community.

DotNet Code Optimization Rob Wilburn

Thursday, May 29th, 2008

I found a great blog post the other day by Shaun Walker on the performance tuning done for DotNetNuke 4.4.0. It is actually an old post (posted on 12/5/2006) but it is still worth reading.

One of the tools they used to optimize DotNetNuke was ANTS Profiler. ANTS Profiler measures how many times each method is called and how long each execution takes. When you run the profiler on an application you get the following statistics:

  1. The number of times the method ran
  2. The sum of the durations of each execution including child method execution times
  3. The sum of the durations of each execution without child method execution times
  4. The maximum amount of time an individual execution took including child method execution times
  5. The minimum amount of time an individual execution took including child method execution times

I ran the profiler on a web project that has not gone through any optimizations lately and it gave me some great data. I found that most of the time used was taken up by a small percentage of the total methods profiled. If we can half the execution time of the slowest ten methods then the average page load time on the site would drop by 33%. On a slow website this tuning could make a world of difference.

ANTS Profiler isn’t free, unfortunately, but I think the information it can provide is well worth the nominal cost.

ANTS Profiler by Red Gate

How to not buy a Turkish carpet Rob Wilburn

Tuesday, May 20th, 2008

So I was on my way to Beirut recently when Hezbollah decided to close down the Beirut airport. British Airways kindly pointed us to Turkish Airlines who supposedly still had a flight going into Beirut. Of course, by the time we made it to Istanbul our connecting flight to Beirut was canceled as well. So instead of going to Beirut I got to spend a few days in Istanbul!

Istanbul is a great place with a lot of history and very pleasant, hospitable people. The one thing that always stands out when I think of both of my trips to Istanbul (I was there in 2001 as well) are the carpet shops. Turkey prides itself on their handmade carpets. The Turks make some beautiful carpets but if you aren’t skilled in the back and forth of negotiating a price then you will probably be paying too much. The first time I went I think I paid $300 for a $150 carpet.

Carpet shops in Istanbul are like Starbucks in Denver; there seems to be one on nearly every block in the city. Combine that with very eager salesmen and some clever sales tactics and it can be difficult to spend a day in Istanbul without buying a carpet. The carpet salesmen in Istanbul hang out in all the tourist traps and offer to give you a free tour. This time my friends and I got caught in the Blue Mosque. The gentleman was very nice and sociable. He insisted that he give us a tour and then we could come back to his shop to have some tea or Turkish coffee so he could show us the famous Turkish hospitality. My friends hadn’t been to a carpet shop yet so we went and sat in a big room where they tossed 20+ carpets onto the floor for us to look at.

This is all fine except there is no badge you get that tells all the other salesmen that you have already looked at the carpets and you don’t want one from them, no matter how hospitable they are. This is where I think I had an advantage over my friends who had not been to Turkey before. I learned the trick to getting away from carpet salesmen on my last trip: don’t make eye contact. For some reason, if you make eye contact with a salesmen (carpet or otherwise) in Istanbul, they assume that means you want to buy something from them. If you avoid eye contact, or at least don’t hold eye contact, then they may still approach you about buying something but you can say “No thank you” and they will usually let you go. On my first trip to Istanbul I had trouble breaking eye contact once someone started talking to me because it felt so rude. I think it must be a cultural thing; I have heard folks from other countries say that Americans make eye contact much more than their culture would.

So there you go; if you visit Istanbul and don’t want to stop for an hour or two in every carpet shop you pass, avoid eye contact or break it quickly if you don’t want to buy a carpet. Of course, sitting through a Turkish carpet sales pitch is also an easy way to get out of the heat and into a nice air conditioned room for a while!

Best Windows Utilities: Metapad, the Notepad Killer Rob Wilburn

Wednesday, February 6th, 2008

If you work with text files on a Windows system then you have probably noticed that Notepad sucks. Personally, I find it barely usable. I have done a lot of research into replacements for Notepad but I haven’t found many good alternatives. I have noticed that the vast majority of Notepad replacement applications fail in exactly the opposite way that Notepad fails. Notepad fails because it only has as many features as was required to call it an application. You can see text in the Notepad window, you can change the text, and you can save the text; that’s about it. To make up for this shortcoming, most Notepad replacements try to be and do everything possible. They cram so much into their programs that they become bloated and slow. All those extra features seem like a good idea, but they just end up getting in the way.

All that I want from a Notepad replacement is to edit text quickly and efficiently. I don’t need anything fancy, just something I can easily toss on whatever system I am working on and that will let me do what I need to do. This is Metapad in a nutshell.

Here are the top selling points of Metapad for me:

1) It opens quickly. There is no splash screen and no waiting for the hourglass to disappear while the application loads its massive bulk into memory.

2) It handles large files gracefully. Metapad has no file size limit. If you ask Metapad to open a very large file then you will be hanging out for a bit while it loads but it will get there eventually. Notepad would make you wait and wait and then die before it actually opened the file. Metapad wouldn’t do that to you because it loves you and knows you need to see that data.

3) Block indent. This is such a useful feature that I can’t understand why it isn’t included in Notepad. Has Microsoft every updated Notepad or it is the same program as it was in Windows 3.1?

4) New line and tab support in Find & Replace. Notepad has no support for any special characters like \n or \t in its Find & Replace. Metapad lets you match newlines, tabs, and backslashes in the find or replace fields of a Find & Replace task. I use this constantly. For example, I needed to remove the last column from 50 “CREATE TABLE” statements in a SQL script so I replaced “,\n\tlastcolumn type\n” with an empty string. That reduced 5 minutes of tedious work to a couple seconds and it saved me from having to pull the script down from the server to my local machine to use a more complex program. I know there are a lot of Notepad replacements that have more extensive regular expression support but 90% of the time this is all I need.

To sum up, Metapad rules and Microsoft should officially replace Notepad with Metapad. If you want to try Metapad yourself (and I know you do), here is the link:

http://www.liquidninja.com/metapad/download.html