Before you start coding your own shortcodes or extensions, check out if they are not already written at Bumblebee Samples documentation.