Friday, October 08, 2004
Happy friday!

Deadline came and went, and with a tremendous effort from everyone on the team, our release was a success.  Hopefully now it's time to relax and reflect on the project a bit while we plan for changes moving forward.  Yay, good times.

Code camp 2 schedule has been posted here.  Now it's time to get excited for this.  Theres a couple times spots that I am torn on where to go.  Also a friend of mine wants to go with me, but can't get in.  Anyone have an extra registration?  :)

 

Code | Random


 Tuesday, October 05, 2004
DVDs I want
I want sportsnight and newsradio on dvd.  Think I'll have to search for who to beg for that. 


 Monday, October 04, 2004
A case of the Mondays

I hate that saying.  Today is def one of those days though.

Knee deep in code, deadline thursday.  Couple quick bits.

Any locals (boston/hartford/nyc) should be looking to go to code camp 2.  The list of speakers is pretty impressive.  I've been too busy to get excited, but since it's 2 weekends away now I'm really getting excited.  Nothing beats a good nerd weekend.

Also, logged into gmail this morning, and found a couple new things.  First off, a new contacts section.  Thats nice and all, but what was really impressive was the new ATOM syndication link.  I use a gmail desktop sidebar panel for notifications, but could see some great uses with ATOM.  Go google!

PS : Expect more posts after deadline.  Will be nice to have some time again.  I'm really hoping to get better acquainted with Whidbey past deadline.



 Thursday, September 30, 2004
Got the wireless notebook mouse

I ordered the ms wireless notebook mouse a couple days back, and a shiney new cardboard box was waiting for me today. 

After I open it up, the first thing I notice is there's no CD.  I was a bit surprised to not have a intellipoint CD in the box.  No big deal, I would have probably checked for a newer version anyway.  The mouse is definitely small, but it is a little bigger then I expected.  It's very comfortable though, which easily makes up for its size.  Light too. 

After I put in the included battery, it's time to do the install.  The initial install is a breeze.  I plugged in the USB connector, adjusted it up, and within a few seconds the mouse was working.  I was immediately impressed with the response time, especially since it's on the couch. 

I browsed around for a bit, and decided it was time to try to track down intellipoint.  I'm pretty surprised when the microsoft site does not list the “Wireless Notebook Optical Mouse” as an option in the downloads.  I figure that intllipoint is pretty standard, but was pretty upset to see no windows 2k3 driver.  A bit of searching and all I net out with is some unhappy posts about not being able to install intellipoint or intellitype on 2k3. 

Also of note, this means your bluethooth mice and keyboards won't work with 2k3.  Not something I had really thought about in the past, but something I'll keep in mind for the future. 

In the end, even without intellipoint, this mouse rocks.  It will be even better if it lives up to it's battery claims. 

 



 Wednesday, September 29, 2004
VB.Net refactoring

As I've said before, I'm a c# guy stuck in a vb.net world.  That being said, I really want a refactoring product for vb.net.  So far, I am yet to see one.

I had heard Mark Miller talk about one a couple of DNR's ago, and was excited.  Just saw over on larkware that they have an official product page up now.  Still in beta, and only available to devexpress subscription members, of which I am not, but I will be anxiously awaiting the day I can get a trial. 

 



Win2k3 as workstation, and virus protection

A while back I upgraded my thinkpad to 2k3.  Details here.  I've been working with it for a while now, and well, I love it.  I love having full sql, iis6, azman, etc, with me all the time.  It also allows me to test things in win2k3 before they even go to the sandbox staging environment, which is another side effect/benefit.  So all in all, I doubt this box will ever see XP again, except in a VPC. 

There is 1 glaring side effect of using 2k3 as a workstation, though.  Virus protection.  When I first installed 2k3 the first thing I was going to do was load Nor...  Symantec client protection.  No go.  So then I fell back on an old favorite, and installed McAfee.  I've been running with McAfee with no problems since the install, other then I miss some of the features from the Symantec suite.

After a conversation with a friend last night, I was really interested in trying Panda antivirus.  I'm not going to go into details, but my very security minded friend suggested it, and I take his word as bible when it comes to security.  Thanks bro BTW  :)

