Our brains are capable of solving many challenging real-world problems, such as focusing on one voice out of many at a loud cocktail party, navigating through a busy city intersection, recognizing a familiar face, and so on. Despite many decades of work by the engineering community, such problems remain computationally intractable even for the latest algorithms running on the fastest modern computers. One hope is that we can figure out how to do these things by studying neural systems in general and the cerebral cortex in particular. I will give a brief overview of cortical architecture and describe some of what is known about the activity of cortical neurons. I will then describe several theoretical and experimental approaches for getting a handle on computation in the brain with an emphasis on what some recent measurements suggest about the most basic aspects of cortical function, such as the relevant timescale and signal-to-noise ratio of signaling in the cortex and what this implies about the possible coding schemes at work. Only time will tell, but I will try to make a case for why there is hope for a principled understanding of computation in the brain and why one might imagine that neuroscience could be poised for a revolution in the not too distant future.