The same can't be said for Ruby and Python so much because there are very clearly recommended choices for frameworks, that encourage good project structure.
JavaScript, well, that depends. There's plenty of good frameworks around for client-side JS, but like PHP, there's no apparent (to a beginner) need to use them, and it's simple to get results without them, especially if you use jQuery. This is, clearly, why there's so much terrible JS code around. If you're learning JS to use on the server, Express is probably the default framework recommendation, and at least nudges you towards keeping things organised.
Quote:
with an enforced structure comes inflexibility to do exactly what you want, surely?
You say that like it's a bad thing. Beginners don't know enough to avoid the pitfalls, so some structure is helpful to keep them on the rails.
EDITED: 10 Oct 2014 14:15 by CAER