I'm sitting here listening to Sour Girl by STP on my new Zune (this year's fabulous Holiday gift from Magenic). I'm on the 14 day pass right now and will definitely be doing some exploring! :)
More to come on the Zune experience...
jk
I'm sitting here listening to Sour Girl by STP on my new Zune (this year's fabulous Holiday gift from Magenic). I'm on the 14 day pass right now and will definitely be doing some exploring! :)
More to come on the Zune experience...
We're all excited that .NET 3.0 is here. Here are a few links and comments to help you out...
If you have previous versions of .NET 3.0, PLEASE PLEASE PLEASE do yourself and your friends a huge favor and run the Pre-released Microsoft .NET Framework 3.0 Uninstall Tool.
Once you've installed, the RTM link to .NET 3.0 is: here
UPDATE: 11/30/2006 : 3:11pm
Apparently i'm not the only one happy about .NET 3.0 shipping. Aaron Skonnard just posted a link of Doug and Don dancing and singing on channel 9
The inaugural Twin Cities Code Camp was yesterday at New Horizons of Minnesota in Edina, MN. I don't have the exact stats, but I heard there about 140 attended!
The facilities were first rate, Magenic provided plenty of pizza and soda for lunch, and the camaraderie was excellent. I saw .Net people talking to Ruby people talking to Java people; it really warmed the heart :)
I attended the following sessions:
Being a security enthusiast, Robert's session was one of my favorites. It distilled the essence of hashing and crypto into very tidy, bite-sized pieces to digest. Grab the slides/code and check it out. Robert has a really nice demo on how to tamperproof querystrings, which Schwans.com has implemented.
The content was first rate, I got to meet a lot of people, see a lot of old friends, learned a lot (technical and about presenting) and the post-event speaker party was good clean fun as well.
Thanks again to Jason Bock for getting this started. Thanks to all of you who attended, presented and sponsored food/prizes. I'm looking forward to the next one (April 2007???)!
I was catching up on some blogs this afternoon and ran across this one from Martin Fowler's posted on 10/31/2006...
http://martinfowler.com/bliki/PairProgrammingMisconceptions.html
From my experience, XP/Agile has a lot to do with doing what makes sense in development and getting rid of the stuff that doesn't and if something is 'Agile', very little is mandated or else it wouldn't be very 'Agile', right? :)
I've been on teams where pairing is done. One particular project we did a lot of pair programming which turned out very nice IMHO. There were few bugs, we hit our estimates and the code was clean and well-factored. Most importantly, the client loved it and it solved a real business problem!!!
Another pairing benefit (which Mr. Fowler alludes to in his final point) is in the area of code reviews (you *ALL* do code reviews, right?). Just like documentation, security, and testing, code reviews are sadly one of the first qualities to go when a project gets behind because “there's not time to do it”, even when the reality is that “there's not time not to do it”. I see too much poor quality code get written and developers spending too much time firefighting because of hastily constructed in “heroic code“.
The final point in Mr. Fowler's post is about code smell; I have nothing to add except “RIGHT ON”! Developers constantly raise the layer of abstraction to raise productivity which is why we don't write business apps in assembly anymore. Duplicated code stinks, espically when there is a bug in it and it gets copied throughout the organization...grrr...
I think developers should give pairing more thought; if for no other reason than to reduce the chance of carpal tunnel syndrome by 50% :)
Blogging has been on the backburner for a while due to project deadlines at my current client. After AJAXifying a couple of pages, making them IE and FireFox compatible and fixing some JSON, it looks like the project is sitting in good shape, so I'll rip out a few blog posts again. :)
As Mr. Bock points out, Twin Cities Code Camp is coming up in less than 2 weeks (11/11/2006, yes that is a Saturday but come on out and build the community and/or learn something!). If building community or learning (voice of Austin Powers here) "aren't your bag baby" (back to my voice, sorry), you can at least come out and win some fabulous prizes donated by some very generous contributors.
jkBrad Abrams posted a link to the Microsoft InteropForms Toolkit 1.0 on his blog today. This should be very helpful in gracefully pulling existing VB 6.0 resources into the .Net Framework.
I've been meaning to write about this for a few weeks; better late than never!
On day 3 of Building Connected Systems, Mr. Brown mentioned that it is possible to overflow numeric variables in C#. This surprised many other students in class (myself included) as developers assume 'managed code' takes care of this like it does with array bounds checking. From my understanding, VB.NET does not allow this scenario (I have not verified this, but trust Mr. Brown's assertion)!
When I started writing this entry, I was just going to do Int32, but after expanding to other integral and float types, I noticed differing behavior in how the .NET runtime handles this scenario. So, to try this out, I fired up a C# console app Visual Studio 2005 and here's what I found:
Keith's recommended turning on overflow checking for all C# projects and then using the 'unchecked' statement if you really need to squeeze performance out of your code. (My aside on this is that if you're really writing high perf code, perhaps managed code is not the optimal tool for the job?? One of my favorite Fergesonisms (circa 1998) is: "Use the right tool for the right job".
To turn on overflow/underflow checking in your C# project:
1. Right click on your project in the Solution Explorer and select Properties
2. On the Build tab, click the Advanced button
3. Make sure "Check for arithmetic overflow/underflow" is checked
An FxCop Rule or source control checkin policy would be two good tools to build around this! :)
jk