valueflows / forum.valueflo.ws

forum.valueflo.ws has moved to https://lab.allmende.io/valueflows/forum-valueflo-ws
3 stars 1 forks source link

Time bank use cases #74

Closed fosterlynn closed 4 years ago

fosterlynn commented 8 years ago

Starting an issue so we can explore the use cases that time banks provide.

Ping @stevebosserman - let's figure out how best to do this.

stevebosserman commented 8 years ago

@fosterlynn Thanks! I'll see if I can get my fellow timebank coordinator to register on GitHub and join our discussion on this issue. Meanwhile, I'll provide some background about how the timebank functions at this point and new territory (for us) we would like to explore. As I see it, value flows would be an integral part of this adventure.

elf-pavlik commented 8 years ago

👍 time banks use cases

@stevebosserman to my understanding timebanks mostly work with services measured in hours, and don't manage material goods measured in liters, kilograms etc.

Does it work like mutual credit system, but using hours instead of credits? In that case sum of all accounts would always stay 0 (zero) and each account would have positive or negative number of hours. Sometimes accounts would have a limit on the negative side?

stevebosserman commented 8 years ago

@elf-pavlik:

@stevebosserman to my understanding timebanks mostly work with services measured in hours, and don't manage material goods measured in liters, kilograms etc.

Timebanks account for members' time spent in activities that can support production, service, or infrastructure. Timebanks in the US maintain a clear separation of time value from monetary value in order to avoid conflicts with federal and state tax agencies. For that reason, several of the use-cases I listed illustrate the distinction between time spent and associated costs for fixed and variable overhead.

Does it work like mutual credit system, but using hours instead of credits?

Yes. The value of time remains constant from one member to another irrespective of the activity and the degree of training and experience necessary to conduct it successfully. Other non-timebank systems may vary the multiplier of the credit based on role and qualifications or vary the value of the credit itself via market speculation.

In that case sum of all accounts would always stay 0 (zero) and each account would have positive or negative number of hours. Sometimes accounts would have a limit on the negative side?

Depends on the philosophy of the timebank. Some prefer to establish importance for the time credit by not allowing balances to run negative beyond a strict limit. This includes the timebank master account. Conversely, others prefer to minimize the importance of the time credit beyond documentation of time spent by a member in a specific activity. In this case, the timebank master account will perennially run negative as it "sponsors" activities deemed important for the timebank community,

Also, individual accounts can be allowed to run negative depending on circumstances. For instance, a time bank member who has a health issue needs help from other timebank members but has no opportunity to earn hours that can be credited to them for providing the needed service. The timebank will allow the account of the member needing help to go negative when crediting the accounts of those providing assistance.

elf-pavlik commented 8 years ago

Thank you for explanations @stevebosserman !

Depends on the philosophy of the timebank. Some prefer to establish importance for the time credit by not allowing balances to run negative beyond a strict limit. This includes the timebank master account. Conversely, others prefer to minimize the importance of the time credit beyond documentation of time spent by a member in a specific activity. In this case, the timebank master account will perennially run negative as it "sponsors" activities deemed important for the timebank community, Also, individual accounts can be allowed to run negative depending on circumstances.

Could you explain more the 'timebank master account'? Setup where sum of all the accounts always stays 0 makes a lot of sense to me, as mutual credit illustrated in https://youtu.be/TwmM5Nb6hiE?t=1h3m9s But that requires some accounts to go on minus for other to go on plus. Setup where sum of all accounts stays positive makes currently little less sense to me, I think services like https://timerepublik.com do it, they gave me +06:45h just for filling up profile, they also show banner "Help grow this amazing community, and earn 30 extra minutes for everyone who signs up.". Above makes me very skeptical about that service...

stevebosserman commented 8 years ago

@elf-pavlik:

Could you explain more the 'timebank master account'?

The moniker "master" is a misnomer so I'm dropping it. A better explanation is that the timebank has a membership account for itself so it can award and receive credits in exchanges with other members. This is important when a timebank first forms and new members have no credits with which to stimulate exchanges. In the case of CSTB, the timebank account credits members for joining, participating in monthly potlucks, helping with setup and cleanup at the potlucks, recruiting new members, etc. as a way to jumpstart their accounts so they can request services from others and credit them for delivery. And as you stated the timebank account goes negative when it transfers credits to the accounts of members, yet the sum of all accounts remains zero.

Setup where sum of all the accounts always stays 0 makes a lot of sense to me, as mutual credit illustrated in [The Money Fix-A Documentary for Monetary Reform]. But that requires some accounts to go on minus for other to go on plus. Setup where sum of all accounts stays positive makes currently little less sense to me, I think services like [TimeRepublik] do it, they gave me +06:45h just for filling up profile, they also show banner "Help grow this amazing community, and earn 30 extra minutes for everyone who signs up.". Above makes me very skeptical about that service.

I created an account at TimeRepublik and started following you. I'm skeptical as well, but maybe for a different reason. A strong sense of community and the trust it engenders among members is one of the foundation principles of timebanking. Members of local timebanks get to know and eventually trust one another. They can speak for the reputation of their fellow members who respond to requests posted by members of other timebanks that use the same global exchange platform. For example, CSTB is one of hundreds of timebanks in several countries that use the same Time and Talents platform provided by hOurworld. If a member of a timebank in the UK on the Time and Talents platform, posts an offer, I as a member of CSTB on the same platform can make a request for that person's offer and feel reasonably confident that they will deliver because we are both in the same system that honors the same principles and guidelines. It's no insurance policy, but it does start us on a higher level of trust than if that connection didn't exist.

