Peter Corcoran UAB EE337 School work source code