KDE and Emacs, the two things that broke in the article, aren't a part of BSD. It's true that fixing code in ports is easy, just like patching a .deb or .rpm is easy.
That's not where the problem lies. Here's are the hard parts:
- testing the app, figuring out if there are bugs
- finding the bugs, fixing the bugs
- getting code review, regressing your fixes
- upstreaming your patches. All they do is work around a new and obscure kernel bug? Good luck with that!
And THAT is why the kernel <-> user space API should be stable. I like ports as much as anybody else but they just don't help much here.