I mainly code in Python (or Bash, if the projects is just a handful of scripts and Python doesn't add much). When I need a webserver, I use Python/Flask.
My environment consists of Linux (here are my dotfiles), vim, Sublime Text, Pycharm, and a Raspberry. And StackOverflow, of course.
More recently, I've been interested in learning Rust, and graph-oriented databases, via Neo4j.
Generally speaking, when I start a new project :
A solution may already be there, but I'd prefer to learn by creating it myself, and deploying it my way
It's an occasion to learn new languages, Python modules or coding techniques