Again, though, I was faced with the fact it won't install on 2k3.  To get to the point, I love running 2k3 as a workstation.  One thing to consider when you are thinking about making the switch, though, is protection.  Most AV client's won't install, since they require a “server” package to run on 2k3.   



 Tuesday, September 28, 2004
GDI+ Mess

You have got to be kidding.  I saw all the people complaining in the blogs for the past week or so, and finally decided I better patch my boxes last night.  What a mess.  Windows update installs a patch that tells you to get another one?!  Office update only has some junk mail update.  Download and install some file from a KB article (yeah, sure, my mom will be able to find that file, and will care enough to do it).  Meanwhile I see other people predicting Blaster like outcome from this. 

This is bad.  Very bad.  Obviously everyone else has been screaming about it for a while now, so it's not new news.  But c'mon MS.  This could be a huge problem.  You guys have worked so hard to make us (relatively) trust windows update again, and you will ruin all of it in one swoop if this gets loose.

To top the cake, saw this, ran the “search” app, and according to this, I'm still not out of the water.  If I don't know how to protect myself, how can I protect my clients (read professional, personal, family). 

Oh, and in case you need it, here is where I got the MS patch since its not obvious where to get it. 

If anyone has definitive instructions on how to fix, and check to make sure it's fixed, please let (me and) the community know. 

[EDIT] More useless links.  Ms detection tool.  Tells me I might still have issues.  Redirects me to this instructions page. (Note again, all after running the 2k3 update from link above).  Tells me to update office.  Ok, I will install that junk email update. (WTF?!) Junk email filter update needs a reboot.  Ok.  Brb.

[EDIT 2] After that update I bit the bullet and decided to give .net 1.1 sp1 a whirl.  A week before a deadline is not the time to patch the framework, but it's even worse to lose a workstation.  After all of this (doing everything I could find), the MS tool tells me I might still be vuln, but the third party tool gives many more details, and even though I have some dll's that might be bad, the core dll's seem to be ok. Now it's just time to test our app and make sure 1.1 sp1 didn't break it.

Do I feel safe?  Hell no.  Do I feel I have done all I can?  Yes.  Will I be ripshit when I notice a reverse telnet shell to some country and someone rifling through my files?  Absolutely.

[EDIT 3] Found a couple more links with details here.  Someone has to step up on this front and give us a way to be sure we are ok.  If it's not MS, maybe one of the virus companies will step up to bat.  Well, more really good details are found within the link at this article. 

 

If I find more, I'll update more in comments.

Admin | Code | Random


 Saturday, September 25, 2004
MS Wireless notebook optical mouse and a9 discount

I've been wanted a little mouse to go with the laptop for a while now, and just preordered the new ms wireless optical.  If you haven't seen it yet, check it out here.  A couple reviews here and here spoke really highly of it, and it has some cool stuff that really caught me. 

I dig how the usb piece fits in the mouse.  It also turns it off.  Claims months of battery life.  I just hope it stands up to the claims. 

So I've been using the A9 toolbar latley.  I'm quite impressed.  The centralized bookmarks are what got me to install it, and now I'm hooked on some of the features.  The diary is a very nice way to keep some simple notes on pages.  I also like how the search results are built into the toolbar even once you navigate away from the search page. 

Anyway, so I run over to amazon to get the mouse, and am surprised by an additional discount for a9 users.  Sweet.  It's pi/2, so it's a small discount, but a nice surprise nonetheless.  This is also an “unadvertised” promotion, so I'm playing good consumer and spreading the word.  :)



 Monday, September 20, 2004
As if you were snoop

Way off topic, but just way to funny not to blog about it.  Buddy of mine sends me a link to AskSnoop. AskSnoop is a snoop translator.  You can run any url through it.  I spent about 5 minutes laughing my ass off at cnn.com during lunch today.  My blog is pretty funny in snoop too.  Check it here

Also, click on a link once your in my translated blog.  Goes to the custom 404, which is also great fun.



Bloglines

Spent the weekend getting ready for a final sprint here at work (read lots of sleep, kissing my family goodbye, and some more sleep).  Couple tidbits for the blog tho..

