Hola biblio:
Coincido con Beakdan (hola

) respecto a la discriminación de los novatos... yo he sido novato en su momento, y me equivocaba muchísimo (más que ahora -creo), pero con los errores se aprende mucho y creo que todos queremos aprender...
Bueno, no es mi intención dar tirones de oreja, sino intentar orientarte en tu problema...
Te comento lo que suelo hacer cuando en un select pongo "elija una opción" o algo parecido.
Averiguo cuál es el elemento seleccionado y hago un tratamiento especial (en el caso de "elija una opción" el tratamiento es no hacerle caso)
Sabiendo que hay una opción que debe tratarse de otra manera, la función la "condiciono":
if (formulario...selectedIndez > 0) acción();
En tu caso, el selectedIndex sería 3, y la línea sería:
OnChange="if (this.selectedIndex != 3) ComponerLista (document.forms.Listas.Categorias[selectedIndex].value);"
Y si has implementado el tratamiento de "otros", ponerle un else...
Saludos