SlideShare uma empresa Scribd logo
1 de 48
Baixar para ler offline
Memi Beltrame

 Made by Many
On Collaborative Design
           phpday, may 15th 2009
                  Verona




 Memi Beltrame: Made by Many – On Collaborative Design
 6th phpDay – May 15th/16th 2009 Verona - Italy
Who I am: Memi Beltrame

 • Developping websites since 1997
 • Using php since 2000
 • 2003-2007 Study of cinematography
 • 2007 to present:
   specialising in frontend and interaction design
 • Since 2008 for Liip Agile Web Development
 • Movie enthusiast
 • 1st feature film in preparation... some day...


          Memi Beltrame: Made by Many – On Collaborative Design
          6th phpDay – May 15th/16th 2009 Verona - Italy
Why am I here?



    To raise awareness and to show the
     dynamics of collaborative design




          Memi Beltrame: Made by Many – On Collaborative Design
          6th phpDay – May 15th/16th 2009 Verona - Italy
Argh! Design! Go away, I am a Developer!




     Design is not only pushing pixels
    Designing means arranging stuff:
    Pixels, Databases, Code, Processes


          Memi Beltrame: Made by Many – On Collaborative Design
          6th phpDay – May 15th/16th 2009 Verona - Italy
Collaborative Design takes place
  whenever an artefact is planned
and/or implemented by two or more
           participants.



     Memi Beltrame: Made by Many – On Collaborative Design
     6th phpDay – May 15th/16th 2009 Verona - Italy
Typical Collaborative Design Areas
               Architecture
                Software
                 Movies!



    Memi Beltrame: Made by Many – On Collaborative Design
    6th phpDay – May 15th/16th 2009 Verona - Italy
The Internet is (probably) the
 biggest single instance of
    Collaborative Design




  Memi Beltrame: Made by Many – On Collaborative Design
  6th phpDay – May 15th/16th 2009 Verona - Italy
Collaborative Design is a reality.

  It is the inevitable process that
emerges when you build something
              as a team.



     Memi Beltrame: Made by Many – On Collaborative Design
     6th phpDay – May 15th/16th 2009 Verona - Italy
Unlike UCD or TDD it is nothing you
     choose, it just happens,
          nolens volens.


UCD: User centered design
TDD: Test driven development


         Memi Beltrame: Made by Many – On Collaborative Design
         6th phpDay – May 15th/16th 2009 Verona - Italy
It just happens, ok.

         Understand it.
          Control it.
          Embrace it.



Memi Beltrame: Made by Many – On Collaborative Design
6th phpDay – May 15th/16th 2009 Verona - Italy
Even the simplest
Customer < > Contractor Relationship
   involves Collaborative Design




     Memi Beltrame: Made by Many – On Collaborative Design
     6th phpDay – May 15th/16th 2009 Verona - Italy
It involves is a network of participants




       Memi Beltrame: Made by Many – On Collaborative Design
       6th phpDay – May 15th/16th 2009 Verona - Italy
The goal is a common product
  with a high overall utility




   Memi Beltrame: Made by Many – On Collaborative Design
   6th phpDay – May 15th/16th 2009 Verona - Italy
Every participant can propose
 solutions for design issues




   Memi Beltrame: Made by Many – On Collaborative Design
   6th phpDay – May 15th/16th 2009 Verona - Italy
In theory a Design should move
  towards an optimum of utility
Utility




                                        Time




          Memi Beltrame: Made by Many – On Collaborative Design
          6th phpDay – May 15th/16th 2009 Verona - Italy
In theory. Not in reality.

Utility




                                        Time




          Memi Beltrame: Made by Many – On Collaborative Design
          6th phpDay – May 15th/16th 2009 Verona - Italy
Why does collaboration
not automatically mean
     improvement?


  Memi Beltrame: Made by Many – On Collaborative Design
  6th phpDay – May 15th/16th 2009 Verona - Italy
Participants are inter-dependent.




     Memi Beltrame: Made by Many – On Collaborative Design
     6th phpDay – May 15th/16th 2009 Verona - Italy
Participants are inter-dependent.
    Inter-dependency means
       „I need something“



     Memi Beltrame: Made by Many – On Collaborative Design
     6th phpDay – May 15th/16th 2009 Verona - Italy
Every participant has a self-interest
                                            Customer:
                                            Affordable yet magic

Developer:
solid, stable and performing



                                               Designer:
                                               beautiful and usable




                Memi Beltrame: Made by Many – On Collaborative Design
                6th phpDay – May 15th/16th 2009 Verona - Italy
Fulfilling self-interest means
Reaching a local optimum of utility




      Memi Beltrame: Made by Many – On Collaborative Design
      6th phpDay – May 15th/16th 2009 Verona - Italy
Are participants willing to
compromise their self interest for
 the sake of a global optimum?




     Memi Beltrame: Made by Many – On Collaborative Design
     6th phpDay – May 15th/16th 2009 Verona - Italy
A   B      C       D           global Utility

    Memi Beltrame: Made by Many – On Collaborative Design
    6th phpDay – May 15th/16th 2009 Verona - Italy
A   B      C       D           global Utility

    Memi Beltrame: Made by Many – On Collaborative Design
    6th phpDay – May 15th/16th 2009 Verona - Italy
The system can become very complex
php-Developer           Grafics         Webserver admin
                                                     Management


                                                          Proxy guy
        Usability guy

                                                          Mobile Services admin

DB Specialist                                 DB Admin

                        Project Lead




                Memi Beltrame: Made by Many – On Collaborative Design
                6th phpDay – May 15th/16th 2009 Verona - Italy
It's hard to keep track of the
interactions and design decisions
                        Grafics         Webserver admin
                                                     Management
php-Developer

                                                          Proxy guy
        Usability guy

                                                          Mobile Services admin

DB Specialist                                 DB Admin

                        Project Lead




                Memi Beltrame: Made by Many – On Collaborative Design
                6th phpDay – May 15th/16th 2009 Verona - Italy
Subsytems can emerge
                        Grafics         Webserver admin
                                                     Management
php-Developer

                                                          Proxy guy
        Usability guy

                                                          Mobile Services admin

DB Specialist                                 DB Admin

                        Project Lead




                Memi Beltrame: Made by Many – On Collaborative Design
                6th phpDay – May 15th/16th 2009 Verona - Italy
Subsytems also have a local
optimum utility plus they are loyal!
                        Grafics         Webserver admin
                                                     Management
php-Developer

                                                          Proxy guy
        Usability guy

                                                          Mobile Services admin

DB Specialist                                 DB Admin

                        Project Lead




                Memi Beltrame: Made by Many – On Collaborative Design
                6th phpDay – May 15th/16th 2009 Verona - Italy
Every new participant brings a shift
in the oveall utility.




       Memi Beltrame: Made by Many – On Collaborative Design
       6th phpDay – May 15th/16th 2009 Verona - Italy
