from Hacker News

Show HN: Go Freaking Do It – Smart contract for reaching your goals

by superkarolis on 12/4/17, 1:49 PM with 109 comments

  • by masukomi on 12/4/17, 7:07 PM

    ignoring the tech, i think many folks here are missing the point. Assume you really want to quit smoking right now, and you are also pro choice. With a system like this you can say "I will quit smoking in 2 months or this $5000 will go to an anti-abortion charity." now THIS system doesn't do that BUT the core point remains, if you can attach "significant" loss to NOT achieving a goal it can help motivate people (not all people, but you get teh point).

    this system is limited in that it can only do "money" for significance. it can't also tie it to something you loathe. I don't think any of the available things ( https://www.beeminder.com/ was mentioned by someone ) can do this, but you can do it with a friend you trust.

    to those who suggested having the money go to charity: Having the money go to a charity you LIKE is a terrible idea because then if you fail in your task "well at least my favorite charity is getting money" You actually have incentive to fail.

  • by underyx on 12/4/17, 3:24 PM

    The same concept, but with credit cards: https://www.beeminder.com
  • by jesperht on 12/4/17, 6:16 PM

    Awesome job building your idea! Took at a look at the source code an found a few bugs and put them here in a post: https://medium.com/@jesperht/dont-go-freaking-do-it-5da4df4d...

    Feel free to get in touch with me if you need a hand fixing any of this!

  • by CrossWired on 12/4/17, 3:17 PM

    >> and will keep the funds otherwise.

    If I'm possibly going to give my money away, why would I want to do this to some random contract, instead maybe a Charity or somewhere other than directly to the contract?

  • by danpalmer on 12/4/17, 5:10 PM

    I don't really understand the trend of solving all problems with "smart contracts". This just seems to limit the potential market to people who care about smart contracts, and complicate an otherwise simple arrangement, without providing any benefits. You still have to find a supervisor your trust, why not just give money to a friend instead?
  • by amelius on 12/4/17, 4:26 PM

    They didn't implement the most difficult part of the idea: the supervisor.

    Seems like a half-baked solution. Interesting, but incomplete.

  • by suanmeiguo on 12/4/17, 8:13 PM

    I had the exact same idea years ago. Eventually I found there are some shortage about it so I ditched the idea:

    - How to verify people achieved their goal (this website introduces "supervisor" but I'm not sure that's gonna work well)

    - You gain nothing from achieving goals, v.s. you lose money if you didn't

    - The gain (goal achieved, which can be done without losing money) is much less than lose (lose real money), so no incentive for people to use this service.

    This website will face the same challenge.

    I'm happy to see there are someone out there having the exact same idea, I hope they can do well sincerely.

  • by frisby on 12/4/17, 4:18 PM

    I had been discussing almost exactly this idea with a friend over the last couple weeks, wholly unaware of the similar services listed elsewhere in the comments (although I realise there is a chance I heard about one of them in the past but forgot about it). Good job on getting this up and running, looks great so far!

    The way we had proposed to deal with funds that were not returned to the user because of failing a goal was to add them to a reward pool of sorts. We would take a percentage of any failed goal funds, but the majority would be given as rewards to others who had completed their goals in a similar area or time period. The details of this hadn't been fleshed out but one potential way to do it we discussed would be to distribute the reward pool at the end of every month to those who had completed gals in that month (proportional to the amount of money staked).

    This would potentially remove some people's concerns listed in the comments about the money not being handled well in case of goal failure. Also it might drive more usage of the service if people would maybe even profit.

  • by mpeg on 12/4/17, 5:03 PM

    Since setGoalFailed is public (because you want it to be callable by the person trying to achieve the goal, and the contract owner is the supervisor) and does no checks, seems like anyone can mark a goal as failed and the money held in the smart contract will go to the contract owner?

    Shouldn't that check that msg.sender is either goals[_hash].owner or owner ?

  • by pjam14 on 12/4/17, 3:24 PM

  • by cantrip on 12/4/17, 3:29 PM

    I don't like kill functions. If you have to trust that the owner won't just kill the contract in the middle of your goal it's not actually trustless.
  • by sharemywin on 12/4/17, 4:03 PM

  • by mapleoin on 12/4/17, 3:32 PM

    > get an email emailed

    I think this could be rewritten as "send an email".

  • by codingdave on 12/4/17, 8:57 PM

    So if your supervisor flakes out, you lose the money? There is definitely a flaw in that...
  • by ghostly_s on 12/4/17, 5:08 PM

    Interesting idea, but it seems ultimately like a high-tech implementation of a low-tech process-- really I'm just relying on the 'supervisor' to hold me accountable, and if I get to the point of asking someone else to hold me accountable to a deadline I've already accomplished the hard part, anyway. Sharing goals is a proven strong motivator in itself, I think.

    It did bring to mind an interesting related idea, though, specifically for software side projects: instead of relying on a human to validate your success, create a smart contract around a test suite; funds are released by passing your tests by the deadline.

  • by crispyambulance on 12/4/17, 3:48 PM

    This is a neat idea.

    But it makes wonder that there's perhaps more to consider about "your goals" if you need "a supervisor" to verify that you met your goals and a monetary penalty for failing to meet your goals.

    More importantly, one's _choice_ of goals and the process by which they strive to achieve them (the journey) is every bit as important as the "verifiable" success/failure rate if we're talking about personal goals.

  • by jcousins on 12/4/17, 4:40 PM

    Similar on the bitcoin blockchain - https://www.realitykeys.com/
  • by jhiska on 12/4/17, 4:17 PM

    Using technology and money to blackmail yourself isn't an effective way to make you do something you don't actually want to do; shady.
  • by NwmG on 12/4/17, 3:08 PM

    why can you put in negative numbers as the amount?
  • by alexee on 12/4/17, 9:02 PM

    Suggestion to make it with lesser scope, but with verifiable contracts, so you can automatically verify that it was done. I'd actually use that service myself :)

    For example: 1) Run 10K on Strava. 2) Solve programming challenge on Codeforces/TopCoder. 3) Pass coursera class. 4) Have X bitcoins on your wallet 5) Check-in in some specific location.

  • by NwmG on 12/4/17, 3:43 PM

    You might want to note that you can test it on the testnet. It looks like it works, i did it using ropsten testnet but the verbiage in the posting says mainnet regardless of if it is actually the mainnet.
  • by everdev on 12/4/17, 9:45 PM

    I've seen these financial penalty systems promoted as change motivators, but does anyone have a success story using them?
  • by supermdguy on 12/4/17, 3:22 PM

    This is a great idea!
  • by aqsheehy on 12/5/17, 1:19 AM

    This seems like a great way to have your money stolen
  • by jister on 12/4/17, 11:48 PM

    come on you can do this without tech, it's called discipline.
  • by demoonkevin on 12/4/17, 5:59 PM

    Seems like an exact copy of gofuckingdoit.com