Why technical interviews are done on the board? I find it very stupid that they ask you for example to write a function that sums up the integers from a file, and to do that on the whiteboard and have no syntax errors. But I find it impossible, I means how on earth I can remember that a Reader object has a the method name readLine() instead of nextLine()??! These stuff are hard to remember! So what are they looking for when they ask such questions?!
What would you rather do that can be done to test someone's communication skills? Having laptops with all the software a developer could use would be quite unrealistic and so the idea is to have something that is rather simple which should be doable to see how well do you communicate on some points, what do you assume on other points. For example, did you ask if you could have typos in the code? Did you tell them you'd likely have IntelliSense or other checking mechanisms to ensure the code would compile? In a way, the whiteboard test has more than a few potholes that are designed to see whether or not you'd hit them and if so what do you do about it. At least this would be my understanding after doing probably about 70 of them in the past 17 years.