Skype Challenge – A Year On

Skype Challenge – A Year On

Some you might recall that I issued a Skype Challenge last April where the rules were essentially:

  • To go an entire month without using either a landline* or a mobile phone** to make or receive phone calls. 
  • You have to make all calls via Skype
  • You can’t accept calls, unless they come via Skype
  • You can’t send/receive SMS, unless they go through Skype

A year on and some things have changed but unfortunately other things remain an issue:

  • Battery Life – This continues to haunt mobile device users.  Currently my HTC Touch Dual lasts a little over a day and it doesn’t even have WiFi
  • Audio Quality – Until Skype taps into the phone speaker instead of the external speaker this will remain an issue
  • Unable to Receive SMS – Still not possible
  • Audio Quality – Over WiFi audio quality is very variable.  However, if you are running on one of the 3G networks then the quality is quite acceptable for the most part.  You do need to have good reception and strong signal strength for this to be tolerable
  • Unavailability – Particularly with WiFi this continues to be an issue – I doubt we will get good wide area WiFi coverage like some of the US cities.  However, perhaps WiMax will be rolled out.  Alternatively the latest thing is for homes and offices to have their own mobile cell – perhaps this will be the future of improved coverage.
  • Unable to Send SMS – AFAIK still not available on the mobile version of Skype
  • Contacts Unavailable – When will we have a universal contacts list – I’m sick of running Outlook, Live Messenger, Skype, Facebook, LinkedIn – all with different collections of people.  If I want to get hold of someone I want to say “call bob” and for my single list to respond “on his home, work or mobile, Sir?”

As you can probably tell I failed the challenge and to be honest have grown to like the convenience of using my mobile phone for everything when I’m out and about.  Towards the end of last year I went through more phones than hot dinners (mainly cause I just moved to Sydney and hadn’t learnt to cook yet – only kidding!) trying to find the ideal form-factor v’s feature set.  Both the TyTnII and the Touch Dual came very close but there is still a middle ground where I think the Sony Ericsson Xperia X1 may fall.

Since moving to Sydney I have again gone without a home phone line, opting for an IInet Naked DSL account – you still have a copper wire to the door, just no phone connection and the line rental is buried in the monthly broadband cost (but is significantly less than a full line rental).  I still use Skype for making calls and sending SMS messages.

Interestingly what we have seen from a couple of mobile phone carriers are offerings around using skype over their data connection.  For example on the 3 network you can get so many hours of free skype talk-time on some of their data plans (ie not included in your data limit) – I’d be interested to hear how many consumers actually use this!

In conclusion – I think this is the year where data will become affordable.  Once we have cheap data, the rest will fall into place.  Then we can really talk about taking on the Skype Challenge.

The Poster Child of WPF Falls Victim to Vista SP1

The Poster Child of WPF Falls Victim to Vista SP1

With all the (hopefully) positive feedback around those people luck enough to be able to run SP1 there are always going to be some sad cases where it breaks existing applications.  Unfortunately from the few people I’ve spoken to, personal experience and this knowledge base article there seems to be more than just an occasional application that is affected – this is like the RTM of Vista all over again:

Personal Experience: Under both beta and the RTM version of SP1 Windows Explorer periodically crashes (approximately once a day).  It seems to recover but can’t seem to connect properly to network drives until I do a full reboot.  Suspect this is to do with the version of TortoiseSVN I’m using, but doing work has proved to be more important than trying the latest build to see if it fixes the problem.

Fellow MVP: Installed SP1 and now all his Office 2007 applications crash on exit – not a great look given these are Microsoft’s two flagship products.

The List of Doom: The knowledge base article entitled “Information about programs that are known to experience a loss of functionality when they run on a Windows Vista Service Pack 1-based computer” contains information about programs that are known to either blocked, do not run or experience loss of functionality under SP1.  One such program is the New York Times Reader application which was most definitely the WPF love child – although I failed to see the attraction.  How can such a revered application go to being in the book of shame?  Oh well, I guess it can’t have been that great in the first place……

The Biggest Farce in Australian Banking

The Biggest Farce in Australian Banking

This evening I was on the way home and decided to drop into the shops to pick up some odds and ends to cook for dinner. The only money I had with me was my credit card so I used that to pay – swipe card, enter pin, purchase approved, next customer please…… Well, that’s how it should have gone.  Unfortunately given the current state of the Australian Banking industry this went completely pear shaped when the shop attendant decided “credit card purchase must have signature“.

