I can't say enough nice things about this guy. Josh does an incredible job making the class discussions interesting. Its inevitable that sometimes the class gets off-topic, but those occasions are rare and once its obvious we've reached a point of no return he swiftly reins the conversation in.
Honestly, the conversations in this class (little or no lecture given, though he does frequently participate in discussion) remind me why I chose to go to Columbia for a tech/engineering degree vs another school with fewer non-tech requirements. I strongly recommend this professor, despite the fact that he sometimes assigns an couple extra chapters to read (though he became more reasonable by the end of the first semester). Also a very fair grader, he gives very valuable comments and takes student input on how to structure the tests.