Admittedly, I didn't dive very deeply into the details about TimeRepublik. In my initial scan, I don't yet see how one establishes a working trust with other TimeRepublik members when they are unknown and it is not immediately evident why the platform exists, how it works, and what one does to use it effectively. In contrast, you and I are building some measure of trust through our exchanges on the GitHub platform and the credibility of @bhaugen and @fosterlynn who "introduced" us through our mutual interest in a common topic. That's quite different than inviting one's friends to join a new platform like TimeRepublik where the principles behind it are not clear. But maybe they're there and I should look further. Thoughts?

elf-pavlik commented 8 years ago

Much appreciated @stevebosserman 😺

I have one more question which maybe you could also address. I can quite easily see how time based accounting works for '1-on-1' services. But can also people use it in more complex services? For example

BTW have you read by any chance book available online at http://peerconomy.org ? It describes concept of 'weighted labor model' I'll put a quote about it in #121

stevebosserman commented 8 years ago

@elf-pavlik:

I have one more question which maybe you could also address. I can quite easily see how time based accounting works for '1-on-1' services. But can also people use it in more complex services?

The short answer to your question is "Yes". One way I can illustrate how is by a screenshot of the CSTB webpage where one records an exchange (see below).

image

With the Time and Talents software, a timebank member may record hours provided or hours received. If provided, the member can state how many received the service. If received, the member can state how many provided it.

Applied to your examples, we have:

1-on-many: a workshop where one mentor serves many students

The workshop mentor would indicate the number of members in the session. Once done, a drop down list opens with blank fields to be filled in with the names of those members in attendance which correspond to the total entered in the previous field. Once the mentor fills in the "category" and "service" fields, the accounts for attendees are debited as "payment" and the mentor's account is credited for the time spent conducting the session.

If the timebank "sponsors" the session (examples include attendance at an orientation or a potluck), attendees have their accounts credited for time in attendance. The account for the mentor (or presenter) still receives credit for delivery. Also, the presenter / moderator can be credited for time spent preparing materials through a separate exchange.

many-on-1: dental care where 2 doctors/nurses serve 1 patient

The same report form noted above would be used. The patient would state that s/he received service from two members, give their names, fill-in the category and service, leave a comment (if desired), and record the transaction.

many-on-many: performance where a 8 people band serves 100 people crowd

In this case, each band member would need to submit an individual report to assure proper credit to his / her account. But in terms of audience, the same process applies as in the workshop example above. Bear in mind that the number of people in the audience that feature in this transaction are those who are members of the timebank AND whose names are listed in the drop down fields. So, let's say 100 people attend the concert, but only 40 of them are timebank members. The band members would enter "40" in the "To/from how many members?" field then, fill-in their names. If they only know 25 by name, they would have to adjust the number to correspond to the names of members they can remember. Conversely, each timebank member in attendance can fill out the form individually and state that s/he received the service of a 2-hour concert from 8 members of the band that performed. Of course, that would mean that each member would have to accept responsibility for reporting their attendance. Sometimes that could be a challenge!

I would like to experiment with how to apply the Time and Talents system to projects AND on-going operational processes. It may require significant recoding by the hOurworld software team that supports it to make it work, but it would be a conversation worth having with them. Stephen Beckett, the lead programmer, setup a separate timebank configuration on Time and Talents for folks like me to play with projects and processes. If you or anyone else reading this would like to play, too, just let me know and we'll get you started.

BTW have you read by any chance book available online at http://peerconomy.org ? It describes concept of 'weighted labor model' I'll put a quote about it in #121

I have not read the book, but it's now on my reading list - THANKS! I have some ideas about how to take advantage of the parallels between the peer economy behaviors and timebanking that I would like to explore. As I asked in my comment on #121, please let me know which "issue" to use.

bhaugen commented 8 years ago

@stevebosserman forgive me if this has been asked and answered.

If I understand correctly, one of the principles of at least some time banks is "an hour is an hour". That is, everybody's hours have the same value.

How does a time bank deal with exchanges where the provider brings their own resources to the job in addition to their time? Like lawn mowing, where the mower brings their own equipment, or transportation of people and goods where the driver brings their own vehicle.

stevebosserman commented 8 years ago

@bhaugen when a timebank member offers a service that requires the use of equipment / tools and consumable materials to complete, the two parties agree beforehand about a cash payment for wear and tear, transporting, and operating the equipment as well as reimbursement for cost of materials in the job. So, in the case of lawn mowing where the member doing the work provides the mower, the two would agree on the cost of transporting the mower, gas to operate it, and any "depreciation" expense which seems fair. Upon completing the mowing job, the member would then get cash per the agreement and be credited for the time spent transporting the mower as well as mowing the yard. The same process would apply in the transportation service where there would be cash payment for gas and "overhead" plus credit for time spent.

bhaugen commented 8 years ago

Thanks, Steve.

fosterlynn commented 7 years ago

@stevebosserman hi!

I'm going to start working (off and on) on the timebank use case. But - we never got your use case work back over to valueflows! I found it in your repository. Do you know how to make a pull request? If not, let's figure it out together. Or, I'll just copy and paste..... :) (with your permission of course)

fosterlynn commented 7 years ago

@stevebosserman could you also provide a print screen and/or some information on how the offer / request part works? I don't think I want to address the conversations and agreements right now, but I'm interested in what the offers / requests look like, and how the categorization and descriptions works. And how the offer/request part connects to the recording of the work - i.e. does anything get fulfilled, or marked as complete, or similar? Do you differentiate between one time intents and ongoing ones (like "I offer plumbing in general")?

fosterlynn commented 7 years ago

The workshop mentor would indicate the number of members in the session. Once done, a drop down list opens with blank fields to be filled in with the names of those members in attendance which correspond to the total entered in the previous field. Once the mentor fills in the "category" and "service" fields, the accounts for attendees are debited as "payment" and the mentor's account is credited for the time spent conducting the session.

