The talk will outline the lessons learned in the development of a new open-source cloud microphysics simulation package PySDM (https://github.com/atmos-cloud-sim-uj/PySDM). The package core is a Pythonic implementation of the Super-Droplet Method (SDM) Monte-Carlo algorithm for representing aerosol/cloud/rain collisional growth. PySDM design features separation of a backend layer responsible for number-crunching tasks. The developed backend implementations based on Numba, Pythran and ThrustRTC leverage three different Python acceleration techniques dubbed just-in-time, ahead-of-time and runtime compilation, respectively. Summarising the experience in using the three approaches, I will report on the pythonicity vs. performance trade-offs, debugging and profiling issues, parallelisation capabilities (on both CPU and GPU) and the interoperability with the Python ecosystem.