title: Is the Java API poorly designed and why?
body: <p>I have heard this a lot, the the Java API is poorly designed.  Do you agree and if so, how?  I know there are major issues with the Calendar/Date apis.  The collections api takes a lot of boilerplate code to use.  The File/IO API can be complicated for some things.</p>
  
  <p>But, does this apply across the aboard?  And to which versions of Java?</p>