@stevebosserman In the cases where more than one member receives a service that took 2 hours, does the provider get 2 hours logged as a credit? Does each recipient get 2 hours logged as a debit? Or does the provider get 2 hours for each recipient?

And just a note.... no rush on all of this, even though I'm bombarding you with questions, I'm just starting to think about it....

fosterlynn commented 7 years ago

@elf-pavlik here is a VERY preliminary attempt at thinking about the timebank use case. Understanding I don't know how the requests and offers really work, I'm sure there can be a lot more development there. Your skills work may apply.

You'll see I didn't really find a reason to record actual work. And that the structure of a transfer changed from our last conversation. So, all very much in process! It would be nice to see an actual data model of the app.

Intents

'@context': https://w3id.org/valueflows/v1
'@id': https://timebank.example/rf789f7f#offer
'@type': vf:Offer
'vf:category': http://www.productontology.org/id/Plumber
'vf:agent': https://timebank.example/Paul#agent
'@context': https://w3id.org/valueflows/v1
'@id': https://timebank.example/r456456f#request
'@type': vf:Request
'vf:category': http://www.productontology.org/id/Plumber
'vf:agent': https://timebank.example/Mary#agent

Resources before

'@context': https://w3id.org/valueflows/v1
'@id': https://timebank.example/d89ads#Mary-account
'@type': vf:Resource
'vf:category': http://www.productontology.org/id/Personal_account
'vf:quantity':
  '@type': qudt:QuantityValue
  'qudt:unit': unit:Hour
  'qudt:numericValue': 10
'vf:currentAgentResourceRelationship':
  - 'vf:relationshipType': Owner
    'vf:agent': https://timebank.example/Mary#agent
'@context': https://w3id.org/valueflows/v1
'@id': https://timebank.example/d88877#Paul-account
'@type': vf:Resource
'vf:category': http://www.productontology.org/id/Personal_account
'vf:quantity':
  '@type': qudt:QuantityValue
  'qudt:unit': unit:Hour
  'qudt:numericValue': -2
'vf:currentAgentResourceRelationship':
  - 'vf:relationshipType': Owner
    'vf:agent': https://timebank.example/Paul#agent

Recording the results

'@context': https://w3id.org/valueflows/v1
'@id': https://tiebank.example/818f30f4#transfer
'@type': vf:Transfer
'skos:note': simple timebank transfer
'vf:givetake':
  - '@id': '#give-1'
    '@type': vf:TransferEvent
    'vf:action': vf:give
    'vf:resource': https://timebank.example/d89ads#Mary-account
    'vf:eventQuantity':
      '@type': qudt:QuantityValue
      'qudt:unit': unit:Hour
      'qudt:numericValue': 4
    'vf:provider: https://timebank.example/Mary#agent
    'vf:request': https://timebank.example/r456456f#request
    'skos:note': 'Paul did a great job, I would recommend him.'
  - '@id': '#receive-1'
    '@type': vf:TransferEvent
    'vf:action': vf:receive
    'vf:resource': https://timebank.example/d88877#Paul-account
    'vf:eventQuantity':
      '@type': qudt:QuantityValue
      'qudt:unit': unit:Hour
      'qudt:numericValue': 4
    'vf:receiver: https://timebank.example/Paul#agent
    'vf:offer': https://timebank.example/rf789f7f#offer

Resources after

'@context': https://w3id.org/valueflows/v1
'@id': https://timebank.example/d89ads#Mary-account
'@type': vf:Resource
'vf:category': http://www.productontology.org/id/Personal_account
'vf:quantity':
  '@type': qudt:QuantityValue
  'qudt:unit': unit:Hour
  'qudt:numericValue': 6
'vf:currentAgentResourceRelationship':
  - 'vf:relationshipType': Owner
    'vf:agent': https://timebank.example/Mary#agent
'@context': https://w3id.org/valueflows/v1
'@id': https://timebank.example/d88877#Paul-account
'@type': vf:Resource
'vf:category': http://www.productontology.org/id/Personal_account
'vf:quantity':
  '@type': qudt:QuantityValue
  'qudt:unit': unit:Hour
  'qudt:numericValue': 2
'vf:currentAgentResourceRelationship':
  - 'vf:relationshipType': Owner
    'vf:agent': https://timebank.example/Paul#agent
elf-pavlik commented 7 years ago
'vf:quantity':
  '@type': qudt:QuantityValue
  'qudt:unit': unit:Hour
  'qudt:numericValue': -2

IMO unit should stay specific to a timebank, AFAIK one can NOT transfer hours between different timebanks, so for example:

'vf:quantity':
  '@type': qudt:QuantityValue
  'qudt:unit': https://timebank.example/units#Hour
  'qudt:numericValue': -2

Give & Take for Transfer still doesn't make sense to me, you can't have different quantities in Give & Take so no reason to specify it twice! We need to specify in unambiguous way who transfers what to who

'@context': https://w3id.org/valueflows/v1
'@id': https://tiebank.example/818f30f4#transfer
'@type': vf:Transfer
'skos:note': simple timebank transfer
'vf:offeredBy': https://timebank.example/Mary#agent # who
'vf:acceptedBy': https://timebank.example/Paul#agent # who
'vf:origin': https://timebank.example/d89ads#Mary-account # what
'vf:destination': https://timebank.example/d88877#Paul-account
'vf:transferredQuantity': # what
    '@type': qudt:QuantityValue
    'qudt:unit': https://timebank.example/units#Hour
    'qudt:numericValue': 4
'sec:signature': # proof
  - # Mary's signature (bank will not move funds without it!!!)
  - # Paul's signature

