Order of includes in root urls.py

The order does matter - especially where regex paths are concerned.

But first, you ask:

I guess it depends upon what you mean by “fix”.

A url will only dispatch to one view - and it will dispach to the first view matching the url pattern.

You answered that above when you said:

So it does “fix” that, in that those urls would now be handled by synths.urls and not by pianos.urls.

It’s up to you to decide which of those modules will handle /synths/yamaha/mx88bk.

That is correct.

That’s an architectural decision. In general, I would say it’s not best practice to not have it. Or, to attempt to untorture that sentence by removing the double negative - I believe it’s a best practice to have it. You likely still want to have the empty string to map it to a “home” page. I just don’t suggest mapping the empty string to an included url module.