AI powered coding platform ‘understands’ programs that do not compile!

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.

 

syntax_error

 

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!

- Varun Aggarwal with Rohit Takhar
Learn more about Automata – our coding platform.

Plan what NOT to do in 2017!

A new year is on the horizon. For many people it is time to make resolutions about what to do in the coming year. This year, instead of focusing entirely on what you want to do, consider thinking more carefully about those things you want to avoid. Our recent research, also covered by WSJ print, found that the secret to success is knowing what NOT to do and then not doing it! For instance, there were many things during this past year that experts advised should not be done – such as NOT to do a Brexit, NOT to elect ultra-nationalist voices and NOT to demonetize one’s currency without a plan. Only time will tell whether these were actually bad decisions. We find that recognizing a bad decision and avoiding it is far more important for success than focusing on the best things to do.

NT01

Figure 1

Our evidence came from tracking job success. We found that the most successful salespersons, customer service agents and managers weren’t those who chose the “best” course of action in a given situation, but rather were those who knew what NOT to do in a situation and avoided those actions. For instance, in a situation when you are very late for a sales meeting, what one absolutely should not do is fail to apologize. On the other hand, there might be different ways one could apologize or show regret, some being better than others, as deemed by experts. However, our work showed choosing among these different ways of expressing regret was not predictive of one’s success in a sales job. What mattered was the ability to identify what should not be done (i.e., expressing no regret). The wrong response may seem obvious in this situation, but it isn’t obvious to everyone and is also not obvious for many other situations.

Our study was based on a methodology called situational judgment testing. We provided candidates with a series of specific situations and asked them to choose from among a number of possible ways to respond to each situation – a technique known as situational judgment testing or SJT (see Figure 2 for an example). We asked them to choose which of the options presented for each situation would be the best way to respond and which would be the worst. We then analyzed the data to see if their choices predicted actual job performance (such as sales targets achieved) for a few different roles.

Figure 2: Sample question from a SJT

We expected that the people who were most successful in the workplace would be those who were able to identify what experts in the field said were the best ways to respond to each scenario. It turns out that was not the case. Instead, what we found was that the people who were most successful on the job were those who were correctly able to identify the worst answer to a larger number of situations. They knew what course of action was important to avoid for more scenarios. Specifically, the correlation between the ability to correctly identify the worst responses and job performance ranged r = 0.28 to 0.33 and was statistically significant. By contrast, the correlation between the ability to correctly identify the best responses to the scenarios and performance ranged r = 0.14 to 0.16 and was not statistically significant.

This work has important ramifications, the first and most immediate of which is being able to filter and hire better performers simply by concentrating on whether they know how to avoid doing the wrong things, which are typically widely-agreed upon, rather than trying to find people who pick the best answer. This should influence interview methodologies, case based discussions and other ways of candidate evaluation.

Another significant contribution is to the field of situational judgment testing. Unlike IQ tests, situational judgment tests are traditionally hard to standardize. Different organizations, functions and cultures have different notions of the ‘best’ way to handle a situation. Thus, with the best answer philosophy, one needs to build different tests and scoring mechanisms for each. On the other hand, the contribution of our work is that the ‘worst’ answer is more universal and consistent across diverse environment. It suggests that the development of SJTs can be relatively standardized across fields of study in a way that has not previously been possible.

Above and beyond all of these, the results have implications for our daily lives. Specifically, the results suggest that maybe this year you ought to concentrate on what ‘not to do’ and train your mind to avoid those things! Our conjecture is that it will lead to better happiness to your lives.

Make a start and list out what things you will avoid doing in 2017. We have our top on the list…Not write boring blogs!

-Varun and Steve

World’s first automated motor skill test – exploiting the power of touch tablets

Results presented at Ubicomp 2016, Heidelberg, Germany

Knowledge and cognitive ability tests have been automated and are taken on computers for more than three decades now. Pretty much all of you would have taken a SAT, GMAT or a GRE. What about motor skills? They are needed for almost all vocational jobs, say a plumber’s manual dexterity in fixing a screw. The best tests for them still are these bulky boards, pegs and instruments.