It still doesn't specify in explicit way that we transfer ownership, it seems implied so currently we can only use it to transfer ownership. Also since we want to have possibility to Transfer ownership of resources without them moving between 'stocks'. We possibly may want to have separate events to express the delivery of resource. In this case we have very simple delivery so for a person it may come easy to 'make sense' of it but even for all kinds of CurrencyResource we may need to handle various ways of 'shipping' it. To avoid modifying your snippets to much I just added vf:origin & vf:destination but possibly we should see such Transfer as permission for Paul to vf:issue transferred quantity from Mary's account and vf:receive it to his account. I added signatures so that Transfer looks more like a signed check - an agreement based on which Bank runs a process to move funds between accounts:

Transfer

an agreement between agent about ownership of particular resource

'@context': https://w3id.org/valueflows/v1
'@id': https://timebank.example/818f30f4#transfer
'@type': vf:Transfer
'skos:note': simple transfer of timebank hours
'vf:offeredBy': https://timebank.example/Mary#agent # who
'vf:acceptedBy': https://timebank.example/Paul#agent # who
'vf:resource': https://timebank.example/d89ads#Mary-account # what
'vf:transferredQuantity': #what
    '@type': qudt:QuantityValue
    'qudt:unit': https://timebank.example/units#Hour
    'qudt:numericValue': 4
'sec:signature':
  - # Mary's signature (bank will not move funds without it!!!) # proof
  - # Paul's signature

now Paul owns 4 timebank hours still deposited on Mary's account

Process (virtual)

executed by bank based on transfer agreement above

'@context': https://w3id.org/valueflows/v1
'@id': https://timebank.example/234824923#process
'@type': vf:Process
'skos:note': moving hours between accounts
'vf:io'
  - '@id' https://timebank.example/dfa98379h2#event
     'vf:action': vf:issue
     'vf:resource': https://timebank.example/d89ads#Mary-account
     'vf:affectedQuantity':
         '@type': qudt:QuantityValue
         'qudt:unit': https://timebank.example/units#Hour
         'qudt:numericValue': 4
  - '@id' https://timebank.example/fa98f7a986a#event
     'vf:action': vf:receive
     'vf:resource': https://timebank.example/d88877#Paul-account
     'vf:affectedQuantity':
         '@type': qudt:QuantityValue
         'qudt:unit': https://timebank.example/units#Hour
         'qudt:numericValue': 4

now Paul moved those 4 hours to his account

bhaugen commented 7 years ago

just commenting on this assertion:

AFAIK one can NOT transfer hours between different timebanks

  1. This project is doing so now: https://www.community-exchange.org/
  2. That's where this initiative is going: http://creditcommons.net/
elf-pavlik commented 7 years ago

In this case:

I'd like to hear from @stevebosserman what kind of agreements between timebanks he would expect to participate in transferring hours between timebank he works on and other timebanks. And does it differ in any way from merging into a single timebank?

stevebosserman commented 7 years ago

Hi @fosterlynn!

Bob and I talked about how I didn't do something right when I wrote up the use case last summer and it wound up in my repository rather than valueflows - something about me forking rather than doing a pull request. I would really appreciate you walking me through how to make a pull request so I am more confident with the process. But in the interest of expediency, if you would prefer to do a copy and paste, you have my permission to do so.

On Sun, Nov 27, 2016 at 1:29 PM, Lynn Foster notifications@github.com wrote:

@stevebosserman https://github.com/stevebosserman hi!

I'm going to start working (off and on) on the timebank use case. But - we never got your use case work back over to valueflows! I found it in your repository. Do you know how to make a pull request? If not, let's figure it out together. Or, I'll just copy and paste..... :)

— You are receiving this because you were mentioned. Reply to this email directly, view it on GitHub https://github.com/valueflows/valueflows/issues/143#issuecomment-263138188, or mute the thread https://github.com/notifications/unsubscribe-auth/AMZ8u6bPmWdmV8frdkUwpMM7q-xjTXZbks5rCcvxgaJpZM4JFTRg .

fosterlynn commented 7 years ago

IMO unit should stay specific to a timebank, AFAIK one can NOT transfer hours between different timebanks,

I wasn't trying to make these from different timebanks, they are all in the context of the one timebank. Sorry the yaml wasn't clear. At the same time, there will be lots of units of measure that will be used across contexts, and "timebank-hours" are one. They are different from "hours" in my understanding. Will clarify in the yaml. As I see is clarified more in the further comments.

Give & Take for Transfer still doesn't make sense to me, you can't have different quantities in Give & Take so no reason to specify it twice! We need to specify in unambiguous way who transfers what to who

It will be interesting when Steve clarifies how the 1:m, m:m, and m:1 scenarios are handled.

But the reason I separated into 2 events is to keep the event model consistent: they affect one resource, and they include a quantity. Then they can be processed more easily. And then they form proper edges in a graph: Resource > Give > Transfer > Receive > Resource.

Also since we want to have possibility to Transfer ownership of resources without them moving between 'stocks'. We possibly may want to have separate events to express the delivery of resource.

Yes we still need this too. I'm good with separate events.

I'm toying with the idea of eliminating the "transfer" altogether, and making this some kind of "issue" and "receive" "process" with the transfer assumed, since the deed is done (accounts are incremented and decremented). [edit] I see this is exactly what you did with your Paul virtual move. Maybe then we don't need the transfer.

now Paul moved those 4 hours to his account

I don't want to complicate it more than it is. Paul can't "own" a part of Mary's account. And in fact, he doesn't do any "moving" of those timebank-hours. In Steve's screen shot, only one of them does anything. In the Madison timebank (different software), my understanding is that the one who received the help is the one who records it.

fosterlynn commented 7 years ago

I would really appreciate you walking me through how to make a pull request so I am more confident with the process. But in the interest of expediency, if you would prefer to do a copy and paste, you have my permission to do so

