If you ever took a coding job test on a machine, you will probably frown if you couldn’t make your code to compile. Your program might be almost right, but due to some silly bug, unidentified in a small time frame, you will get a ZERO.
Not any more! Aspiring Minds’ research team has created a technology which can detect how good the program’s algorithm is, even if it doesn’t compile.
How do we do it? First, we can fix some of the codes using artificial intelligence. By looking at patterns in good compilable codes, our algorithms minimally modify existing programs to make them compilable. By using this approach, we can compile 40% of uncompilable codes. Once compilable, our patented machine learning based algorithm can generate a grade which mimics human raters.
Fancy as it may seem, we had a harder problem to solve. What about the codes that do not compile? Using smart static analysis of codes, we are able to derive features, signatures of the logic of the program, from these codes automatically. With these features and a customized form of our machine learning algorithm, we can provide grades as accurately as you could think!
On a set of programs attempted for a job in a large e-commerce player in USA, we find that 46% codes were not compiling, but weren’t blank.
Our AI based algorithm found that 6% of these codes, for 596 students, had nearly correct logic. Another 29% candidates, with a little bit of guidance, would have reached the right logic. All these candidates deserved a shot with the company!
In another data set of a technology giant in China, we find that 27% candidates whose codes do not compile, have sound programming logic.
What is more? Our AI algorithm can provide feedback to all candidates whose code do not compile. To some, we can tell how to fix their programs and make them to compile. To all, we can give them feedback on their algorithmic approach, tips to reach the correct logic and provide feedback on the stylistic and maintainability issues in their code.
Disappointed with coding platforms which gives everyone a poor score and no feedback… We have corrected this for all times to come!