Interesting to read that the complexity in his music is praised and seen as speaking to the intellect, whereas that is not the case when it comes to complexity in software.
complexity in software is invisibly-preceded with "unnecessary", and usually indicates software that is difficult to maintain or even to verify its behavior. A really cool software architecture can scratch a similar itch as a good fugue, but that's not its typical function nor is it the way we usually engage with software professionally.
Bach's complexity, incidentally, is seldom "for its own sake" - the pieces all fit together beautifully and without extraneous movement. Contrast that with some lesser works by later composers like Liszt, where you often get the sense that a given passage could be reduced or removed without harming the work.
That kind of complexity, which means attention to detail, quality, concordance and consonance between different components, is also praised in software. This is however not what we mostly think of when talking about complexity in software.
Bach's complexity, incidentally, is seldom "for its own sake" - the pieces all fit together beautifully and without extraneous movement. Contrast that with some lesser works by later composers like Liszt, where you often get the sense that a given passage could be reduced or removed without harming the work.