@stevebosserman well, I don't know how to do the pull request from a fork, would have to look it up. So I may wimp out and do the copy paste...

[edit] And I hope you will feel comfortable just putting your use cases (etc) directly into VF. We do lots of things in process here. :relaxed:

stevebosserman commented 7 years ago

@lynnfoster, if I understand correctly, you would like me to document the processes for making offers or requests using screenshots from the hOurworld / Time and Talents platform. There is a tutorial for timebank coordinators provided by the hOurworld staff that explains about how to use SOME of the communication tools included in the platform. It complements the full online tutorial which cannot be downloaded, unfortunately, and that makes it not particularly useful by itself. However, I would be delighted to make you a member of the Care and Share Time Bank so you can see how it works from a member perspective. Would that be of interest?

On Sun, Nov 27, 2016 at 1:44 PM, Lynn Foster notifications@github.com wrote:

@stevebosserman https://github.com/stevebosserman could you also provide a print screen and/or some information on how the offer / request part works? I don't think I want to address the conversations and agreements right now, but I'm interested in what the offers / requests look like, and how the categorization and descriptions works.

— You are receiving this because you were mentioned. Reply to this email directly, view it on GitHub https://github.com/valueflows/valueflows/issues/143#issuecomment-263139002, or mute the thread https://github.com/notifications/unsubscribe-auth/AMZ8u0K1ARqnWwv15kXWaOAOYj4g2QOkks5rCc-LgaJpZM4JFTRg .

stevebosserman commented 7 years ago

Can I delete the fork and do a pull request?

On Tue, Nov 29, 2016 at 8:55 AM, Lynn Foster notifications@github.com wrote:

I would really appreciate you walking me through how to make a pull request so I am more confident with the process. But in the interest of expediency, if you would prefer to do a copy and paste, you have my permission to do so

@stevebosserman https://github.com/stevebosserman well, I don't know how to do the pull request from a fork, would have to look it up. So I may wimp out and do the copy paste...

— You are receiving this because you were mentioned. Reply to this email directly, view it on GitHub https://github.com/valueflows/valueflows/issues/143#issuecomment-263575963, or mute the thread https://github.com/notifications/unsubscribe-auth/AMZ8u09XdQEKps9eCNG9iLwtA57wJL6eks5rDC7sgaJpZM4JFTRg .

fosterlynn commented 7 years ago

There is a tutorial for timebank coordinators provided by the hOurworld staff that explains about how to use the platform. Would that be more useful?

@stevebosserman sure the tutorial would be great.

I guess I don't want to be a member since I don't want to offer my work in Ohio....

fosterlynn commented 7 years ago

Can I delete the fork and do a pull request?

No, don't do that! You'll lose your use cases. I'll move them over later today...

stevebosserman commented 7 years ago

@fosterlynn asked:

Could you also provide a print screen and/or some information on how the offer / request part works? I don't think I want to address the conversations and agreements right now, but I'm interested in what the offers / requests look like, and how the categorization and descriptions works. And how the offer/request part connects to the recording of the work - i.e. does anything get fulfilled, or marked as complete, or similar? Do you differentiate between one time intents and ongoing ones (like "I offer plumbing in general")?

In the first part of my response, below are three screenshots - one for the menu to select from when adding an offer: add to my offers

and one for what an offer looks like when posted: posted offers

The posted offers are listed in a weekly email notification to all CSTB members and they are displayed on the CSTB home page under "New Requests & New Offers" as well as on the "All Offers" page, which is shown below: all offers menu

The second part of my response concerns requests which mirror offers in many respects. In the sequence of screenshots below, the first one shows the menu to select from when making a request: add to my requests

And the second one shows what a request looks like when posted: posted requests

And like offers, requests are listed in the weekly email notification, show up on the home page when first posted, and are included in the "All Requests Menu" below: all requests menu

Details for each offer or request entry vary according to what the member feels like including. But each will have basic information: name of the member with the request / offer linked to that person's profile as s/he created it (profile has contact information), approximate distance from the address for the member making the inquiry, and time left before the request / offer expires (some are set never to expire).

Again, the idea is that if one sees a potential match, one should initiate contact with the other party so that negotiation can ensue about expectations, time and timing, provision of necessary materials and tools, reimbursement for out-of-pocket expenses, etc.

stevebosserman commented 7 years ago

@fosterlynn asked:

In the cases where more than one member receives a service that took 2 hours, does the provider get 2 hours logged as a credit? Does each recipient get 2 hours logged as a debit? Or does the provider get 2 hours for each recipient?

This is not cut and dried, but negotiable. For instance, when CSTB offers its monthly Orientation Session for prospective members, the account for the presenter is credited one hour for time spent leading the session and another hour for onsite prep / cleanup before and after the session. The presenter would be credited for any additional time spent to prepare materials for the session. The time bank account would be debited for the total hours credited. Then, if an attendee joins the time bank afterward, that new member's account will be credited one hour for attending the Orientation Session and the time bank account will be debited one hour.

Now, let's say a CSTB member offers a workshop to other time bank members on how to do a fork or navigate through a pull request process on GitHub. The instructor would be eligible for credit to cover time spent preparing materials beforehand, managing logistics for securing the meeting space including setup and tear-down, and conducting the session. Since such a session would probably not be sponsored by the timebank, the total amount to be credited to the instructor's account would be divided into equal amounts among attendees and their accounts debited accordingly.

stevebosserman commented 7 years ago

@elf-pavlik asked:

I'd like to hear from @stevebosserman what kind of agreements between timebanks he would expect to participate in transferring hours between timebank he works on and other timebanks. And does it differ in any way from merging into a single timebank?

