A system comprising: one or more processors coupled to a memory; and one or more programs, wherein the one or more programs are stored in the memory and configured to be executed by the one or more processors, the one or more programs including instructions that: obtain, from a source code program, features, extracted from code snippets, associated with a first type of runtime error in one or more program statements of the source code program, the features representing a context of the first type of runtime error; and use a random forest classifier to classify the features into one of two classes (808 - 820), wherein a first one of the classes indicates that the features represent the first type of runtime error, the second one of the classes indicates that the features do not represent the first type of runtime error; utilize the random forest classifier in a software development tool to predict a likelihood of the first type of runtime error in the source code program; characterized by: wherein the random tree classifier includes a first stage and a second stage, wherein the first stage includes a first random forest that is trained on a first subset of the features, a second random forest that is trained on a second subset of the features, and a linear classifier that is trained on all the features, wherein the first subset and the second subset differ; wherein the first type of runtime error is use of an uninitialized variable as a reference parameter in a method invocation that returns an integral result. one or more processors coupled to a memory; and one or more programs, wherein the one or more programs are stored in the memory and configured to be executed by the one or more processors, the one or more programs including instructions that: obtain, from a source code program, features, extracted from code snippets, associated with a first type of runtime error in one or more program statements of the source code program, the features representing a context of the first type of runtime error; and use a random forest classifier to classify the features into one of two classes (808 - 820), wherein a first one of the classes indicates that the features represent the first type of runtime error, the second one of the classes indicates that the features do not represent the first type of runtime error; utilize the random forest classifier in a software development tool to predict a likelihood of the first type of runtime error in the source code program; characterized by: wherein the random tree classifier includes a first stage and a second stage, wherein the first stage includes a first random forest that is trained on a first subset of the features, a second random forest that is trained on a second subset of the features, and a linear classifier that is trained on all the features, wherein the first subset and the second subset differ; wherein the first type of runtime error is use of an uninitialized variable as a reference parameter in a method invocation that returns an integral result. obtain, from a source code program, features, extracted from code snippets, associated with a first type of runtime error in one or more program statements of the source code program, the features representing a context of the first type of runtime error; and use a random forest classifier to classify the features into one of two classes (808 - 820), wherein a first one of the classes indicates that the features represent the first type of runtime error, the second one of the classes indicates that the features do not represent the first type of runtime error; utilize the random forest classifier in a software development tool to predict a likelihood of the first type of runtime error in the source code program; characterized by: wherein the random tree classifier includes a first stage and a second stage, wherein the first stage includes a first random forest that is trained on a first subset of the features, a second random forest that is trained on a second subset of the features, and a linear classifier that is trained on all the features, wherein the first subset and the second subset differ; wherein the first type of runtime error is use of an uninitialized variable as a reference parameter in a method invocation that returns an integral result. wherein the random tree classifier includes a first stage and a second stage, wherein the first stage includes a first random forest that is trained on a first subset of the features, a second random forest that is trained on a second subset of the features, and a linear classifier that is trained on all the features, wherein the first subset and the second subset differ; wherein the first type of runtime error is use of an uninitialized variable as a reference parameter in a method invocation that returns an integral result.