I prefer a qwerty keyboard for programming, but to write in my native language (Dutch) I need sometimes accented characters like ë, ï, é, etc, which do not have dedicated keys on a qwerty layout.
A handy way under Linux is to use a "compose key" ([Alt Gr] on my setup), which allows you to compose accented characters by entering the accent (umlaut, accent grave, ...) and the unaccented character separately.