The hOurworld platform allows the exchange of hours between members of different time banks. This is particularly useful when members offer skills that can be easily delivered virtually (like Lynn conducting a seminar on how to use GitHub for members of multiple time banks in the hOurworld network) or when the product one member might make for another (say, a doily my mother-in-law crochets!) can be readily shipped at reasonable cost and the materials are relatively inexpensive. So, that's an effective process I can offer as an example.

A majority of exchanges among timebank members occur within the boundaries of a local community and are not conducive to more regional or global transactions. For that reason, it would be prudent to make sure the exchange / transaction functionality supports local activity, first, then scale it to cover a broader geography - preferably by treating timebanks as nodes in a larger, interconnected network - as a secondary measure. The other way around would not be attractive to those trying to work through localized resource constraints and people would vote it down with their feet.

stevebosserman commented 7 years ago

@fosterlynn observed:

In Steve's screen shot, only one of them does anything. In the Madison timebank (different software), my understanding is that the one who received the help is the one who records it.

Just to clarify, the protocol for who enters exchange information in the system as established by the Dane County Timebank (which uses Community Weaver by TimeBanks USA) is basically the same for the Care and Share Time Bank (CSTB) on hOurworld's Time and Talents platform. CSTB members can choose whether the receiver or the provider enters the information, although they are encouraged to have the receiver do it.

fosterlynn commented 7 years ago

@stevebosserman another question: Is there always a request and an offer that get matched? Or if I'm looking for a plumber, could I just check the offers and contact one of them without posting my request?

fosterlynn commented 7 years ago

Here is another version, with some additions and corrections, per @elf-pavlik and @stevebosserman comments.

Also,I'm trying out making the transfer a process with issue and receive. I'm not sure this totally sits right with me, as there was no actual change in the resource. But I like it better than a process plus a transfer, too complicated for what timebanks are recording. Also, with accounts tied to people, and with the issue and receive, there is no need to change any agent-resource-relationships, which is how we were thinking about transfers in the case of non-stock-type resources.

Intents

'@context': https://w3id.org/valueflows/v1
'@id': https://timebank.example/rf789f7f#offer
'@type': vf:Offer
'vf:category': http://www.productontology.org/id/Plumber
'vf:agent': https://timebank.example/Paul#agent
'@context': https://w3id.org/valueflows/v1
'@id': https://timebank.example/r456456f#request
'@type': vf:Request
'vf:category': http://www.productontology.org/id/Plumber
'vf:agent': https://timebank.example/Mary#agent
'vf:expiration': 2016/12/31

Resources before

'@context': https://w3id.org/valueflows/v1
'@id': https://timebank.example/d89ads#Mary-account
'@type': vf:Resource
'vf:category': http://www.productontology.org/id/Personal_account
'vf:quantity':
  '@type': qudt:QuantityValue
  'qudt:unit': https://timebank.example/units#TimebankHour
  'qudt:numericValue': 10
'vf:currentAgentResourceRelationship':
  - 'vf:relationshipType': Owner
    'vf:agent': https://timebank.example/Mary#agent
'@context': https://w3id.org/valueflows/v1
'@id': https://timebank.example/d88877#Paul-account
'@type': vf:Resource
'vf:category': http://www.productontology.org/id/Personal_account
'vf:quantity':
  '@type': qudt:QuantityValue
  'qudt:unit': https://timebank.example/units#TimebankHour
  'qudt:numericValue': -2
'vf:currentAgentResourceRelationship':
  - 'vf:relationshipType': Owner
    'vf:agent': https://timebank.example/Paul#agent

Recording the results

'@context': https://w3id.org/valueflows/v1
'@id': https://tiebank.example/818f30f4#process
'@type': vf:Process
'skos:note': moving hours between accounts
'vf:io':
  - '@id': '#issue-1'
    '@type': vf:IPOEvent
    'vf:action': vf:issue
    'vf:resource': https://timebank.example/d89ads#Mary-account
    'vf:eventQuantity':
      '@type': qudt:QuantityValue
      'qudt:unit': https://timebank.example/units#TimebankHour
      'qudt:numericValue': 4
    'vf:provider: https://timebank.example/Mary#agent
    'vf:request': https://timebank.example/r456456f#request
    'skos:note': 'Paul did a great job, I would recommend him.'
  - '@id': '#receive-1'
    '@type': vf:IPOEvent
    'vf:action': vf:receive
    'vf:resource': https://timebank.example/d88877#Paul-account
    'vf:eventQuantity':
      '@type': qudt:QuantityValue
      'qudt:unit': https://timebank.example/units#TimebankHour
      'qudt:numericValue': 4
    'vf:receiver: https://timebank.example/Paul#agent
    'vf:offer': https://timebank.example/rf789f7f#offer

Resources after

'@context': https://w3id.org/valueflows/v1
'@id': https://timebank.example/d89ads#Mary-account
'@type': vf:Resource
'vf:category': http://www.productontology.org/id/Personal_account
'vf:quantity':
  '@type': qudt:QuantityValue
  'qudt:unit': https://timebank.example/units#TimebankHour
  'qudt:numericValue': 6
'vf:currentAgentResourceRelationship':
  - 'vf:relationshipType': Owner
    'vf:agent': https://timebank.example/Mary#agent
'@context': https://w3id.org/valueflows/v1
'@id': https://timebank.example/d88877#Paul-account
'@type': vf:Resource
'vf:category': http://www.productontology.org/id/Personal_account
'vf:quantity':
  '@type': qudt:QuantityValue
  'qudt:unit': https://timebank.example/units#TimebankHour
  'qudt:numericValue': 2
'vf:currentAgentResourceRelationship':
  - 'vf:relationshipType': Owner
    'vf:agent': https://timebank.example/Paul#agent
