Intelligent Code Editor

ISU Senior Design Project (1st Place)
Fall 2019 - Spring 2020

Intelligent Code Editor is my team's senior design project that translates a natural lanaguge statement describing code into the equivalent Java code. I created the neural machine translation system (translates English to Java code) and had the role of Meeting Facilitator (project planning, task delegation, roadblock remover). The user will enter a natural language statement describing the code they want to write. Our system will then convert that statement to equivalent Java code.

Overview

  • Description: Intelligent Code Editor is a project that allows the user to enter natural language (English) representing code they want to write, and the system will convert that to equivalent Java code.
  • Results: Our group was able to complete this system with support for over 1,000 Java method invocations.
  • Impact: Our group won the Iowa State University 1st place award for best senior design project in Spring 2020.


  • Features

    • System that converts English to Java code
    • Created an automated method to mine Java method invocations from GitHub
    • Created an IntelliJ plugin that supports the translation
    • Natural language processing to help support the neural machine translation system
    • Dataset of natural language statements to Java method code translations


    • Resources

      Below there is a diagram that explains more specifics about the system and a video demonstrating the system.

      Skills

      Skills

      Team Leadership and Management 100%

      Research Paper Reading and Application 95%

      Neural Machine Translation 90%

      Natrual Language Processing 85%

      System Integration 80%

      Tools

      OpenNMT-py 100%

      Natural Language Toolkit (NLTK Python) 90%

      Java 75%