I was checking the phpBB database schema - this is a php forum application.
The username there is also unchangeable.
In the 'posts' table phpBB has columns for the user foreign key and the username. At first I thought this to be use of denormalization to optimize for speed. At second look - next to every message phpBB shows additinal info from the 'users' table - so they join 'posts' and 'users' anyway.
In the 'topics' table there is only the foreign key. Next to every topic they publish only the username from the 'users' table. I guess here you can denormalize the username to increase performance, but the fact that it is not means that in reality joining the tables doesn't hit performance that much.
It leaves me with the impression that having the username unchangeable is some sort of a prejudice.
In another forum application - Javalobby there is no username at all. For login it uses the email and in the posts it displays the full name. The email is changeable. One way to see it is that changing the username is also avioded
