Why does the fill factor in SQL Server default to 0 (100%)?
Just throwing out a few suggestions here as to why Microsoft would do this:


They have geared their default to be best possible OLAP performance (less page reads with a fill factor of 0/100)
They are assuming that INSERTed data will most likely be at the end of the table, making the extra space per page useless
They are assuming that typically UPDATEd data will not lengthen row data very often, causing a page split


This is just guessing here.  The only people that can really answer that question accurately is the SQL Server team themselves.