Inspiration

Most programming languages use English keywords such as if, return, print, and while. For many beginners around the world, especially non-English speakers, this becomes a hidden barrier to learning programming. Students often struggle with two things at the same time: learning programming concepts and understanding English programming vocabulary.

Our idea was inspired by the question:

What if beginners could start coding using their own language while gradually learning real Python syntax?

We wanted to build a tool that helps people learn programming and programming vocabulary at the same time instead of forcing them to memorize English keywords before they even understand how coding works.

That idea became Atty, a multilingual programming learning tool.

What it does

Atty allows users to write Python-style code using their native language and run it immediately.

Currently Atty supports:

  • Korean
  • Spanish
  • Farsi

The system translates native keywords into standard Python and executes the program.

For example:

출력("Hello")

is automatically converted to:

print("Hello")

before execution.

How we built it

Atty is composed of several components working together.

VS Code Extension We built a custom Visual Studio Code extension using:

  • TypeScript
  • VS Code Extension API
  • Custom command palette commands
  • Inline editor decorations for hints and quizzes

Challenges we ran into

One challenge was accurate language detection. Some languages contain very short tokens that could be confused with variables. For example: y means "and" in Spanish but y could also be a variable in another language To solve this, we designed a weighted keyword detection system where longer keywords contribute more weight to the language score. Another challenge was Right-To-Left text rendering for Farsi. Standard developer terminals display Arabic-based scripts incorrectly, so we implemented a character-level correction method to ensure the output appears correctly. We also had to carefully design the extension to avoid interfering with normal coding workflows while still providing interactive quizzes and hints.

Accomplishments that we're proud of

We are proud that Atty successfully combines several systems into one tool: a multilingual programming environment a VS Code extension a code translator an interactive learning system AI-powered error explanations Most importantly, the tool demonstrates a new approach to programming education by teaching programming and language simultaneously.

What we learned

During this project we learned a lot about: building VS Code extensions with the Extension API designing language parsing systems working with multilingual text and Unicode creating interactive learning experiences inside code editors integrating AI APIs into developer tools We also learned that developer tools can be powerful educational platforms when designed with beginners in mind.

What's next for Atty

  • Our next goals for Atty include:
  • supporting more languages.
  • adding more advanced Python vocabulary
  • adding progress tracking for learners

Built With

Share this project:

Updates