I think deep nets solve isolated problems really well, problems such classification based on given training sets is very good. However we sometimes compare it to humans which is I think an error on our part, humans process lot more training data than the deep nets, the vast amount of data we process over the years is incomparable. Don't get me wrong, the architecture of deep nets are fine, it can learn anything given the data and the loss function -- but its difficult to formulate every human decision in some kind of loss function. Its really hard.