User Interface Design for Programmers (by Joel Spolsky) is pretty good. I think it's available for free at this point: https://www.joelonsoftware.com/2001/10/24/user-interface-des...
It covers some foundational ideas of what makes a good interface.