why to learn - shells