There’s a new book Develop your own Bluetooth Low Energy Applications by Koen Vervloesem. It introduces Bluetooth Low Energy and shows how to programming with Python and the Bleak library on a Raspberry Pi or PC, with C++ with NimBLE-Arduino on Espressif’s ESP32 development boards and with C on Nordic Semiconductor’s nRF52 boards.
Koen has a blog where you can read an abridged version of the book. He explains Bluetooth Low Energy, the Bluetooth stack, advertising and connecting. You can also view the samples on GitHub.