I currently work on a large Django app, and in my previous job I worked on a large Java project (desktop app, not web, but still appropriate to this discussion), and I'm kind of torn between agreeing and disagreeing with the author.
While I enjoy Python over Java, and have ample experience working with other dynamically-typed languages like Ruby and Objective-C, I'm still not convinced of which is better (static vs. dynamic). Sometimes in Python-land, I do think that it would be nicer to have static types and a compiler to prevent some errors; I don't like Java's type model, but Scala has a decent type system that doesn't get in the way but prevents a lot of errors.
That said, I think the successes/failures of using Python or Java have more to do with a team's experience and background. I feel like this article would be better titled "Straying from Java makes me nervous", since the author seems to mostly be saying, "I have experience with Java. I don't understand/have experience with Python. Thus, I'm more comfortable writing Java code." I think experienced Python developers learn to work with/around most of the "problems" he perceives; Python is not Java and requires a different approach to programming.
I also had to chuckle a bit at this line:
Java has a well thought out hierarchy of checked and runtime exceptions.
I think most would agree that Java's exception hierarchy is confusing at best, and that checked exceptions were a worthwhile but failed experiment that doesn't really make code more robust (I suppose they do if used properly, but how many Java programmers use exceptions properly?).