The website component of Submitty, where submission, TA grading, etc. happens is written in PHP following a Model-View-Controller design pattern. This gives the codebase a nice separation of concerns, allowing for easier unit testing and integration of the parts.