Riding the Wave: Understanding the Rise of Vibe Coding in Software Development