@b0rk I think there are harmful and non-harmful ways of using "rebase." When preparing your set of patches for submission upstream, rebase is essential -- you can split large patches into logically smaller ones, fix typos, reorder commits for better clarity and squash some of them together if they really don't need to be two separate actions. All of this is easily accomplished with "git rebase -i". It is also useful to be able to rebase your work on the newer version of the main branch right before you submit your changes upstream.
However, many other applications of rebase can be sloppy and harmful, especially when used without proper understanding of the effects it will have on the project history. I many situations, merge commits are preferable to rebases.