Programmer's IDE

Home Development Tools

Rhodes University Computer Science Honours Project 2009

Matthew van Cittert
Supervisor: Prof. Shaun Bangay

Introduction

Visual programming was a popular field of study from the mid 1980's to the mid 1990's. The main aim was to advance the way programs are written and represented, from simple text files to graphically based or assisted systems. In view of general programming, this drive was largely unsuccessful. Despite this, a lot of interesting research has been generated and many interesting systems developed. These range from visual front-ends for existing textual languages, to purely graphical languages which spatially parse pictures and diagrams as code.

Motivation

Modern IDEs have contributed solutions to many of the issues visual programming intended to address. They offer a number of tools to help navigate text files and generate commonly used templates of code. But the majority of IDEs tend to follow the same approach, usually consisting of a central text editor surrounded by tools to aid navigation and coding. Likewise, there are a number of visual programming packages available. But these too seem to follow a common approach, most often a series of graphical boxes that are linked together. This project aims to devise new representations, or bring together old representations in new ways, to help make the task of programming simpler, faster and less complicated.

Milestones

Project Proposal

This is a rough initial exploration of the topic, to help decide on the direction of the project. Some ideas are given only as rough points or questions, others are explored in more detail. Many of the ideas raised in this document have already been investigated in the literature. Others were interesting but out of the scope of the project. Finally a number of avenues and ideas are contained in the proposal that have either been implemented or added as possible extensions to the project.

Download Project Proposal [ pdf (4.22 mb) | zip (3.96 mb) ].

Program Specification

This document provides more details about the intended implementation of the project interface. It encompasses a brief survey of the solutions that already exist, where there is room for improvement, and possible solutions that could have been considered for this project.

Download Program Specification [ pdf (164 kb) | zip (154 kb) ].

Mock Interface

Based on the program specification, the mock interface is a prototype of the possible end product produced in the course of the project. This prototype has been important in realising and finding solutions to issues likely to occur throughout the project's development. It has also been important in expressing the ideas and plans for the project to those interested. This has made feedback and critique possible, which has then been used in developing the final project interface.

Download MockInterface (Win32/Win64) [ exe (1.77 mb) | zip (696 kb) ].

Poster

This is a poster detailing the project aims and the significant parts of the final program.

Download Poster [ png (4.76 mb) | zip (4.56 mb) ].

Project Presentation

This is the final presentation given on the project, presented to the honours class and any interested members of the Rhodes Computer Science faculty.

Download Final Presentation [ ppt (1.09 mb) | zip (777 kb) ].

Final Writeup

This is the final writeup of the project. The workings of the results which accompanied the writeup on a separate CD-Rom are also available below.

Download Final Writeup [ pdf (594 kb) | zip (501 kb) ].

Download results used in Final Writeup [ xls (135 kb) | zip (33.5 kb) ].

Links

Home - introduction to the project and links to project documents.

Development log - weekly progress reports.

Tools - local copies of the tools used in development.