Ufora IDE

The Ufora IDE is an Angular.js web application that provided a streamlined coding experience for data scientists accessing the Ufora platform.

The Ufora platform provides a data analysis infrastructure built on a functional, implicitly parallel, JIT-compiled, data science language called Fora. It runs on Amazon AWS or onsite cluster installations.

The goal of Ufora was to automate the scaling of data and the execution of parallel computations. This empowers data scientists and quantitative analysts to write code that distributes to all the cores on a cluster without having to think about configuring or managing infrastructure. This means they should be able to write concise code (think Matlab, Mathematica, or R) but get massive scale to thousands of cores on gigabytes of data with the convenience of a web app.

This IDE faced a double-learning problem. First, users must learn a new programming language to get the full benefits of the Ufora platform. Next, they would need to learn to use a new IDE. To mitigate the learning curve, I designed the IDE to:

  1. present a high visibility, understand-at-a-glance mindset,
  2. provide multiple aids to learn Fora, and
  3. leverage common UI conventions to minimize the learning curve.

Technologies: JavaScript, Angular.js, D3.js, Node.js, HTML5, CSS3, Python, C++