Before I go on I would like to make you all aware that some credit card do have pin numbers, and some eftpos units actually will accept a pin! If this sounds strange, then go live in NZ for a while – nearly every transaction I made over there was with my NZ credit card with pin.  The only time I had to sign for things was when I used my Australian credit card (and that was mainly cause it’s issued overseas, rather than it being specifically an Australian card).

So why is this a farce? Well other than people believing that credit cards must have a signature, the biggest farce is actually that people still believe that signatures are a security mechanism. Now in my opinion credit card signatures suffer from at least two major flaws:

  1. Just about every kid has to pass Tracing 101 at some point. And, in case you have forgotten how to do tracing, all you need to get is a bit of baking paper, or some other thin/semi-transparent paper, and a pen.  Place the paper over the signature you want to copy and practice tracing the shape – 30 mins later you are a genuine fraudster!
  2. As if it wasn’t bad enough that every man and his dog can copy a signature, very few shop attendants actually bother to inspect them.

So you might ask what’s the point?  There is none – signatures are a farce and the quicker the Australian Banking industry wakes up and smells the roses the better.  What’s worse is that they continue to make stupendous profits at the expense of our financial security.

 

Closing thought: Oh, and don’t get me started about the new chips that some credit cards have had for over 5 years now – when are we going to see eftpos units that insist on these being used when they are present.  I would feel a lot better if these, along with pins, were mandated across the board!

What do device developers do when they’re lonely?

What do device developers do when they’re lonely?

Well they hug their Pocket PC of course….. errr ok, well I hope not.  This topic came from noticing some funny email signatures today:

“Have you hugged your Pocket PC today?”

“Smart People Carry a Smart Device Running a Smart OS, but Use Your Blackberry if you must”

I particularly love the second one – it so highlights the state of affair when it comes to corporate adoption of mobile devices.  Unfortunately a large number of organisations roll out (mandate) Blackberry devices without realising that they can get the same effect from using the much superior Windows Mobile devices.  The added benefits from the Windows Mobile platform aren’t limited to those organisation wishing to do their own application development – the integration with Exchange 2007 provides simple device management that removes the need to call your system administrator at 3am in the morning when you loose your device! Going forward the platform is going to move from strength to strength with better management and better enterprise integration, making it an obvious choice when it comes to total cost of ownership.

While we are talking about the Windows Mobile platform I would like to highlight the recently revamped Windows Mobile Developer Center on MSDN. This will include content on

  • .NET Compact Framework
  • SQL Server Compact Edition (SSCE)
  • C++
  • Device Driver Development
  • Mobile Games
  • Mobile Web + AJAX
  • Windows Mobile SDK

(As some of you will have guessed one of the future directions of mobile development will be a logical extension of the move in the web space to rich applications. Enter Silverlight – can you see where a rich user experience, with offline capabilities would be useful in a mobile world?)

Enterprise Behavioural Intelligence

Enterprise Behavioural Intelligence

image

Just recently Intilecta has done an entire refresh of the website.  It’s now a great starting point for anyone wanting to know how to get more value from any existing business intelligence investment.  With a different approach to most traditional business intelligence vendors, Intilecta can help realise some of those failed promises the larger BI vendors make when up-selling their products.

Another Blogging Bill

Another Blogging Bill

I’ve long been waiting for Bill Poole to join the realm of us bloggers.  For those who don’t know Bill he’s probably one of the smartest guys I’ve met and is currently working for Change Corp in Perth.  In his initial posts he talks about SaaS and SOA, and the decision to have your data/apps centralised or decentralised.  If this is a sign of the level of posts to come then I would highly recommend subscribing to his feed as it will definitely be thought provoking.

Bill Poole’s Creative Abrasion

The Right and the Wrong way to Centralise Services

The Right and the Wrong way to Centralise Services

In this morning’s financial review I was frustrated by the full page article entitled Doctors give tick to centralisation. On one hand it talks about the need to “consolidate the systems, and centralise patient and administrative data” – which I fully commend and wish others in the industry had this level of vision.  But it then goes on to describe a system that would seem to only cause more issues than it fixes.

The second paragraph describes one of the significant issues with providing IT services to regional centres as being that “the high-speed backbones simply aren’t available.”  This would imply that whatever solution you were looking to implement shouldn’t rely on there being a stable and fast connection.  Yet, the solution they have settled on uses Citrix which of course needs continuous connectivity back to the server.  How can this possibly work if the connection fails, like for example if the area floods….(after all that never happens in Queensland).

