The first part, starting at around 7’00, explains why the built-in data management library was ill-suited and how they designed a different system to better suit their needs. The second part, starting at around 24’30, shows how their implementation of MVC was becoming unmanageable and how they redesigned it. Interestingly enough, in both cases the solution was based on immutability.
Geeks3D recently posted a couple of posts on billboards rendering using vertex shader or geometry shader, and particle rendering performance when using point sprites or geometry shader.
This article by Adrian Stone discusses the impacts of triangle ordering in meshes and compares some algorithms.