Adam Canady's blog

A Carleton College senior.

Integrated Design-Development Environment (IDDE)

Ever since my freshman year Data Structures class when I was introduced to interfaces in Java and the Eclipse IDE, I could instantly see the power behind abstracting how code works behind the scenes. You could develop now with the belief that certain functions did what they said they would, only to actually implement them later or use them out of a library. This is the kind of forward-thinking that will be taken one more step with the IDDE.

As I was laying out my most recent project, I was using a whiteboard, however, I wondered if that was the most efficient way to organize my thoughts. It would at least be a two-medium process - I’d have to scrawl everything onto the whiteboard, then translate the visual thoughts into pieces of code that actually make the application tick.

What if, instead of the two-medium process, there was a web app that enabled real-time collaboration for wireframing applications? Not wireframing in the traditional sense - it could start off as a purely visual process where a designer could lay out every view of the application that will be a part of the final product. Then developers could come in and decide how data would be inserted into the views, where it was stored behind the scenes, how APIs hooked up to sync external data, and handle routing between the different views.

It could even go so far as to allow devs to lay out the functions they’ll need to write, what parameters they’ll take and what they’ll return, and split everything up into appropriate files, organizing the codebase as development occurred.

The wireframe could evolve with the application - allowing designers to move buttons around, change the color scheme, and add new visual features while devs could implement the features as they were added.

Perhaps the IDDE would benefit both one-person ventures and massive development companies alike.

If, in a company, the design team was separated from the development team, the designers should be able to design what they want as they are the experts in art and user experience. Similarly, the developers have experience in implementation and deployment, so they should be able to handle the technical aspects. It’s not hard to see an IDDE creating a massive speed increase in update/bug-fixing time as one party would not have to wait for the other to complete whole chunks of changes, then become overwhelmed with the final product.

On the contrary, if a company had integrated designers and devs or single proprietor were to brave a project alone, she could have all of the work in one place, giving her a clear picture of what needs to be completed before launch to achieve the desired functionality.

Since the IDDE runs on a web app, it might even be possible to export Vagrant-style VMs for easy and surefire deployment. Batteries included, no assembly required.

Finally, the IDDE could be very modular. Perhaps it would suit a person only like to use the design module and share portions of it with hired development contractors.