|photo credit: Julia Manzerova via photopin cc|
The reality is neither one of them is wrong. They are both right. In order to see that James and Paul don't contradict each other its important to understand the historical context that they were writing in and the issues they were addressing in their letters. You see, in Romans Paul was dealing with the dangerous heresy that a person can be saved by keeping the law. Paul repeatedly emphasizes here (as he does in Hebrews, Galatians, Ephesians etc.) that it is impossible to perform your way into heaven. The only way is by Gods gift of salvation. A gift that cannot be earned. James, on the other hand, isn't dealing with this heresy. James is dealing with a totally different heresy - the idea that so long as you accept doctrinal truth in your head then you are saved. Therefore when James uses the word faith he uses it differently than Paul does. Paul uses faith to describe a genuine trust in Jesus. James uses faith to describe an intellectual assent to some abstract theological truth. According to James simply saying "yes I believe that's true" does not save you because it isn't real faith. Real faith doesn't just accept truth intellectually; it embraces the truth and applies it to life. Real faith is seen in the persons life not just his words. Therefore, good works are the evidence that you have been saved by grace through faith. A lack of good works (which results in the presence of sinful works) may be evidence that your faith is not genuine.