First off Bloglines.  I've been using rssbandit for a long time now, and have always loved it.  After reading a few reviews about bloglines out and about, figured I would sign up to see what all the fuss is about.  In my opinion, the fuss is just.  Bloglines offers a very viable replacement for any client based aggregator, and in fact I think I might just be a convert.  The interface is very nice, and FAST (yes, rss, and fast..).  Also, there isn't this time once an hour that my machine spikes to 100% cpu and 100 megs of ram, which is nice.  Plus, I figure I'm doing my part for the rss overload since (I assume) bloglines only stores 1 real copy of any given feed, hence my rss addiction uses less overall bandwidth.  Check out my public profile here.

Been working on a brainchild in what time isn't dedicated to work, or the family.  The dev's I run it by seem very interested, so this may be one of my harebrained idea's that I follow up on.  I hope to have some alpha spec done by mid October, and hopefully an alpha by year's end.  More details after the specs are complete.

Damnit, there was something else I wanted to talk about.  Oh well, it will have to wait. 

 

 



 Thursday, September 16, 2004
Loosley defer a method/interface?

I have been working on a sub-system that is a bit of a service gateway, and ran into an instance where I wish I could have loosely defined an interface.  After going through the design, and review, I had such a pretty picture of how the whole api would work.  As expected, come implementation time, a couple things changed, and a line that I had thought would be abstracted ended up being typed.  No problem.... until I wanted to force consistency in concrete implementations. 

After looking at the design again (read trying to justify the abstraction), I was left with this empty feeling about the api.  The meat of the implementations would be in the concrete classes, but I had no way to control them anymore.  Now you might think that’s not my responsibility, I'm way down here, and up there, well they can do what they want.  Besides my professional responsibility for the whole api, I also felt as if there is justification for loosely defining an interface at this level, and that it could possibly add value.

So, what do I mean?  Consider a big buffet restaurant, with lots of different types of foods.  To cook all of this, there would be a number of cooks, each with skills in the area they are working.  Now, as the manager, I want to tell all of them to cook, but I want different results out of each.  I do have to deal with each one individually, but I want to deal with them all in the same manner.  I may even have to provide each of them different things, but in the end I still communicate with them the same.

Back to my thought. As an API designer, I think there is value in being able to define the fact that a child must implement something, but how you implement it is totally up to you, including the complete signature.  Anyone using this concrete class would need to be typed and couldn't generalize any others like me.

abstract chefBase
{defer Cook()}

public ChineseChef : chefBase
{public Cook : FriedRice}

public ItalianChef : chefBase
{public Cook(sauce) : BakedZiti}

So as a manager, I can tell all of my chefs to cook, no matter which it is.  This allows for consistent communication across my entire framewo…  kitchen. 

So I started to think about it a little more, and there might just be an abstraction point here.  As an owner of a number of restaurants, I could now have a managerBase.  Could the managerBase call chef.Cook? 

My purist mind says no, a managerBase knows way too little about the chef to call an undefined cook.  Then I started to think about the essance of the “defer”ing done above, and thought maybe it could.  A loose contract must be fulfilled by a concrete instance, so a loose requirement for it could be fulfilled by concrete implementation on the other end. 

abstract managerBase
{protected chef;
defer MakeCook(chef.Cook());}

This could allow the two api designers to gaurentee a typed contract with each other, long before having a typed interface.  Some would argue that even though the behaviors are loosely coupled, the api's are now tightly coupled, which might negate some value.  Agreed, but in some instances there could be value in having that low level coupling.

Anyway, this ends my rant.  It's probably crazy, but at least I can stop thinking about it now.

 



 Wednesday, September 15, 2004
MSDN2 (2005) up

Just noticed Darrell Norton posted about the new msdn going live here

Normally I wouldn't post on this, but wow the new msdn looks fantastic.  I love the static links to namespaces, and the way the namespaces are presented is leaps and bounds ahead of the last msdn.  I look forward to becoming more acquainted with the site as I dive into whidbey.  Thanks ms, this looks like a terrific update!



 Sunday, September 12, 2004
VPC in remote desktop for performance

I have been trying to find time to spend with whidbey, so I decided to resurrect my plan for a vm on my laptop with whidbey.  After a couple hours of installing, I'm almost ready to go. 

One thing that really bugs me about vpc, though, is when the window doesn't have priority vpc decides it should drop its usage to like nothing.  Although I see the reasoning behind this, I think this should be controlled via a set of options, as I'm sure it must be in virtual server.  This would at least let me use the other 10 or 15% of resources that are left for doing things like typing this post.

