the woes of cross-platform C++ development
Carbon is Apple’s APIs that were created for developers who had been writing for OS versions before OS X. Apple really wants developers writing in Cocoa (just as Microsoft wants to developers to write in .Net), and they couldn’t make it more clear to those of us who are using Carbon. While being fairly feature-rich, it is overly complicated and poorly documented. Every company I have ever done professional software development with (which includes several of the top companies in the world) does development in C++. Cocoa doesn’t work with C++. It uses ObjectiveC, which means (like .Net) that you can’t easily write portable code for Cocoa. Apple is going out of their way to make it hard to port apps to their platform and should wake up and support C++ for Cocoa.