I have quite good experience in Python and its spatial libraries. I need to start learning ArcGIS development tools for developing custom desktop and server applications. I have some experience with QT Creator and pyqt. Do I need to learn C# or C++ necessarily ? What is your suggestion ?