Educational programming assignments