By Nathaniel Watson
Supervised by Dr. David Bainbridge

Expeditee Is...

  • Hypermedia environment for organising ideas
  • Unique UX
  • Visually outdated

Expeditee Desktop

  • Modernize Expeditee
  • Expand it to the entire desktop

Hacking Android


  • Direct access to Android source
  • Long build times
  • Deployed as custom ROM
  • Hard to maintain
  • User must have root access
  • Install wipes device data
  • Can't use with custom ROMs

Hacking Android

With Xposed

  • Mods hooks into method calls
  • Can only inject code before & after methods, not inside
  • Deployed as Android apk
  • Easy to maintain
  • User must have root access
  • Installed like normal app
  • Automatic updates
  • Works with most Android versions (4.0.3+)


  • Right-click to pick up text*, drop into text fields
    *anything that's a descendant of android.view.TextView


  • Hover to focus, caret follows cursor
  • Custom cursor indicates possible actions

Porting Expeditee

Porting Expeditee

Desktop Expeditee:

  • Graphics mixed in with logic
  • Direct port would require also porting java.awt

Android Expeditee:

  • Graphics code completely separate from logic
  • Future ports should only require implementing graphics interfaces

Result: Basic Expeditee Viewer

  • Load framesets, view and navigate frames
  • Mouse or touch controls

Built with reveal.js, HTML5, SCSS + Bourbon, Animate.css.

Icons from Google's Material Design Icons (CC-BY).

Title image based on 3D model by Regus Martin (CC-BY).

Presentation source: github.com/nathanielw.