Теория:

Все имена существительные относятся к одному из трёх родов:
  
мужской род — конь, мальчик, папа, воевода;
женский род — земля, мать, дочь, рожь;
средний род — кольцо, знамя, село;
 
а также общий род — плакса, нытик, тихоня, сирота.
В русском языке есть группа имён существительных общего рода, которые могут обозначать лицо мужского и женского пола:
большой (большая) сластена, мой (моя) коллега.
  
Существительные общего рода в современном русском языке имеют, как правило, разговорно-просторечную стилистическую окраску и выражают эмоционально-экспрессивную оценку неодобрительности.
Пример:
плакса (разг.), рохля (разг., неодобр.), забулдыга (простореч.), забияка (разг.) и т. д.; реже они являются стилистически нейтральными: калека (нейтр.), сирота (нейтр.) и т. п.
Несклоняемые имена существительные иноязычного происхождения распределяются по родам следующим образом:
 
к мужскому роду относятся названия лиц мужского пола (портье, конферансье),
названия животных и птиц (кенгуру, фламинго);
 
к женскому роду относятся названия лиц женского пола (леди, мадам);
 
к среднему роду относятся неодушевленные существительные (кашне, метро).
 
Обрати внимание!
к мужскому роду относятся слова кофе (напиток), сирокко (ветер), торнадо (ураган), сулугуни (сыр), пушту, бенгали и др.; названия языков народов мира;
 
к женскому роду относятся: цеце (муха), иваси (сельдь), кольраби (капуста), салями (колбаса);
 
существительные типа протеже, визави, хиппи, инкогнито относятся и к мужскому, и к женскому роду;
 
только во множественном числе употребляется слово жалюзи.
У несклоняемых имён существительных иноязычного происхождения могут наблюдаться колебания в роде, при этом одна из форм является стилистически нейтральной, а другая — разговорной.
Пример:
кофе (м. р., нейтр.) — кофе (ср. р., разг.); манго (ср. р., нейтр.) — манго (м. р., разг.); бренди (ср. р., нейтр.) — бренди (м. р., разг.) и т. д.
Род несклоняемых имён собственных иноязычного происхождения определяется по родовому слову:
 
Сочи — м. р. (город);
Миссисипи — ж. р. (река);
«Таймс» — ж. р. (газета);
Онтарио — ср. р. (озеро).
 
Род аббревиатур определяется по роду ключевого слова:
 
ВДНХ — ж. р. (выставка); ВВЦ — м. р. (центр) и т. п.

Примечание. Если аббревиатура склоняется, то род определяется по окончанию, например:
вуз (-а, -у, -ом, -е) — м. р. (ср.: высшее учебное заведение).
Род несклоняемых имён существительных обозначается синтаксически в формах прилагательных, причастий и т. д.
Пример:
крепкий кофе; сперва мадам за ним ходила, потом мосье её сменил (П.).
Обрати внимание!
При определении рода некоторых существительных возникают трудности; их надо запомнить:
тюль, -я (м. р.), шампунь, -я (м. р.), рояль, -я (м. р.), вуаль, -и (ж. р.).
В случае затруднений следует обращаться к орфографическому словарю.
Источники:
Гольцова Н. Г., Мищерина М. А., Шамшин И. В. Русский язык. — 8-е изд. — М.: ООО «ТИД "Русское слово — РС"», 2011. — 449 с.
Розенталь Д. Э., Теленкова М. А., «Словарь трудностей русского языка», 5-е изд., доп. — М.: Рус. яз., 1986. — 704 с.