2015 – 2017
Adobe Comp CC is a design app for creating layouts and mockups on iOS. The resulting designs can be sent to Adobe InDesign, Photoshop, or Illustrator, or finished entirely within the application.
Comp was my primary project at Adobe. I worked to realize the features that required the closest collaboration between design and development, whether that meant creating prototypes to help arrive at a final design which would be handed off to another developer, or developing a feature from start to finish that couldn’t easily be defined initially by a designer and passed off to another developer.
Below are some of the features for which I was responsible.
Comp’s speed starts with its “drawing gestures”. You can sketch shapes with your finger, and have them translated into clean, editable objects on your canvas. Other gestures allow you to duplicate, copy and paste styles, delete objects, and more.
This was a major component of the app’s interface, and I was responsible for developing it from start to finish, creating internal tooling around it, leading the effort to port it to C++ for use in other applications, and more.
The shape recognition used with the drawing gesture system was created using a combination of hand-coded rules and machine learning based on data collected from beta-test users.
I wrote the algorithm, iterated on it to improve accuracy over time, and created internal tooling to support the process.
This feature allowed designs from Comp to be composited into images of devices or media in real-world situations, both as a quick way to judge its effectiveness in context, and for inclusion in design presentations.
I developed the feature from start to finish, including work on the compositing algorithms that ensured the results always looked realistic, created supporting tooling, and directed the photography and retouching.
An interface for creating and editing column grid and vertical or horizontal guides for a project. The grid can be created and edited visually or by entering numbers, and even overlapping guides can be easily selected, moved, and deleted.
When the iPad pro keyboard cover was released, I was responsible for brainstorming and implementing keyboard shortcuts to add to the app.
I spearheaded the development effort to support multiple formats in Comp. This included an interface to select a format from a list of presets, to create custom formats, and to change units of measurement. Vector previews of each format were dynamically generated, allowing formats to be quickly added or removed, and a user’s custom formats to be presented alongside the presets in a consistent manner.
I also worked with the design team to make sure we were providing a consistent experience when changing between different formats, units, and resolutions.
I coded a feature that would export a timelapse video of the creation of a project. This showed off the app’s unlimited undo history, and allowed designers do give a glimpse into their process.
Comp started as an iPad-only app, and its interface was heavily reliant on popovers. I worked closely with the design team to prototype the interface changes that would make the app universal (running on iPhones as well as iPads), then coded a custom “drawer” presenter to be used instead of popups on the iPhone.