fosterlynn commented 7 years ago

I'll move them over later today...

Done. (The Steve use cases are now in the valueflows repo, use case directory.)

fosterlynn commented 7 years ago

Now, let's say a CSTB member offers a workshop to other time bank members on how to do a fork or navigate through a pull request process on GitHub. The instructor would be eligible for credit to cover time spent preparing materials beforehand, managing logistics for securing the meeting space including setup and tear-down, and conducting the session. Since such a session would probably not be sponsored by the timebank, the total amount to be credited to the instructor's account would be divided into equal amounts among attendees and their accounts debited accordingly.

Trying this one....

'@context': https://w3id.org/valueflows/v1
'@id': https://tiebank.example/818f3888#process
'@type': vf:Process
'skos:note': timebank give class for many students
'vf:io':
  - '@id': '#issue-1'
    '@type': vf:IPOEvent
    'vf:action': vf:issue
    'vf:resource': https://timebank.example/d89ads#Mary-account
    'vf:eventQuantity':
      '@type': qudt:QuantityValue
      'qudt:unit': https://timebank.example/units#TimebankHour
      'qudt:numericValue': .5
    'vf:provider: https://timebank.example/Mary#agent
  - '@id': '#issue-2'
    '@type': vf:IPOEvent
    'vf:action': vf:issue
    'vf:resource': https://timebank.example/d89ads#Tim-account
    'vf:eventQuantity':
      '@type': qudt:QuantityValue
      'qudt:unit': https://timebank.example/units#TimebankHour
      'qudt:numericValue': .5
    'vf:provider: https://timebank.example/Tim#agent
  - '@id': '#issue-3'
    '@type': vf:IPOEvent
    'vf:action': vf:issue
    'vf:resource': https://timebank.example/d89ads#Jan-account
    'vf:eventQuantity':
      '@type': qudt:QuantityValue
      'qudt:unit': https://timebank.example/units#TimebankHour
      'qudt:numericValue': .5
    'vf:provider: https://timebank.example/Jan#agent
  - '@id': '#receive-1'
    '@type': vf:IPOEvent
    'vf:action': vf:receive
    'vf:resource': https://timebank.example/d88877#Jim-account
    'vf:eventQuantity':
      '@type': qudt:QuantityValue
      'qudt:unit': https://timebank.example/units#TimebankHour
      'qudt:numericValue': 1.5
    'vf:receiver: https://timebank.example/Jim#agent
fosterlynn commented 7 years ago

@stevebosserman I'm gathering that the $ for materials that sometimes goes along with the timebank hours does not get recorded in the system? People just handle it on the side? Or did I miss it?

stevebosserman commented 7 years ago

@fosterlynn you're correct. The $ for materials, consumables, tools, etc. is handled as a separate transaction apart from timebank hours. How to acknowledge and account for the value flows of resources other than those that are time-related using non-monetary forms of capital is an area of need within timebanking systems!

stevebosserman commented 7 years ago

@fosterlynn asked:

Is there always a request and an offer that get matched?

Not always. There are times when the timing for a request does not match the availability of an offer. Obviously, the closer to the time imposed by the request one is to posting it, the higher the likelihood that those with related offers cannot clear their calendars to fulfill it. This is one of the reasons why the timebank system should not be considered in urgent or emergency situations. But when sufficient leadtimes are given for requests to be fulfilled, a high percentage of them are met.

Or if I'm looking for a plumber, could I just check the offers and contact one of them without posting my request?

Absolutely! In fact, oftentimes timebank members get to know about one another's interests, needs, willingness, and dependability through face-to-face interactions in group projects, monthly potlucks, etc. The increased familiarity with consistency in positive behaviors demonstrated by members builds trust among them and strengthens the sense of community within the timebank. In many cases, members provide exchanges setup outside the processes outlined by the timebank platform; posting requests and offers and matching offers with requests among them. One member (with a leaky faucet, let's say) just calls another member s/he knows (who has a good reputation for fixing the leaky faucets of other members) and asks.

In my opinion, for a timebank to be successful it must build-up this sense of community among members within a particulary local geography. And as I mentioned in an earlier comment, a local timebank must become a sustainable "node" before it attempts to connect with other nodes as part of a more global societal network. Budding timebank nodes in different locations may openly communicate about their progress and challenges as lessons learned and encouragement, but their real work is on the ground in their own spaces.

But I'm diving into another topic not related to your question, so I'll quit...

fosterlynn commented 7 years ago

The $ for materials, consumables, tools, etc. is handled as a separate transaction apart from timebank hours. How to acknowledge and account for the value flows of resources other than those that are time-related using non-monetary forms of capital is an area of need within timebanking systems!

@stevebosserman This can be handled in the VF model cleanly. But for the purposes of this exercise, I'd rather let the existing software lead, and have VF represent data that is actually collected. On the other hand, if the timebank ever wants to add that, we could possibly contribute.

elf-pavlik commented 7 years ago

Q: do some of the timebanks allow donating hours to other accounts? for example Josh needs a lot of help with elderly care and friends and family donate hours for him to cover that.

Friends and family could also do the same by making independent agreements for 'elderly care' service which Josh will receive and at different times different person would transfer hours for whoever provided the service. Donating hours would just allow Josh to make those agreements whenever he finds it convenient and not needing to call family and friends to do those agreements.

stevebosserman commented 7 years ago

@elf-pavlik asked

Do some of the timebanks allow donating hours to other accounts?

The short answer is "Yes." Timebank members who have insufficient hours in their accounts to cover needed services may have other members credit the accounts of service providers.

