Pencil is written in C++ and Qt, a cross-platform GUI framework, and that’s why pencil can run on several different platforms. We don’t use very high end technologies so I believe one semester course of basic programming skills is enough to start. If you understand class, pointers well, then you are ready to develop pencil.