Hi Anonymouqs!
All of your questions really depend on your programming knowledge in general. If you have experience in other programing languages (Python, C#, D, Lua, etc) then working with C++ in Godot will likely be much easier than having no prior knowledge.
If you are planning on learning C++ as your first programming language, I would personally suggest you learn a more beginner friendly programming language first. Personally, I would suggest learning Python (as that's what I started on :smiley: ).
Based on your questions, I assume you are wanting to contribute to the C++ part of Godot (working on the code here). I'll do my best to answer from my personal experience:
Q: What tutorials should I do to understand C++
A: Honestly, I really don't know. I leaned C++ by reading through various books (both online and physical) and working through making a simple C++ program. Before I started learning C++, I already knew how to program in C#, Python, and Javascript. I also tinkered with a bunch of programming languages (Haxe, C, Lua, PHP, DarkBasic, and many others). All of that is to say I went into learning C++ already knowing lots of different languages, so picking up C++ wasn't really difficult for me.
My suggestion going through a tutorial series on a simple topic that interests you. I learned how to make my own simple game engine with SFML and made some simple C++ programs.
Q: What resources can I use to learn enough to contribute to the development of Godot
A: I would suggest looking at the "junior job" and "hero wanted" problems in the issues section of the main Godot repository. Look at the code and see if you have an idea on what needs doing to fix it.
I've heard the development IRC is really helpful to new contributers, though I have no experience with it personally.
Another good thing to know is how to compile Godot for your platform of choice. The documentation shows how to compile for each platform.
Finally, there is more than just C++ code that needs doing in Godot. Not to sway you from helping with C++ code, but there's also the documentation and demo repositories too!
Q: What IDE should I use to develop for Godot (in C++)
A: I've used the Atom IDE. Atom is fairly light weight and gets the job done (for me at least). That said, Atom may not be the best IDE for you. I've downloaded Sublime text and I'm curious to see if it will replace Atom for my C++ programming. Here's some IDE's I'd suggest looking at (I've used all of these at one point or another):
Atom (I'm currently using this one)
Sublime Text (Just installed a couple weeks ago. Looks promising)
Visual Studio Code (It's not bad, similar to Atom)
Visual Studio (if on Windows, or Mac?) (a little heavy on disk size, but it's a really great IDE. If you can use Visual studio, then you should. There is a free community version that you can use for working on open source projects like Godot)
Xcode (if on Mac) (The last time I used Xcode was a couple years ago, so I cannot really vouch for how good it is anymore)
KDevelop (One of the better full code completion C++ IDEs for Linux. It was a little slow for me, but working with it was pleasant)
Codeblocks (I didn't really like Codeblocks. You should see for yourself though)
CLion (Great cross platform IDE that is almost as good as Visual Studio. No free version, but there is a free trial)
Hopefully I've been able to help answer your questions. I do not think there is any 'right' answer to any of the questions you've asked mainly because there are so many ways to go about it. I would suggest doing your best to learn what you think is necessary and see where it takes you! :smiley: