My quoted text from the last post was from an email I received.
From who? Is this person in any position to require that you not use the Arduino IDE? Like an instructor for a class?
So PaulS, the example programs are not written in C, correct?
Which example programs? The ones available with the Arduino IDE are written in C. The IDE generates a main() function that calls init(), setup(), and loop() in an endless loop. The init() function activates the hardware. You provide the setup() and loop() functions.
The quote I mentioned earlier, "We would prefer that you use C directly to control the module" is not referring to the environment?
As I read it, the IDE is not what is being discouraged. It is the use of libraries that have been written to make using specific hardware easier. I guess the point is for you to learn how to control all the hardware rather than relying on what others have done to control that hardware.
I see pros and cons to that approach. On the one hand, it is good to learn how to control all the hardware. But, as in any programming task, like doubly-linked lists, queues, stacks, etc. know how to do something, and doing it efficiently, in a thread-safe manner, in a way that can be extended to manipulate objects of a different type, etc. are two different things.
Learn how a library does something, well enough to know whether you could do something as good, or better. Then, if you can do it better, do it better. If not, use the library.