Friday, March 11, 2005
Reminder to self, always alias tables

I should always alias tables in queries, even if I'm not joining anything. It just makes life that much easier when I need to come through later and add a join (or 10), and not adding a new alias to XX places (yeah, I over use subselects sometimes).



Ron Jacobs podcasting

Ron Jacobs (blog) from the patterns and practices group has been producing a series of podcasts with .net patterns and practices in mind, that compliment his webcast series. I've listened to the first two so far, and managed to get well lost in the second one. Although the concept of dynamic config is interesting, I really need to find those blog posts :) Either way, there are two more, and I'm sure they will be quite technical if they follow the lead of the first two.



 Thursday, March 10, 2005
Great diagram of asp.net page lifecycle

I'm sure like many .net developers, I have the asp.net page lifecycle printed and on my wall at work. On the codebetter.com feed Raymond Lewallen points to this great colorful diagram of the asp.net page lifecycle by Leo Laposte. Can't wait to print this tomorrow.



 Monday, March 07, 2005
Taming del.icio.us

I've been using del.icio.us to manage my links since about the first of the year, and I can't say enough good things about it. I love the idea of organizing my links via tags, and navigating the trail of other like-minded geeks. Plus, it solved the age old problem of having way to many computers, and no good place to put urls.

Since I started the new blog, I have been using a very easy service to include a link blog. You can see it on the right there, the RssInclude portion. Rssinclude was a free and (Very) easy way to include the feed in my site, or any site for that matter. On the other hand, though, it's not meant for del.icio.us. It's just an RSS feed, and I think my linkblog could be so much more.

Enter del.icio.us.net. I have been working on this for a bit now, and finally have something at least up on the internet now to check out. It's way basic, and way pre-alpha. Basically, I have wrapped up all of the del.icio.us rss handling in a few classes, and am in the process of making a few controls on top of that. The first will be a new linkblog sidebar with new, more del.icio.us friendly features. You can check it out here to see where it stands. Currently that page is implemented as a control that displays the links (with appropriate css selectors for when I get to formating), and a form to feed the tags and username to the control. It's pretty clean, and I'm shooting for xhtml strict (although I'll take transitional :).

The next steps are going to be to wrap up the API model, and then build a winforms app to make managing links easier. Since using del.icio.us is so easy, I often put links in with bad descriptions, mainly because I know that I WILL be interested in this, I'm just not yet. When I'm interested, though, I then have the context needed to appropriately tag and describe this link. I hope the winforms app will support this workflow better.

I do plan on releasing the code for this soon. It's almost in a beta to where I will release the core lib, test suite (yes, this is also my first foray into straight TDD, or as close as I can come :) more on this later), and the ascx to include your linkblog in your own sites. Stay tuned.



 Saturday, March 05, 2005
CT .net users group happenings

Things are rolling with the new CT .net developers group. There is a new community server site, where we invite you to participate in the forums, or request to be setup with a blog. I am going to start cross posting over there soon also. We are also discussing putting together a code brew group, so if your interested make sure to stop by the forums and send in your suggestions. If your local make sure to check back often, our community is only as good as we make it.

Also noticed last night that Bill Hollis is going to be speaking on smart clients down at the Uconn .net users group in Stamford April 6th. Quite a hike for me, but I would love to make it down there to hear him speak.



Pragmatic Unit Testing in c# Review

Developer testing is a very interesting topic that gets more and more momentum everyday. All developers know they should be testing, but even with the advent of numerous tools to assist in testing, many still let it fall by the wayside.. As a developer, I've been using nunit for about a year now to test my professional code, as well as my personal code. That being said, I know I have not been using nunit as effectively as I could be, so a couple weeks ago I picked up Pragmatic Unit Testing in c# with nunit by Andrew Hunt and David Thomas hoping it would help get me thinking in TDD.

The book as a whole is relatively short, and an easy read. Direct and to the point, without being dry, I found it easy to just pickup and read this book cover to cover. There is also a good mix of commentary and code.

The first few chapters of the book act as an introduction to unit testing, and the basics of writing fixtures and tests with nunit. The authors do a good job of presenting the whys of unit testing, without being overly religious and theoretical, focusing on things like productivity and quality. The basics of nunit are then presented in a concise and thoroughal manner, showing enough code to feel like an nunit expert by the end of chapter 3.

The next three chapters focus on what to test, why, and how. These chapters were definitely the ones I took the most away from. The authors present a good set of concepts that will help developers think about their tests, and write the tests that will matter. Not too much code in these chapters, but since the chapters focused on the concepts of what to test, I didn't see that as a bad thing.

