Для разработчика (если ты не visual studio и *.net разработчик) оптимальный выбор - linux, инструментарий в первую очередь там, удобно просто, наибольшее сообщество, когда как под windows весь этот инструментарий тестируется не так хорошо.
Особенно тяжело новичкам, настраивать окружение и тулчейн в windows сильно сложнее, когда как в linux многое 'из каропки'.
Выбор версии linux не так критичен с точки зрения разработки, но вот как новичку важно сообщество.
Я бы рекомендовал ubuntu (точнее xubuntu или другие не unity версии, но это вкусовщина, все равно все меняется и доустанваливается в процессе одной командой), многие рекомендуют mint, основана она на debian как и ubuntu, но когда речь идет о дополнительных репозитариях и бакпортах (новые версии популярных пакетов, не выпускаемых для твоей версии ос), то ubuntu становится вне конкуренции