Ted Patrick - Demos & MAX @ Adobe Systems


Note: This is the personal blog of Ted Patrick. The opinions and statements voiced here are my own.



Generic Components and Services

DIGG IT!     3 Comments Published Monday, January 28, 2008 at 1:09 PM .

I moved this weekend and as I was boxing up all my stuff, I thought about generic components and services. Tape, cardboard, moving wrap, and a rental truck are all simple things but when you put them together they become something far more valuable. It seems simple to combine tape and cardboard, but when combined, they make another powerful component (box) and make a larger service possible (moving). During this strange line of thinking, I tried to find the characteristics that made the most sense when creating generic components and services, here are a few that came to mind:

Reusable
Can I use this component over and over?

Examples:
Can I use the same box N times? (box has some wear and tear but can be used N times)
Can I use a piece of tape N times? (tape is more single use, it gets unsticky)

Combinable
How easily can this component be combined with itself or another component?

Examples:
Tape + Tape + Cardboard = Box
Ink + Quill = Pen
((Box + stuff) * 35) + Truck + 9 hours = Move across town

Orthogonal
Are there side effects when I combine components? The fewer side effect, the easier things can be combined.

Example: Does the steering wheel (component) affect the gas peddle (component)? Say I turn right, does the car speed up? Say I turn left does the car slow down? Not good.

Malleable
Can I make a component do something it wasn't intended to do. Can I stretch it, bend it to make what I need?
Example: Splice two boxes to hold something unique in size/shape

Multi-purpose
How many different ways can I use a generic components or service?
Example: Tape and cardboard are used for many different things.

Runtime Assembly
Can you assemble new components at runtime? Can you combine components and make new components here and now without a recompile?

Example: HTML has a beautiful set of generic components that can be reassembled into billions of different configurations. Instead of sending down components, you send the recipe assuming all the generic elements are present.



During the move I found the most useful generic component to be moving wrap. This stuff is magic as it adds a little layer of plastic around things and sticks to itself. In packing up the kitchen I wrapped everything breakable in this stuff to protect it and bundle things together. It allowed me to take a stack of glasses and make them virtually unbreakable and one solid element. During the move not a single item broke or scratched and it was largely do to this wrap. It was a simple generic component that really improved my move.

I am looking to build IFBIN 2.0 atop generic components and services that can be reused in other applications. In designing out the component/services it is useful to explore how other applications might use these. As you think about building components and services for use within the applications you build, take a look at what can be made generic and reusable.

I am glad I am all moved!

Ted :)

3 Responses to “Generic Components and Services”

  1. # Anonymous savvasmalamas

    I just LOVE your EVANGELIZATION!
    Congratulations on the moving.  

  2. # Anonymous Emanuel

    I believe Combinable and Multi-purpose overlap, but still it's a great read.  

  3. # Blogger Scott

    I see you forgot to pack the mind expanding drugs in one of those boxes ;)  

Post a Comment

Where to find me:

Ted on Twitter - @AdobeTed
Ted on Adobe Groups
Ted on LinkedIn
Ted on Facebook
Ted at Adobe


Latest

Lists

Links

Jobs

Flex Jobs
city, state, zip

Archives