Friday, 29 June 2007

Seven Fold

The band, at various times known as Verandah and more recently Kaboodle is now known as Seven Fold.

Hoping that this name may last a bit longer than the others, I've taken the plunge and created a band blog.

I've also invited the other band members to contribute to the blog, so hopefully it starts to record a bit of the continuing history of what we're up to.

Thursday, 28 June 2007

Clearing Your Inbox

I read J.D. Meier's Clearing Your Inbox post a few weeks ago, and thought I'd give it a try.

I created two new sub-folders in my inbox - 'archive' and 'indirect', and added a rule for moving indirect emails:

Apply this rule after the message arrives
move it to the Indirect folder
except if my name is in the To or Cc box

I then moved all the items in my Inbox into the 'archive' folder, so that my Inbox is now empty.

I've found that this does make a difference to using Outlook. Items only stay around in the Inbox for a few hours, and are either

  • deleted
  • replied to (in which case I can delete the original)
  • moved to the 'archive' folder

I'm applying the same criteria to items in the 'indirect' folder too. One benefit is that Indirect items are almost always less of a priority, so I don't need to check these as often.

I also decided that there was no point in keeping old copies of server log emails I receive - so rather than copy them to my PST file, I just set those folders to permanently delete items older than 2 weeks.

About the only downside was when I checked my inbox on my iPAQ, and got a shock that there were no emails at all. I thought something had gone horribly wrong until I remembered that this is how it should be now!

Tuesday, 26 June 2007

CodeCampSA Speakers

The list of speakers for Adelaide's first CodeCamp is now starting to take shape:

  • Greg Linwood
  • Greg Low
  • Mitch Denny
  • Dave Glover
  • David Gardiner
  • James Chapman-Smith
  • Peter Cornish
  • Paul Turner
  • Michael Baker
  • Michael Jenkin
  • Jey SriKantha
  • Ben Mackie
  • Jeff Headley
  • Evelyn Guell

