Build parser to construct abstract syntax tree (AST) out of tokens using Shunting Yard algorithm by Dijkstra.
Build tokenizer from scratch to split math expression into tokens: numbers, variables, operations, etc.
Scrape any website using NodeJS & PhantomJS, whether it's simple static page or modern web application on React/Angular.