Tuesday, July 29, 2008

Castle --> M$!!

How did i miss this?!?!?!


Looks like Hammet the creator of the totaly kick ass Castle Stack has been rounded up by M$. ScottGu and BradA are really rounding up the .Net celebrities and creating a pretty amazing team over there.

These upcoming projects like MEF better blow everything out of the water. if it doesnt the must be some ploticaly issues... the numbers of outstanding devs/pm/architects invloved is quite impressive.

WCF : Ron Jacobs is back!

Ron Jacobs is pretty good at these 101 type tutorials. He is an M$ guy and currently he is working on WCF, so if anyone is using or going to be using WCF then I would recommend checking out these screen casts

Ron Jacobs Channel 9 page

WCF Noobs Lesson One

For more background on WCF I would highly recommend “The Book” on WCF: Programming WCF Services by Juval Lowy

Tuesday, July 22, 2008

IoC 101

Keeping with the theme, here is a great introduction blog post from StructureMap creator Jeremy D Miller on Inversion of Control and Dependency Injection.

I have never used StructureMap on any live apps, which is a shame as i have followed its life cycle over the past few years as it documentation, mainly thru JDM's blog posts, have been very interesting. If you want to see how to integrate something like StructureMap into your existing code base check out Rob Conerys re factoring session with Jeremy . Actually check out the whole video series its great to watch as you get to see someone make mistake and fix them. People don't actually learn very well from watching experts, they learn better from watching people adapt after making small errors. wow.. 4 years of Pysch just paid off! so check it out and watch rob talk with Gods of .Net (JDM, Ayende etc)

Friday, July 18, 2008

Design Patterns 101

How have i missed these!!!
JP Boo hoo hoo hoo ;) has some great intro's to Design Patterns on DNR TV. I am just watching the first of the series now so cant yet comment on the rest but so far so good. He presents it really well, but beware if you are not a ReSharper user it may be a bit of a tornado.

Check it out!
DotNetRocks TV Archives
John Paul's Design shows: 63, 65, 68, 71, 92

BTW Word on the street is JP's .Net courses are top-shelf-single-malt awesomeness. I have been recommended them from guys i respect in the community but have not had the chance to attend (get to the UK mate). If you get the chance to go to one at least investigate.

JP's Blog

Wednesday, July 16, 2008

Harnessing Multi Core Power

I am wondering how may people out there are actively investigation Parallel development? Who is using F# or other functional languages? Is anyone really kicking the tyres of .Net 3.5 Parallel Extensions CTP?
With my new found wealth of 8 core power I figure not playing with this stuff is just dumb. Sure playing with a bunch of VMs and running a whole bunch of apps is nice, but i would really like to start harnessing some of that power for some grunty work... i just cant think of anything useful off the top off my head!

TDD 101

Local London ALT.Net-er and MVP Ian Cooper has put up a good TDD post with indications of more to come. I would recommend all to read this even if you regularly employ TDD and espeically if you are still coming to terms with the process. It covers basic concepts and acronyms that you should be aware of.
Check it out!

The book he mentions is very good for jumping in to TDD. I bought and read it on Ian's recommendation earlier this year and highly recommend it as a way to get your feet wet or to show colleagues how to begin the TDD process. Check it out here:
Kent Beck’s book Test-Driven Development, By Example

Tuesday, July 15, 2008

How Did You Get Started in Software Development?

I met a bunch of nice guys at Alt.net Seattle, two of whom Ii got on with really well, Tim and Chris. I think we were kinda of in the same boat, a little overwhelmed by the uber geeks that we were associating with, while still been stoked that we were there and contributing.

Tim Barcz tagged me this week asking how I got started with programming. So here it goes.

How old were you when you started programming?

I first started playing with computers to squeeze memory out of our poky little of a computer so we could play games.. trivial CONFIG.SYS or AUTOEXEC.BAT edits really plus some very simple computer classes at high school. My first real bash at coding was in 1998 in Java 101 at The University of Auckland followed by and Advanced Diploma in Business Systems (Java)

What was your first programming language?

Besides HTML and batch files? Java I suppose (that shows my age or lack of).

What was the first real program you wrote?

My first commercial piece of software was a warranty system for an eCommerce software company. Thrown straight in the deep end using .net 1.1 and vb.net a framework and language I had never used before. prior to that i had attempted to help my brother build my personal training web site (In a past life i was a Sports Scientist/Strength coach, how things have changed!)

If you knew then what you know know would you have started programming?

To be honest, i probably would have never done my Sport Science degree if i knew that i would love programming so much. so to be honest its not all bad because i learnt a lot in the SptSci world that i have related to my work ethic in computing.

