That's sort of a trick question...
The only thing(s) I have to hack, on a regular basis are the extensions; which, themselves, are a hack (of sorts).
Extensions are the glue that holds GNOME3 together IMO. Without them, you might as well run Unity; which is also a GNOME hack. That said, most of the time, all I have to do is hack the json files.
The Dash-To-Dock extension (the dock on the left-side) has to be
compiled from source, every time Ricotz upgrades gnome-shell, but that's no big deal.
I also skin the icons in gnome-tweak-tool, et cetera.
Then, there's the obligatory, unexpected dependency issues, and so forth, and so on.
All_in_all everything has gone smoothly enough. Hasn't been boring...