Hola!!
Como ta han dicho, y para simplificar un poco:
Las roms, dependen del usuario y del uso que quieras darles. Lo mas recomendable, es probar al menos 3 roms distintas (MIUI, SENSE y una GINGER) y ver cual es la que mejor se adapta a ti.....
Despues, encontraras variables de cada una de elllas, que habran sido cocinadas, mejoradas o empeoradas, por distintos cocineros internacionales......
Yo, por ejemplo, ahora mismo, estoy con una MIUI de Ladyboo
http://forum.xda-developers.com/show....php?t=1028693
La diferencia entra ginger y miui, es que ginger es un IOS y MIUI necesita de un IOS para funcionar.
El tema de las particiones de tarjetas SD, en EXT, es para Roms que se sirven de esta particion, para ampliar su "memoria".
Es decir, Nuestra Hd2 tiene una memoria interna de 512 en EU, y 1G en USA. Por lo tanto, con una particion EXT3/4 de 1G, nuestras hd2 amplian su memoria interna y podemos meter roms que necesiten mas memoria para guardar los datos y las apps.
Todo esto hablando de Roms que instalas en NAND.
Es lo mas recomendable, y podras comprobar que, aun siendo un movil construido para WM nativo, nuestro terminal le sobran "Cojo.....es" para usar Android en la NAND, y funcionar mejor que terminales que usan Android en nativo.
Un ultimo punto: Si dices que has usado programacion en Linux, tu mismo te podrias cocinar tu propia rom. Ginger a ofrecido su codigo fuente en abierto y creo que MIUI a sacado una sus versiones tambien. Por lo tanto, con eso y algo que busques por las cocinas, puedes hacerte tu mismo una.....
Espero haber aclarado mejor todo lo dicho....