FEniCS has one of the best documentation in opensource and an incredible support community. The first step to start working with FEniCS is to download and install it. You can find the installation instructions here. It is straightforward to get started with FEniCS by just following there an excellent tutorial that they have provided here. Once you have understood the basic working by following through the tutorial, I would recommend you to read the first chapter of The FEniCS Book thoroughly.

You can easily follow through with different examples provided on their website and start coding your custom implementations. Whenever you get any doubts in FEniCS, you should ask them in the discourse. To get answers to your questions, you have to be as descriptive as possible and always provide the community with a minimum working example. Read this post to understand how to ask questions.

Often you will get solutions to your queries in the forum. So please scour the forum before posting a new question. When you find the answer and do not understand what a particular command does, you can look in the official documentation here. The python version of the documentation contains the description of most of the commands. However, if you still do not find any command in there, you should look into the CPP version of the documentation, which will undoubtedly contain the command description.