Я также только что купил Mac и пришел из среды разработки .NET. Я пробовал кучу разных языков и сред. Если вы собираетесь писать настольное программное обеспечение OS X, вам нужно будет использовать Cocoa и Interface Builder. У IB нет аналога для Windows, потому что он так сильно привязан к Какао. Это означает, что вам нужно будет одновременно изучать Какао, а это непросто сделать, посмотрев на код.
Objective-C - это родной язык Mac, и он не так совершенен, как C #. Требуется некоторое время, прежде чем вы сможете прочитать его свободно, потому что вызывающие функции выглядят иначе. Использование Python или Ruby вместо Objective-C добавляет сложность только до тех пор, пока вы не изучите Какао, но после этого оно кажется вполне жизнеспособным. C # через Mono работает нормально, но я не думаю, что весь мост Какао # реализован. Инструменты C # имеют гораздо более низкое качество, чем Visual Studio, а MonoDevelop крайне уродлив на Mac. Я решил, что если я хочу пойти по этому пути, то мне нужно изучить Objective-C, но пошел в другом направлении.
Если вы пишете веб-сайт, у вас гораздо больше гибкости. Доступны целые культуры Python и Ruby, хотя есть некоторые проблемы с установкой некоторых библиотек Python. Я выбрал этот путь, потому что у меня был некоторый базовый опыт работы с Python, и навыки почти на 100% совместимы с Linux. iTerm - лучший клиент, чем Terminal. Мне не понравились большинство редакторов кода, которые я пробовал, и начал с Smultron, который не намного больше, чем очень компетентный текстовый редактор с подсветкой синтаксиса. Есть определенно тонны вариантов.
Независимо от того, как вы к этому подходите, вы будете тратить много времени на обучение. Я постоянно спотыкался о синтаксисе Python, но, наконец, я в этом разбираюсь. Документы SQLAlchemy (Python ORM) почти всегда имеют открытое окно браузера. Я также укусил пулю и начал использовать Vim (в частности MacVim), который на самом деле очень интересен, потому что всегда есть другая команда, которая делает именно то, что вы хотите. (Например, я устал ходить по строке, нажимать $, чтобы перейти в конец, нажимать клавишу a, чтобы добавить, а затем нажимать ввод, чтобы начать новую строку, поэтому я погуглил и обнаружил, что могу просто нажать o.)