If you learn hardware first, pointers are pretty easy. However, learning hardware inevitably slants your thinking towards solving ALL problems in those terms, which is bad for higher level architecture and design thought processes. When all you have is a hammer...