Reading on, apparently the system has met with such success that the vendor has been able to convince them to roll out yet another piece of their technology.  This time it is a “web-based clinical information system to doctors.”  Don’t people realise that there is something fundamentally wrong about building a responsive application using the web request-response model.  No matter how much you lube it up with Ajax, you’re still going to have a clunky interface – well at least until you shine it up with a bit of Silverlight.

Ok, so what’s the answer in both these cases – clearly a rich client, occasionally connected application.  This has all the benefits of centralised data respository, which significantly saves on administration and reporting, while not of the user-pain of either a Citrix or Web based environment.

Lastly, I’m wondering why exactly the doctors have given this system “the tick” – is it because the system is great, or just that they now have a single system.  Just because something is an improvement, doesn’t make it best-of-breed.

Disclaimer: Ok, so you might think this is a bit personal, well you’d be right.  One of the major competitors in this space is AutumnCare where I worked for a number of years.  With the right mindset it’s possible to build systems that continue to operate across a range of devices irrespective of network availability!

Roll up, Roll up, get you Mobile Applications here at YouPark.Com

Roll up, Roll up, get you Mobile Applications here at YouPark.Com

This is going to be the first part in a series of posts about a new website, www.youpark.com that focuses on reselling applications for your mobile device.  You might think what’s so special about this – there are plenty of others out there, what makes this one special.  In part you are right, and I think what distinguishes any player in this markets is the ability for them to deliver on the promise of being able to easily find the right software to meet your needs. 

image

So let’s start with a look at their home page as this is where most of us will begin. Across the top are images of some of the currently popular devices – selecting one of these will immediately filter the list of applications to those compatible with the selected device.  This gives us our first glance at navigation taxonomy used for applications listed with this site.  Not only can you filter applications by device, you can broaden the filter to a specific platform using the links in the Platform selector box in the left column.

Going down the left column they have interestingly placed a Newsletter sign up box between the Platform and Category selection box.  Personally I think this detracts from the site as it makes it appear a little disorganised.  I think this signup option might be better on the right where the search box is.

This brings us to the next point which is that there is a quite effective search box in the right column.  Again I’m a little confused as the default option is Google search, which simply takes the user away from the site.  Selecting the YouPark option yields the appropriate result set but fails to take into consideration any platform or device filters you may have selected.  If you select the Expand Search option you will see that you can also specify filters such as Price, Platform and even Delivery mechanism.  I rather suspect there may be other filter options that you might want to specify – such as the ability to select multiple devices or platforms, or the ability to filter by software vendor.

image

In the middle of the home screen there is a rather obtrusive piece of advertising immediately above a device filter box (I would recommend that this becomes a floating ad that hovers at the bottom of the screen – when the user scrolls it follows, remaining at the bottom of the screen).  Selecting a manufacturer causes a horrible full-page refresh – it would be nice if this was an ajax style call to retrieve the list of devices from this manufacturer.  Once you have selected an appropriate device you can hit go and the list of applications will be filtered to just those that are compatible with the specified device.  The list of devices seems to be quite up to date, although the recently announced Sony Ericsson X1 phone was missing.

If you’re not sure which device you have you can use the “Select Type of Mobile” from the tabs at the top of the screen.  This will give you a visual selector from which you can select your mobile. Of course with literally thousands of mobile devices, flipping through countless pages is going to take a while, so it really helps to at least know the manufacturer.  Perhaps they need a 20-questions style survey the user can take in order to work out what phone they have?

image

On nearly all the pages there is of course more paid advertising – I actually would highly recommend the second application, Pocket PC Controller, as I’ve found it to be incredibly useful and really simple to use. The advertising is well placed and not offensive which means that it doesn’t noticeably get in the way of searching the site for applications.

In the application listing area in the centre of the screen each application is listed in a uniform manner which makes browsing them very simple.  The following is the listing for Trippo – as you can see the logo and application title are clearly visible, as is the price.  Below the logo is a smaller icon indicating platform compatibility, in this case with Java, and to the right is a summarised list of the devices that the application is compatible with.

image

Clicking on the logo, title or the Learn more link will take you through to a much more detailed information sheet for the application.

image image

image image

