A Respect for Cross Platform Developers
02.52.30 - Mark
I long time self declared geek, I'm a little surprised I've never really sat down and learned C++. I mean I've played around with a variety of programming languages, and I've had a copy of CodeWarrior for the Mac for a decade or so. So while I remember doing some "Hello World!" and tutorial work on it, I'm only now learning it between I'm taking a college course on it. While a lot of the basics are similar to the PHP and Arduino I already work with, the fact is I'm learning a bit more than I expected.
Specifically, as a happy Mac user, I'm comfortable with banging away in Apple's Xcode. Unfortunately, the course prefers Microsoft's Visual C++ Express, which no, does not play well with WINE like many other Windows apps do. So while I'm quickly picking up on the syntax of C++, defining my own rosetta stone comparing and contrasting the languages I know, I'm also working on the art of cross platform development.
Ten years ago when OS X was new and shiny and Macs still ran PPC processors, cross platform development was pretty rare. Only a few, like Adobe, Blizzard and Bungie would actually make an effort to straddle the fence. It always annoyed me that only the big (or at least Mac based ) companies would go cross platform, after all they were almost all using C, C++, maybe some PASCAL, so why not cross over? Was the Mac really that daunting?
Well, while I still don't considering the Mac daunting, translating even a "common" language can be a gauntlet. While I'm not going to claim to be a programming prodigy, it only took about an hour to read over the requirements and bang out a working program in Xcode. Add another hour to write up the documentation, and it was time to handle it on the Windows side. At which point I spent another 90 minutes trying to figure out what the windows side needed, rereading my code and googling the error codes. In the end I had repeatedly ignored the rather simple solution, one that probably should have been required on the Mac side, but the fact is, the people who manage to port software deserve a lot of respect, especially those who add linux into the mix...