Google open-sourced TensorFlow in November and I've been experimenting with it on and off since finishing my thesis. The honest verdict after a few weeks: it's impressive, it's confusing, and I'm not sure it's ready to replace Theano for serious work yet.
The computation graph model
The core concept in TensorFlow is that you don't execute operations immediately. You build a graph of operations first, then run the graph inside a Session. This is different from how most Python code works and it takes a while to adjust to.
The upside is that the graph can be optimized and distributed across devices before anything runs. The downside is that debugging is harder because errors don't surface where you'd expect them, and the mental model adds friction when you're still learning the basics.
I spent an embarrassing amount of time confused about why my variables weren't updating before I understood that you have to explicitly initialize them inside the session.
Where it's rough
The API is unstable. Things I read in a tutorial from two months ago are already outdated. Variable scoping is confusing. Error messages are not helpful. Documentation exists but it often describes what something does without explaining when you'd want to use it.
For learning, I still find Theano clearer to reason about, even though the syntax is more painful. At least when something breaks you can usually tell why.
Where it's promising
The visualization tooling (TensorBoard) is genuinely good. Being able to see the graph structure and training curves in a browser is useful in a way I didn't expect. That alone is worth something.
And it's Google. The engineering behind it is serious. I don't think the rough API is a signal about the project's trajectory, it's just a v0 that's moving fast.
Where I'm landing
I'll keep using it for experiments but I'm not building anything production-critical on it yet. The ecosystem will catch up. In six months this will probably be a different conversation.
If you're just getting into deep learning and haven't committed to a framework, I'd still suggest starting with something simpler. The concepts matter more than the tool at this stage, and TensorFlow 0.x adds enough friction that it can get in the way of learning the fundamentals.
Give it a year.
With gusto, Fatih.