The second set of images are from the User Reviews link off the Trippo application information page.  Other links allow you to register for trial of the product or to go ahead and acquire the application (this will be covered in a later post).

As you can see from this summary of the basic mobile application directory functionality, www.YouPark.com have done a reasonably good job of balancing product placement ads, category and platform filters and general search capabilities.  The information on applications is of a high quality and includes user reviews which are always an important part of selecting an application.

Media Center WebGuide goes Mobile

Media Center WebGuide goes Mobile

One of the big things that I forgot to point out in my previous post on WebGuide for Windows Media Center is that you can control it from your mobile device.  In fact you can do way more than just control it, you can get recordings streamed to your device, view all your pictures, schedule recordings and of course check out what’s going to be on TV tonight!

image image image

(Perth) Software Development Training by Strategic Systems

(Perth) Software Development Training by Strategic Systems

image

I just got info forwarded to me about the up coming training courses being conducted in Perth by the team at Strategic Systems. The courses tend to be technology agnostic focusing on the principles involved rather than specific implementations.  Having spent time with Dawyne and some of the people working for Strategic Systems I would highly recommend the following courses.

 

Software Architecture (2 days)                                   6-7 March

OO Principles & Patterns (1 day)                                10 March

Requirements Analysis: JAD to Prototype (1 day)   14 March

WebGuide for Windows Media Center

WebGuide for Windows Media Center

Ok, so this Media Center addin has apparently been around for a while but today Craig prompted me to download and install it: WebGuide

image

image

Not only can you use this to schedule recordings and remotely control your Windows Media Center, it’s also capable of transcoding and then streaming live TV to your desktop (or mobile device!). 

Sex in a Phone

Sex in a Phone

Well not really but probably as close as we’re likely to get unless we go and buy an iPhone.  Sony have announced the Xperia X1 which is of course running Windows Mobile!  Yes, that’s right we have a slick mobile design from SonyEricsson, combined with the ultimate productivity platform, Windows Mobile.  Given some of the screenshots available this is going to give the device planners at HTC something to think about.

Check out the glossy website at: Sony Ericsson Xperia X1 or for more detailed information here

image image

image image

Update: Having watched the ad I’m not sure what paper planes have to do with a mobile phone – given they take up 90% of the ad I’m sure they are important.  You might also want to check out the other YouTube videos that show a bit more of the UI (X1 in action)

Australian User Groups and Mailing Lists

Australian User Groups and Mailing Lists

Over the last couple of weeks there has been a bit of a revolution on the AusDotNet (aka Stanski) mailing list.  Whilst I am not in favour of this outcome, a new mailing list has been established to try and eliminate the issues faced by the existing list.  I believe that this may fragment the Australian developer community but I also think that there is probably no turning back now.  As such I would like to recommend that you sign up for this new list using the following instructions (from David Connors who setup the list):

The [email protected] list has the same goals as the [email protected] list, except it is actively maintained, fast, and reliable. Details on the list can be found here: http://www.codify.com/ausdotnetmailinglist
To reiterate, delivery times to the new list are typically <10 seconds.
To join the list, send a blank mail to
[email protected]

In other activities, in the lead up to the Heroes Happen launch event, Microsoft have announced:

  • Certification: Pass one, get the next one free – contact your user group lead for more information
  • Demo Days: Get your Visual Studio 2008, SQL Server 2008 or Windows 2008 (or combination) demo ready – substantial prizes for the best demos.  Again for more information contact your user group lead for more information

The up shot of these announcements is that you need to attend a user group to be in the running.

The Dual Touch Duals

The Dual Touch Duals

So for a lot of people this might come as a surprise and perhaps even a frustration, depending on which phone carrier you are with here in Australia.  One of the limitations of the HTC Touch Dual is that it doesn’t support all of the HSDPA frequencies (mainly to keep the device as compact as it it – note that it doesn’t have WiFi either!). The initial model, released last year has a T9 keypad as you can see in the first image.  This device will work with Optus, Vodafone and 3.

IMAGE_014

For those with Telstra, you now have slightly different offering.  It’s still the Touch Dual, except it has a half-keyboard – that’s right, all the letter, just half the number of keys (see below). Oh, and of course it’s using the other HSDPA frequency, so if you get this device you will be stuck with Telstra!

touch_dual_telstra

I’m not sure that I can really see this half-keyboard idea taking off as personally I think it will take a bit of getting used to.  Most of us are now used to the T9 pad, or would elect to go for a full keyboard like the TyTnII has.

