What are the main difficulties people face migrating from Linux to Mac OS? Coming from a Linux background what are the main difficulties I will face if I start to work on iMac? 
I use to work on Linux with consoles and I know I have a huge apps repository (synaptics) for almost all I need. I'm programming Java and Ruby all day long, so what are the main differences?

Differences like UI and passionate things I already know, so please tell me only useful things. (otherwise we'll keep this question for years)

Have you faced this before? Is it a slightly migration?

I'd be thankful.
I did a switch from Linux just a week ago. I am using Linux for 15+ years. Lately, my Desktop distro of choice was Ubuntu.

Mac OS X is a BSD based system, so minor issues you will have to get used to is stuff like using ipfw instead of iptables.

As you will pretty soon realise Ubuntu (and other distros) simply mimic lots of Mac solutions when it comes to usability. You will find yourself being very familiar with a lot of GUI elements. 

There is virtually no difference from a developer point of view. You can just install rvm and develop your Ruby apps as you used too. Main difference is, that now you can use the famous TextEdit! :D

As for the drawbacks:

Mac has worse package management and you might miss some fancy features of apt-get / dpkg (or yum / rpm). It's not groundbreaking however, and Homebrew will be sufficient in the end anyway. 

There are various minor things like key shortcuts, window management which takes couple of hours to get used to. I for one can't get what's the idea behind how the window maximization works.

In the end, I must say that I don't miss a thing so far. I got everything I loved about Linux + beautiful system which can run StarCraft and Photoshop. :-)