front end and algorithm practice