Hope you all have a wonderful Christmas and a fantastic 2015
I will be back blogging in 2015 … on the wonderful world of embedded software development using C and C#. Yep I changed company in September and joined www.analox.net to “retrain” into an embedded software engineer doing cool stuff for submarines. It has been huge fun… but I have been heads down on work and let this blog gather some dust.
Check out my “side project” – an STM32-discovery board powering the Xmas lights🙂
Visual Studio 2013… installed
NDepend 5 … installed
Balsamiq 2 …installed
Next up ReSharper 9. However I have chosen to go for superbly priced ReSharper Ultimate which gives you oodles of tools for .NET and the promise of ReSharper for C++ in the future.
And comes with a rather nifty new installer… which hopefully is going to leave my environment working for Visual Studio 2008 for some Windows CE projects we are advancing in 2015…
When you use GIT branching becomes… attractive, maybe even addictive. Which is fine… then (as happened yesterday) you find that a branch really didn’t help in any way and you would like to delete that branch and pretend it never happened🙂
I’m using the GIT capability of Visual Studio Online and was stumped with how to delete the branch. I managed to remove it from my local repository with ease – but not from Visual Studio Online.
The solution turned out to be very simple but (to me anyway) was not obvious.
Install GIT for Windows. Fire up the GIT Gui and then select the Delete Branch option from the Remote menu. Simple.
Well, it was for me. Specifically I wanted it to exclude the nuget packages folder which in theory should have been as simple as uncommenting a single line in .gitignore.
Except… VS2013 (with update 2) insisted on still checking in the packages folder. Odd.
Turns out various folks have hit the same problem and the answer turns out to be pretty simple.
- Close Visual Studio.
- Navigate to your .git folder
- Delete ms-persist.xml
- Restart Visual Studio
And hey presto, all is well.
If you exclude the packages folder then you also need to enable nuget package restore – check out this great walkthrough.
I was discussing effective stand-ups this week and shared some things I had seen which separated “the good” from “the bad”. Which made me go off and re-read “It’s Not Just Standing Up: Patterns for Daily Standup Meetings” over on martinfowler.com.
Even better on a second read (3 years apart)… enjoy🙂
ReSharper is awesome … but it also likes plenty of CPU and memory.
If you find yourself struggling on a virtual machine, then it is worth knowing that you can very easily suspend ReSharper.
There are nifty commands you can use from the Command window such as ReSharper_Suspend (or map them to keys) as well as a big button under Tools.Options.
Recently I have been looking at the area of Peer Code Reviews and where and when they may help my team produce better quality software (lets just skip over defining quality software for the moment).
I think Peer Code Reviews have an important role to play in producing quality software. As do Code Guidelines, Automated Tests, Architecture, Tools, Pair Programming, Multiple Monitors, Training, VCS and Free Pizza.
Yet many companies don’t do Peer Code Reviews. I suspect more do Free Pizza than Peer Code Reviews. That puzzles me. Perhaps even scares me.
Uncle Bob recently blogged on “Where is the Foreman?” (and follow-up) – “the guy who makes sure everything is done right”. This is the guy who would decide if Peer Code Reviews would help a team or project and if they feel they would help, make damn sure they happen.
I would recommend you give it a read and then look at your own team and see if that person exists…and if not, then either:
- You don’t need a foreman. Well done. Not all teams need Foreman.
- You need a foreman. Well done. Get one.
Either way, give yourself a big pat on the back for considering it. But remember – to ask this question again in three months. You never know…
As an aside, I think the Foreman idea overlaps a lot with the original idea of a Scrum Master aka guardian of the process.
- I always encourage folks to read the for and against arguments – so also give this a whirl We don’t need a foreman (against the Foreman)
- and We Need More Foremen (everyone should be a Foreman but perhaps a Referee is needed)