When reading The Go Programming Language, I come across the following sentence:
With sufficient effort, a good change can be accommodated without compromising what Fred Brooks called the ‘‘conceptual integrity’’ of the design but a bad change cannot, and a pernicious change trades simplicity for its shallow cousin, convenience.
I can't understand (...) but a bad change cannot, and a pernicious change (...)。 How to split this long sentence to make it more understandable?