The last few chapters dive back into code showing how to apply the concepts from the first 6 chapters, covering mock objects, refactoring for testing, and TDD. These chapters take a higher level view at these concepts, showing some details here and there. These subjects could each fill a book themselves, and in fact do, but this book does a good job of providing an introduction to some of these concepts.

Overall, I enjoyed this book very much. It was a small, quick read, and pretty cheap, even at my local Borders. I would highly suggest this book for people that are looking to start unit testing, while those that have been writing tests for a while may want to peruse it first. I purchased this book hoping to think more TDD, but ended up just thinking about my tests more, which isn't a bad thing at all.



 Thursday, March 03, 2005


 Wednesday, March 02, 2005
Worldwind new release

Last week on .net rocks the guys interviewed some folks from NASA who are behind world wind, a fantastic open source world viewer created with .net. I've been playing with this since Richard bloged about it, and it's really alot of fun.

They eluded to a new version during the show, and it must have hit the shelves either yesterday, or early today. I started the download at home when I woke up, but it didn't finish before I left, so I just started it again here at work. Can't wait to play with it.



 Monday, February 28, 2005
HP company nc6000 slow when running on battery

I was setting up my new laptop this weekend, and ran across a slight issue. First off, the nc6000 has quickly grown on my, and although I miss minime, I'll be just fine with this super fast replacement :)

Back to the issue at hand. Our IT group gave it to me with all of the updates on Friday, but over the weekend I figured I would check windows update anyway to look through optional updates. Hey look at that, I have a few driver updates. Lets do 'em all.

No problems after that. I keep setting this or that up, and all is well. Then, I unplug the power. I swear, this thing was acting like I was trying to run XP on a celeron 300. So I started searching. I found this post, which really started to make me queasy. How happy is the IT group going to be when they give me a laptop on Friday, and I hand it back on Monday to get it replaced. Something doesn't seem right, though, since it was running just fine on battery just yesterday.

So, if you updated your network, video, modem, and sound driver, which would you roll back first? I picked video, and won the gold star. Right after the reboot the machine was fast as hell again on battery. I normally wouldn't post this to my blog since, well, you probably don't care. HP's forum registration site was broken, though, and if I don't post this today I will forget about it :)



 Friday, February 25, 2005
When great laptops go bad
Today is a sad day.  It's one of those days that you know will be here one day, but you hope it never comes anyway. 

The day started like a typical winter day in CT.  Wake up, clean up, go clean 5 inches of snow off my car, goto work.  Get to work, and the nomalities continue.  Send out a few emails, check a few things, fire up vs.net *slam on brakes*.  BSOD.  Huh?  Shit.

Reboot, and everything looks ok up to the login prompt (yeah really, that far).  Login, BSOD.  ...  Rince repeat BSOD.  ...  At this point I want to cry.  Boot into Knopix, and I can see everything on the drive, so that helps my sanity level.   Also, since I can boot into Knopix I'm pretty well assured the issue is a software one.

I have been using my personal laptop at work since I was hired.  Not because the company wouldn't furnish me one, but I love my thinkpad, and my mgr was kind enough to make an exception.  Today ends that tradition, though.  Within a couple hours of the crash, I had a new company issued HP laptop.

So now starts the long and painful process of moving my life.  We all go through it, so I won't complain about that too much (other then company issued laptops don't have 2k3 on them like my shiny broken thinkpad).  Such a sad day. 

So far, though, the HP is ok.  The screen pails in comparison, but it seems quite a bit faster.  The new laptop adds new features like cd burner, and bluetooth, which are nice, but I'm still to freaked out by the wierd colors and new keyboard to even look at those. 

There is one plus that comes out of this.  I think I am going to take the thinkpad and retire it from production, but move it to a new position in the iceglue family, "beta machine".  So if nothing else, at least I can now have a dedicated laptop to play with Yukon and Whidbey.

All I can say..  sad day..  sad day..  RIP minime (AKA my thinkpad t30).


Network Engineer Position around Hartford

It's time for another job opening. This position is at the company I work for. We are a small-medium sized company specializing in healthcare transactions (intentionally vague :). We are a very technology oriented company with very forward technology plans, and a great working environment. We are also still looking for a DBA. Details :

The Systems Architect is an operational role responsible for supporting key Intel based servers; Cisco based networks, and Application Development staff. The environment is all new software and equipment installed in 2004 and there is growth planned for 2005. The position is based in Avon, CT and does not require overnight travel on a regular basis. This person will be on call as required.Supervising one staff administrator is anticipated.

