Addition to my answer
Excerpt from history of russian full adjectives
Initially slavic languages had the short adjectives only (as I know bulgarian language still have only short form adj).
Old russian had special pronouns that had the oblique case only: и [him, muscl], я [her] and е [him, neut].
To make a subject definite they used the combination [short adj] + [pronoun].
For example, "он добр и" [he is good himself]; "она добра я"; "оно добро е". During centuries the adjective and pronoun merged and resulted in so called full adjective. In colloquial speach the full adjectives are more popular nowadays. I prefer the short ones :) That's why there's <em>almost</em> no difference between them in russian.
A full adjective is used to qualify a noun (alike english language), e.g. *beautiful* girl, *good* book, *smart* guy {красивая девочка, хорошая книга, умный мальчик}
Short adjective is almost the same BUT have a "smell" of a verb. In other words a short adjective has a *predicative* meaning which implies *it cannot be used* as a full adjective *in front of* a noun. Transalating a short adjective to english we must use the verb 'to be'.
*In the most cases* there's no difference in meaning but speaker's preferences:
мальчик — умный/мальчик умён/boy is smart;
дом был чистым/дом был чист/ house was clean.
Лицо его было спокойным/Лицо его было спокойно :)
эта страна была богатой талантливыми людьми/эта страна была богата талантливыми людьми :)
The full adjective symbolizes something permanent or unchanging. By contrast, short adjectives describe something transient, fleeting, or temporary.
Я — счастливый [always, in general].
Я счастлив [right now]
Nevertheless you can use a full adjective here:
Я счастливый сегодня/я выгляжу счастливым/я счастлив [i looks happy]
And vice versa: Я всегда счастлив :)
Short guidelines to use :)
1. If in doubt then use the full adjective
2. If in english you want to say: [subj] is/are [adj], then you can use a short adjective in russian
3. Short adjective cannot be used in front of a noun because it holds predicative meaning corresponding to the english [to be] [adj].
4. Colloquial russian tends to use full adjectives
• Only a short form of an adjective can have a dependent form.
For example,
Моя́ страна́ бога́тая тала́нтливыми людьми́. - WRONG!
Моя́ страна́ бога́та тала́нтливыми людьми́. - My land is rich in talented people.
• The full form mostly decribes a constant situation, whereas the short one describle a temporary condition.
For example,
Лицо́ его́ бы́ло споко́йно. - His face was unworried.
У него́ споко́йное лицо́. - He has a calm face.
<em>(That is a bit subtle point, 'cause I believe I can find some phrases that don not reflect that rule. So, don't you rely on that too much.)</em>
• The short form reflects some feature in a more "categorical" way.
Он хи́трый. - He is cunning.
Он хитёр! - What a cunning person he is!
----
I've got all the material from here, you can look through it. Though it is Russian site.
http://videotutor-rusyaz.ru/uchenikam/teoriya/37-upotreblenieprilagatelnyhvrechi.html
Короткая форма используется для указания на !суть, !характер предмета или явления, а долгая для !описания его характеристик.
Короткая используется в основном с подлежащим, а длинная с дополнением, даже если дополнение опущено.
Например:
Она быстра.
Она очень быстрая (девушка).
Свежо преданье...
Это свежее преданье ...
Короткие формы отвечают на вопрос: каков ? какова ?, каково ?, каковы ?
Длинные формы отвечают на вопрос: какой ? какая ?, какое ?, какие ?
--------------------
Я не лингвист, поэтому не воспринимайте это всерьёз.
Просто ещё один вариант :)