Every old participant must be aware
of this and accept it. Otherwise the
team is possibly ripped apart.




       Memi Beltrame: Made by Many – On Collaborative Design
       6th phpDay – May 15th/16th 2009 Verona - Italy
Successful Collaborative Design is
 based on the commitment of each
participants to achieve an optimum
          of overall utility.



     Memi Beltrame: Made by Many – On Collaborative Design
     6th phpDay – May 15th/16th 2009 Verona - Italy
How is that achieved?




Memi Beltrame: Made by Many – On Collaborative Design
6th phpDay – May 15th/16th 2009 Verona - Italy
● Raising awareness
● Remove barriers between you and the

  customer to form a team
● High iteration in the workflow

● Elaboration of interdisciplinary patterns

● Talk, talk, talk, talk!




        Memi Beltrame: Made by Many – On Collaborative Design
        6th phpDay – May 15th/16th 2009 Verona - Italy
An example of interdisciplinary patterns:

      The Undo Dilemma



        Memi Beltrame: Made by Many – On Collaborative Design
        6th phpDay – May 15th/16th 2009 Verona - Italy
A list of users to be administered

                              Edit Delete
                              Edit Delete


    Memi Beltrame: Made by Many – On Collaborative Design
    6th phpDay – May 15th/16th 2009 Verona - Italy
The Undo dilemma

                          Edit Delete
                          Edit Delete


Memi Beltrame: Made by Many – On Collaborative Design
6th phpDay – May 15th/16th 2009 Verona - Italy
What happens if you hit Delete?




   Memi Beltrame: Made by Many – On Collaborative Design
   6th phpDay – May 15th/16th 2009 Verona - Italy
What happens if you hit Delete?
Usually: a pop up!




   Memi Beltrame: Made by Many – On Collaborative Design
   6th phpDay – May 15th/16th 2009 Verona - Italy
Pop ups are Bad!
Avoid them!




     Memi Beltrame: Made by Many – On Collaborative Design
     6th phpDay – May 15th/16th 2009 Verona - Italy
Use Undo!



Memi Beltrame: Made by Many – On Collaborative Design
6th phpDay – May 15th/16th 2009 Verona - Italy
Because:
UNDO
• is the rescuer of users in distress.
• encourages exploration.
• eliminates sensless confirmation-dialogs


       ! Don‘t ask, do and UNDO !
         Memi Beltrame: Made by Many – On Collaborative Design
         6th phpDay – May 15th/16th 2009 Verona - Italy
Pop Ups are easy to implement,
                Undo is not.

It requires a well planned process




   Memi Beltrame: Made by Many – On Collaborative Design
   6th phpDay – May 15th/16th 2009 Verona - Italy
Frontend and backend people must
decide on a pattern of implementation.

This is a collaborative design decision.




      Memi Beltrame: Made by Many – On Collaborative Design
      6th phpDay – May 15th/16th 2009 Verona - Italy
Possible patterns of implementation of
         undo in the database:

           1) Through a Flag
      2) Through a history table


      Memi Beltrame: Made by Many – On Collaborative Design
      6th phpDay – May 15th/16th 2009 Verona - Italy
Implementation of Undo

 1) Through a FLAG
TABLE users                                   VIEW view_users
-------------------------------------         ------------------------
| ID | name | surname | is_deleted |          | ID | name | surname |
-------------------------------------         ------------------------
| 1   | Pio | Polli    |     0      |         | 1   | Pio | Polli    |
-------------------------------------         ------------------------
| 2   | Enzo | Enzi    |     1      |         | 3   | Toni | Marroni |
-------------------------------------         ------------------------
| 3   | Toni | Marroni |     0      |
-------------------------------------         SELECT * From `users`
                                                       WHERE is_deleted = 0

       • simple
       • Ideal to undo deletions
       • Downside: data may be materialized twice


             Memi Beltrame: Made by Many – On Collaborative Design
             6th phpDay – May 15th/16th 2009 Verona - Italy
Implementations of undo

 2) Through a history table
TABLE users                     TABLE users_history
------------------------        ----------------------------------
| ID | name | surname |         | ID | ID_users | name | surname |
------------------------        ----------------------------------
| 1   | Pio | Polli    |        | 1 |     1     | Pio | Polli    |
------------------------        ----------------------------------
| 2   | Enio | Enzi    |        | 2 |     2     | Enzo | Enzi    |
------------------------        ----------------------------------
| 3   | Toni | Marroni |        | 3 |     3     | Toni | Marroni |
------------------------        ----------------------------------
                                | 4 |     2     | Enio | Enzi    |
                                ----------------------------------
Table users: every change is     Table users_history: every change
an UPDATE                        also executes an INSERT



             Memi Beltrame: Made by Many – On Collaborative Design
              6th phpDay – May 15th/16th 2009 Verona - Italy
Implementations of undo

 2) Through a history table
    Pros
    • Allows endless undo
    • Works as a history
    • Is not limited to a single data entry
    • allows „edit in place“ on a high level

    Cons
    • Needs a more complex system
    • Executes more SQL queries and creates more traffic and data




              Memi Beltrame: Made by Many – On Collaborative Design
              6th phpDay – May 15th/16th 2009 Verona - Italy
Thank you!
Slides: http://slides.liip.ch



 Memi Beltrame: Made by Many – On Collaborative Design
 6th phpDay – May 15th/16th 2009 Verona - Italy

Mais conteúdo relacionado

Destaque

Embracing Collaborative Design
Embracing Collaborative DesignEmbracing Collaborative Design
Embracing Collaborative DesignMemi Beltrame
 
Clear Language and Readability
Clear Language and ReadabilityClear Language and Readability
Clear Language and ReadabilityMemi Beltrame
 
Dynamic A/B testing with AB/CD
Dynamic A/B testing with AB/CDDynamic A/B testing with AB/CD
Dynamic A/B testing with AB/CDMemi Beltrame
 
Mind the Gap: On Gender And Technology
Mind the Gap:  On Gender And TechnologyMind the Gap:  On Gender And Technology
Mind the Gap: On Gender And TechnologyMemi Beltrame
 
Follow the Flow - Essentials of User Interaction Design
Follow the Flow - Essentials of User Interaction DesignFollow the Flow - Essentials of User Interaction Design
Follow the Flow - Essentials of User Interaction DesignMemi Beltrame
 
Prototyping and Scrum
Prototyping and ScrumPrototyping and Scrum
Prototyping and ScrumMemi Beltrame
 
Elements of UX Design
Elements of UX DesignElements of UX Design
Elements of UX DesignMemi Beltrame
 
Just Married: User Centered Design and Agile
Just Married: User Centered Design and AgileJust Married: User Centered Design and Agile
Just Married: User Centered Design and AgileMemi Beltrame
 
The User Experience of Near Field Communication
The User Experience of Near Field CommunicationThe User Experience of Near Field Communication
The User Experience of Near Field CommunicationMemi Beltrame
 
