Mathias Ricken

Mathias Ricken




Curriculum Vitae (pdf)
(doc)  (txt)  (embedded)

Resume (pdf)
(doc)  (txt)  (embedded)


External linkArchive on A Concurrent Affair

RSSPublication RSS Feed

Research Projects

Concutest: A Framework for Testing Concurrent Programs

Mint: Multi-stage Programming for Java

xajavac: Extended Annotations-Enabled javac

LAPT-javac: Local Variable-Enabled javac

DrJava IDE

Programming for Change: The Temperature Calculator

Object-Oriented Design Festival

Design Patterns for Parsing

Assignments for an Objects-First Curriculum

Design Patterns for Marine Biology Simulation

Geometry Synthesis


Geometry Synthesis by Analogy


External linkCOMP 410 - Software Engineering Methodology

Past Classes


External linkA Concurrent Affair

External linkMy
External linkPapers
External linkTalks
External linkTeaching

      DrJava Integrated Development Environment

Although I had done some work before and a lot of the work dates back to 2001, in the spring of 2006 I really started to work on DrJava, an integrated development environment for Java especially suited for beginners, and the major software product of our research group, the JavaPLT. DrJava provides a fully-featured "interactions" window to shorten the edit-compile-run-debug cycle.

Although I have worked on many simple (or not so simple) bugfixes, just like most other DrJava developers, I have contributed many major improvements of the development environment:

  • Improved Error Interface
  • Go to File (and Predictive Input Dialog for Other Purposes)
  • Limited "Go to Definition"
  • Limited "Complete Word under Cursor"
  • Open Javadoc Under Cursor
  • Clipboard History
  • Selection of Multiple Documents for Context Menu Actions
  • Persistent Breakpoints
  • Other Debugger Improvements
  • Bookmarks
  • Find All (multiple searches, each underlined in a different color)
  • Drag and Drop of Files
  • Connecting to an Existing Instance of DrJava
  • Automatic Import of Java Classes in the Interactions Pane
  • External Process Facility and Small Scripting Language
  • Extended DrJava to a Research Compiler Platform, integrating the Java Mint, NextGen and Habanero Java compilers
  • Detachable Tabbed Panes, Debugger Window, and other User Interface Improvements
  • Updated documentation

Please take a look at the main DrJava website and the SourceForge project website.

There are some DrJava-related downloads available in this directory.

DrJava has been quite successful recently; it started as a project used internally at Rice, and now we regularly have 1,000 downloads a day at the beginning of a semester. Here are some graphs. Sometimes SourceForge is too stressed and they do not load; in that case, please click on the text link and try again.

DrJava Download History Statistics, last two months:
DrJava Download History Statistics, last two months

DrJava Download History Statistics, last 12 months. Here you can quite clearly see that downloads peak at the beginning of the academic year and also at the beginning of the Spring semester:

DrJava Download History Statistics, all time. Look how we have grown since the project went public early in 2002:
DrJava Download History Statistics, all time

We haven't exactly been good at closing our tracker items (bug reports, feature requests and support requests). As you can see, we tended to keep tickets open, and it wasn't until January 2008 that I went through all the items and closed the ones that had been resolved. Up to that point, the average age of unclosed tracker items was over three years!

DrJava Tracker Traffic Statistics

Just for fun, here are some statistics about lines of code: Whoever last touched a line owns it.

There is also some interesting information at the Ohloh DrJava Project Page, an open source information aggregator: Code statistics and contributors.

Other DrJava-Related Work

I have been involved in other work that is related to DrJava.

Copyright © 2002-2011 by Mathias Ricken. All rights reserved.