It depends on your role in the LIBPF workflow (see the workflow description in the How is LIBPF different from other simulation tools? FAQ)
Library developers and model developers need C++ programming skills, but the skill set is very different. While the library developers need to know the inner workings of the library, only very basic knowledge of the C++ programming language is required to develop models based on LIBPF. Please have a look at the code samples to get an idea.
Model users on the other hand can access the process models via user-friendly User Interfaces, web-based light clients or the very same Supervisory Control and Data Acquisition (SCADA) they already use, for on-line applications.