Creating ‘Just-in-Time’ Resources for Faculty and Students: Using Technology ...
Creating ‘Just-in-Time’ Resources for Faculty and Students: Using Technology ...Creating ‘Just-in-Time’ Resources for Faculty and Students: Using Technology ...
Creating ‘Just-in-Time’ Resources for Faculty and Students: Using Technology ...ottumtk
 
IoT Smart Home Innovation R&D White Space Insights from Patents
IoT Smart Home Innovation R&D White Space Insights from Patents IoT Smart Home Innovation R&D White Space Insights from Patents
IoT Smart Home Innovation R&D White Space Insights from Patents Alex G. Lee, Ph.D. Esq. CLP
 

Destaque (19)

Scope & co
Scope & coScope & co
Scope & co
 
Content Strategy
Content StrategyContent Strategy
Content Strategy
 
Embracing Collaborative Design
Embracing Collaborative DesignEmbracing Collaborative Design
Embracing Collaborative Design
 
Clear Language and Readability
Clear Language and ReadabilityClear Language and Readability
Clear Language and Readability
 
Dynamic A/B testing with AB/CD
Dynamic A/B testing with AB/CDDynamic A/B testing with AB/CD
Dynamic A/B testing with AB/CD
 
Mind the Gap: On Gender And Technology
Mind the Gap:  On Gender And TechnologyMind the Gap:  On Gender And Technology
Mind the Gap: On Gender And Technology
 
Follow the Flow - Essentials of User Interaction Design
Follow the Flow - Essentials of User Interaction DesignFollow the Flow - Essentials of User Interaction Design
Follow the Flow - Essentials of User Interaction Design
 
Prototyping and Scrum
Prototyping and ScrumPrototyping and Scrum
Prototyping and Scrum
 
Elements of UX Design
Elements of UX DesignElements of UX Design
Elements of UX Design
 
Just Married: User Centered Design and Agile
Just Married: User Centered Design and AgileJust Married: User Centered Design and Agile
Just Married: User Centered Design and Agile
 
The User Experience of Near Field Communication
The User Experience of Near Field CommunicationThe User Experience of Near Field Communication
The User Experience of Near Field Communication
 
Samsung v. Apple ITC MARKMAN Disputation
Samsung v. Apple ITC MARKMAN DisputationSamsung v. Apple ITC MARKMAN Disputation
Samsung v. Apple ITC MARKMAN Disputation
 
Abadia de Melk - Áustria
Abadia de Melk - ÁustriaAbadia de Melk - Áustria
Abadia de Melk - Áustria
 
Ilhas Falklands
Ilhas FalklandsIlhas Falklands
Ilhas Falklands
 
Creating ‘Just-in-Time’ Resources for Faculty and Students: Using Technology ...
Creating ‘Just-in-Time’ Resources for Faculty and Students: Using Technology ...Creating ‘Just-in-Time’ Resources for Faculty and Students: Using Technology ...
Creating ‘Just-in-Time’ Resources for Faculty and Students: Using Technology ...
 
1 froga
1 froga1 froga
1 froga
 
Esculturas em neve
Esculturas em neveEsculturas em neve
Esculturas em neve
 
IoT Smart Home Innovation R&D White Space Insights from Patents
IoT Smart Home Innovation R&D White Space Insights from Patents IoT Smart Home Innovation R&D White Space Insights from Patents
IoT Smart Home Innovation R&D White Space Insights from Patents
 
Chateaux d'Europe
Chateaux d'EuropeChateaux d'Europe
Chateaux d'Europe
 

Semelhante a Made by Many: On Collaborative Design

Symfony Day 2009 - Symfony vs Integrating products
Symfony Day 2009 - Symfony vs Integrating productsSymfony Day 2009 - Symfony vs Integrating products
Symfony Day 2009 - Symfony vs Integrating productsXavier Lacot
 
Cloudify your applications with Amazon Web Services
Cloudify your applications with Amazon Web ServicesCloudify your applications with Amazon Web Services
Cloudify your applications with Amazon Web ServicesFederico Feroldi
 
Embracing Collaborative Design
Embracing Collaborative DesignEmbracing Collaborative Design
Embracing Collaborative DesignUXconference
 
CloudFoundry-summit-2015-a-look-back
CloudFoundry-summit-2015-a-look-backCloudFoundry-summit-2015-a-look-back
CloudFoundry-summit-2015-a-look-backKrishna-Kumar
 
Monetizing Firefox extensions
Monetizing Firefox extensionsMonetizing Firefox extensions
Monetizing Firefox extensionsDaniel Glazman
 
Tools of the Trade: Morae
Tools of the Trade: MoraeTools of the Trade: Morae
Tools of the Trade: MoraeJackson Fox
 
Mq light For Guide Share Europe 2014
Mq light For Guide Share Europe 2014Mq light For Guide Share Europe 2014
Mq light For Guide Share Europe 2014Robert Nicholson
 
EASI Notes Briefing Sessions - Nivelles
EASI Notes Briefing Sessions - NivellesEASI Notes Briefing Sessions - Nivelles
EASI Notes Briefing Sessions - NivellesQuentin Poncelet
 
Which Tools Are The Best For Symfony Projects_.pdf
Which Tools Are The Best For Symfony Projects_.pdfWhich Tools Are The Best For Symfony Projects_.pdf
Which Tools Are The Best For Symfony Projects_.pdfMoon Technolabs Pvt. Ltd.
 
Magento eCommerce And The Next Generation Of PHP
Magento eCommerce And The Next Generation Of PHPMagento eCommerce And The Next Generation Of PHP
Magento eCommerce And The Next Generation Of PHPvarien
 
Next Generation Browser Add-Ons
Next Generation Browser Add-OnsNext Generation Browser Add-Ons
Next Generation Browser Add-OnsAnant Narayanan
 
Which Tools Are The Best For Symfony Projects_.pdf
Which Tools Are The Best For Symfony Projects_.pdfWhich Tools Are The Best For Symfony Projects_.pdf
Which Tools Are The Best For Symfony Projects_.pdfMoon Technolabs Pvt. Ltd.
 
Domino Vs Exchange App Dev
Domino Vs Exchange App DevDomino Vs Exchange App Dev
Domino Vs Exchange App Devdominion
 
Puppet Camp Berlin 2014: Module Rewriting the Smart Way
Puppet Camp Berlin 2014: Module Rewriting the Smart Way Puppet Camp Berlin 2014: Module Rewriting the Smart Way
Puppet Camp Berlin 2014: Module Rewriting the Smart Way Puppet
 
Keys to successful community growth with mobile
Keys to successful community growth with mobileKeys to successful community growth with mobile
Keys to successful community growth with mobileMobileMonday Switzerland
 
Wireless Wednesdays: Part 1
Wireless Wednesdays: Part 1Wireless Wednesdays: Part 1
Wireless Wednesdays: Part 1Teamstudio
 
Evaluation question 4
Evaluation question 4Evaluation question 4
Evaluation question 4caljoe97
 

Semelhante a Made by Many: On Collaborative Design (20)

