This is only anecdotal evidence but from my past encounters with programmers at various workplaces the programmers that understand the fundamentals of parsing and interpreting seem to be overall better programmers. They also tend to be less religious about their tools. My subjective experience indicates they tend to write better code as well. I've mostly worked with application programmers and I know this is a very limited sub-discipline of programming in general so take my limited experience for what it is and nothing more.

What are some other foundational components of CS that tend to be correlated with programming skill and ability? I'm assuming some basic understanding of basic data structures so that's a given.

  • 1
    I feel that the question is too broad and might be mostly opinion based. You're basically asking "how to judge if that programmer is a good programmer?". Having said that I am interested if anyone can give an interesting answer :) Commented Jan 21, 2014 at 9:31
  • 2
    I generally find that most good programmers have some area of programming theory that isn't the current "cool" language or technology that, once they've started talking about, can only be stopped by straight up telling them to stop. Basically, showing enthusiasm for something non-trivial.
    – Phoshi
    Commented Jan 21, 2014 at 9:32
  • 2
    Knowledge of the language implementation techniques is essential and applicable in all the areas of software development. For one simple reason: Domain Specific Languages. So it's not a "very limited sub-discipline", it's one of the most important skills. Much more important than, say "object-oriented programming" or "design patterns".
    – SK-logic
    Commented Jan 21, 2014 at 15:43

2 Answers 2


I think that parser and interpreter knowledge may correlate with skill simply because most people who are very interested in programming, and thus more likely to have higher skills in programming, have at some point written a parser themselves or taken at least a compiler course in higher education.

This of course assumes that interest in programming leads to higher skill in programming, which I think it does. But then you could likely say that most other advanced programming topics correlate with programmer skill.

  • +1. Correlation does not imply causation. Good programmers often like parsers and interpreters because they're interesting programming problems - to them.
    – Tom W
    Commented Jan 21, 2014 at 12:32

I think it. depends on your environment. For example I work in banking and finance. The most productive programmers there are those who are numerate, i.e. can look at numbers and understand what they mean. Understanding parsers etc but not understanding the numbers will not help you as much.

Those who understand parsers are more likely to have undergone extra training in computer science and so understand more things in computing.