Desired Tech Skills :

  • 5-10 years proven knowledge of Cisco Security, LAN, WAN, and High Availability Architectures
  • Knowledge of general E-Commerce architectures, preferably with .Net
  • Experience with/knowledge of the following Microsoft technologies:
    • Active Directory
    • 2003 Server
    • SQL Server 2000 (Clustering is a plus)
    • IIS 5.0/6.0
    • BizTalk 2002 (2004 experience is a plus)
    • Operations Manager 2000 (2005 experience is a plus)
    • ISA 2000 (2004 experience is a plus)
  • Experience with the following administrative software a plus:
    • Veritas Backup Solutions Practices
    • Symantec Anti-Virus Solutions Practices
    • Enterprise Storage and SAN
  • Other Qualifications:
    • This position requires excellent verbal and written communications skills; a can do, enthusiastic attitude toward work and internal customers; the ability to adapt to environmental changes; and strong troubleshooting skills.
    • The candidate must be a well organized self-starter, able to deliver assigned tasks on time, and manage multiple tasks with minimal supervision in a fast-paced environment.
    • Previous supervisory experience also a plus.
  • Microsoft and Cisco certifications are preferred.

Please contact tranqy a t gmail d o t com for more information.



 Sunday, February 20, 2005
ugh, traffic

File this under ideas. This is one I have had for a few years. This came to me when I was living in the Dallas area, where traffic was a more apparent problem then here in rural Connecticut. I've been back in CT for a few years and still don't see this product, though I have seen some strides in the arena, just not in this direction

So what is it you ask? It's really more of a suite/service. Why can't my alarm go off 15 minutes earlier if there is a traffic jam? Why doesn't my computer know which way I should go to work today to avoid traffic, and give me an outlook reminder at work that the highway is backed up and my daughter is going on in the school play in 15 minutes across town (note, specifically for family, that daughter is FICTICIOUS...)

Traffic is a huge part of many peoples lives. Even in rural CT I find myself looking for more reliable ways to know what I'm going to see on the way home. Why don't we know what the traffic is all the time, just like the weather. I know some GPS packages are now taking traffic into consideration, but that's still reactive.

I want proactive traffic. The system knows where I live and work, so that part is easy. Link it to outlook and then get me to appointments on time. Link it to my mobile phone and tell me that I won't make it to Aunty Bertha's on time if I don't leave the mall right now.

Hey, I never said they would be good ideas. Just ideas.



Gimme my network back

It was Thursday night, and things were pretty normal. I was on the couch with the laptop doing this or that, and I was going to termserv into one of the boxes in my office. DNS error. Hmmm.. But I was just on that box a few minutes ago, and I'm on the internet on the laptop, so what gives. Oh hey, I'm on "linksys", not my wireless.

I'm guessing one of my neighbors just got a shiny new linksys, and as far as I can tell it's closer to my couch then my office is, since I can't even see my network anymore. No biggie. I knew my Netgear wireless was a bit weak, and I have a fresh new WRT54G waiting to be configured. I'll do that this weekend. Until then, thanks for the cable speeds.

Saturday, and it's time to get back my network. I break out the linksys, install the Sveasoft beta, and things are looking good. I boost up the signal a little bit and go find the laptop to connect to my new superpower wifi. Hmm.. Where's my network? NetStumbler tells me it's there, but still much weaker then my neighbors linksys. Maybe I need to move it around a bit. I bet if I balance it on this stack of boxes and books, right by the door, and don't walk by too fast I'll get a good connection. Yeah that's what I'm talking about, 10 minutes of good solid connection. Score one for me.

After using my neighbors linksys, and netstumbler, I was able to try a number of settings and placements. It's odd that I'm using their router, hoping to bring it to it's knees with my v83r1337 tech skills and super hackable router. Alas, my efforts fail. Their signal is just too powerful for me to keep a connection. Maybe one of these cool homemade antennas could help. With my superior craftsmanship (1), and quality supplies (2), I yield a an apparatus only fit for NASA. Although my slightly crumpled foil was only partially ripped, I still only saw a decline in my signal. Maybe I should purchase something.

Sunday, and it's time to get back my network. After browsing the Sunday ad's on said linksys network, I realize Compusa has a hawking technology antenna on sale for 5$ (after rebate), and they open early. Sweet. By 10:00 I was back with an iced coffee and my new network savior. By 10:30 I had seen a significant jump in signal strength, and was connected to my network again. By 11:00 I was ready to throw my coffee at my stack of routers, again connected to linksys. Maybe if I balance the antenna on some empty bottles and that shoe I could get a better signal. Yeah, its better, just not better enough. But wait, every time I move the antenna, my signal is fantastic. Maybe I could commission an intern from UConn for a study on wifi signals in the home, and adoption in suburban America. S/He could hold my antenna.