Symfony Day 2009 - Symfony vs Integrating products
Symfony Day 2009 - Symfony vs Integrating productsSymfony Day 2009 - Symfony vs Integrating products
Symfony Day 2009 - Symfony vs Integrating products
 
Cloudify your applications with Amazon Web Services
Cloudify your applications with Amazon Web ServicesCloudify your applications with Amazon Web Services
Cloudify your applications with Amazon Web Services
 
Embracing Collaborative Design
Embracing Collaborative DesignEmbracing Collaborative Design
Embracing Collaborative Design
 
CloudFoundry-summit-2015-a-look-back
CloudFoundry-summit-2015-a-look-backCloudFoundry-summit-2015-a-look-back
CloudFoundry-summit-2015-a-look-back
 
Monetizing Firefox extensions
Monetizing Firefox extensionsMonetizing Firefox extensions
Monetizing Firefox extensions
 
Tools of the Trade: Morae
Tools of the Trade: MoraeTools of the Trade: Morae
Tools of the Trade: Morae
 
Dpc
DpcDpc
Dpc
 
Mq light For Guide Share Europe 2014
Mq light For Guide Share Europe 2014Mq light For Guide Share Europe 2014
Mq light For Guide Share Europe 2014
 
EASI Notes Briefing Sessions - Nivelles
EASI Notes Briefing Sessions - NivellesEASI Notes Briefing Sessions - Nivelles
EASI Notes Briefing Sessions - Nivelles
 
Which Tools Are The Best For Symfony Projects_.pdf
Which Tools Are The Best For Symfony Projects_.pdfWhich Tools Are The Best For Symfony Projects_.pdf
Which Tools Are The Best For Symfony Projects_.pdf
 
Magento eCommerce And The Next Generation Of PHP
Magento eCommerce And The Next Generation Of PHPMagento eCommerce And The Next Generation Of PHP
Magento eCommerce And The Next Generation Of PHP
 
Next Generation Browser Add-Ons
Next Generation Browser Add-OnsNext Generation Browser Add-Ons
Next Generation Browser Add-Ons
 
Which Tools Are The Best For Symfony Projects_.pdf
Which Tools Are The Best For Symfony Projects_.pdfWhich Tools Are The Best For Symfony Projects_.pdf
Which Tools Are The Best For Symfony Projects_.pdf
 
Domino Vs Exchange App Dev
Domino Vs Exchange App DevDomino Vs Exchange App Dev
Domino Vs Exchange App Dev
 
Puppet Camp Berlin 2014: Module Rewriting the Smart Way
Puppet Camp Berlin 2014: Module Rewriting the Smart Way Puppet Camp Berlin 2014: Module Rewriting the Smart Way
Puppet Camp Berlin 2014: Module Rewriting the Smart Way
 
Keys to successful community growth with mobile
Keys to successful community growth with mobileKeys to successful community growth with mobile
Keys to successful community growth with mobile
 
Zembly theaquarium-phpapp01
Zembly theaquarium-phpapp01Zembly theaquarium-phpapp01
Zembly theaquarium-phpapp01
 
Wireless Wednesdays: Part 1
Wireless Wednesdays: Part 1Wireless Wednesdays: Part 1
Wireless Wednesdays: Part 1
 
Evaluation question 4
Evaluation question 4Evaluation question 4
Evaluation question 4
 
10 Reasons to Use Wordpress
10 Reasons to Use Wordpress10 Reasons to Use Wordpress
10 Reasons to Use Wordpress
 

Mais de Memi Beltrame

Machine Learning for Designers - UX Scotland
Machine Learning for Designers - UX ScotlandMachine Learning for Designers - UX Scotland
Machine Learning for Designers - UX ScotlandMemi Beltrame
 
Machine Learning for Designers - UX Camp Switzerland
Machine Learning for Designers - UX Camp SwitzerlandMachine Learning for Designers - UX Camp Switzerland
Machine Learning for Designers - UX Camp SwitzerlandMemi Beltrame
 
Machine Learning for Designers
Machine Learning for DesignersMachine Learning for Designers
Machine Learning for DesignersMemi Beltrame
 
Machine Learning for Designers - DX Meetup Basel
Machine Learning for Designers - DX Meetup BaselMachine Learning for Designers - DX Meetup Basel
Machine Learning for Designers - DX Meetup BaselMemi Beltrame
 
Machine Learning for Designers
Machine Learning for DesignersMachine Learning for Designers
Machine Learning for DesignersMemi Beltrame
 
Zero Adoption: Lessons Learned From Failing at Open Source
Zero Adoption: Lessons Learned From Failing at Open SourceZero Adoption: Lessons Learned From Failing at Open Source
Zero Adoption: Lessons Learned From Failing at Open SourceMemi Beltrame
 
UX in the city Coping with Complexity
UX in the city   Coping with ComplexityUX in the city   Coping with Complexity
UX in the city Coping with ComplexityMemi Beltrame
 
Product Owner ist ein Design Job
Product Owner ist ein Design JobProduct Owner ist ein Design Job
Product Owner ist ein Design JobMemi Beltrame
 
Designed for the Worst Case - Zurich's water supply
Designed for  the Worst Case - Zurich's water supplyDesigned for  the Worst Case - Zurich's water supply
Designed for the Worst Case - Zurich's water supplyMemi Beltrame
 
Data Driven Design - Frontend Conference Zurich
Data Driven Design - Frontend Conference ZurichData Driven Design - Frontend Conference Zurich
Data Driven Design - Frontend Conference ZurichMemi Beltrame
 

Mais de Memi Beltrame (13)

Machine Learning for Designers - UX Scotland
Machine Learning for Designers - UX ScotlandMachine Learning for Designers - UX Scotland
Machine Learning for Designers - UX Scotland
 
Machine Learning for Designers - UX Camp Switzerland
Machine Learning for Designers - UX Camp SwitzerlandMachine Learning for Designers - UX Camp Switzerland
Machine Learning for Designers - UX Camp Switzerland
 
Machine Learning for Designers
Machine Learning for DesignersMachine Learning for Designers
Machine Learning for Designers
 
Machine Learning for Designers - DX Meetup Basel
Machine Learning for Designers - DX Meetup BaselMachine Learning for Designers - DX Meetup Basel
Machine Learning for Designers - DX Meetup Basel
 
Machine Learning for Designers
Machine Learning for DesignersMachine Learning for Designers
Machine Learning for Designers
 
Protostrap
ProtostrapProtostrap
Protostrap
 
Zero Adoption: Lessons Learned From Failing at Open Source
Zero Adoption: Lessons Learned From Failing at Open SourceZero Adoption: Lessons Learned From Failing at Open Source
Zero Adoption: Lessons Learned From Failing at Open Source
 
The Big Shift
The Big ShiftThe Big Shift
The Big Shift
 
UX in the city Coping with Complexity
UX in the city   Coping with ComplexityUX in the city   Coping with Complexity
UX in the city Coping with Complexity
 
