<html>
  <head>
    <meta content="text/html; charset=ISO-8859-1"
      http-equiv="Content-Type">
  </head>
  <body bgcolor="#FFFFFF" text="#000000">
    <div class="moz-cite-prefix">On 03/27/2013 01:38 PM, Summers Pittman
      wrote:<br>
    </div>
    <blockquote cite="mid:51532E79.40506@redhat.com" type="cite">
      <meta http-equiv="content-type" content="text/html;
        charset=ISO-8859-1">
      <meta http-equiv="content-type" content="text/html;
        charset=ISO-8859-1">
      <b id="internal-source-marker_0.10839117830619216" style="color:
        rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: medium;
        font-style: normal; font-variant: normal; letter-spacing:
        normal; line-height: normal; orphans: auto; text-align: start;
        text-indent: 0px; text-transform: none; white-space: normal;
        widows: auto; word-spacing: 0px; -webkit-text-size-adjust: auto;
        -webkit-text-stroke-width: 0px; font-weight: normal;">
        <p dir="ltr" style="margin-top: 0pt; margin-bottom: 0pt;"><span
            style="font-size: 15px; font-family: Arial; color: rgb(0, 0,
            0); background-color: transparent; font-weight: normal;
            font-style: normal; font-variant: normal; text-decoration:
            none; vertical-align: baseline; white-space: pre-wrap;">So
            for offline and sync for 2.0 I&#8217;ve been doing some
            thinking/research and come up with some broad topics to
            discuss so we can start honing in on what we want it to
            do/look like.</span></p>
        <br>
        <span style="font-size: 15px; font-family: Arial; color: rgb(0,
          0, 0); background-color: transparent; font-weight: normal;
          font-style: normal; font-variant: normal; text-decoration:
          none; vertical-align: baseline; white-space: pre-wrap;"></span>
        <p dir="ltr" style="margin-top: 0pt; margin-bottom: 0pt;"><span
            style="font-size: 15px; font-family: Arial; color: rgb(0, 0,
            0); background-color: transparent; font-weight: normal;
            font-style: normal; font-variant: normal; text-decoration:
            none; vertical-align: baseline; white-space: pre-wrap;">This
            isn&#8217;t a spec, this isn&#8217;t a proposal, this is just trying to
            narrow down what we want at a high level so we can pick
            things to focus on.</span></p>
        <br>
        <span style="font-size: 15px; font-family: Arial; color: rgb(0,
          0, 0); background-color: transparent; font-weight: normal;
          font-style: normal; font-variant: normal; text-decoration:
          none; vertical-align: baseline; white-space: pre-wrap;"></span>
        <p dir="ltr" style="margin-top: 0pt; margin-bottom: 0pt;"><span
            style="font-size: 15px; font-family: Arial; color: rgb(0, 0,
            0); background-color: transparent; font-weight: normal;
            font-style: normal; font-variant: normal; text-decoration:
            none; vertical-align: baseline; white-space: pre-wrap;">1.
            &nbsp;Documents vs Transactions</span></p>
        <br>
        <span style="font-size: 15px; font-family: Arial; color: rgb(0,
          0, 0); background-color: transparent; font-weight: normal;
          font-style: normal; font-variant: normal; text-decoration:
          none; vertical-align: baseline; white-space: pre-wrap;"></span>
        <p dir="ltr" style="margin-top: 0pt; margin-bottom: 0pt;"><span
            style="font-size: 15px; font-family: Arial; color: rgb(0, 0,
            0); background-color: transparent; font-weight: normal;
            font-style: normal; font-variant: normal; text-decoration:
            none; vertical-align: baseline; white-space: pre-wrap;">There

            are two &#8220;big picture&#8221; methods of doing sync. &nbsp;One is a
            Document sync (Think like a gallery with videos and
            pictures). &nbsp;Documents are saved, the whole document is sent
            to the server, then the whole document is pushed out to
            other clients who are syncing against the same source. &nbsp;The
            other is a Transactional sync where many small atomic
            operations are sent to the server. &nbsp;The best analog I have
            is Google Drive/operation transforms. &nbsp;</span></p>
        <br>
        <span style="font-size: 15px; font-family: Arial; color: rgb(0,
          0, 0); background-color: transparent; font-weight: normal;
          font-style: normal; font-variant: normal; text-decoration:
          none; vertical-align: baseline; white-space: pre-wrap;"></span>
        <p dir="ltr" style="margin-top: 0pt; margin-bottom: 0pt;"><span
            style="font-size: 15px; font-family: Arial; color: rgb(0, 0,
            0); background-color: transparent; font-weight: normal;
            font-style: normal; font-variant: normal; text-decoration:
            none; vertical-align: baseline; white-space: pre-wrap;">Obviously

            the server side implementations of these are hilariously
            divergent and I will leave the relative complexity of each
            as an exercise for the list.</span></p>
        <br>
        <span style="font-size: 15px; font-family: Arial; color: rgb(0,
          0, 0); background-color: transparent; font-weight: normal;
          font-style: normal; font-variant: normal; text-decoration:
          none; vertical-align: baseline; white-space: pre-wrap;"></span>
        <p dir="ltr" style="margin-top: 0pt; margin-bottom: 0pt;"><span
            style="font-size: 15px; font-family: Arial; color: rgb(0, 0,
            0); background-color: transparent; font-weight: normal;
            font-style: normal; font-variant: normal; text-decoration:
            none; vertical-align: baseline; white-space: pre-wrap;">2.
            &nbsp;Background vs Foreground sync</span></p>
        <br>
        <span style="font-size: 15px; font-family: Arial; color: rgb(0,
          0, 0); background-color: transparent; font-weight: normal;
          font-style: normal; font-variant: normal; text-decoration:
          none; vertical-align: baseline; white-space: pre-wrap;"></span>
        <p dir="ltr" style="margin-top: 0pt; margin-bottom: 0pt;"><span
            style="font-size: 15px; font-family: Arial; color: rgb(0, 0,
            0); background-color: transparent; font-weight: normal;
            font-style: normal; font-variant: normal; text-decoration:
            none; vertical-align: baseline; white-space: pre-wrap;">Does
            the application have to be opened (foreground) for syncing
            to happen? &nbsp;As far as I know, native Web requires this
            (barring extensions to the browser, plugins etc). &nbsp;I think
            Cordova can in Android, but I haven&#8217;t researched it. &nbsp;iOS
            seems like a mixed bag, but generally you can only sync if
            your application is in the foreground (but you can use
            notifications and badges to communicate that there is a
            pending sync or new data). I understand there is CoreData +
            iCloud that is supposed to do something, but that seems like
            it is still foreground only. &nbsp;On Android background sync is
            easy.</span></p>
        <br>
        <span style="font-size: 15px; font-family: Arial; color: rgb(0,
          0, 0); background-color: transparent; font-weight: normal;
          font-style: normal; font-variant: normal; text-decoration:
          none; vertical-align: baseline; white-space: pre-wrap;"></span>
        <p dir="ltr" style="margin-top: 0pt; margin-bottom: 0pt;"><span
            style="font-size: 15px; font-family: Arial; color: rgb(0, 0,
            0); background-color: transparent; font-weight: normal;
            font-style: normal; font-variant: normal; text-decoration:
            none; vertical-align: baseline; white-space: pre-wrap;">Is
            it OK to only have background syncing on some platforms but
            not others?</span></p>
        <br>
        <span style="font-size: 15px; font-family: Arial; color: rgb(0,
          0, 0); background-color: transparent; font-weight: normal;
          font-style: normal; font-variant: normal; text-decoration:
          none; vertical-align: baseline; white-space: pre-wrap;"></span>
        <p dir="ltr" style="margin-top: 0pt; margin-bottom: 0pt;"><span
            style="font-size: 15px; font-family: Arial; color: rgb(0, 0,
            0); background-color: transparent; font-weight: normal;
            font-style: normal; font-variant: normal; text-decoration:
            none; vertical-align: baseline; white-space: pre-wrap;">3.
            &nbsp;Push vs Poll?</span></p>
        <br>
        <span style="font-size: 15px; font-family: Arial; color: rgb(0,
          0, 0); background-color: transparent; font-weight: normal;
          font-style: normal; font-variant: normal; text-decoration:
          none; vertical-align: baseline; white-space: pre-wrap;"></span>
        <p dir="ltr" style="margin-top: 0pt; margin-bottom: 0pt;"><span
            style="font-size: 15px; font-family: Arial; color: rgb(0, 0,
            0); background-color: transparent; font-weight: normal;
            font-style: normal; font-variant: normal; text-decoration:
            none; vertical-align: baseline; white-space: pre-wrap;">Obviously

            pushing updates is better for devices and users, but polling
            will let things work better for legacy services which may
            not have push support or which may be difficult to integrate
            into AG-Controller.</span></p>
        <br>
        <span style="font-size: 15px; font-family: Arial; color: rgb(0,
          0, 0); background-color: transparent; font-weight: normal;
          font-style: normal; font-variant: normal; text-decoration:
          none; vertical-align: baseline; white-space: pre-wrap;"></span>
        <p dir="ltr" style="margin-top: 0pt; margin-bottom: 0pt;"><span
            style="font-size: 15px; font-family: Arial; color: rgb(0, 0,
            0); background-color: transparent; font-weight: normal;
            font-style: normal; font-variant: normal; text-decoration:
            none; vertical-align: baseline; white-space: pre-wrap;">Should

            we support both on the clients?</span></p>
        <br>
        <span style="font-size: 15px; font-family: Arial; color: rgb(0,
          0, 0); background-color: transparent; font-weight: normal;
          font-style: normal; font-variant: normal; text-decoration:
          none; vertical-align: baseline; white-space: pre-wrap;"></span>
        <p dir="ltr" style="margin-top: 0pt; margin-bottom: 0pt;"><span
            style="font-size: 15px; font-family: Arial; color: rgb(0, 0,
            0); background-color: transparent; font-weight: normal;
            font-style: normal; font-variant: normal; text-decoration:
            none; vertical-align: baseline; white-space: pre-wrap;">4.
            &nbsp;Multiple clients,multiple users, and conflicts</span></p>
        <br>
        <span style="font-size: 15px; font-family: Arial; color: rgb(0,
          0, 0); background-color: transparent; font-weight: normal;
          font-style: normal; font-variant: normal; text-decoration:
          none; vertical-align: baseline; white-space: pre-wrap;"></span>
        <p dir="ltr" style="margin-top: 0pt; margin-bottom: 0pt;"><span
            style="font-size: 15px; font-family: Arial; color: rgb(0, 0,
            0); background-color: transparent; font-weight: normal;
            font-style: normal; font-variant: normal; text-decoration:
            none; vertical-align: baseline; white-space: pre-wrap;">How
            do we want to support multiple users and multiple clients?
            &nbsp;How should we try to do conflict resolution? &nbsp;What does
            authorization and authentication look like here?</span></p>
        <br>
        <span style="font-size: 15px; font-family: Arial; color: rgb(0,
          0, 0); background-color: transparent; font-weight: normal;
          font-style: normal; font-variant: normal; text-decoration:
          none; vertical-align: baseline; white-space: pre-wrap;"></span>
        <p dir="ltr" style="margin-top: 0pt; margin-bottom: 0pt;"><span
            style="font-size: 15px; font-family: Arial; color: rgb(0, 0,
            0); background-color: transparent; font-weight: normal;
            font-style: normal; font-variant: normal; text-decoration:
            none; vertical-align: baseline; white-space: pre-wrap;">At a
            high level here are some options I have seen for conflict
            resolution:</span></p>
        <br>
        <span style="font-size: 15px; font-family: Arial; color: rgb(0,
          0, 0); background-color: transparent; font-weight: normal;
          font-style: normal; font-variant: normal; text-decoration:
          none; vertical-align: baseline; white-space: pre-wrap;"></span>
        <p dir="ltr" style="margin-top: 0pt; margin-bottom: 0pt;"><span
            style="font-size: 15px; font-family: Arial; color: rgb(0, 0,
            0); background-color: transparent; font-weight: normal;
            font-style: normal; font-variant: normal; text-decoration:
            none; vertical-align: baseline; white-space: pre-wrap;"> &nbsp;A.
            &nbsp;Last in always wins. &nbsp;The server explicitly trusts things
            in the order it gets and pushes that data out to users.</span></p>
        <br>
        <span style="font-size: 15px; font-family: Arial; color: rgb(0,
          0, 0); background-color: transparent; font-weight: normal;
          font-style: normal; font-variant: normal; text-decoration:
          none; vertical-align: baseline; white-space: pre-wrap;"></span>
        <p dir="ltr" style="margin-top: 0pt; margin-bottom: 0pt;"><span
            style="font-size: 15px; font-family: Arial; color: rgb(0, 0,
            0); background-color: transparent; font-weight: normal;
            font-style: normal; font-variant: normal; text-decoration:
            none; vertical-align: baseline; white-space: pre-wrap;"> &nbsp;B.
            &nbsp;Clients are allowed one submit at a time and must wait for
            the server to acknowledge the receipt. &nbsp;If there is a
            conflict the app can either a) merge the data, b)reload the
            latest from the server and make the user do his operation
            again, or c) create a new document and inform the user.</span></p>
        <br>
        <span style="font-size: 15px; font-family: Arial; color: rgb(0,
          0, 0); background-color: transparent; font-weight: normal;
          font-style: normal; font-variant: normal; text-decoration:
          none; vertical-align: baseline; white-space: pre-wrap;"></span>
        <p dir="ltr" style="margin-top: 0pt; margin-bottom: 0pt;"><span
            style="font-size: 15px; font-family: Arial; color: rgb(0, 0,
            0); background-color: transparent; font-weight: normal;
            font-style: normal; font-variant: normal; text-decoration:
            none; vertical-align: baseline; white-space: pre-wrap;"> &nbsp;C.
            Operation Transforms. &nbsp;This was meant to solve the conflict
            and sync problem. &nbsp;However it is a LOT of work</span></p>
        <br>
        <span style="font-size: 15px; font-family: Arial; color: rgb(0,
          0, 0); background-color: transparent; font-weight: normal;
          font-style: normal; font-variant: normal; text-decoration:
          none; vertical-align: baseline; white-space: pre-wrap;"></span>
        <p dir="ltr" style="margin-top: 0pt; margin-bottom: 0pt;"><span
            style="font-size: 15px; font-family: Arial; color: rgb(0, 0,
            0); background-color: transparent; font-weight: normal;
            font-style: normal; font-variant: normal; text-decoration:
            none; vertical-align: baseline; white-space: pre-wrap;">5.
            &nbsp;Offline Support</span></p>
        <br>
        <span style="font-size: 15px; font-family: Arial; color: rgb(0,
          0, 0); background-color: transparent; font-weight: normal;
          font-style: normal; font-variant: normal; text-decoration:
          none; vertical-align: baseline; white-space: pre-wrap;"></span>
        <p dir="ltr" style="margin-top: 0pt; margin-bottom: 0pt;"><span
            style="font-size: 15px; font-family: Arial; color: rgb(0, 0,
            0); background-color: transparent; font-weight: normal;
            font-style: normal; font-variant: normal; text-decoration:
            none; vertical-align: baseline; white-space: pre-wrap;">Really

            this is more what do we want to do for coming from an
            &#8220;offline&#8221; mode to an &#8220;online&#8221; mode? &nbsp;Abstractly, operations
            which happen offline are the same as operations which happen
            online just with a REALLY REALLY laggy connection. :) &nbsp;We
            could just only viewing data when offline and requiring a
            connection for editing, queueing an upload, etc.</span></p>
        <br>
        <span style="font-size: 15px; font-family: Arial; color: rgb(0,
          0, 0); background-color: transparent; font-weight: normal;
          font-style: normal; font-variant: normal; text-decoration:
          none; vertical-align: baseline; white-space: pre-wrap;"></span>
        <p dir="ltr" style="margin-top: 0pt; margin-bottom: 0pt;"><span
            style="font-size: 15px; font-family: Arial; color: rgb(0, 0,
            0); background-color: transparent; font-weight: normal;
            font-style: normal; font-variant: normal; text-decoration:
            none; vertical-align: baseline; white-space: pre-wrap;">6.
            &nbsp;How much of this is the responsibility of AG-controller vs
            underlying services?</span></p>
        <br>
        <span style="font-size: 15px; font-family: Arial; color: rgb(0,
          0, 0); background-color: transparent; font-weight: normal;
          font-style: normal; font-variant: normal; text-decoration:
          none; vertical-align: baseline; white-space: pre-wrap;"></span>
        <p dir="ltr" style="margin-top: 0pt; margin-bottom: 0pt;"><span
            style="font-size: 15px; font-family: Arial; color: rgb(0, 0,
            0); background-color: transparent; font-weight: normal;
            font-style: normal; font-variant: normal; text-decoration:
            none; vertical-align: baseline; white-space: pre-wrap;">How
            should the controller expose resources to clients, how
            should the controller send data to its underlying services,
            how much data should the controller be responsible itself
            for?</span></p>
        <br>
        <span style="font-size: 15px; font-family: Arial; color: rgb(0,
          0, 0); background-color: transparent; font-weight: normal;
          font-style: normal; font-variant: normal; text-decoration:
          none; vertical-align: baseline; white-space: pre-wrap;"></span>
        <p dir="ltr" style="margin-top: 0pt; margin-bottom: 0pt;"><span
            style="font-size: 15px; font-family: Arial; color: rgb(0, 0,
            0); background-color: transparent; font-weight: normal;
            font-style: normal; font-variant: normal; text-decoration:
            none; vertical-align: baseline; white-space: pre-wrap;">Should

            it be easy for an Operation Transform system to integrate
            with AeroGear-controller? &nbsp;</span></p>
        <p dir="ltr" style="margin-top: 0pt; margin-bottom: 0pt;"><span
            style="font-size: 15px; font-family: Arial; color: rgb(0, 0,
            0); background-color: transparent; font-weight: normal;
            font-style: normal; font-variant: normal; text-decoration:
            none; vertical-align: baseline; white-space: pre-wrap;">Should

            it be easy to write a Controller based project which polls a
            third party source? &nbsp;</span></p>
        <p dir="ltr" style="margin-top: 0pt; margin-bottom: 0pt;"><span
            style="font-size: 15px; font-family: Arial; color: rgb(0, 0,
            0); background-color: transparent; font-weight: normal;
            font-style: normal; font-variant: normal; text-decoration:
            none; vertical-align: baseline; white-space: pre-wrap;">How
            would the server handle passing credentials to the third
            party source?</span></p>
        <br>
        <span style="font-size: 15px; font-family: Arial; color: rgb(0,
          0, 0); background-color: transparent; font-weight: normal;
          font-style: normal; font-variant: normal; text-decoration:
          none; vertical-align: baseline; white-space: pre-wrap;"></span>
        <p dir="ltr" style="margin-top: 0pt; margin-bottom: 0pt;"><span
            style="font-size: 15px; font-family: Arial; color: rgb(0, 0,
            0); background-color: transparent; font-weight: normal;
            font-style: normal; font-variant: normal; text-decoration:
            none; vertical-align: baseline; white-space: pre-wrap;">Appendix

            Use Cases:</span></p>
        <br>
        <span style="font-size: 15px; font-family: Arial; color: rgb(0,
          0, 0); background-color: transparent; font-weight: normal;
          font-style: normal; font-variant: normal; text-decoration:
          none; vertical-align: baseline; white-space: pre-wrap;"></span>
        <p dir="ltr" style="margin-top: 0pt; margin-bottom: 0pt;"><span
            style="font-size: 15px; font-family: Arial; color: rgb(0, 0,
            0); background-color: transparent; font-weight: normal;
            font-style: normal; font-variant: normal; text-decoration:
            none; vertical-align: baseline; white-space: pre-wrap;">Here
            are a few contrived use cases that we may want to keep in
            mind.</span></p>
        <br>
        <span style="font-size: 15px; font-family: Arial; color: rgb(0,
          0, 0); background-color: transparent; font-weight: normal;
          font-style: normal; font-variant: normal; text-decoration:
          none; vertical-align: baseline; white-space: pre-wrap;"></span>
        <p dir="ltr" style="margin-top: 0pt; margin-bottom: 0pt;"><span
            style="font-size: 15px; font-family: Arial; color: rgb(0, 0,
            0); background-color: transparent; font-weight: normal;
            font-style: normal; font-variant: normal; text-decoration:
            none; vertical-align: baseline; white-space: pre-wrap;">1.
            &nbsp;Legacy Bug Trackers From Hell</span></p>
        <p dir="ltr" style="margin-top: 0pt; margin-bottom: 0pt;"><span
            style="font-size: 15px; font-family: Arial; color: rgb(0, 0,
            0); background-color: transparent; font-weight: normal;
            font-style: normal; font-variant: normal; text-decoration:
            none; vertical-align: baseline; white-space: pre-wrap;"> &nbsp;a.
            &nbsp;It is a webapp written in COBOL, no one will ever EVER
            update or change the code</span></p>
        <p dir="ltr" style="margin-top: 0pt; margin-bottom: 0pt;"><span
            style="font-size: 15px; font-family: Arial; color: rgb(0, 0,
            0); background-color: transparent; font-weight: normal;
            font-style: normal; font-variant: normal; text-decoration:
            none; vertical-align: baseline; white-space: pre-wrap;"> &nbsp;b.
            &nbsp;It has TONS of legacy but important data</span></p>
        <p dir="ltr" style="margin-top: 0pt; margin-bottom: 0pt;"><span
            style="font-size: 15px; font-family: Arial; color: rgb(0, 0,
            0); background-color: transparent; font-weight: normal;
            font-style: normal; font-variant: normal; text-decoration:
            none; vertical-align: baseline; white-space: pre-wrap;"> &nbsp;c.
            &nbsp;It has TONS of users </span></p>
        <p dir="ltr" style="margin-top: 0pt; margin-bottom: 0pt;"><span
            style="font-size: 15px; font-family: Arial; color: rgb(0, 0,
            0); background-color: transparent; font-weight: normal;
            font-style: normal; font-variant: normal; text-decoration:
            none; vertical-align: baseline; white-space: pre-wrap;"> &nbsp;d.
            &nbsp;It only has a few transactions per day, all creating and
            updating bug reports</span></p>
        <p dir="ltr" style="margin-top: 0pt; margin-bottom: 0pt;"><span
            style="font-size: 15px; font-family: Arial; color: rgb(0, 0,
            0); background-color: transparent; font-weight: normal;
            font-style: normal; font-variant: normal; text-decoration:
            none; vertical-align: baseline; white-space: pre-wrap;"> &nbsp;e.
            Multiple users can edit the same report</span></p>
        <br>
        <span style="font-size: 15px; font-family: Arial; color: rgb(0,
          0, 0); background-color: transparent; font-weight: normal;
          font-style: normal; font-variant: normal; text-decoration:
          none; vertical-align: baseline; white-space: pre-wrap;"></span>
        <p dir="ltr" style="margin-top: 0pt; margin-bottom: 0pt;"><span
            style="font-size: 15px; font-family: Arial; color: rgb(0, 0,
            0); background-color: transparent; font-weight: normal;
            font-style: normal; font-variant: normal; text-decoration:
            none; vertical-align: baseline; white-space: pre-wrap;">2.
            &nbsp;Slacker Gallery</span></p>
        <p dir="ltr" style="margin-top: 0pt; margin-bottom: 0pt;"><span
            style="font-size: 15px; font-family: Arial; color: rgb(0, 0,
            0); background-color: transparent; font-weight: normal;
            font-style: normal; font-variant: normal; text-decoration:
            none; vertical-align: baseline; white-space: pre-wrap;"> &nbsp;a.
            &nbsp;Each User has a multiple galleries, each gallery has
            multiple photos</span></p>
        <p dir="ltr" style="margin-top: 0pt; margin-bottom: 0pt;"><span
            style="font-size: 15px; font-family: Arial; color: rgb(0, 0,
            0); background-color: transparent; font-weight: normal;
            font-style: normal; font-variant: normal; text-decoration:
            none; vertical-align: baseline; white-space: pre-wrap;"> &nbsp;b.
            &nbsp;A Gallery has only one user, but the user may be on
            multiple devices</span></p>
        <p dir="ltr" style="margin-top: 0pt; margin-bottom: 0pt;"><span
            style="font-size: 15px; font-family: Arial; color: rgb(0, 0,
            0); background-color: transparent; font-weight: normal;
            font-style: normal; font-variant: normal; text-decoration:
            none; vertical-align: baseline; white-space: pre-wrap;"> &nbsp;c.
            &nbsp;Galleries may be renamed, created, and deleted</span></p>
        <p dir="ltr" style="margin-top: 0pt; margin-bottom: 0pt;"><span
            style="font-size: 15px; font-family: Arial; color: rgb(0, 0,
            0); background-color: transparent; font-weight: normal;
            font-style: normal; font-variant: normal; text-decoration:
            none; vertical-align: baseline; white-space: pre-wrap;"> &nbsp;d.
            &nbsp;Photos may only be created or deleted. &nbsp;Photos also have
            meta data which may be updated, but its creation and
            deletion is tied to the Photo object.</span></p>
        <br>
        <span style="font-size: 15px; font-family: Arial; color: rgb(0,
          0, 0); background-color: transparent; font-weight: normal;
          font-style: normal; font-variant: normal; text-decoration:
          none; vertical-align: baseline; white-space: pre-wrap;"></span>
        <p dir="ltr" style="margin-top: 0pt; margin-bottom: 0pt;"><span
            style="font-size: 15px; font-family: Arial; color: rgb(0, 0,
            0); background-color: transparent; font-weight: normal;
            font-style: normal; font-variant: normal; text-decoration:
            none; vertical-align: baseline; white-space: pre-wrap;">3.
            &nbsp;Dropbox clone</span></p>
        <p dir="ltr" style="margin-top: 0pt; margin-bottom: 0pt;"><span
            style="font-size: 15px; font-family: Arial; color: rgb(0, 0,
            0); background-color: transparent; font-weight: normal;
            font-style: normal; font-variant: normal; text-decoration:
            none; vertical-align: baseline; white-space: pre-wrap;"> &nbsp;a.
            &nbsp;A folder of files may be shared among users</span></p>
        <p dir="ltr" style="margin-top: 0pt; margin-bottom: 0pt;"><span
            style="font-size: 15px; font-family: Arial; color: rgb(0, 0,
            0); background-color: transparent; font-weight: normal;
            font-style: normal; font-variant: normal; text-decoration:
            none; vertical-align: baseline; white-space: pre-wrap;"> &nbsp;b.
            &nbsp;There is a size limit to files and how much storage may be
            used per folder</span></p>
        <p dir="ltr" style="margin-top: 0pt; margin-bottom: 0pt;"><span
            style="font-size: 15px; font-family: Arial; color: rgb(0, 0,
            0); background-color: transparent; font-weight: normal;
            font-style: normal; font-variant: normal; text-decoration:
            none; vertical-align: baseline; white-space: pre-wrap;"> &nbsp;c.
            &nbsp;Files are not updated. &nbsp;If there is a new file, there is an
            atomic delete and create operation</span></p>
        <br>
        <span style="font-size: 15px; font-family: Arial; color: rgb(0,
          0, 0); background-color: transparent; font-weight: normal;
          font-style: normal; font-variant: normal; text-decoration:
          none; vertical-align: baseline; white-space: pre-wrap;"></span>
        <p dir="ltr" style="margin-top: 0pt; margin-bottom: 0pt;"><span
            style="font-size: 15px; font-family: Arial; color: rgb(0, 0,
            0); background-color: transparent; font-weight: normal;
            font-style: normal; font-variant: normal; text-decoration:
            none; vertical-align: baseline; white-space: pre-wrap;">4.
            &nbsp;Email client</span></p>
        <p dir="ltr" style="margin-top: 0pt; margin-bottom: 0pt;"><span
            style="font-size: 15px; font-family: Arial; color: rgb(0, 0,
            0); background-color: transparent; font-weight: normal;
            font-style: normal; font-variant: normal; text-decoration:
            none; vertical-align: baseline; white-space: pre-wrap;">
            &nbsp;&nbsp;a. &nbsp;This is an AG-controller which accesses a mail
            account. &nbsp;</span></p>
        <p dir="ltr" style="margin-top: 0pt; margin-bottom: 0pt;"><span
            style="font-size: 15px; font-family: Arial; color: rgb(0, 0,
            0); background-color: transparent; font-weight: normal;
            font-style: normal; font-variant: normal; text-decoration:
            none; vertical-align: baseline; white-space: pre-wrap;">
            &nbsp;&nbsp;b. &nbsp;There are mobile offline and sync enabled clients
            which connect to this controller.</span></p>
        <br>
        <span style="font-size: 15px; font-family: Arial; color: rgb(0,
          0, 0); background-color: transparent; font-weight: normal;
          font-style: normal; font-variant: normal; text-decoration:
          none; vertical-align: baseline; white-space: pre-wrap;"></span>
        <p dir="ltr" style="margin-top: 0pt; margin-bottom: 0pt;"><span
            style="font-size: 15px; font-family: Arial; color: rgb(0, 0,
            0); background-color: transparent; font-weight: normal;
            font-style: normal; font-variant: normal; text-decoration:
            none; vertical-align: baseline; white-space: pre-wrap;">5.
            &nbsp;Google Docs clone</span></p>
        <p dir="ltr" style="margin-top: 0pt; margin-bottom: 0pt;"><span
            style="font-size: 15px; font-family: Arial; color: rgb(0, 0,
            0); background-color: transparent; font-weight: normal;
            font-style: normal; font-variant: normal; text-decoration:
            none; vertical-align: baseline; white-space: pre-wrap;">
            &nbsp;&nbsp;a. Operational Transform out the wazzoo</span></p>
        <p dir="ltr" style="margin-top: 0pt; margin-bottom: 0pt;"><span
            style="font-size: 15px; font-family: Arial; color: rgb(0, 0,
            0); background-color: transparent; font-weight: normal;
            font-style: normal; font-variant: normal; text-decoration:
            none; vertical-align: baseline; white-space: pre-wrap;">
            &nbsp;&nbsp;b. &nbsp;What would the server need?</span></p>
        <p dir="ltr" style="margin-top: 0pt; margin-bottom: 0pt;"><span
            style="font-size: 15px; font-family: Arial; color: rgb(0, 0,
            0); background-color: transparent; font-weight: normal;
            font-style: normal; font-variant: normal; text-decoration:
            none; vertical-align: baseline; white-space: pre-wrap;">
            &nbsp;&nbsp;c. &nbsp;What would the client need?</span></p>
        <br>
        <span style="font-size: 15px; font-family: Arial; color: rgb(0,
          0, 0); background-color: transparent; font-weight: normal;
          font-style: normal; font-variant: normal; text-decoration:
          none; vertical-align: baseline; white-space: pre-wrap;"></span>
        <p dir="ltr" style="margin-top: 0pt; margin-bottom: 0pt;"><span
            style="font-size: 15px; font-family: Arial; color: rgb(0, 0,
            0); background-color: transparent; font-weight: normal;
            font-style: normal; font-variant: normal; text-decoration:
            none; vertical-align: baseline; white-space: pre-wrap;">Appendix

            Reference (Open Source) Products:</span></p>
        <br>
        <span style="font-size: 15px; font-family: Arial; color: rgb(0,
          0, 0); background-color: transparent; font-weight: normal;
          font-style: normal; font-variant: normal; text-decoration:
          none; vertical-align: baseline; white-space: pre-wrap;"></span>
        <p dir="ltr" style="margin-top: 0pt; margin-bottom: 0pt;"><span
            style="font-size: 15px; font-family: Arial; color: rgb(0, 0,
            0); background-color: transparent; font-weight: normal;
            font-style: normal; font-variant: normal; text-decoration:
            none; vertical-align: baseline; white-space: pre-wrap;">Wave-in-a-box</span></p>
        <p dir="ltr" style="margin-top: 0pt; margin-bottom: 0pt;"><span
            style="font-size: 15px; font-family: Arial; color: rgb(0, 0,
            0); background-color: transparent; font-weight: normal;
            font-style: normal; font-variant: normal; text-decoration:
            none; vertical-align: baseline; white-space: pre-wrap;">CouchDB</span></p>
        <p dir="ltr" style="margin-top: 0pt; margin-bottom: 0pt;"><span
            style="font-size: 15px; font-family: Arial; color: rgb(0, 0,
            0); background-color: transparent; font-weight: normal;
            font-style: normal; font-variant: normal; text-decoration:
            none; vertical-align: baseline; white-space: pre-wrap;">Google

            Drive RealtimeAPI</span></p>
        <br>
        <span style="font-size: 15px; font-family: Arial; color: rgb(0,
          0, 0); background-color: transparent; font-weight: normal;
          font-style: normal; font-variant: normal; text-decoration:
          none; vertical-align: baseline; white-space: pre-wrap;"></span><br>
        <span style="font-size: 15px; font-family: Arial; color: rgb(0,
          0, 0); background-color: transparent; font-weight: normal;
          font-style: normal; font-variant: normal; text-decoration:
          none; vertical-align: baseline; white-space: pre-wrap;"></span>
        <p dir="ltr" style="margin-top: 0pt; margin-bottom: 0pt;"><span
            style="font-size: 15px; font-family: Arial; color: rgb(0, 0,
            0); background-color: transparent; font-weight: normal;
            font-style: normal; font-variant: normal; text-decoration:
            none; vertical-align: baseline; white-space: pre-wrap;">Can
            you guys think of more projects/examples to look at for
            inspiration?</span></p>
      </b><br class="Apple-interchange-newline">
    </blockquote>
    Matzew mentions
    <meta http-equiv="content-type" content="text/html;
      charset=ISO-8859-1">
    <a href="http://sharejs.org/">http://sharejs.org/</a> <br>
    And also there is etherpad.<br>
    <blockquote cite="mid:51532E79.40506@redhat.com" type="cite"> <br>
      <fieldset class="mimeAttachmentHeader"></fieldset>
      <br>
      <pre wrap="">_______________________________________________
aerogear-dev mailing list
<a class="moz-txt-link-abbreviated" href="mailto:aerogear-dev@lists.jboss.org">aerogear-dev@lists.jboss.org</a>
<a class="moz-txt-link-freetext" href="https://lists.jboss.org/mailman/listinfo/aerogear-dev">https://lists.jboss.org/mailman/listinfo/aerogear-dev</a></pre>
    </blockquote>
    <br>
  </body>
</html>