I need to store profile pictures on our servers. The profile pictures will be used on the web and mobile devices. The largest use is 400 x 400 pixels. On high res devices that's 800 x800. Should I assume that resolution of future devices will increase and store larger images? Do I really need 800 x 800 for a 400 x 400 image?
Because you will be sending these images over the web you should strongly consider storing multiple versions of the image in different sizes (i.e., 32 x 32, 200 x 200, 400 x 400, 800 x 800). This is for several reasons:
- Disk space is (relatively) cheap
- You can now serve an optimally sized image for whatever context it is needed in (thumbnail, high def, retina, etc.)
- You have smaller images available for mobile clients, which reduces load time (and thus improves user experience)
It's worth noting that in the web world this approach is gaining steam (look up "responsive images").