So after a couple minutes of thinking, I saved the state of my vm, rpc'd back into my box (thanks 2k3), and started up my VM again.  Result, VM taking all the resources it wants, while I'm free to use the rest.  Of course theres the overhead of the second desktop, but the overhead seems pretty minimal. 

 

Admin | Code | Random


 Wednesday, September 08, 2004
Places to submit your blog link

Was scanning scoble's link blog (I think I may be asking for trouble subscribing to that, but I'll see if I can keep up), and found very comprehensive list of sites that maintain lists of blogs. 

I run this blog on a non-syndicated server, and have gone through my share of trying to get the word out.  Looking through my logs, I feel as if I have done at least a decent job, but can always use more inward links.  I will certainly be submitting to all of these this week.

Check it out here



 Tuesday, September 07, 2004
Gmail in desktop sidebar

I have been testing a gmail panel for a friend of mine, and things are going well enough that it looks like he is ready to release some early bits.  If you use desktop sidebar, and gmail, this is a natural fit.  It has replaced the gmail notifier for me, and is working pretty well.

Basiclly, it shows your inbox much like an outlook panel, including showing the first few lines when you hover over a message. 

Check it out here



Copernic Desktop Search Followup

After working with both lookout and desktop search for a couple days, I uninstalled lookout.  Desktop search definitly suits me better, although it's still not perfect. 

My desktop search has my whole hd indexed, code and all (including a pretty big number of open source projects).  The entire database is around 80 megs, which isn't really bad when you consider how much code is actually indexed.  Searching through emails and code is very simple, and very fast.  I also much prefer the desktop search ui for displaying the results to lookout.  Lookout was great for email searching, this really fills in the rest of the gaps.

A few complaints still, though.  The indexing process took a very very long time.  It may be because it was pushed to a back thread a number of times, but it really took about 2 days of normal for the whole index to be updated.  Of course I could have let it sit overnight one night, but what kind of test would that be?

Also, the search app hogs is a bit slow sometimes, and can be a memory hog at times.  This would be expected, though, considering all the work its doing, so I can live with it.  The trade off is well worth it.  Also, outlook idles about 30 megs less after uninstalling lookout, so desktop search may actually take less persistant ram. 

So far, though, I am very happy with the desktop search.  I love searching through code cause yes, I am just that geeky.  Also what prompted this post was actually finding an email from months ago with a code snipplet I needed by the sender's last name, and the word “filter”, and it was the 5th email down.  Sweet.  (of course the time I saved in looking for the email, I used twice writing this post  :)



 Thursday, September 02, 2004
VB.Net's invisible wall

I think we have hit the infamous invisible wall with VB.Net.  It's still a bit early to be looking for solutions, but the solution is having more and more problems.  Vbc.exe errors, general vs.net errors, and interesting times when the IDE doesn't error, it just stops working the way you want anticipate. 

I may be a c# guy stuck in a vb.net world, but I have gotten used to some of the “features” the ide gives us for vb.net.  When they just stop working, it really does make it more difficult to code.  Plus restarting the IDE 5 times a day certainly doesn't help my productivity (isn't vb the “productive” language?  :)  I'm trying to analyze to see if I can put together patterns on when it crashes, but so far it does seem pretty random.  I started a spreadsheet this morning to try to help with that though.

I will probably do some searching this weekend (since I probably wont be checking in and out all weekend like I thought (teamsystem was only tested with 3 physical machines?!  I guess it is an early beta)).  Has anyone gone through this before?  This is a pretty big solution, but it's certainly not a 10k lb gorilla. 

 



 Wednesday, September 01, 2004
Copernic Desktop Search

I have been using lookout for a while now, and it certainly meets my needs for searching my non gmail mail.  Today, though, I saw a post from The Unofficial Microsoft Weblog about an app that cpernic has just released that aligns itself as competion.  Well, I'm a sucker for something new, and figured I would give it a shot. 

So far so good.  As with Greg, I like the idea of being able to search without outlook open.  It also seems to handle file searching more “naturally” then lookout (as it is now indexing a couple ebook pdf's that I have on my desktop).  I haven't used it nearly enough to decide if I will be uninstalling lookout, but will re-post when I have a better idea of how this thing will work out. 

Original Post
Link to product site