I think I understand Popcorn's question. Can someone who learned how to program and refined their skills consider themself a good programmer even if they never studied computer science theory? That was the situation I found myself in when graduating high school and entering college. I had a passion for programming and had taught myself BASIC and assembly language. My skills for writing tight code were sharpened by freelancing several video games, written entirely in assembly language, while still in high school. I had the same doubts about my abilities, as I had never taken formal computer science courses. In college I received the education I desired. The good news is that a single course filled in most the gaps in my knowledge of programming. That course was Data Structures and Algorithms. Get yourself a good book on the topic. My textbook was Aho, Hopcroft and Ullman but there are better books available today such as The Algorithm Design Manual or Introduction to Algorithms. With passion, a little experience, and some education in data structures and algorithms, I think you could become a good programmer. lamont (link removed)