Any momentum I had gotten up towards my coding efforts tonight has been temporarily quashed, so I thought what better time to write a blog updating some developments from the week.
There are a number of little things I’ve got for this post. Some other people may find interesting, others are meant to actually purely as a reminder for me. So, without further ado, here it goes.
Flag of the Frog.
Some of you will notice the new banner at the top of this blog. It comes care of the MOST TALENTED web designer I have, or ever will meet: The Urban Fox. She’s good, damn good. Hopefully the labs will really get going at some point so we can actually throw some money at her business (not that they need more work :P).
Legend of the Green Dragon
Noisymime has roped me into a little game know as Legend of the Green Dragon. This thing is seriously addictive and I had a particularly good day at it today after getting 5 free turns from a food purchase within the game and another 5 free turns from crazy Audrey and her kittens What more could a man ask for?
Departure of the Mini
Speaking of Noisymime, he also has now purchased the mini formally known as mine. I give him a hearty welcome to the mac community and hope that he enjoys his stay!
All of the hardware ordered for the grant thus far has arrived. It’s been positively RAINING new toys and the IT guy (Ian) has been renamed Santa Claus. However, the head of school has gone on the war path and declared that all hardware must remain on campus unless his express permission is granted (that’s ALL hardware for everyone, I’m not talking about the stuff which we have recently gotten). I have a feeling that we tipped him over the edge when loading a couple of rack mount Dell servers into the car yesterday. I had decided that they should come home for the extended period of one night so that they would receive a Gentoo install (something not possible at uni because of numerous problems with internet accounting and something in their weird set up). The only other alternative was to ask ISB to fix the problem, wait 8 weeks for them to have the time to actually do it and default on the contract with DSTO thus creating a wonderful opinion of us in their eyes. If avoiding that little situation was the cause of his proclamation I’ll gladly take the heat (especially as the hardware was going to be at uni anyway).
This began when I wandered over to the BlueJ web site to get the latest version and mark my students assignments. I noticed this page which outlines the similarities between some parts of BlueJ and Microsoft’s latest “innovation” for Visual Studio 2005. For those who are interested, read the link. For those who can’t be bothered, here is the one sentence summary: They have 100% plagiarised (right down to the comments on particular screens) the BlueJ approach.
The funny thing is, this was also the week when a Microsoft evangelist was visiting uni to give a presentation on (among other things) the new features of Visual Studio 2005. Being the pacifist that I am it was quite obvious that I had to bring this up with him. For a second there I had him stumped with what to say, but one of the golden lines he did come up with was: “There is a lot of back and forth with regard to features between Microsoft and the open source community” and then went on to state that the initial aim of the Eclipse project was to emulate the behaviour of Visual Studio. PLEASE. Firstly, there is a lot of back and forth between Microsoft and the open source community, however as Mick pointed out, the only stuff flowing from the Microsoft end seems to frequently contain the word “subpoena”. Further, emulating a feature set it one thing, blatant and outright plagiarism is an entirely different matter.
Fed up with checking in dodge code to the main branch of fedWS simply so I could change computers I decided to finally get a “shelve” like process going. Shelving in the development world basically means making a private branch of your project that you can check changes into without them becoming part of the mainline until you have finished and decide to merge them back. For me, it means I can commit changes (and thus have the benefit of having them in a backed-up, safe place) as often as I want without affecting other people using the main branch. Once I’ve gotten it right, I can merge it back into the mainline. It’s much better than just committing changes with a big “SHELVE:” out the front of the comment to let anyone looking at the diffs know that it was not intended as a real commit. It removes those types of commits and stops them clogging up the history.
The problem was that I stuffed up a couple of times trying to get it working, so I’m putting an example here as a reminder to my future self. Some bits wont make sense to anyone else, but that’s OK, it’s only for me
Step One: Make sure the structure is already in the project (ie. Add the project/shelves/tim directory if it doesn’t already exist).
Step Two: Make a copy of the trunk as a shelve version:
svn copy svn://host/path/project/trunk svn://host/path/project/shelves/tim/4june2005
Step Three: Switch the current working copy to the shelf (which will move all my current changes with it):
(in the root of the current working copy)
svn switch svn://host/path/project/shelves/tim/4june2005