Have a middle schooler who is serious about computer science? Try Snap! also know as (Build Your Own Blocks) which is a visual drag and drop programming language. It can run right in the browser. There is nothing to download.