Now, and it's time to get back on my network. Oh who the hell am I kidding. I don't know exactly what I'm going to do yet, short of setting up a VPN, and hoping my neighbor never hears about wep. I am getting used to the cable speeds, though. Maybe I should use their router for outbound traffic, and my dsl for in.. Guess I should talk to them before doing that ;)

I guess it's on to the technical details. If anyone has any suggestions I'd love to hear them. My old router was on channel 10 and I always had good luck. They moved in on channel 6 and took over. Now when I try any of my routers on any channel but 6, I get a horribly low signal, or really high noise. When I am on 6, I can connect for about 20 minutes to an hour, then my card loses connection and moves over to the linksys network, where of course its rock solid. My signal to noise ratio is ranges from about 40-45, where linksys ranges between 55-60. I use an orinoco minipci card, which never really gave me any problems. I also use win2k3 to manage the connection, but tried to install some custom orinioco (now proxim) utils, but they didn't find my card.

Sit tight network, I'll be back soon.

(1) Craftsman? Heh. (2) An old box from a cordless phone, some aluminum foil, and scotch tape.



 Wednesday, February 16, 2005
Dotnet rocks 100th!

Carl and the gang at .net rocks released their 100th show this week, so be sure to go grab it. Just finished listening to it on the way into work (It's a long show this week), and it's a fantastic show. It's a good mix of old clips, new material, and kind words from the community. I laughed, I cried, and now I can't get Rory's burning man song out of my head. (and people are looking at me funny)

Bittersweet news from this weeks show also. Due to scheduling conflicts, Rory won't be able to co-host anymore. Rory has contributed alot to the show, and it's been a fantastic ride (BTW, I was the monocle and unicycle guy :). On the other hand, Richard Campbell will be filling his shoes, and I'm sure he will help carry dot net rocks through at least the next 50 shows. Congrats Richard, and I know I will be listening.



 Monday, February 14, 2005
Happy birthday Delphi!

Everything comes from (T)Object. Datasets. OO wrappers around win32.

No I'm not talking about .net. This is all delphi baby. Of course the dataset wasn't nearly the same thing, but there was the notion of an extra layer of abstraction in delphi. I still say delphi was a baby .net, and since alot of .net came from the magnificent Anders Hejlsberg, I'm sure some of the concepts carried over.

I started on delphi, and have always had fond memories of it. I haven't used it in many years now, but I still remember the days of forward declarations, var :=, and begin/end.

Noticed the birthday boy at Knowing .NET.



Channel9 in my pocket

The main reason I got an mp3 player was to listen to podcasts. When I saw the h320 could be upgraded to play videos, I was excited, but didn't see alot of uses. I played with it here and there, but really the video's have just sat there.

I was poking around the misticriver.net forums this weekend, and saw this post about converting wmv to divx, and just had to try it. I quickly snagged a channel9 video, and had it on my h320 in a matter of about 15 minutes. Very cool.

So now I've been grabbing all the back video's from channel9 I never got a chance to watch to throw them on the device. Then, I saw this post from Joe Stagner about downloading the msdn webcasts. Got another project, but just think of all the nerd goodness I'll have in my pocket after I get some of those.

With all this nerd goodness, though, I may have to start deleting music soon. So, if the device only has webcasts and podcasts, think its a tax deduction? ;)



Simpsons' Valentine

My wife and I are huge fans of the Simpsons. It's really more of an addiction. We have gotten particularly bad in the past year or so snarfing up all the Simpsons' memorabilia we can find. It's also amazing how any vendor that sells Simpsons' merchandise must use the same orange and red theme.

So, when I saw someone put together the old Simpsons' valentines in eps, I was siked. I couldn't blog about it until I actually gave her the card though :)

So yesterday morning I snuck out to staples, and got it printed on card stock. Thanks to the fine people at staples for helping me out with this, and providing razor blades, glue, etc. In and out in 30 minutes with my custom card.

Get your Simpsons' card here. Maybe too late for this year, but it'll still be a hit next year.



MSDN in Rocky Hill this week

Don't forget, there is an MSDN event this week in Rocky Hill. Sessions are :

  • WinForms : Produce, Extend, Enhance
  • ASP.Net : Fixing that last bug in your web app
  • Visual Studio Team System : A technical tour
  • I'm most looking forward to the Team System intro, but the forensics session on asp.net piqued my interest too. See ya there! Link