pegpin
Fig 1. Manual motor skill testing equipment – Pegboard and Pinboard

No one till date really thought about exploiting the power of the touch interfaces to develop such tests. Touch screen based devices are now ubiquitous in form of mobile phones and tablets. We wanted to find whether we can test people’s skills, say in tailoring and machining, by making them do things on the tablet. We wrote creative apps to make them do various actions on a tablet — rotating their fingers, pinching them, moving their elbows and shoulders to trace… and so on.

touch1motor3

 

 

 

 

 

 

 

 

 

         Fig 2. Touch interface device (Tab)                                            Fig 3. Snapshots of our motor skills assessment apps

We reported in our Ubicomp paper, presented last week, that the scores from these tests actually do predict the speed and accuracy of industrial tasks done by machinists, tailors and machine operators. In fact, they are better predictors than the bulky manual tests! Our test scores can predict all parameters of task performance measured by us. The correlation ranges 0.19 to 0.37, similar to what a logical ability test would predict for a knowledge worker. In comparison, manual test scores correlate significantly only for 4 out of 7 task performance ratings and ranges 0.19-0.33.

This has great implications for the training and job matching of vocational workers. Using these apps, vocational job aspirants can test their motor skills at the comfort of their homes. They can get feedback and work on improving their skills. Also, if they perform well, they can generate credentials such as “Motor skills certified for a tailor” and highlight them to employers. The same assessments can be used by the industry to filter and recruit high performing employees.

We are happy to present the world’s first validated motor skill test. There is so much more opportunity for further research – figuring out which scores correlate to performance in which task, creating a job to score map, creating more innovative apps and so on… Let us do it with the power of the touch interface.

-Varun

The first interactive US Skill Demand Map- A big data approach

Jobseekers wish to know what skills are required by the industry in their region and also, what skills pay the most. So do institutions of higher and vocational education. Unfortunately, there is no information about this. It is considered hard to collate such information and the old school way of running surveys with corporations is time-consuming, expensive and mired by subjectivity.

We went after this problem the big data way – we scrapped some 4 million job openings from the web for the US, automatically matched them to our taxonomy of 1064 job roles and the 200+ skills required for these job roles. What did we get out of this? The US Skill Demand Map – For each state in the US, we know what percent of open jobs require a given skill and how much does a skill pay. For instance, see the Heat Map below — it shows how much does the software engineering skill pays in different US states.  All this is generated automatically and be updated in minutes every month based on the current open jobs in the market!

 Figure 1: Compensation for software engineering skill

Figure 1: Compensation for software engineering skill

This map is interactive. A jobseeker can enter his key skill to find which states demand it the most and which states pay for it the most. Additionally, s/he can scroll across the map to find the demand/compensation in each state for a given skill. On the other hand, the candidate can enter a state and find out top paying and high-demand skills in the state. Try it now!

Such analysis also helps us uncover policy trends (See our report). We found that agreeableness and finger dexterity are the most in demand skills after Information Gathering and Synthesis, which has the highest demand. One may see in the map below the states which have more percent of jobs requiring agreeableness and those where finger dexterity is required more often.

 

Figure 2: Skills in highest demand in each U.S. state (other than Information Gathering & Synthesis)

Figure 2: Skills in highest demand in each U.S. state (other than Information Gathering & Synthesis)

On the other hand, we can find the states which have the most demand and pay the most for say, analytical skills. New York pays the most for the skill, whereas the highest percent of jobs in Virginia need analytical skills. (See Figure 3)

Figure 3: Heat maps for demand and compensation for analytical skills

Figure 3: Heat maps for demand and compensation for analytical skills

The U.S. Skill Demand Map fills a major information gap in the labor market. To our knowledge, this is the first effort to objectively present the demand for skills across US states to aid better decision-making by job seekers. It is based on objective data, it is quick, accurate and user-friendly.

Trying to understand what skill to gain or how best to utilize your skills? Use our interactive map now!

-Varun