Product Owner ist ein Design Job
Product Owner ist ein Design JobProduct Owner ist ein Design Job
Product Owner ist ein Design Job
 
Designed for the Worst Case - Zurich's water supply
Designed for  the Worst Case - Zurich's water supplyDesigned for  the Worst Case - Zurich's water supply
Designed for the Worst Case - Zurich's water supply
 
Data Driven Design - Frontend Conference Zurich
Data Driven Design - Frontend Conference ZurichData Driven Design - Frontend Conference Zurich
Data Driven Design - Frontend Conference Zurich
 
Artypedia
ArtypediaArtypedia
Artypedia
 

Último

➥🔝 7737669865 🔝▻ jhansi Call-girls in Women Seeking Men 🔝jhansi🔝 Escorts S...
➥🔝 7737669865 🔝▻ jhansi Call-girls in Women Seeking Men  🔝jhansi🔝   Escorts S...➥🔝 7737669865 🔝▻ jhansi Call-girls in Women Seeking Men  🔝jhansi🔝   Escorts S...
➥🔝 7737669865 🔝▻ jhansi Call-girls in Women Seeking Men 🔝jhansi🔝 Escorts S...amitlee9823
 
Escorts Service Nagavara ☎ 7737669865☎ Book Your One night Stand (Bangalore)
Escorts Service Nagavara ☎ 7737669865☎ Book Your One night Stand (Bangalore)Escorts Service Nagavara ☎ 7737669865☎ Book Your One night Stand (Bangalore)
Escorts Service Nagavara ☎ 7737669865☎ Book Your One night Stand (Bangalore)amitlee9823
 
❤Personal Whatsapp Number 8617697112 Samba Call Girls 💦✅.
❤Personal Whatsapp Number 8617697112 Samba Call Girls 💦✅.❤Personal Whatsapp Number 8617697112 Samba Call Girls 💦✅.
❤Personal Whatsapp Number 8617697112 Samba Call Girls 💦✅.Nitya salvi
 
Hingoli ❤CALL GIRL 8617370543 ❤CALL GIRLS IN Hingoli ESCORT SERVICE❤CALL GIRL
Hingoli ❤CALL GIRL 8617370543 ❤CALL GIRLS IN Hingoli ESCORT SERVICE❤CALL GIRLHingoli ❤CALL GIRL 8617370543 ❤CALL GIRLS IN Hingoli ESCORT SERVICE❤CALL GIRL
Hingoli ❤CALL GIRL 8617370543 ❤CALL GIRLS IN Hingoli ESCORT SERVICE❤CALL GIRLNitya salvi
 
Peaches App development presentation deck
Peaches App development presentation deckPeaches App development presentation deck
Peaches App development presentation decktbatkhuu1
 
怎样办理伯明翰大学学院毕业证(Birmingham毕业证书)成绩单留信认证
怎样办理伯明翰大学学院毕业证(Birmingham毕业证书)成绩单留信认证怎样办理伯明翰大学学院毕业证(Birmingham毕业证书)成绩单留信认证
怎样办理伯明翰大学学院毕业证(Birmingham毕业证书)成绩单留信认证eeanqy
 
Sweety Planet Packaging Design Process Book.pptx
Sweety Planet Packaging Design Process Book.pptxSweety Planet Packaging Design Process Book.pptx
Sweety Planet Packaging Design Process Book.pptxbingyichin04
 
Pooja 9892124323, Call girls Services and Mumbai Escort Service Near Hotel Hy...
Pooja 9892124323, Call girls Services and Mumbai Escort Service Near Hotel Hy...Pooja 9892124323, Call girls Services and Mumbai Escort Service Near Hotel Hy...
Pooja 9892124323, Call girls Services and Mumbai Escort Service Near Hotel Hy...Pooja Nehwal
 
Verified Trusted Call Girls Adugodi💘 9352852248 Good Looking standard Profil...
Verified Trusted Call Girls Adugodi💘 9352852248  Good Looking standard Profil...Verified Trusted Call Girls Adugodi💘 9352852248  Good Looking standard Profil...
Verified Trusted Call Girls Adugodi💘 9352852248 Good Looking standard Profil...kumaririma588
 
Whitefield Call Girls Service: 🍓 7737669865 🍓 High Profile Model Escorts | Ba...
Whitefield Call Girls Service: 🍓 7737669865 🍓 High Profile Model Escorts | Ba...Whitefield Call Girls Service: 🍓 7737669865 🍓 High Profile Model Escorts | Ba...
Whitefield Call Girls Service: 🍓 7737669865 🍓 High Profile Model Escorts | Ba...amitlee9823
 
Sector 105, Noida Call girls :8448380779 Model Escorts | 100% verified
Sector 105, Noida Call girls :8448380779 Model Escorts | 100% verifiedSector 105, Noida Call girls :8448380779 Model Escorts | 100% verified
Sector 105, Noida Call girls :8448380779 Model Escorts | 100% verifiedDelhi Call girls
 
Anamika Escorts Service Darbhanga ❣️ 7014168258 ❣️ High Cost Unlimited Hard ...
Anamika Escorts Service Darbhanga ❣️ 7014168258 ❣️ High Cost Unlimited Hard  ...Anamika Escorts Service Darbhanga ❣️ 7014168258 ❣️ High Cost Unlimited Hard  ...
Anamika Escorts Service Darbhanga ❣️ 7014168258 ❣️ High Cost Unlimited Hard ...nirzagarg
 
ab-initio-training basics and architecture
ab-initio-training basics and architectureab-initio-training basics and architecture
ab-initio-training basics and architecturesaipriyacoool
 
Just Call Vip call girls Nagpur Escorts ☎️8617370543 Starting From 5K to 25K ...
Just Call Vip call girls Nagpur Escorts ☎️8617370543 Starting From 5K to 25K ...Just Call Vip call girls Nagpur Escorts ☎️8617370543 Starting From 5K to 25K ...
Just Call Vip call girls Nagpur Escorts ☎️8617370543 Starting From 5K to 25K ...Nitya salvi
 
AMBER GRAIN EMBROIDERY | Growing folklore elements | Root-based materials, w...
AMBER GRAIN EMBROIDERY | Growing folklore elements |  Root-based materials, w...AMBER GRAIN EMBROIDERY | Growing folklore elements |  Root-based materials, w...
AMBER GRAIN EMBROIDERY | Growing folklore elements | Root-based materials, w...BarusRa
 
Just Call Vip call girls dharamshala Escorts ☎️9352988975 Two shot with one g...
Just Call Vip call girls dharamshala Escorts ☎️9352988975 Two shot with one g...Just Call Vip call girls dharamshala Escorts ☎️9352988975 Two shot with one g...
Just Call Vip call girls dharamshala Escorts ☎️9352988975 Two shot with one g...gajnagarg
 