Oh, on a side note – I pulled out the K-Jam the other day and had a bit of a play with it.  I must admit I still think it has one of the easiest to use keyboards – the new style have the keys too close together with no separation.  Long live the k-jam – just a pity it doesn’t run WM6.

Commenting on a Sydney Geek Coffee

Commenting on a Sydney Geek Coffee

During today’s Sydney geek coffee (Wed 1pm @ Jet Cafe each week) the topic of comments was discussed.  I’ve heard all manner of reasons why you should, and interestingly, shouldn’t comment code.  Anyhow here are a couple of reasons why you shouldn’t comment code:

  • It makes the code more unreadable – Just because you’re a super geek and can read code better than English, doesn’t mean the rest of us are.  With Visual Studio font formatting you could just modify the comment font colour so that it doesn’t stand out as much

image

Personally I would prefer to make them more obtrusive so that I’m forced to read the comments before launching into the code

image

  • Code should be self describing – Well yes, one of my reasons for being pro-VB is that I find it more explicit and easier to read.  Having said that, comments shouldn’t be “check this variable isn’t nothing” for a statement “if myVariable isnot nothing then” – comments should be about describing how what you are doing fits into the bigger picture, or in the case of work arounds/fixes etc why you have chosen to do something a particular way. 
  • Comments quickly become out of date, so why bother – Now this is an interesting one.  My initial thoughts are that it is likely to be the same people who don’t update comments, that don’t write them in the first place.  Thinking about this problem a little more I thought of how Word deals with comments.

image

Now wouldn’t it be cool if we could have comments for specific bits of code

image

Thinking about this in terms of how it would exist in the code file I came up with some possibilities but none of them were very elegant given the way comments are integrated into the languages.  Any thought as to how either C# or VB.NET could support this style of commenting?

Why would this help this scenario – well if you have comments that are actually tied to a line or a portion of a line, Visual Studio could indicate that the comment should be updated whenever the line changes, thus prompting the developer to update the comment (no guarantees they will of course)

Windows Mobile Device Center – Just a couple of tricks

Windows Mobile Device Center – Just a couple of tricks

<rant>

Last night I spent a frustrating hour or so messing around with a HTC TyTnII and the Windows Mobile Device Center under Windows Vista.  You would think, brand new Windows Mobile device (running WM6 of course) + Windows Vista (with all the latest updates installed) would be able to connect, sync and browse the internet via the USB connection. Think again.  Unfortunately, despite continual discussions between the community and Microsoft we don’t seem to be making much progress in making this easy for the end user.  Yes, I know there are forums out there talking about all the things you need to try before sending the device back to the manufacturer but the reality is that as a consumer experience this SUX.

</rant>

Anyhow, instead of just ranting about the evils of the WMDC (which increasingly reminds me of searching for WMDs in unstable territories….) I thought I’d list a couple of the tricks I use to try and get things to play ball.

Q: I’ve plugged my device in and opened the WMDC but it never seems to connect.

A: Try any of the following:

  • Look out for “Connecting” on the device – for some reason WMDC can be really slow to detect the device and can take upward of a minute in some case (long enough for you to think it hasn’t connected).  When the device shows “Connecting” on the ActiveSync screen it is actually trying to establish the connection – when this stops it should read Connected at the bottom, if not, you have a problem.
  • Try unplugging and plugging it back in (obvious step – see the first point though as you may be unplugging it before WMDC has done its thing)
  • Try a different usb port.  I’ve found that sometimes WMDC gets all confused and refuses to communicate through a specific usb port.  Simply changing to a different port can be enough to get it to work.  Funnily enough in most cases I’ve found that you can then change back to the original port and it works fine – go figure!
  • Try adjusting the Connection settings on wmdc – Change the “This computer is connected to:” value from Automatic to Internet and click Ok.  Quite often this is enough to convince the WMDC to drop existing connections and re-establish them. Again I don’t know why, but this does seem to work.

image

  • Kill the WMDC process – Task Manager is your friend – open it and kill the wmdc.exe process.  Make sure you disconnect your device from the usb port first just to be sure.

Q: My device is now connect to WMDC but I can’t browse to internet sites on the device.