In some hardship cases, timebank administration may credit service provider accounts directly from the main timebank account. This raises the question about if and how the timebank recovers hours it "donates." Some timebanks regard hours purely as a medium of exchange that do not hold any value beyond accounting for time spent by members providing services. These timebanks do not look to recover "donated hours" and the main timebank accounts can run well into the negative. However, other timebanks attribute a value to an hour as an "opportunity cost" accepted by the service provider. When the main timebank does not recover hours it donates it could cheapen their value in the eyes of members and be a disincentive for exchanges. To counteract that phenomonen timebanks solicit members for hours through payments of annual membership fees and member donations so their main timebank accounts stay balanced and do not go into the red.

Probably too much information already, so I'll stop here and check for questions...

fosterlynn commented 7 years ago

The short answer is "Yes." Timebank members who have insufficient hours in their accounts to cover needed services may have other members credit the accounts of service providers.

@stevebosserman in this scenario, exactly how is this recorded in the software? Is there any record that A received a service but B paid for it, for example?

elf-pavlik commented 7 years ago

The short answer is "Yes." Timebank members who have insufficient hours in their accounts to cover needed services may have other members credit the accounts of service providers.

I understand that we have a case where

  1. Josh received 'elderly care' service from Adam
  2. Sally transferred '3 timebank hours' to Adam

And Sally could NOT just transfer '3 timebank hours' to Josh beforehand so he and Adam can arrange 'elderly care' without her direct involvement in Josh <-> Adam interaction?

stevebosserman commented 7 years ago

Originally, I stated:

Timebank members who have insufficient hours in their accounts to cover needed services may have other members credit the accounts of the service providers.

@fosterlynn asked:

In this scenario, exactly how is this recorded in the software? Is there any record that A received a service but B paid for it, for example?

and @elf-pavlik added:

I understand that we have a case where

  1. Josh received 'elderly care' service from Adam
  2. Sally transferred '3 timebank hours' to Adam

So let me answer @fosterlynn questions using @elf-pavlik example: When Adam provides elder care service for Josh, Adam can debit Sally's account and credit his per the previously agreed to amount. The software notifies both parties that the exchange has occurred. If there is a problem - say Sally didn't really authorize payment but Adam debited her account anyway, she can file a dispute which triggers a follow-up by timebank administration to find out from the parties involved what happened and make corrections.

In addition to a one member donating credit hours, the timebank itself can do so, which I mentioned in an earlier comment. Regardless whether it is a member making the donation or the timebank, the transaction is documented by the softward, both parties involved are notified, and the opportunity for recourse is made available, if needed.

And @elf-pavlik goes on to ask:

And Sally could NOT just transfer '3 timebank hours' to Josh beforehand so he and Adam can arrange 'elderly care' without her direct involvement in Josh <-> Adam interaction?

Yes. There are several instances where one timebank member transfers a block of credit hours to another member's account for use in whatever manner the recipient chooses. The software documents it as a donation exchange and again both parties are notified for transparency and concurrence. An example where this type of transfer occurs most often is when a member relocates to another community and no longer has any need for the credit hours, that person will donate them to another member.

elf-pavlik commented 7 years ago

I just tweeted at @enricostano who besides food data standards ( for food http://www.katuma.org/ ) seems also involved in https://www.timeoverflow.org/

I'd like make it possible that food producers can exchange food for work and other services, timebanks don't support such cases but VF model needs to provide ways to model such agreements and interactions.

bhaugen commented 7 years ago

I'd like make it possible that food producers can exchange food for work and other services,

I'm pretty sure the Mutual Aid Networks can do that. I'm looking now, and it looks like you can exchange anything for either hours or $. Example:

map_trade

enricostano commented 7 years ago

Many thanks @elf-pavlik ! Let's see how we can contribute 💪

cc/ @sseerrggii

sseerrggii commented 7 years ago

Hello, we offer timeoverflow to Spanish Speaking Time Banks as a service

In the Spanish and Latin American Time Banks we worked mostly as @stevebosserman has explained. I am happy to know that we have find similar conclusions without having too much contact with each other.

About connecting Time Banks between them or with other platforms (for example Consumer Groups) I think we are still a little far from getting it, but happy to follow your experiences and someday be able to solve them with technology.

bhaugen commented 7 years ago

@enricostano @sseerrggii thanks for dropping in here.

Are you familiar with https://www.community-exchange.org/home/what-is-the-ces/ and http://creditcommons.net/ ? Matthew Slater is doing a lot of work to connect Time Banks and mutual credit networks together. We keep our eyes on his work.

We're aware that many time banks operate on different and incompatible software platforms, but one of the goals of Value Flows is to create bridges between different platforms.

sseerrggii commented 7 years ago

one of the goals of Value Flows is to create bridges between different platforms.

We are very interested and sure that some day we will perform actions to interconnect our platform with other systems

elf-pavlik commented 7 years ago

Welcome @enricostano & @sseerrggii :wave:

@bhaugen In your example from Mutual Aid Network, does this exchange require to do the work directly for a person one exchanges something with or it also allows to transfer timebank hours? If later that seems different then what to my understanding most timebanks do, only exchanging timebank hours for hours of work. At the same time possibility to exchange timebank hours for anything else seems like interesting possibility to me at first glance.

@sseerrggii, earlier in conversation here @stevebosserman explained that in timebanks he works with people can simply donate (not exchange!) timbbank hours to other participants. Does https://www.timeoverflow.org/ also allow donations of timebank hours to other participants or one only can do exchanges?

bhaugen commented 7 years ago

possibility to exchange timebank hours for anything else

That's what they are doing.

sseerrggii commented 7 years ago

Yes @elf-pavlik , anyone can pay hours to other members without a particular concept and that is sometimes used as a way to donate hours.

For example in my Time Bank in Barcelona there is a blind lady who spends many hours requesting people to accompany her for her journeys, so many other members often give her hours