smart alternatives