Some big names of the SQL and .NET worlds are there (and no, I don't put myself on that level!)

Thursday, 21 June 2007

Aspect-oriented Programming in .NET

I was listening to .NET Rocks! interviewing Mark Pollack about Spring.NET today.

The discussion about some of the features of Spring.NET that support Aspect Oriented Programming sounded very interesting.

Looking at their documentation, it appears that you can either do the AOP programmatically or via xml config files.

Neither approach really grabs me at the moment.

The Castle Project offers Aspect#, however I also came across PostSharp which does sound intriguing.

I think it would require decent testing as some people have not had 100% success with it, but I do like the approach of using .NET attributes to indicate the advice to apply.

Thursday, 14 June 2007

Developing for PageMethods

I've mentioned before how I've made use of PageMethods with a previous ASP.NET project.

Fabrice has now kindly added me to the developer list for the project, so I hope to be able to contribute to future versions.

Monday, 11 June 2007

Windows Live Hotmail rejecting forwarded emails from ZoneEdit

It's just come to my attention that emails sent to my wife's address via our domain hosted on ZoneEdit are now being bounced by Hotmail as suspect spam. I wonder if this is something to do with the new Windows Live Hotmail service.

Of course they're not spam, and this threw me for a bit.

The bounced emails contain a link to various resources about how to fix the problem.

A quick search of Google on "hotmail zoneedit" hinted that it might be possible to add extra detail to DNS to placate hotmail.

I then found Microsoft's Sender ID Framework SPF Record Wizard, which builds a SPF record for your domain.

In Step 1, I entered my domain - gardiner.net.au

In Step 2, it confirmed that A and MX records are available but no SPF record was found.

In Step 3, I checked the following options:

  • Domain's inbound servers may send mail(and checked both email servers listed)
  • All addresses listed in A records may send mail (and checked both IP addresses)
  • Discouraged; mail may legitimately originate
    from IP addresses not identified above, however,
    use of such IP addresses is discouraged and may
    not be permitted in the future.
  • Scope: Both

I'm not completely sure that this is correct, but it seems the best choices at first glance. I de-selected the "All addresses listed in A records may send mail" option, as as far as I can tell, the IP addresses in the A records for gardiner.net.au don't resolve back to the email servers.

Step 4 then generates the SPF record, which you copy to the clipboard.

Back in ZoneEdit, you can add a TXT record to contain the SPF data via the Advanced Records heading.

So now, I sit back and wait and see if Hotmail is any happier.

Friday, 8 June 2007

Speaking at ADNUG - Unit testing with MbUnit

I've just been asked by Peter Griffith if I could fill in as speaker this month at the Adelaide Dotnet User Group.

I'd already been in contact with Peter regarding the forthcoming CodeCampSA with some ideas for topics:

  • Continuous integration with CruiseControl.NET
  • Writing a Windows Vista Sidebar Gadget
  • Unit testing with MbUnit

Looks like I'll be getting the content for the unit testing talk ready ahead of schedule :-)

Thursday, 7 June 2007

Microsoft Windows Mobile Device Center 6.1

An updated version of Windows Mobile Device Center - the ActiveSync equivalent for Windows Vista.

According to the overview on the download page, the following updates are included:

  • Windows Mobile 6 feature support
    • Information Rights Management activation - Automatically configure the Windows Mobile 6 device to open IRM-protected documents and files
    • HTML mail – Set up your Windows Mobile 6 device to sync HTML-formatted mail
    • Certificate Enrollment - Acquire certificates through the PC the Windows Mobile 6 device is currently connected to
    • Allow data connections on the Windows Mobile 6 device when connected to the PC
    • File synchronization for smartphones – Synchronize files with your Windows Mobile 6 devices, including both touch screen and non-touch screen devices
  • Automatic device authentication - Connect the Windows Mobile device to the PC without the need to enter the device-lock PIN every time upon connect
  • Product Registration - Register your Windows Mobile device and get connected to information and offers available for your device

Tuesday, 5 June 2007

NHibernate Best Practices with ASP.NET

Another fantastic article by Billy McCafferty.

This time he goes through all the details of building an ASP.NET project using NHibernate.

This fits in nicely with his other article on using the MVP pattern.

ReSharper 3.0 beta

I've read a lot of comments promoting ReSharper as the "must-have" productivity tool for C# developers.

While I do dabble in C#, VB.NET is my bread and butter, and up until now, the only options I've tried are the free Refactor products from Developer Express.

I now see that the next version of ReSharper supports Visual Basic, so it will be interesting to compare the two products to see how they shape up.

One obvious difference is that as far as I can tell, the ReSharper product is only available commercially - eg. no free "lite" version that I can see.

Still, if the tool's as good as people say, then it could be money well spent.

SQL Server 2005 Books Online (May 2007)

The May 2007 installment of SQL Server 2005 Books Online is now available. 

Monday, 4 June 2007

APAC SharePoint Conference thoughts

Last month I attended the 2-day Asia-Pacific Microsoft SharePoint Conference, held at the Hilton Hotel in Sydney.

It proved to be the ideal timing for me, as I've been tinkering around the edges of SharePoint 2007 for most of this year.

There were lots of good technical talks, though I was a bit disappointed at the number of delays for sessions starting because of speaker's laptops being messed up, virtual machines not working or network connections not connecting.

One useful thing I did pick up was that there are a number of handy tools people are writing that will make developing sites in SharePoint a lot easier.

The venue was excellent - we stayed at the Hilton which is probably the fanciest place I can remember staying at! Very comfortable rooms, and the catering for the event was great.

The Tuesday night "entertainment" turned out to be a very creative "Wild West Saloon Bar" theme - complete with lots of gambling tables. I grabbed some food to eat, but then left early (I don't gamble, so there wasn't much attraction to staying around) and saw Spiderman 3 at the Darling Harbour Imax. Seeing it on the very big screen is one way to realise that Tobey Maquire and Kirsten Dunst don't have perfect skin after all!

CodeCampSA

Adelaide will be hosting its very own CodeCamp on the weekend of July 7-8th, at the City-West campus of the University of South Australia (in the Hans Heysen Building).

Published information is a bit scarce at the moment - there's a small mention on the ADNUG site (a spell checker would be good!) and also in the ACS events register.

Hopefully we'll see a programme and list of speakers shortly.

Friday, 1 June 2007

Create reusable Project and Item Templates for Visual Studio 2005

Searching for information about how to create some custom project and solution templates for Visual Studio, I came across this article - Visual Studio 2005: Create Reusable Project And Item Templates For Your Development Team -- MSDN Magazine, January 2006.

I'd presumed that I'd need to make use of the Visual Studio SDK to do this, but I was pleasantly surprised to discover that half the work is already built in to Visual Studio itself!

I'd apparently overlooked the "Export Template.." item in the File menu, but this can create a template for a Project Item (eg. a custom file) or a Project as a whole.

I then started reading the Visual Studio Templates section of the MSDN Library to see how you can create multi-project templates which I think should allow me to package up a whole solution as a template with multiple projects.