Programming large-scale systems poses several challenges to scientific application developers. Systems are growing in complexity, and concurrency is not the only difficulty that programmers face. They also contend with the distribution of memory spaces, complex architectures, new storage technology, etc. Task-based programming models have proven to be a good alternative to traditional programming models for HPC. PyCOMPSs is a pioneering approach to task-based programming in Python that enables codes to be executed in distributed computing platforms. In particular, PyCOMPSs supports different types of tasks, such as parallel simulations (MPI), artificial intelligence, or data analytics. This webinar will give an overview of PyCOMPSs illustrated with examples in development at BSC that include CFD simulations with AI training or real-time visualization in the same workflow.