A: My first response to this is to get yourself a decent data plan and then to use that instead of using the internet connection on your computer but I understand that this isn’t a great option for people using “expensive” carriers ;-).  As such here are some pointers to get this to work using the WMDC.

  • Make sure you are running the latest version of the WMDC.  No this doesn’t mean looking in Windows Update as for some reason it doesn’t show up there!  Go to the Windows Mobile Device Center for Vista website, scroll down and select the appropriate update. Note: The filename of the download is “drvupdate-x86.exe” – please make sure you rename this so you can find it later – don’t spread the plague of rubbish filenames!

image

  • Disable advanced network functionality on the device.  Go to Settings–> Connections and select the “USB to PC” icon (first picture below).  Then uncheck the “Enable advanced network functionality” option.  Whilst this might be advanced functionality under ActiveSync, it generally just causes problems using the WMDC.

 image image

Ok, so if you are still having issues it might be worth getting hold of your local Windows Mobile MVP and asking them what you can do.

Before I go, I’d like to talk through how I have my device setup.  Firstly, I don’t sync anything with by local machine, everything is sync’d to Exchange 2007.  Instead of managing our own mail server all my SoftTeq mail goes via a hosted service (http://www.myhostedsolution.com/) – for $10 (US) a month I get as much storage as I want and never have to worry about maintaining/backing up.  It also gives me the ability to not only sync to as many devices as I want, worldwide, it also gives me the ability to control my devices (remember that Exchange 2007 has the ability for the user to self manage their devices – it ability to remote wipe etc), and of course has webmail access.

The next thing to note is that I recently moved across to the 3 network.  Whilst their coverage isn’t great outside the metro areas (and data is painfully expensive when it falls back to GPRS), inside the metro area I have found the reception to be good and the data is still the cheapest on the market. I have a device (the HTC Touch Dual) without WiFi as I found it frustrating to use WiFi because you don’t have the ability to have Push Email and it just drains the battery. The result is that all my syncing is done via the 3 data plan.

Now talking of battery life, the HTC Touch Dual battery life royally sux.  If I had to use the device without charging I think it would last less than a full day.  That said, I’m never away from my computer for more than a day, so I’m just in the habit of carrying my usb to device sync cable with me.  This is the only way I charge my device.  Unfortunately the default settings on the device will mean that even if you are religious about plugging your device in every time you sit down, you will still see the battery gradually diminish.  The reason for this is that by default it is setup to sync to the WMDC (or ActiveSync) upon a Usb connection being establish.  This means that the device is periodically brought out of standby and never seems to return to standby.  Even with the backlight set to dim, this will drain the battery almost as fast as it is charging via usb.

Since I don’t actually sync through my computer, I actually disable the sync with WMDC (within ActiveSync on the device, select Menu, Connections and then uncheck the “Synchronize all PCs using this connection:” option – see image below).

image

Now when I connect my device, I hit the power button to make sure it stays in standby – for some reason connecting the usb cable will wake up the device even with the sync option disabled.  The device will remain in standby, optimising the recharge speed – it’s typically back to full power in 10 mins or so.

The downside is that with the sync option disabled, you can’t connect to the device using any of the developer tools.  So to do development I have to disconnect the device, toggle this option and reconnect – how frustrating, but better than lugging around a brick when the battery runs out.

 

SideNote: The device images on this post were taken using the SOTI Pocket PC Controller which is available via YouPark.

I backup my code, I use a source repository

I backup my code, I use a source repository

I was talking with Adam Cogan this evening over the use of Source Control, and more specifically people who don’t check in code at the end of each day. This is a discussion I’ve had with a number of people and there are definitely some differing opinions on whether companies should have a “you must check your code in at the end of the day” policy.  I’m a firm believer that this is for the most part a good idea, however it can often conflict with another policy that I’m in stronger support of: “you should never check in code that will break the build”.  Clearly if you haven’t finished something at the end of the day you might not have code that compiles, ergo you shouldn’t check it in.

This dilemma is dealt with when you use TFS as your source repository because you can shelve changesets (there are other source repositories that have similar functionality).  Basically this is like a temporary check in of your changes.  It means that not only is your code backed up (in case you computer blows up), it also means that someone else can check out your changes and continue to work on them (ie in case you get hit by a bus).

So, with this in mind, here are a couple of check in rules (applicable to teams using TFS):

  • You should never check in code that breaks the build – if you do, then you should stay behind and fix it before you down that first beer!
  • At the end of the day you should not have any code checked out – it should either be checked in or shelved.