People who say 4GB on these cards is useless have clearly never tried them. It's absolutely nonsense. I myself have an MSI R9 380 4GB. On GTA V, 1080p, most settings on ultra, no MSAA, I'm getting around 3500mb VRAM usage with a solid 60 fps. No stuttering at all. I also have a friend who owns a GTX 960 2GB, and although he does run the game at about the same fps as me, he stutters sometimes, and textures struggle to load while travelling quickly through the city.
On games like GTA V, Shadows of Mordor, Attila Total War, the last Assassins Creed, Space Engineers, and some others it does go way over 2GB VRAM usage on 1080p. This list of games will only keep increasing with time. If you want to be futureproof, forget about 2GB VRAM cards.
As for which cards I recommend, I'd probably go with the 960. It overclocks very well, and will give you no issues. The R9 380 is faster, especially when overcloked, but some games clearly have some driver issues with AMD cards, such as horrible performance on games like the Total War series and Space Engineers.
Just my 2 cents.