some text columns have varchar(255), some just varchar.
i think the motivation to have (255) is that some dbs handle fixed length strings much more efficient then open ended varchars. maybe it's less portable.
we should list all arguments, decide and document the strategy.
I think the default for many (most?) platforms is VARCHAR(1) which probably isn't what we want. Also not all platforms always have the "VARCHAR" alias, but that's another story (we need platform specific scripts). So we should choose an appropriate value for all the columns, and expect that users may want to tweak them in production.