As far as I know, there is no way to do it other than hack the code. I do agree the ability to set default forum view would be a useful feature. The question is: should this setting be server-wide (set by admin) course-wide (set by instructor), or should every student be able to decide which view they prefer? Maybe a cascading setting would be best (i.e. the admin sets the default view for the server, which can then be overridden in particular courses by their instructors, and on the lowest level each user can change their own preference)?
And another thought about the threaded view:
I've noticed that in the threaded view if I display a message somewhere in the middle of the thread, the thread overview (below the message) shows only the replies to the currently viewed post - it doesn't include the previous posts in the thread. Is there any particular reason for this? I think it could show the structure of the whole thread, while the current post could be somehow highlighted (or simply not hyperlinked). This would show the message in the context of the whole discussion, at the same time allowing the user to quickly jump to any other message in the thread. At the moment, if you want to see the previous message to the one you're reading, you have to display the whole thread first.
What do others think?
One thing more:
I've just noticed that the forum-view setting is cookie-based, rather than stored in the database. Therefore, introducing the cascading setting I described in the previous post would shift the work of "remembering" the setting from the user's computer to the server. Since I am not a php-guy, I don't really know how much more load this would mean for the server. Will the profits of having this setting outweigh the losses in terms of server workload? If not, maybe having just the server-wide setting (with the possibility to change it temporarily using a cookie) would be enough?
http://moodle.org/bugs/bug.php?op=show&bugid=70
It won't mean any more load, but it will require some work to implement a scheme for storing module-based settings.