VIP Model Call Girls Kalyani Nagar ( Pune ) Call ON 8005736733 Starting From ...
VIP Model Call Girls Kalyani Nagar ( Pune ) Call ON 8005736733 Starting From ...VIP Model Call Girls Kalyani Nagar ( Pune ) Call ON 8005736733 Starting From ...
VIP Model Call Girls Kalyani Nagar ( Pune ) Call ON 8005736733 Starting From ...SUHANI PANDEY
 
➥🔝 7737669865 🔝▻ Bokaro Call-girls in Women Seeking Men 🔝Bokaro🔝 Escorts S...
➥🔝 7737669865 🔝▻ Bokaro Call-girls in Women Seeking Men  🔝Bokaro🔝   Escorts S...➥🔝 7737669865 🔝▻ Bokaro Call-girls in Women Seeking Men  🔝Bokaro🔝   Escorts S...
➥🔝 7737669865 🔝▻ Bokaro Call-girls in Women Seeking Men 🔝Bokaro🔝 Escorts S...amitlee9823
 
call girls in Dakshinpuri (DELHI) 🔝 >༒9953056974 🔝 genuine Escort Service 🔝✔️✔️
call girls in Dakshinpuri  (DELHI) 🔝 >༒9953056974 🔝 genuine Escort Service 🔝✔️✔️call girls in Dakshinpuri  (DELHI) 🔝 >༒9953056974 🔝 genuine Escort Service 🔝✔️✔️
call girls in Dakshinpuri (DELHI) 🔝 >༒9953056974 🔝 genuine Escort Service 🔝✔️✔️9953056974 Low Rate Call Girls In Saket, Delhi NCR
 

Último (20)

➥🔝 7737669865 🔝▻ jhansi Call-girls in Women Seeking Men 🔝jhansi🔝 Escorts S...
➥🔝 7737669865 🔝▻ jhansi Call-girls in Women Seeking Men  🔝jhansi🔝   Escorts S...➥🔝 7737669865 🔝▻ jhansi Call-girls in Women Seeking Men  🔝jhansi🔝   Escorts S...
➥🔝 7737669865 🔝▻ jhansi Call-girls in Women Seeking Men 🔝jhansi🔝 Escorts S...
 
Escorts Service Nagavara ☎ 7737669865☎ Book Your One night Stand (Bangalore)
Escorts Service Nagavara ☎ 7737669865☎ Book Your One night Stand (Bangalore)Escorts Service Nagavara ☎ 7737669865☎ Book Your One night Stand (Bangalore)
Escorts Service Nagavara ☎ 7737669865☎ Book Your One night Stand (Bangalore)
 
❤Personal Whatsapp Number 8617697112 Samba Call Girls 💦✅.
❤Personal Whatsapp Number 8617697112 Samba Call Girls 💦✅.❤Personal Whatsapp Number 8617697112 Samba Call Girls 💦✅.
❤Personal Whatsapp Number 8617697112 Samba Call Girls 💦✅.
 
Hingoli ❤CALL GIRL 8617370543 ❤CALL GIRLS IN Hingoli ESCORT SERVICE❤CALL GIRL
Hingoli ❤CALL GIRL 8617370543 ❤CALL GIRLS IN Hingoli ESCORT SERVICE❤CALL GIRLHingoli ❤CALL GIRL 8617370543 ❤CALL GIRLS IN Hingoli ESCORT SERVICE❤CALL GIRL
Hingoli ❤CALL GIRL 8617370543 ❤CALL GIRLS IN Hingoli ESCORT SERVICE❤CALL GIRL
 
Peaches App development presentation deck
Peaches App development presentation deckPeaches App development presentation deck
Peaches App development presentation deck
 
怎样办理伯明翰大学学院毕业证(Birmingham毕业证书)成绩单留信认证
怎样办理伯明翰大学学院毕业证(Birmingham毕业证书)成绩单留信认证怎样办理伯明翰大学学院毕业证(Birmingham毕业证书)成绩单留信认证
怎样办理伯明翰大学学院毕业证(Birmingham毕业证书)成绩单留信认证
 
Sweety Planet Packaging Design Process Book.pptx
Sweety Planet Packaging Design Process Book.pptxSweety Planet Packaging Design Process Book.pptx
Sweety Planet Packaging Design Process Book.pptx
 
Pooja 9892124323, Call girls Services and Mumbai Escort Service Near Hotel Hy...
Pooja 9892124323, Call girls Services and Mumbai Escort Service Near Hotel Hy...Pooja 9892124323, Call girls Services and Mumbai Escort Service Near Hotel Hy...
Pooja 9892124323, Call girls Services and Mumbai Escort Service Near Hotel Hy...
 
Verified Trusted Call Girls Adugodi💘 9352852248 Good Looking standard Profil...
Verified Trusted Call Girls Adugodi💘 9352852248  Good Looking standard Profil...Verified Trusted Call Girls Adugodi💘 9352852248  Good Looking standard Profil...
Verified Trusted Call Girls Adugodi💘 9352852248 Good Looking standard Profil...
 
Whitefield Call Girls Service: 🍓 7737669865 🍓 High Profile Model Escorts | Ba...
Whitefield Call Girls Service: 🍓 7737669865 🍓 High Profile Model Escorts | Ba...Whitefield Call Girls Service: 🍓 7737669865 🍓 High Profile Model Escorts | Ba...
Whitefield Call Girls Service: 🍓 7737669865 🍓 High Profile Model Escorts | Ba...
 
Sector 105, Noida Call girls :8448380779 Model Escorts | 100% verified
Sector 105, Noida Call girls :8448380779 Model Escorts | 100% verifiedSector 105, Noida Call girls :8448380779 Model Escorts | 100% verified
Sector 105, Noida Call girls :8448380779 Model Escorts | 100% verified
 
Abortion Pills in Oman (+918133066128) Cytotec clinic buy Oman Muscat
Abortion Pills in Oman (+918133066128) Cytotec clinic buy Oman MuscatAbortion Pills in Oman (+918133066128) Cytotec clinic buy Oman Muscat
Abortion Pills in Oman (+918133066128) Cytotec clinic buy Oman Muscat
 
Anamika Escorts Service Darbhanga ❣️ 7014168258 ❣️ High Cost Unlimited Hard ...
Anamika Escorts Service Darbhanga ❣️ 7014168258 ❣️ High Cost Unlimited Hard  ...Anamika Escorts Service Darbhanga ❣️ 7014168258 ❣️ High Cost Unlimited Hard  ...
Anamika Escorts Service Darbhanga ❣️ 7014168258 ❣️ High Cost Unlimited Hard ...
 
ab-initio-training basics and architecture
ab-initio-training basics and architectureab-initio-training basics and architecture
ab-initio-training basics and architecture
 
Just Call Vip call girls Nagpur Escorts ☎️8617370543 Starting From 5K to 25K ...
Just Call Vip call girls Nagpur Escorts ☎️8617370543 Starting From 5K to 25K ...Just Call Vip call girls Nagpur Escorts ☎️8617370543 Starting From 5K to 25K ...
Just Call Vip call girls Nagpur Escorts ☎️8617370543 Starting From 5K to 25K ...
 
