To write applications using the Abaqus GUI Toolkit, you need to have some experience in the following areas:
Python programming
You should have some experience with the Python language before you write Abaqus/CAE kernel scripts. You should have similar experience when you program GUI applications.
Abaqus kernel commands
The ultimate goal of the GUI is to send a command to the kernel for execution; therefore, you should understand how kernel commands work.
Object-oriented programming
Python is an object-oriented language, and writing an application generally consists of deriving your own new classes, writing methods for them, and manipulating their data. You should understand the concepts of object-oriented programming.
GUI design
Depending on the complexity of your application, it may be helpful to have some training in user-interface design and usability testing. This will help you create an application that is both intuitive and easy to use.