Bohužel, OOP je dnes příliš široký pojem. Takže bych možná volil opačnou cestu - jazyk a s ním i "jeho" pojetí OOP. Člověk zvyklý na "objektové" programování v C++ bude mít potíže s Javou a Ruby nerozdejchá vůbec. Buď uzná, že to nedává a půjde od toho (ta lepší varianta), nebo se bude pokoušet "objektově" programovat tak, jak je zvyklý z C++. A až to po něm bude číst javista resp. rubista, to bude takových nadávek...
Jinak co se mě týče, tak jsem céčkař, který se pak učil C++ a s ním i OOP, ale nějak jsem to tenkrát nepochopil a nic mi to neříkalo, co učebnice a jiní c++kaři považovali za úžasné, mi připadalo jako celkem zbytečné, ne-li přímo otravné, neustále mi unikaly ty úžasné výhody OOP. Zdrojáky programů v C++ mi připadaly delší a nepřehlednější než odpovídající kód v C, aniž by to přinášelo nějaké významné výhody, a tohoto dojmu jsem se nezbavil dodnes.
Po nějakém čase jsem se - na základě doporučení vyvolaném podobným žehráním, jako jsem napsal k C++ tady, ale před zkušenějším kolegou - dostal ke Smalltalku, u něhož si živě vzpomínám na ten moment, kdy by člověk vykřikl "heuréka!" Tím byl můj pohled na OOP zformován a tím jsem odsouzen k jazykům jako Objective C, Ruby, Python apod., chci-li psát objektově, aniž bych přitom musel nadávat jak špaček, jako je tomu u Javy nebo nedej bože u C++.
Když bych se ale zamyslel, kolik projektů bylo C++ a kolik Python, tak bych musel říct, že na chleba jsem si vydělával tím C++. A vydělávat si prací, kterou od srdce nesnášíte...