AMBER GRAIN EMBROIDERY | Growing folklore elements | Root-based materials, w...
AMBER GRAIN EMBROIDERY | Growing folklore elements |  Root-based materials, w...AMBER GRAIN EMBROIDERY | Growing folklore elements |  Root-based materials, w...
AMBER GRAIN EMBROIDERY | Growing folklore elements | Root-based materials, w...
 
Just Call Vip call girls dharamshala Escorts ☎️9352988975 Two shot with one g...
Just Call Vip call girls dharamshala Escorts ☎️9352988975 Two shot with one g...Just Call Vip call girls dharamshala Escorts ☎️9352988975 Two shot with one g...
Just Call Vip call girls dharamshala Escorts ☎️9352988975 Two shot with one g...
 
VIP Model Call Girls Kalyani Nagar ( Pune ) Call ON 8005736733 Starting From ...
VIP Model Call Girls Kalyani Nagar ( Pune ) Call ON 8005736733 Starting From ...VIP Model Call Girls Kalyani Nagar ( Pune ) Call ON 8005736733 Starting From ...
VIP Model Call Girls Kalyani Nagar ( Pune ) Call ON 8005736733 Starting From ...
 
➥🔝 7737669865 🔝▻ Bokaro Call-girls in Women Seeking Men 🔝Bokaro🔝 Escorts S...
➥🔝 7737669865 🔝▻ Bokaro Call-girls in Women Seeking Men  🔝Bokaro🔝   Escorts S...➥🔝 7737669865 🔝▻ Bokaro Call-girls in Women Seeking Men  🔝Bokaro🔝   Escorts S...
➥🔝 7737669865 🔝▻ Bokaro Call-girls in Women Seeking Men 🔝Bokaro🔝 Escorts S...
 
call girls in Dakshinpuri (DELHI) 🔝 >༒9953056974 🔝 genuine Escort Service 🔝✔️✔️
call girls in Dakshinpuri  (DELHI) 🔝 >༒9953056974 🔝 genuine Escort Service 🔝✔️✔️call girls in Dakshinpuri  (DELHI) 🔝 >༒9953056974 🔝 genuine Escort Service 🔝✔️✔️
call girls in Dakshinpuri (DELHI) 🔝 >༒9953056974 🔝 genuine Escort Service 🔝✔️✔️
 

