I think the moving (and talking) portraits in Harry Potter were cool. Guess what? We can do that now. They are even used in publicity and on (electronic) billboards. You can use them as Google + profile pictures but still can't use them on Facebook.
To be honest, they are not new. They are animated GIFs which is a format that has been around since 1989. It is a lot smaller than a video file and it is easy to integrate on different platforms. It is a series of frames running in a loop. The GIF file is small but unfortunately, it's limited to 256 colors.
The Cinemagraph was created by two Americans: the artiste Kevin Burg and the photographer Jamie Beck, in 2009. You can see some very nice examples on their website: http://cinemagraphs.com/
Cinemagraphs are photos with a moving part in it. It can be the hair that flows with the wind, blinking eyes, etc. There is a moving element but the background is static. I played a bit with that technique just for fun. They are not the best ones but that gives you an idea of what it is.
A company named Flixel makes a really great app (that is unfortunately only available on iOS) that allows you to easily create cinemagraphs (still hoping for the Android version). This app makes it really simple and fast to make this kind of moving portraits. They also launched a Pro version of the app that runs on Mac OS.
Cinemagraphs can easily be done in Photoshop. You can use a sequence of photos or a short video. For the photos, you open them as layers. For the video, import them as "videos frames to layers". You then open the Animation Window.
If you want them to run in a loop that looks fluid, you can select all the frames, make a copy, add them at the end of the other frames then use the command Reverse Frames in the Animation menu.
It is now time to select which part of the image that will be in motion. Select all the layers besides the bottom one and Group them then add a Black Layer Mask. With the brush tool, draw in white on the mask over the area that you want to be moving. After that, select the bottom layer and click on the option named Unify Layer Visibility (in the layers window).
Your moving portrait is now ready to export. You can do it with the Save for Web and Devices option from the File menu. Select GIF and in the lower right corner, you will see the Loop option.
You are done :)