Raspberry Pi creativity: A student-driven approach to teaching software design patterns | IEEE Conference Publication | IEEE Xplore