Made by Many: On Collaborative Design

  • 1. Memi Beltrame Made by Many On Collaborative Design phpday, may 15th 2009 Verona Memi Beltrame: Made by Many – On Collaborative Design 6th phpDay – May 15th/16th 2009 Verona - Italy
  • 2. Who I am: Memi Beltrame • Developping websites since 1997 • Using php since 2000 • 2003-2007 Study of cinematography • 2007 to present: specialising in frontend and interaction design • Since 2008 for Liip Agile Web Development • Movie enthusiast • 1st feature film in preparation... some day... Memi Beltrame: Made by Many – On Collaborative Design 6th phpDay – May 15th/16th 2009 Verona - Italy
  • 3. Why am I here? To raise awareness and to show the dynamics of collaborative design Memi Beltrame: Made by Many – On Collaborative Design 6th phpDay – May 15th/16th 2009 Verona - Italy
  • 4. Argh! Design! Go away, I am a Developer! Design is not only pushing pixels Designing means arranging stuff: Pixels, Databases, Code, Processes Memi Beltrame: Made by Many – On Collaborative Design 6th phpDay – May 15th/16th 2009 Verona - Italy
  • 5. Collaborative Design takes place whenever an artefact is planned and/or implemented by two or more participants. Memi Beltrame: Made by Many – On Collaborative Design 6th phpDay – May 15th/16th 2009 Verona - Italy
  • 6. Typical Collaborative Design Areas Architecture Software Movies! Memi Beltrame: Made by Many – On Collaborative Design 6th phpDay – May 15th/16th 2009 Verona - Italy
  • 7. The Internet is (probably) the biggest single instance of Collaborative Design Memi Beltrame: Made by Many – On Collaborative Design 6th phpDay – May 15th/16th 2009 Verona - Italy
  • 8. Collaborative Design is a reality. It is the inevitable process that emerges when you build something as a team. Memi Beltrame: Made by Many – On Collaborative Design 6th phpDay – May 15th/16th 2009 Verona - Italy
  • 9. Unlike UCD or TDD it is nothing you choose, it just happens, nolens volens. UCD: User centered design TDD: Test driven development Memi Beltrame: Made by Many – On Collaborative Design 6th phpDay – May 15th/16th 2009 Verona - Italy
  • 10. It just happens, ok. Understand it. Control it. Embrace it. Memi Beltrame: Made by Many – On Collaborative Design 6th phpDay – May 15th/16th 2009 Verona - Italy
  • 11. Even the simplest Customer < > Contractor Relationship involves Collaborative Design Memi Beltrame: Made by Many – On Collaborative Design 6th phpDay – May 15th/16th 2009 Verona - Italy
  • 12. It involves is a network of participants Memi Beltrame: Made by Many – On Collaborative Design 6th phpDay – May 15th/16th 2009 Verona - Italy
  • 13. The goal is a common product with a high overall utility Memi Beltrame: Made by Many – On Collaborative Design 6th phpDay – May 15th/16th 2009 Verona - Italy
  • 14. Every participant can propose solutions for design issues Memi Beltrame: Made by Many – On Collaborative Design 6th phpDay – May 15th/16th 2009 Verona - Italy
  • 15. In theory a Design should move towards an optimum of utility Utility Time Memi Beltrame: Made by Many – On Collaborative Design 6th phpDay – May 15th/16th 2009 Verona - Italy
  • 16. In theory. Not in reality. Utility Time Memi Beltrame: Made by Many – On Collaborative Design 6th phpDay – May 15th/16th 2009 Verona - Italy
  • 17. Why does collaboration not automatically mean improvement? Memi Beltrame: Made by Many – On Collaborative Design 6th phpDay – May 15th/16th 2009 Verona - Italy
  • 18. Participants are inter-dependent. Memi Beltrame: Made by Many – On Collaborative Design 6th phpDay – May 15th/16th 2009 Verona - Italy
  • 19. Participants are inter-dependent. Inter-dependency means „I need something“ Memi Beltrame: Made by Many – On Collaborative Design 6th phpDay – May 15th/16th 2009 Verona - Italy
  • 20. Every participant has a self-interest Customer: Affordable yet magic Developer: solid, stable and performing Designer: beautiful and usable Memi Beltrame: Made by Many – On Collaborative Design 6th phpDay – May 15th/16th 2009 Verona - Italy
  • 21. Fulfilling self-interest means Reaching a local optimum of utility Memi Beltrame: Made by Many – On Collaborative Design 6th phpDay – May 15th/16th 2009 Verona - Italy
  • 22. Are participants willing to compromise their self interest for the sake of a global optimum? Memi Beltrame: Made by Many – On Collaborative Design 6th phpDay – May 15th/16th 2009 Verona - Italy
  • 23. A B C D global Utility Memi Beltrame: Made by Many – On Collaborative Design 6th phpDay – May 15th/16th 2009 Verona - Italy
  • 24. A B C D global Utility Memi Beltrame: Made by Many – On Collaborative Design 6th phpDay – May 15th/16th 2009 Verona - Italy
  • 25. The system can become very complex php-Developer Grafics Webserver admin Management Proxy guy Usability guy Mobile Services admin DB Specialist DB Admin Project Lead Memi Beltrame: Made by Many – On Collaborative Design 6th phpDay – May 15th/16th 2009 Verona - Italy
  • 26. It's hard to keep track of the interactions and design decisions Grafics Webserver admin Management php-Developer Proxy guy Usability guy Mobile Services admin DB Specialist DB Admin Project Lead Memi Beltrame: Made by Many – On Collaborative Design 6th phpDay – May 15th/16th 2009 Verona - Italy
  • 27. Subsytems can emerge Grafics Webserver admin Management php-Developer Proxy guy Usability guy Mobile Services admin DB Specialist DB Admin Project Lead Memi Beltrame: Made by Many – On Collaborative Design 6th phpDay – May 15th/16th 2009 Verona - Italy
  • 28. Subsytems also have a local optimum utility plus they are loyal! Grafics Webserver admin Management php-Developer Proxy guy Usability guy Mobile Services admin DB Specialist DB Admin Project Lead Memi Beltrame: Made by Many – On Collaborative Design 6th phpDay – May 15th/16th 2009 Verona - Italy
  • 29. Every new participant brings a shift in the oveall utility. Memi Beltrame: Made by Many – On Collaborative Design 6th phpDay – May 15th/16th 2009 Verona - Italy
  • 30. Every old participant must be aware of this and accept it. Otherwise the team is possibly ripped apart. Memi Beltrame: Made by Many – On Collaborative Design 6th phpDay – May 15th/16th 2009 Verona - Italy
  • 31. Successful Collaborative Design is based on the commitment of each participants to achieve an optimum of overall utility. Memi Beltrame: Made by Many – On Collaborative Design 6th phpDay – May 15th/16th 2009 Verona - Italy
  • 32. How is that achieved? Memi Beltrame: Made by Many – On Collaborative Design 6th phpDay – May 15th/16th 2009 Verona - Italy
  • 33. ● Raising awareness ● Remove barriers between you and the customer to form a team ● High iteration in the workflow ● Elaboration of interdisciplinary patterns ● Talk, talk, talk, talk! Memi Beltrame: Made by Many – On Collaborative Design 6th phpDay – May 15th/16th 2009 Verona - Italy
  • 34. An example of interdisciplinary patterns: The Undo Dilemma Memi Beltrame: Made by Many – On Collaborative Design 6th phpDay – May 15th/16th 2009 Verona - Italy
  • 35. A list of users to be administered Edit Delete Edit Delete Memi Beltrame: Made by Many – On Collaborative Design 6th phpDay – May 15th/16th 2009 Verona - Italy
  • 36. The Undo dilemma Edit Delete Edit Delete Memi Beltrame: Made by Many – On Collaborative Design 6th phpDay – May 15th/16th 2009 Verona - Italy
  • 37. What happens if you hit Delete? Memi Beltrame: Made by Many – On Collaborative Design 6th phpDay – May 15th/16th 2009 Verona - Italy
  • 38. What happens if you hit Delete? Usually: a pop up! Memi Beltrame: Made by Many – On Collaborative Design 6th phpDay – May 15th/16th 2009 Verona - Italy
  • 39. Pop ups are Bad! Avoid them! Memi Beltrame: Made by Many – On Collaborative Design 6th phpDay – May 15th/16th 2009 Verona - Italy
  • 40. Use Undo! Memi Beltrame: Made by Many – On Collaborative Design 6th phpDay – May 15th/16th 2009 Verona - Italy
  • 41. Because: UNDO • is the rescuer of users in distress. • encourages exploration. • eliminates sensless confirmation-dialogs ! Don‘t ask, do and UNDO ! Memi Beltrame: Made by Many – On Collaborative Design 6th phpDay – May 15th/16th 2009 Verona - Italy
  • 42. Pop Ups are easy to implement, Undo is not. It requires a well planned process Memi Beltrame: Made by Many – On Collaborative Design 6th phpDay – May 15th/16th 2009 Verona - Italy
  • 43. Frontend and backend people must decide on a pattern of implementation. This is a collaborative design decision. Memi Beltrame: Made by Many – On Collaborative Design 6th phpDay – May 15th/16th 2009 Verona - Italy
  • 44. Possible patterns of implementation of undo in the database: 1) Through a Flag 2) Through a history table Memi Beltrame: Made by Many – On Collaborative Design 6th phpDay – May 15th/16th 2009 Verona - Italy
  • 45. Implementation of Undo 1) Through a FLAG TABLE users VIEW view_users ------------------------------------- ------------------------ | ID | name | surname | is_deleted | | ID | name | surname | ------------------------------------- ------------------------ | 1 | Pio | Polli | 0 | | 1 | Pio | Polli | ------------------------------------- ------------------------ | 2 | Enzo | Enzi | 1 | | 3 | Toni | Marroni | ------------------------------------- ------------------------ | 3 | Toni | Marroni | 0 | ------------------------------------- SELECT * From `users` WHERE is_deleted = 0 • simple • Ideal to undo deletions • Downside: data may be materialized twice Memi Beltrame: Made by Many – On Collaborative Design 6th phpDay – May 15th/16th 2009 Verona - Italy
  • 46. Implementations of undo 2) Through a history table TABLE users TABLE users_history ------------------------ ---------------------------------- | ID | name | surname | | ID | ID_users | name | surname | ------------------------ ---------------------------------- | 1 | Pio | Polli | | 1 | 1 | Pio | Polli | ------------------------ ---------------------------------- | 2 | Enio | Enzi | | 2 | 2 | Enzo | Enzi | ------------------------ ---------------------------------- | 3 | Toni | Marroni | | 3 | 3 | Toni | Marroni | ------------------------ ---------------------------------- | 4 | 2 | Enio | Enzi | ---------------------------------- Table users: every change is Table users_history: every change an UPDATE also executes an INSERT Memi Beltrame: Made by Many – On Collaborative Design 6th phpDay – May 15th/16th 2009 Verona - Italy
  • 47. Implementations of undo 2) Through a history table Pros • Allows endless undo • Works as a history • Is not limited to a single data entry • allows „edit in place“ on a high level Cons • Needs a more complex system • Executes more SQL queries and creates more traffic and data Memi Beltrame: Made by Many – On Collaborative Design 6th phpDay – May 15th/16th 2009 Verona - Italy
  • 48. Thank you! Slides: http://slides.liip.ch Memi Beltrame: Made by Many – On Collaborative Design 6th phpDay – May 15th/16th 2009 Verona - Italy