There is no substitute for playing with tutorial cases and messing with the code
Learning C++ takes time, but there are plenty of online resources
Budget about 3-18 months to develop real confidence in C++, depending on how much time you have
You need to write/modify code regularly to do this
Understanding the OpenFOAM code arrangement is a separate exercise, and you are mostly on your own if you cannot afford the courses
Expect this to get easier as the user community grows just through word of mouth
Things have come a long away even in just the last four years!
You do not need to compile the code to use it
But you should anyway, at least once, takes many hours usually (large C++ code bases tend to take longer to compile than C)
OpenCFD provide pre-compiled binaries tested in SuSE and recently, Ubuntu
These days any performance improvement due to local compilation rarely noticeable
OpenFOAM is just the solver
You need a pre- and post-processor (i.e. mesher and viewer)
OpenFOAM was designed as an industrial tool so it needed to interface with a wide range of pre and post processors and formats
Lots of converters in-built where the specifications are publicly available
Meshing is still "fragmented"
blockMesh is a native utility for simple geometries, snappyHexMesh new native hex mesher really good but not ideal
OpenCFD working on a very exciting auto poly mesher
Paraview serves most purposes, is actually better than say, Fluent post-processor
2 clicks for increased privacy: only when you click here the button will be activated and you can send your recommendation to Facebook. The activation will transmit data to third parties – see i.not connected to Facebook
2 clicks for increased privacy: only when you click here the button will be activated and you can send your recommendation to Twitter. The activation will transmit data to third parties – see i.nicht mit Twitter verbunden
2 clicks for increased privacy: only when you click here the button will be activated and you can send your recommendation to Google+. The activation will transmit data to third parties – see i.nicht mit Google+ verbunden