If there is one thing you learned along the way that you would tell new developers, what would it be?

Like anything, if you enjoy it you will be more likely to excel in it. Also don't get caught up in language or API specifics. Good fundamentals will get you much further than a deep (but narrow) API knowledge.

What’s the most fun you’ve ever had … programming?

Being able to travel the world with out worrying about how i will make a buck. Auckland, Perth and London so far.. not bad for under 5 years in the industry.
Also being able to work in an ACDC T-Shirt and jandals is actually pretty cool.

I'd like to hear from:

Stu, Todd, Jerome and CDS... but none of them have blogs because they are dorks :p
so I'll call out my Bro (who blogs as often as i go to the opera):
Lee "Gumble" Campbell
and a couple of smart buggers that i used to work with in Perth
Bill Poole
and Chris Nurse

VAR Abuse

Why do you use C#? Is it just because that’s what you where told to use? Are you one of those that hates VB.net with out any reasons other than, “its what hobbyist coders use”?.
I have a feeling there are some people that just don’t "get it". Unfortunately Jeff Atwood seems to be one of those. I have been reading his blog for years and he frequently brings up great points ideas and thoughts about software in general.
Unfortunately I have to strongly disagree with the path of one of his recent blogs: Department of Declaration Redundancy Department

To me that is "var abuse". If you are using C#, IMO, you should be using it as a statically typed language and use feature like var as a get out of jail free card when it is needed, or will provider significant "value add".
Using it everywhere make your code weak, in the world of C#.
If you want to use a dynamically typed/inferred language, use one! Don’t try to bend a statically typed language in nasty ways to do your work for you.

My major concern real here is maintenance. Introducing var as common place syntax means you are diluting two worlds. Coding standards may go by the way side for no reason other than, "I can use var so I will use var".
Would you mix you HTML, CSS, JavaScript, ASP.Net script tags and code behind all in one file? If so, then var is for you! Just don’t expect a job from me any time soon.

The irony is the people that say "yeah i use var all the time" are often the ones that say, "yeah but i would never use vb"..well why not?

My original reply:

comment like :
"Agreed. I use var all the time. It could be even more concise if they dropped the 'var'"
Make me ask: "Why are you coding in C#?"
Find a language that supports what you want! Try Iron python if you what to stay on the CRL/DRL.
I am keeping my "IFoo foo = new Foo();" syntax, thank you very much.
It concerns me that C# is trying to be the everything language. I give it about 3 years before no one whats to code in it anymore due to the lines be sooo blurred.
Use C# how is it supposed to be used, then use Boo, Iron python etc for more dynamic approaches.
Would you put all you JavaScript, CSS, ASP.Net and HTML in one file? I see this and being a similar scenario. 4 DIFFERENT "languages" solving different problems.
my $0.02

Friday, July 11, 2008

Alt.Net London 2.0!

Looks like Ian and the lads have done the good deed and set the wheels in motion for London Alt.Net 2.0!

If this is anything like the Seattle open spaces it should be a great affair. The cool thing about open spaces is the attendees make the event. The topics that get covered are dictated by the attendees and presented by the attendees. So if you have any great ideas or queries start thinking about them now.
I also hope the London event is as international as Seattle. Now I cant expect the calibre of personalities, as Seattle is the mother ship, however I would certainly hope to see the big guns from the UK and a much larger European contingency at this one, especially as European travel is sooooo cheap.

Register here asap as once it's full, that's it!

Tuesday, July 8, 2008

nothing to do with code but...

This has nothing to do with code but the topic transcends all topics:
Rancid are coming to town.
If you don't know how they are, well, I'm not surprised... but you will be when you listen and then realise they rule... like so many, burdened with false first impressions, before you :)

UK TOUR 2008
Nov 01 2008 8:00P Newcastle Academy Newcastle
Nov 02 2008 8:00P Glasgow Barrowlands Glasgow
Nov 03 2008 8:00P Manchester Academy Manchester
Nov 04 2008 8:00P Bristol Academy Bristol
Nov 06 2008 8:00P Cardiff University Great Hall Cardiff
Nov 07 2008 8:00P Sheffield Academy Sheffield
Nov 08 2008 8:00P Leeds Academy Leeds
Nov 10 2008 8:00P Nottingham Rock City Nottingham
Nov 11 2008 8:00P Birmingham Academy Birmingham
Nov 12 2008 8:00P Portsmouth Pyramid Portsmouth
Nov 14 2008 8:00P London Astoria London

Give em the boot!

Saturday, July 5, 2008

Mac Pro Windows User Experience Index

Apparently "The Beast" is quite good, recieving 5.9 on all scores, giving a WUE socre of 5.9... which is the highest you can get, apparently....



Thursday, July 3, 2008

MS test... why?

*I am talking about MS test and Vs 2005... i havenot used 2008 so cant comment*
I really am struggling to see the benefits of MS test suite over the OSS equivalents. NUnit which is as old as the hills has been my right hand man for a couple of years now, I have dabbled in MBUnit and ashamedly have not even used xUnit for even one project (now on the to do list!). Unfortunately these have only been on my solo or PoC projects. As i work in .Net companies the fixation of TFS and the MS suite of tools linger.. no matter what country you are in.
The ease of use of some thing like NUnit compared to MS test is not at first apparent then you use both of them...
Both integrate with TD.Net and ReSharper... and i think that's where they stop. If you don't use either of those tools (you should if you are attempting to be TDD) then MS test may appear to be less friction as you can run the test from within VS. This is an illusion!
I personally think the NUnit test GUI is faster and nicer to use as i can see everything at a glance and my whole solution is not required to be rebuilt very time i want to run a test (Arrrrrgggh!)
Take for example the graphical representation of your tests:
Firstly NUnit Gui:

versus the test view in VS

The test view in VS only really tells me that I have tests. Well, I know that because I wrote them, where are my test failing? Is it all in one namespace? One class? One category? Who knows. Sure you can filter but the intuitive aspect of the node view NUnit offers, give me the instant feedback that, to me, is worthwhile.
As most of us write more the 30 test having a window with one column showing all test is a little silly. It also shows all test for the whole solution....

Most importantly running units test as part of the build process with NUnit is trivial. I use NAnt at home and MSbuild at work. Getting NUnit to run as part of a build process was trivial.. can the same be sad for MSTest... no. Can it be done? Sure, I guess so, but I will never find out because I have better things to do then bend and mold software to fit my ridiculously simple requirements, I would rather just use the software that works as it should.

If you are using MS test I would strongly recommend rethinking that descision. I dont think you can be effectively Test Driven with that tool set so get a tool set that help you not hinders.

Sandcastle source released

Sandcastle has been an interest project for M$. With the demised of the OSS project "NDoc" (due to lack of support), its successor "SandCastle" made a worthy replacement.
There were some issues with it... in true M$ style it wasnt the easiest to just pick up and use, but in saying that it was kind of a 2this is what we use if you want to use it here you go" no warranties etc...
The next part of the saga was M$ putting sandcastle on CodePlex which is the OSS portal for M$ tecnologies, and IMO a great advancement for M$ to start working more closely with its community. Unfortunately Sandastle was not open source and the source was never posted, which kinda defeated the purpose of it being on code plex... I have a feeling it was only there as there was no where else to put it.
The inevitable happened and it was pulled form the site... which sucks... it effective meant there was now no widely used and accessible code documenting software for .net code.
Thankfully an "outcry" occured, 'twas a small one but loud enough for those that needed to hear. So it looks like instead of taking it away M$ have now release the actual source so it can be on codeplex with out the associate compliants and bagged that would come with a closed project being housed there.

I s'pose al is well that ends well.
More info:

Wednesday, July 2, 2008

Mac Pro Progress

Alright after a lovely few day in Barcelona with the missus and some mate finally got home and plugged it in.
First thoughts are:
-It looks amazing. The screens are huge and crystal clear.
-All the mac stuff was pretty easy to use the hardest things are the standard "what buttons do what" and "no right click" (althought there is a context menu, its just at the top of the left screen... wierd). The dumbest thing so far is the copy key stroke is actuall quite hard to do, it would be like ALT+C which is not that finger friendly.
-Bootcamp seems to be working OK...

I have installed Office and SQL 2005 with out any probs on Vista 64 ultimate on a bootcamp partion. unfortuantely my copy of VS2008 appaers to be damaged as some files can not be read off the disk. ARRRGGGHHHH!

so i have basically been downloading all my other requirements eg Castle, Nhibernate (i believe was the first 2.0 beta download! ohhhhh), SVN etc etc
so once i have my IDE ready to roll im good to go.

Next up is the stuff i need to pay for... gotta get my VM-Ware Fusion, TD.Net, NCover, NDepend etc...

Mocks v Stubs

I am sure you have read this, but for me a couple of weeks ago this was what I needed:



The Difference Between Mocks And Stubs

Using mocks when you don’t care if the interaction occurs mean you are writing brittle tests that are not testing what they should be. Stubs are more appropriate in this situation… sometimes I forget and go mock mental. Naughty!