elective-stereophonic
elective-stereophonic
NXTorrent
singapore
Please login or register.

Login with username, password and session length
Advanced search  

News:

Latest Stable Nxt Client: Nxt 1.12.2

Pages: 1 2 3 ... 9 [All]

Author Topic: NXTorrent  (Read 29339 times)

jl777

  • Hero Member
  • *****
  • Karma: +718/-123
  • Offline Offline
  • Posts: 6170
    • View Profile
NXTorrent
« on: April 13, 2014, 03:56:26 pm »

This is Anon's project where there will be an ebay style auction, but with the descriptions of the item via magnet link. At least eventually it will be, initially it will just be a URL. Once the magnet links are there, it will also be a torrent listing site.

the following is my initial stab at the websockets API

http://127.0.0.1/NXTorrent?{"requestType":"list","NXT":"8989816935121514892","details":{<json of listing>}}
returns {"result":"good","listingid":"1234567"}

http://127.0.0.1/NXTorrent?{"requestType":"status","NXT":"8989816935121514892","listingid":"1234567"}}
returns {"result":"good","status":"open"} or sold or cancelled

http://127.0.0.1/NXTorrent?{"requestType":"cancel","NXT":"8989816935121514892","listingid":"1234567"}}
returns {"result":"good","status":"cancelled"}

http://127.0.0.1/NXTorrent?{"requestType":"listings","NXT":"8989816935121514892","filter":[<filters>]}
returns {"result":"good","listings":["224567","185483",...]}

The {<json of listing>} should specify all the key things, but it is free form and totally up to you. Probably need to standardize on some standard fields like "URL", "price", etc.

The <filter description> would allow limiting the output to specific NXT accounts by putting in {"NXT":"8989816935121514892"}
If you want to just see all listings of that had "type" == "dogs" in their <json of listing>, then filter would be {"type":"dogs"}
You can combine filters so ["NXT":"8989816935121514892","type":"dogs"] would return all the dog listings by NXT acct 8989816935121514892

http://127.0.0.1/NXTorrent?{"requestType":"postfeedback","NXT":"8989816935121514892","listingid":"1234567","feedback":{<json of feedback>}}

http://127.0.0.1/NXTorrent?{"requestType":"buy","NXT":"8989816935121514892","listingid":"1234567"}


James
Logged
There are over 1000 people in SuperNET slack! http://slackinvite.supernet.org/ automatically sends you an invite

I am just a simple C programmer

anon136

  • Hero Member
  • *****
  • Karma: +86/-19
  • Offline Offline
  • Posts: 1015
    • View Profile
Re: NXTorrent
« Reply #1 on: April 13, 2014, 04:24:42 pm »

thanks james. following.
Logged

anon136

  • Hero Member
  • *****
  • Karma: +86/-19
  • Offline Offline
  • Posts: 1015
    • View Profile
Re: NXTorrent
« Reply #2 on: April 13, 2014, 04:38:11 pm »

i dont think we should make this program a wallet of any sort of handle any nxt in any way. i would like to avoid the security implications of that. probably i think it should just analyze the blockchain, extract the relevant information, organize and display it in a user friendly way, and then provide a way of crafting the sorts of arbitrary messages that you need.

so for example if you find an item that you want to buy, then you can click "purchase this item" and it will pop up with a dialogue box with sections to fill out with required information. such as address and name. When you fill the fields out it will generate specific instructions in addition to an automatically generated arbitrary message for you to just copy over to your client of choice.

on the sell side you just click "sell an item" and a similar dialogue box pops up with fields like price, quantity, expiration date ect... and then a link to an html file that i can create a magnet link for, anything else i missed, and format that all into the relevant am that they need to just copy and paste over to their client of choice.
Logged

jl777

  • Hero Member
  • *****
  • Karma: +718/-123
  • Offline Offline
  • Posts: 6170
    • View Profile
Re: NXTorrent
« Reply #3 on: April 13, 2014, 04:51:24 pm »

i dont think we should make this program a wallet of any sort of handle any nxt in any way. i would like to avoid the security implications of that. probably i think it should just analyze the blockchain, extract the relevant information, organize and display it in a user friendly way, and then provide a way of crafting the sorts of arbitrary messages that you need.

so for example if you find an item that you want to buy, then you can click "purchase this item" and it will pop up with a dialogue box with sections to fill out with required information. such as address and name. When you fill the fields out it will generate specific instructions in addition to an automatically generated arbitrary message for you to just copy over to your client of choice.

on the sell side you just click "sell an item" and a similar dialogue box pops up with fields like price, quantity, expiration date ect... and then a link to an html file that i can create a magnet link for, anything else i missed, and format that all into the relevant am that they need to just copy and paste over to their client of choice.
It would make it much simpler if the NXTorrent could actually directly issue the AM's,that avoids all the cut and pasting. It could use an acct specially made (automatically) for this use. You just need to send it enough NXT to pay for the AM txfees

I can change the "buy" command to "reservelisting", the GUI would have already gathered all the info, so when the user clicks the buy button, the "reservelisting" AM is sent. The user is prompted to send the NXT via whatever client. There would need to have been enough info in the reservelisting AM to allow correlating the payment that is made independently.

This way it stays convenient for the user and also avoids any money contact, other than for AM tx fees

What do you think?

James
Logged
There are over 1000 people in SuperNET slack! http://slackinvite.supernet.org/ automatically sends you an invite

I am just a simple C programmer

anon136

  • Hero Member
  • *****
  • Karma: +86/-19
  • Offline Offline
  • Posts: 1015
    • View Profile
Re: NXTorrent
« Reply #4 on: April 13, 2014, 06:20:03 pm »

i dont think we should make this program a wallet of any sort of handle any nxt in any way. i would like to avoid the security implications of that. probably i think it should just analyze the blockchain, extract the relevant information, organize and display it in a user friendly way, and then provide a way of crafting the sorts of arbitrary messages that you need.

so for example if you find an item that you want to buy, then you can click "purchase this item" and it will pop up with a dialogue box with sections to fill out with required information. such as address and name. When you fill the fields out it will generate specific instructions in addition to an automatically generated arbitrary message for you to just copy over to your client of choice.

on the sell side you just click "sell an item" and a similar dialogue box pops up with fields like price, quantity, expiration date ect... and then a link to an html file that i can create a magnet link for, anything else i missed, and format that all into the relevant am that they need to just copy and paste over to their client of choice.
It would make it much simpler if the NXTorrent could actually directly issue the AM's,that avoids all the cut and pasting. It could use an acct specially made (automatically) for this use. You just need to send it enough NXT to pay for the AM txfees

I can change the "buy" command to "reservelisting", the GUI would have already gathered all the info, so when the user clicks the buy button, the "reservelisting" AM is sent. The user is prompted to send the NXT via whatever client. There would need to have been enough info in the reservelisting AM to allow correlating the payment that is made independently.

This way it stays convenient for the user and also avoids any money contact, other than for AM tx fees

What do you think?

James

its clever. do you think it might also be able to be leveraged up to solve the problem of what if 2 people try to buy the same thing at the same time?
Logged

jl777

  • Hero Member
  • *****
  • Karma: +718/-123
  • Offline Offline
  • Posts: 6170
    • View Profile
Re: NXTorrent
« Reply #5 on: April 13, 2014, 06:39:24 pm »

its clever. do you think it might also be able to be leveraged up to solve the problem of what if 2 people try to buy the same thing at the same time?
Yes.

buyer(s) submit
http://127.0.0.1/NXTorrent?{"requestType":"makeoffer","NXT":"8989816935121514892","listingid":"1234567"}

In the event more than one offer comes in, the seller can choose which buyer he wants to sell to. It could be as simple as buyer promising a bit extra than listing price, or just random chance.

seller would:
http://127.0.0.1/NXTorrent?{"requestType":"acceptoffer","NXT":"11445347041779652448","listingid":"1234567","buyer":"8989816935121514892"}

buyer could wait for the acceptoffer or just:
http://127.0.0.1/NXTorrent?{"requestType":"status","NXT":"8989816935121514892","listingid":"1234567"}}
returns {"status":"sold","buyer":"8989816935121514892"}
and then would send in payment, subsequent status would return:  {"status":"sold","buyer":"8989816935121514892","paid":"<amount>","confirmations":"<N>"}

After enough confirmations seller delivers product and posts feedback
http://127.0.0.1/NXTorrent?{"requestType":"postfeedback","NXT":"11445347041779652448","listingid":"1234567","feedback":{<json of feedback>}}
status changes to: {"status":"intransit","buyer":"8989816935121514892","paid":"<amount>","confirmations":"<N>"}

when buyer receives product
{"requestType":"postfeedback","NXT":"8989816935121514892","listingid":"1234567","feedback":{<json of feedback>}}
status changes to: {"status":"completed","buyer":"8989816935121514892","paid":"<amount>","confirmations":"<N>"}

or

status changes to: {"status":"disputed","buyer":"8989816935121514892","paid":"<amount>","confirmations":"<N>"}

I think I got all the cases, of course the exact fields will change, but you get the idea.

James
Logged
There are over 1000 people in SuperNET slack! http://slackinvite.supernet.org/ automatically sends you an invite

I am just a simple C programmer

anon136

  • Hero Member
  • *****
  • Karma: +86/-19
  • Offline Offline
  • Posts: 1015
    • View Profile
Re: NXTorrent
« Reply #6 on: April 13, 2014, 07:00:16 pm »

its clever. do you think it might also be able to be leveraged up to solve the problem of what if 2 people try to buy the same thing at the same time?
Yes.

buyer(s) submit
http://127.0.0.1/NXTorrent?{"requestType":"makeoffer","NXT":"8989816935121514892","listingid":"1234567"}

In the event more than one offer comes in, the seller can choose which buyer he wants to sell to. It could be as simple as buyer promising a bit extra than listing price, or just random chance.

seller would:
http://127.0.0.1/NXTorrent?{"requestType":"acceptoffer","NXT":"11445347041779652448","listingid":"1234567","buyer":"8989816935121514892"}

buyer could wait for the acceptoffer or just:
http://127.0.0.1/NXTorrent?{"requestType":"status","NXT":"8989816935121514892","listingid":"1234567"}}
returns {"status":"sold","buyer":"8989816935121514892"}
and then would send in payment, subsequent status would return:  {"status":"sold","buyer":"8989816935121514892","paid":"<amount>","confirmations":"<N>"}

After enough confirmations seller delivers product and posts feedback
http://127.0.0.1/NXTorrent?{"requestType":"postfeedback","NXT":"11445347041779652448","listingid":"1234567","feedback":{<json of feedback>}}
status changes to: {"status":"intransit","buyer":"8989816935121514892","paid":"<amount>","confirmations":"<N>"}

when buyer receives product
{"requestType":"postfeedback","NXT":"8989816935121514892","listingid":"1234567","feedback":{<json of feedback>}}
status changes to: {"status":"completed","buyer":"8989816935121514892","paid":"<amount>","confirmations":"<N>"}

or

status changes to: {"status":"disputed","buyer":"8989816935121514892","paid":"<amount>","confirmations":"<N>"}

I think I got all the cases, of course the exact fields will change, but you get the idea.

James

yea it sounds like it could work. the one thing i would say though is to think really hard about any ways in which steps could be eliminated. space on a blockchain can be very expensive, perhaps not right this moment but in the future you know. ill be thinking about it also.
Logged

jl777

  • Hero Member
  • *****
  • Karma: +718/-123
  • Offline Offline
  • Posts: 6170
    • View Profile
Re: NXTorrent
« Reply #7 on: April 13, 2014, 07:18:01 pm »

its clever. do you think it might also be able to be leveraged up to solve the problem of what if 2 people try to buy the same thing at the same time?
Yes.

buyer(s) submit
http://127.0.0.1/NXTorrent?{"requestType":"makeoffer","NXT":"8989816935121514892","listingid":"1234567"}

In the event more than one offer comes in, the seller can choose which buyer he wants to sell to. It could be as simple as buyer promising a bit extra than listing price, or just random chance.

seller would:
http://127.0.0.1/NXTorrent?{"requestType":"acceptoffer","NXT":"11445347041779652448","listingid":"1234567","buyer":"8989816935121514892"}

buyer could wait for the acceptoffer or just:
http://127.0.0.1/NXTorrent?{"requestType":"status","NXT":"8989816935121514892","listingid":"1234567"}}
returns {"status":"sold","buyer":"8989816935121514892"}
and then would send in payment, subsequent status would return:  {"status":"sold","buyer":"8989816935121514892","paid":"<amount>","confirmations":"<N>"}

After enough confirmations seller delivers product and posts feedback
http://127.0.0.1/NXTorrent?{"requestType":"postfeedback","NXT":"11445347041779652448","listingid":"1234567","feedback":{<json of feedback>}}
status changes to: {"status":"intransit","buyer":"8989816935121514892","paid":"<amount>","confirmations":"<N>"}

when buyer receives product
{"requestType":"postfeedback","NXT":"8989816935121514892","listingid":"1234567","feedback":{<json of feedback>}}
status changes to: {"status":"completed","buyer":"8989816935121514892","paid":"<amount>","confirmations":"<N>"}

or

status changes to: {"status":"disputed","buyer":"8989816935121514892","paid":"<amount>","confirmations":"<N>"}

I think I got all the cases, of course the exact fields will change, but you get the idea.

James

yea it sounds like it could work. the one thing i would say though is to think really hard about any ways in which steps could be eliminated. space on a blockchain can be very expensive, perhaps not right this moment but in the future you know. ill be thinking about it also.
I could collapse the whole makeoffer/acceptoffer into an off blockchain comms, with just the final transaction posted, maybe even including feedbacks from the seller

James
Logged
There are over 1000 people in SuperNET slack! http://slackinvite.supernet.org/ automatically sends you an invite

I am just a simple C programmer

jl777

  • Hero Member
  • *****
  • Karma: +718/-123
  • Offline Offline
  • Posts: 6170
    • View Profile
Re: NXTorrent
« Reply #8 on: April 13, 2014, 09:38:32 pm »

I got the list function implemented

Syntax is array of two objects, the first one describes the request, the second one is the token created using the first object as the "website". Strip all whitespaces. For now, I wont be enforcing this, but might as well get all the syntax in place up front. The listing itself is a JSON object with what ever fields you want.

http://127.0.0.1:7777/NXTorrent?[{"requestType":"list","NXT":"8989816935121514892","listing":{"type":"doggies",...}},{"token":"39897489327"}]

The listing JSON gets written to an AM, which then all nodes that are running NXTorrent handler would get passed as an argument to the AM handler.

I had to do all this for multigateway, but I realized it was a lot of tedious work that I could generalize. A purely AM based NXTprotocol handler is just few days work, all depends on what exactly it needs to do

James
Logged
There are over 1000 people in SuperNET slack! http://slackinvite.supernet.org/ automatically sends you an invite

I am just a simple C programmer

jl777

  • Hero Member
  • *****
  • Karma: +718/-123
  • Offline Offline
  • Posts: 6170
    • View Profile
Re: NXTorrent
« Reply #9 on: April 14, 2014, 12:10:21 am »

Got the rest implemented, all but the actual processing of AM's

    static char *listings[] = { (char *)listings_func, "listings", "", "NXT", "filters", 0 };
    static char *list[] = { (char *)list_func, "list", "", "NXT", "listing", 0 };
    static char *status[] = { (char *)status_func, "status", "", "NXT", "listingid", 0 };
    static char *cancel[] = { (char *)cancel_func, "cancel", "", "NXT", "listingid", 0 };
    static char *makeoffer[] = { (char *)makeoffer_func, "makeoffer", "", "NXT", "listingid", "bid", 0 };
    static char *acceptoffer[] = { (char *)acceptoffer_func, "acceptoffer", "", "NXT", "listingid", "buyer", 0 };
    static char *feedback[] = { (char *)feedback_func, "feedback", "", "NXT", "aboutbuyer", "aboutseller", 0 };

Testing, hope to be able to make a Mac release soon

James
Logged
There are over 1000 people in SuperNET slack! http://slackinvite.supernet.org/ automatically sends you an invite

I am just a simple C programmer

anon136

  • Hero Member
  • *****
  • Karma: +86/-19
  • Offline Offline
  • Posts: 1015
    • View Profile
Re: NXTorrent
« Reply #10 on: April 14, 2014, 12:14:31 am »

Got the rest implemented, all but the actual processing of AM's

    static char *listings[] = { (char *)listings_func, "listings", "", "NXT", "filters", 0 };
    static char *list[] = { (char *)list_func, "list", "", "NXT", "listing", 0 };
    static char *status[] = { (char *)status_func, "status", "", "NXT", "listingid", 0 };
    static char *cancel[] = { (char *)cancel_func, "cancel", "", "NXT", "listingid", 0 };
    static char *makeoffer[] = { (char *)makeoffer_func, "makeoffer", "", "NXT", "listingid", "bid", 0 };
    static char *acceptoffer[] = { (char *)acceptoffer_func, "acceptoffer", "", "NXT", "listingid", "buyer", 0 };
    static char *feedback[] = { (char *)feedback_func, "feedback", "", "NXT", "aboutbuyer", "aboutseller", 0 };

Testing, hope to be able to make a Mac release soon

James

I like that. people will list the asking price but anyone who wants can offer anything they want and the seller can accept or deny any offer he wants. Not really an auction or a buy it now either. More like real life transactions.

*edit* so does this sound right to you? the transaction hash of the transaction used to post the auction will be our "advertisement id" sort of thing that we use to allow the buyer to specify what item he is purchasing, and to enforce the 1 feedback per sale rule?
« Last Edit: April 14, 2014, 12:20:13 am by anon136 »
Logged

jl777

  • Hero Member
  • *****
  • Karma: +718/-123
  • Offline Offline
  • Posts: 6170
    • View Profile
Re: NXTorrent
« Reply #11 on: April 14, 2014, 12:41:12 am »

Got the rest implemented, all but the actual processing of AM's

    static char *listings[] = { (char *)listings_func, "listings", "", "NXT", "filters", 0 };
    static char *list[] = { (char *)list_func, "list", "", "NXT", "listing", 0 };
    static char *status[] = { (char *)status_func, "status", "", "NXT", "listingid", 0 };
    static char *cancel[] = { (char *)cancel_func, "cancel", "", "NXT", "listingid", 0 };
    static char *makeoffer[] = { (char *)makeoffer_func, "makeoffer", "", "NXT", "listingid", "bid", 0 };
    static char *acceptoffer[] = { (char *)acceptoffer_func, "acceptoffer", "", "NXT", "listingid", "buyer", 0 };
    static char *feedback[] = { (char *)feedback_func, "feedback", "", "NXT", "aboutbuyer", "aboutseller", 0 };

Testing, hope to be able to make a Mac release soon

James

I like that. people will list the asking price but anyone who wants can offer anything they want and the seller can accept or deny any offer he wants. Not really an auction or a buy it now either. More like real life transactions.

*edit* so does this sound right to you? the transaction hash of the transaction used to post the auction will be our "advertisement id" sort of thing that we use to allow the buyer to specify what item he is purchasing, and to enforce the 1 feedback per sale rule?
I originally had it that way, but the problem was I needed to generate JSON for the listing and put it in the AM, so dont have the txid until after it is submitted. I just calculate my own hash function for now based on seller and listing txt.

Got the listing function tested:

http://127.0.0.1:7777/NXTorrent?{%22requestType%22:%22list%22,%22NXT%22:%228989816935121514892%22,%22listing%22:[{%22price%22:%22123%22},{%22URI%22:%22http://www.NXTorrent.com%22},{%22type%22:%22doggies%22}]}

-->

{
   "seller":   "8989816935121514892",
   "listingid":   "10199267259341813669",
   "price":   "123.00000000",
   "status":   "active listing",
   "listedtime":   12141360,
   "URI":   "http://www.NXTorrent.com",
   "listing":   "[{\"price\":\"123\"},{\"URI\":\"http://www.NXTorrent.com\"},{\"type\":\"doggies\"}]"
}

That was one of the harder functions, the rest should test out pretty quick

James
Logged
There are over 1000 people in SuperNET slack! http://slackinvite.supernet.org/ automatically sends you an invite

I am just a simple C programmer

jl777

  • Hero Member
  • *****
  • Karma: +718/-123
  • Offline Offline
  • Posts: 6170
    • View Profile
Re: NXTorrent
« Reply #12 on: April 14, 2014, 12:54:23 am »

http://127.0.0.1:7777/NXTorrent?[{%22requestType%22:%22listings%22,%22NXT%22:%228989816935121514892%22},{%22token%22:%22not%20a%20real%20token%22}]

works:

["11366926552051493165", "832762510949887668", "12579746999824526313", "10989569746855179394", "18246329085810606926"]
Logged
There are over 1000 people in SuperNET slack! http://slackinvite.supernet.org/ automatically sends you an invite

I am just a simple C programmer

jl777

  • Hero Member
  • *****
  • Karma: +718/-123
  • Offline Offline
  • Posts: 6170
    • View Profile
Re: NXTorrent
« Reply #13 on: April 14, 2014, 12:59:35 am »

http://127.0.0.1:7777/NXTorrent?[{%22requestType%22:%22status%22,%22NXT%22:%228989816935121514892%22,%22listingid%22:%22832762510949887668%22},{%22token%22:%22not%20a%20real%20token%22}]

{
   "seller":   "8989816935121514892",
   "listingid":   "832762510949887668",
   "price":   "123.00000000",
   "status":   "active listing",
   "listedtime":   12142369,
   "URI":   "http://www.NXTorrent.com",
   "listing":   "[{\"price\":\"123\"},{\"URI\":\"http://www.NXTorrent.com\"},{\"type\":\"doggies\"}]",
   "listingAMtxid":   "5803572008117944145"
}

http://127.0.0.1:7777/NXTorrent?[{%22requestType%22:%22cancel%22,%22NXT%22:%228989816935121514892%22,%22listingid%22:%22832762510949887668%22},{%22token%22:%22not%20a%20real%20token%22}]
{
   "result":   "good",
   "AMtxid":   "17830353010248198133"
}

now the status call returns:    "status":   "cancelled listing",

Only a few more to go before I merge HTML file from PoofKnuckle
Logged
There are over 1000 people in SuperNET slack! http://slackinvite.supernet.org/ automatically sends you an invite

I am just a simple C programmer

jl777

  • Hero Member
  • *****
  • Karma: +718/-123
  • Offline Offline
  • Posts: 6170
    • View Profile
Re: NXTorrent
« Reply #14 on: April 14, 2014, 01:04:48 am »

makeoffer:
http://127.0.0.1:7777/NXTorrent?[{%22requestType%22:%22makeoffer%22,%22NXT%22:%228989816935121514892%22,%22listingid%22:%2211366926552051493165%22,%22bid%22:[{%22part1%22:%22blad%22,%22part2%22:%22bleh%22}]},{%22token%22:%22not%20a%20real%20token%22}]

status changed to offer pending

accepted offer
http://127.0.0.1:7777/NXTorrent?[{%22requestType%22:%22acceptoffer%22,%22NXT%22:%228989816935121514892%22,%22listingid%22:%2211366926552051493165%22,%22buyer%22:%2211445347041779652448%22},{%22token%22:%22not%20a%20real%20token%22}]

status changed to:
{
   "seller":   "8989816935121514892",
   "listingid":   "11366926552051493165",
   "price":   "123.00000000",
   "status":   "offer accepted",
   "listedtime":   12142369,
   "buyer":   "11445347041779652448",
   "listing":   "[{\"price\":\"123\"},{\"type\":\"doggies\"}]",
   "listingAMtxid":   "13157019347979849470"
}
also buyer is there

James
Logged
There are over 1000 people in SuperNET slack! http://slackinvite.supernet.org/ automatically sends you an invite

I am just a simple C programmer

jl777

  • Hero Member
  • *****
  • Karma: +718/-123
  • Offline Offline
  • Posts: 6170
    • View Profile
Re: NXTorrent
« Reply #15 on: April 14, 2014, 01:50:33 am »

I added a special command "changeurl" so you can point it anywhere to get the HTML file that is loaded when
127.0.0.1:7777 is accessed (without any args)

http://127.0.0.1:7777/NXTorrent?{%22requestType%22:%22changeurl%22,%22URL%22:%22/Users/jl777/Documents/NXTprotocol.html%22}

This version only works on Macs and while it writes out data to AM's and even sees them, it doesnt do anything with it. Couldnt get all that done in the 5 hours I spent so far. ~500 lines and just need to parse the AM and implement search filtering. hashtables are used, so access will be fast. 

After all the delays with multigateway (testnet is still wonky for me), it was good to have a project where I could feel productive. I did manage to get a deposit into multigateway and a withdraw process started, but multisig is being cranky now. Hopefully I can get that fixed and then beta release multigateway too

https://github.com/jl777/NXTprotocol/tree/master/NXTorrent has the source for the NXTorrent handler

http://209.126.71.170/NXTorrent.zip has a very rough release for Mac's only. Just open the ZIP file and run NXTorrent
goto 127.0.0.1:7777/NXTorrent?{"requestType":"changeurl","URL":"/path to NXTprotocol.html"}

Now 127.0.0.1:7777 without anything else will bring up the NXTprotocol.html page and when it is done you wont need to do manual commands via URL

James

P.S. I think I will try to figure out torrent stuff, now that the struture is in place that is really the only major piece left to do
Logged
There are over 1000 people in SuperNET slack! http://slackinvite.supernet.org/ automatically sends you an invite

I am just a simple C programmer

anon136

  • Hero Member
  • *****
  • Karma: +86/-19
  • Offline Offline
  • Posts: 1015
    • View Profile
Re: NXTorrent
« Reply #16 on: April 14, 2014, 02:38:50 am »

do you need a field for seller id? what if that is simply interpreted as the destination address of the arbitrary message?
Logged

jl777

  • Hero Member
  • *****
  • Karma: +718/-123
  • Offline Offline
  • Posts: 6170
    • View Profile
Re: NXTorrent
« Reply #17 on: April 14, 2014, 03:11:59 am »

do you need a field for seller id? what if that is simply interpreted as the destination address of the arbitrary message?
I am envisioning having a temporary account that is controlled by the software and coordinating with the actual client software for generating tokens.

In any case, the time for optimizing is after it is fully functional. After 8 hours from start of coding, I think it is a bit premature to be pruning fields. Optimization is a totally different mindset than proof of concept.

James

P.S. making good progress on the torrent side, but I cant find many magnet links to test with. Do you have any or a place to get them?
Logged
There are over 1000 people in SuperNET slack! http://slackinvite.supernet.org/ automatically sends you an invite

I am just a simple C programmer

anon136

  • Hero Member
  • *****
  • Karma: +86/-19
  • Offline Offline
  • Posts: 1015
    • View Profile
Re: NXTorrent
« Reply #18 on: April 14, 2014, 03:34:18 am »

do you need a field for seller id? what if that is simply interpreted as the destination address of the arbitrary message?
I am envisioning having a temporary account that is controlled by the software and coordinating with the actual client software for generating tokens.

In any case, the time for optimizing is after it is fully functional. After 8 hours from start of coding, I think it is a bit premature to be pruning fields. Optimization is a totally different mindset than proof of concept.

James

P.S. making good progress on the torrent side, but I cant find many magnet links to test with. Do you have any or a place to get them?

you know what. this is starting to go over my head. clearly you know a lot more about the minutiae of implementing this sort of thing than i do. I think the best i can do at this point is, with a little luck, offer a bit of inspiration here or there. :D

*edit* http://eztv.it/shows/429/bobs-burgers/ press the little u shaped icon to the right of each episode. or on http://thepiratebay.se/ the torrents don't actually have any option other than magnet links.

*edit2* actually this might be easier. here is an actual magnet link: magnet:?xt=urn:btih:BKYHNFS7U6IV6UAKLFKPWSR6B4S33FJQ&dn=Bobs.Burgers.S04E16.PROPER.HDTV.x264-2HD&tr=udp://tracker.openbittorrent.com:80&tr=udp://tracker.publicbt.com:80&tr=udp://tracker.istole.it:80&tr=udp://open.demonii.com:80&tr=udp://tracker.coppersurfer.tk:80
« Last Edit: April 14, 2014, 03:37:52 am by anon136 »
Logged

jl777

  • Hero Member
  • *****
  • Karma: +718/-123
  • Offline Offline
  • Posts: 6170
    • View Profile
Re: NXTorrent
« Reply #19 on: April 14, 2014, 03:01:13 pm »

I pushed a new release to https://github.com/jl777/NXTprotocol/tree/master/NXTorrent
http://209.126.71.170/NXTorrent.zip

This one processes AMs, so all nodes running NXTorrent should have the same state, expect in a few cases the one that generates the AM will have a slightly advanced status than the rest of the nodes.

Feedback is much more sane now. Buyers and Sellers give each other ratings and an optional details. This is then stored in AM's and broadcast. Dont have anything that compiles cumulative feedback histories, but that's just a few hours of work fiddling with data already internal in RAM.

When you ask for status on a listing, it displays the listing info, feedbacks and if there is a URI it also fetches that data. Currently, only URL's are supported, but I have it in the code where there is a single place to add in full URI support. I am leaning toward installing third party torrent programs and issuing requests to those programs, rather than reinvent the wheel. the net effect is the same, as the content will appear from magnet links. Hope that is OK.

Other than finding and interfacing to the torrent programs, I think all I have left to do is filtering search results (currently capped at 100) and fixing bugs. If you have ideas on how to specify filtering of search results within JSON array, let me know. [{filterA},{filterB}..] each filter would be {"field":"name", "min":<minval>, "max":<maxval>}

I think the above will allow for pretty good flexibility, exact matches can be specified with minval == maxval
Since there arent any large number of listings yet, I was going to wait before completing the filtering

If I can get some third party torrent programs connected up, I could be done today, other than bug fixes. Maybe somebody can start testing this more than my one testcase thoroughness. Also, source review especially on status changes would be nice.

James
Logged
There are over 1000 people in SuperNET slack! http://slackinvite.supernet.org/ automatically sends you an invite

I am just a simple C programmer

jl777

  • Hero Member
  • *****
  • Karma: +718/-123
  • Offline Offline
  • Posts: 6170
    • View Profile
Re: NXTorrent
« Reply #20 on: April 14, 2014, 03:05:15 pm »

Found a unix solution! Aria2 http://linuxconfig.org/aria2-all-in-one-command-line-download-tool
It seems perfect. So just need to port this to Mac and if a Cygwin requirement for windows is acceptable, I think we could get this cross platform.

James
Logged
There are over 1000 people in SuperNET slack! http://slackinvite.supernet.org/ automatically sends you an invite

I am just a simple C programmer

jl777

  • Hero Member
  • *****
  • Karma: +718/-123
  • Offline Offline
  • Posts: 6170
    • View Profile
Re: NXTorrent
« Reply #21 on: April 14, 2014, 03:50:37 pm »


When you first run it, it will take a while generating a high entropy password. It will print this and the NXT address. You need to send it some testnxt so that it will be able to send AM's

All the API commands are via 127.0.0.1:7777 that brings up the webpage that is bundled, but you need to first tell the API where to get that file using:
http://127.0.0.1:7777/NXTorrent?{%22requestType%22:%22changeurl%22,%22URL%22:%22/Users/jl777/Documents/NXTprotocol.html%22}

Then you can use the form, but that hasnt been debugged yet, so for now 127.0.0.1:7777/NXTorrent?{JSON} is the way to test. The following is the supported grammar:

    static char *changeurl[] = { (char *)changeurl_func, "changeurl", "", "URL", 0 };
    static char *listings[] = { (char *)listings_func, "listings", "", "NXT", "filters", 0 };
    static char *list[] = { (char *)list_func, "list", "", "NXT", "listing", 0 };
    static char *status[] = { (char *)status_func, "status", "", "NXT", "listingid", 0 };
    static char *cancel[] = { (char *)cancel_func, "cancel", "", "NXT", "listingid", 0 };
    static char *makeoffer[] = { (char *)makeoffer_func, "makeoffer", "", "NXT", "listingid", "bid", 0 };
    static char *acceptoffer[] = { (char *)acceptoffer_func, "acceptoffer", "", "NXT", "listingid", "buyer", 0 };
    static char *feedback[] = { (char *)feedback_func, "feedback", "", "NXT", "listingid", "rating", "aboutbuyer", "aboutseller", 0 };
 
The second entry is the requestType, the third entry is whether signed token is required, third is usually NXT account of the sender,the rest are command specific. When signed tokens are required, the syntax changes to:
[{JSON},{"token":"<nxt token using {JSON} as the website"}]

Hope this all makes sense

James
Logged
There are over 1000 people in SuperNET slack! http://slackinvite.supernet.org/ automatically sends you an invite

I am just a simple C programmer

anon136

  • Hero Member
  • *****
  • Karma: +86/-19
  • Offline Offline
  • Posts: 1015
    • View Profile
Re: NXTorrent
« Reply #22 on: April 14, 2014, 03:54:59 pm »

i get this error

Quote
websocket connection CLOSED
Logged

jl777

  • Hero Member
  • *****
  • Karma: +718/-123
  • Offline Offline
  • Posts: 6170
    • View Profile
Re: NXTorrent
« Reply #23 on: April 14, 2014, 04:02:56 pm »

i get this error

Quote
websocket connection CLOSED
When you first run it, it could take minutes for it to generate the high entropy bits
Do the API commands work?
what is the terminal window displaying?
Logged
There are over 1000 people in SuperNET slack! http://slackinvite.supernet.org/ automatically sends you an invite

I am just a simple C programmer

anon136

  • Hero Member
  • *****
  • Karma: +86/-19
  • Offline Offline
  • Posts: 1015
    • View Profile
Re: NXTorrent
« Reply #24 on: April 14, 2014, 04:26:05 pm »

i get this error

Quote
websocket connection CLOSED
When you first run it, it could take minutes for it to generate the high entropy bits
Do the API commands work?
what is the terminal window displaying?

oh im using windows. you wrote this for linux i take it?
Logged

anon136

  • Hero Member
  • *****
  • Karma: +86/-19
  • Offline Offline
  • Posts: 1015
    • View Profile
Re: NXTorrent
« Reply #25 on: April 14, 2014, 04:38:29 pm »

http://en.wikipedia.org/wiki/BitTorrent_tracker

this is a point of weakness for torrents. do you think that we could use the redundancy of the blockchain to address this critical point? perhaps the client could abstract tracking information from the blockchain and loopback to find a locally stored tracker that is derived from information in the blockchain.
Logged

jl777

  • Hero Member
  • *****
  • Karma: +718/-123
  • Offline Offline
  • Posts: 6170
    • View Profile
Re: NXTorrent
« Reply #26 on: April 14, 2014, 04:46:39 pm »

http://en.wikipedia.org/wiki/BitTorrent_tracker

this is a point of weakness for torrents. do you think that we could use the redundancy of the blockchain to address this critical point? perhaps the client could abstract tracking information from the blockchain and loopback to find a locally stored tracker that is derived from information in the blockchain.
Its only for Mac for now
Logged
There are over 1000 people in SuperNET slack! http://slackinvite.supernet.org/ automatically sends you an invite

I am just a simple C programmer

jl777

  • Hero Member
  • *****
  • Karma: +718/-123
  • Offline Offline
  • Posts: 6170
    • View Profile
Re: NXTorrent
« Reply #27 on: April 14, 2014, 04:58:20 pm »

http://en.wikipedia.org/wiki/BitTorrent_tracker

this is a point of weakness for torrents. do you think that we could use the redundancy of the blockchain to address this critical point? perhaps the client could abstract tracking information from the blockchain and loopback to find a locally stored tracker that is derived from information in the blockchain.
Well, sure, but if you were worried about blockchain bloat from the AM's from NXTorrent fields, you will not like that each tracker would need to generate a periodic AM (if it even fits in one), otherwise it will become useless over time. How long a tracker's data is valid for, I have no idea.

If this was a separate project, I am sure I can come up with some sort of practical way of maximizing practical value of tracker data delivered vs. blockchain space used.

James
Logged
There are over 1000 people in SuperNET slack! http://slackinvite.supernet.org/ automatically sends you an invite

I am just a simple C programmer

anon136

  • Hero Member
  • *****
  • Karma: +86/-19
  • Offline Offline
  • Posts: 1015
    • View Profile
Re: NXTorrent
« Reply #28 on: April 14, 2014, 05:22:51 pm »

http://en.wikipedia.org/wiki/BitTorrent_tracker

this is a point of weakness for torrents. do you think that we could use the redundancy of the blockchain to address this critical point? perhaps the client could abstract tracking information from the blockchain and loopback to find a locally stored tracker that is derived from information in the blockchain.
Its only for Mac for now

ooh yea i dont have mac. thats the only major OS i cant do.
Logged

anon136

  • Hero Member
  • *****
  • Karma: +86/-19
  • Offline Offline
  • Posts: 1015
    • View Profile
Re: NXTorrent
« Reply #29 on: April 14, 2014, 05:25:58 pm »

http://en.wikipedia.org/wiki/BitTorrent_tracker

this is a point of weakness for torrents. do you think that we could use the redundancy of the blockchain to address this critical point? perhaps the client could abstract tracking information from the blockchain and loopback to find a locally stored tracker that is derived from information in the blockchain.
Well, sure, but if you were worried about blockchain bloat from the AM's from NXTorrent fields, you will not like that each tracker would need to generate a periodic AM (if it even fits in one), otherwise it will become useless over time. How long a tracker's data is valid for, I have no idea.

If this was a separate project, I am sure I can come up with some sort of practical way of maximizing practical value of tracker data delivered vs. blockchain space used.

James

probably should be something like a stretch goal. maybe something someone can come back and do later. there are a ton of trackers out there. it may be the weakest point but its still not very weak.
Logged

jl777

  • Hero Member
  • *****
  • Karma: +718/-123
  • Offline Offline
  • Posts: 6170
    • View Profile
Re: NXTorrent
« Reply #30 on: April 15, 2014, 02:51:16 am »

Seeing that GUI development time is the bottleneck, I semi-automated generating the forms to submit to the websockets API.
It is just text, but it lets webdevs to start from a working syntax. It still takes about 10 minutes per form, but no point in spending 10 times more time to squeeze out the last minutes of work.

The following page has the current set of API's for NXTorrent.

http://209.126.71.170/api.html

I will upload a new version soon.

James

Edit: new version is at http://209.126.71.170/NXTorrent_01.zip, only for Mac
« Last Edit: April 15, 2014, 02:55:03 am by jl777 »
Logged
There are over 1000 people in SuperNET slack! http://slackinvite.supernet.org/ automatically sends you an invite

I am just a simple C programmer

anon136

  • Hero Member
  • *****
  • Karma: +86/-19
  • Offline Offline
  • Posts: 1015
    • View Profile
Re: NXTorrent
« Reply #31 on: April 15, 2014, 03:11:54 am »

Seeing that GUI development time is the bottleneck, I semi-automated generating the forms to submit to the websockets API.
It is just text, but it lets webdevs to start from a working syntax. It still takes about 10 minutes per form, but no point in spending 10 times more time to squeeze out the last minutes of work.

The following page has the current set of API's for NXTorrent.

http://209.126.71.170/api.html

I will upload a new version soon.

James

Edit: new version is at http://209.126.71.170/NXTorrent_01.zip, only for Mac

super awesome. im very excited.

i was thinking about how to do categories. i was thinking that there is no way for us to impose categories onto other people. we want to avoid dictating to people. i was thinking that we should just have a section were a seller can list his item as part of any category he likes and then as many sub categories as he likes as well filled out with anything he likes. then on the client end we just filter what ever we dont like. so for example we may chose to display only the 100 categories with the most items for sale in them. and then then a similar rule of 20 for sub categories and sub-sub categories. ect. there would be pressure on sellers to conform to standards and norms that would organically develop since listing his shoes under the category "amusement park rides" would not be conducive to him actually making a sale. its sort of self governing.

anyway i know im jumping ahead but some questions about this were raised earlier so i thought i would give it a mention.
Logged

PoofKnuckle

  • Hero Member
  • *****
  • Karma: +111/-7
  • Offline Offline
  • Posts: 849
  • Your Concern is Noted.
    • View Profile
    • NXT FreeMarket
Re: NXTorrent
« Reply #32 on: April 15, 2014, 03:25:35 am »

eBay sells a lot of stuff, and people are used to them. We could start with the same set of categories they have, or a realistic subset. With their years of experience and budget, they have sort of done this work for us.

We could include a free form category field for sellers who are feeling rebellious.
Logged
NXT: NXT-WBVP-83YM-FRB3-9MQLY
BM-NBTVHaA41Ejh2G6krD9p5vM62vk84isM

anon136

  • Hero Member
  • *****
  • Karma: +86/-19
  • Offline Offline
  • Posts: 1015
    • View Profile
Re: NXTorrent
« Reply #33 on: April 15, 2014, 03:53:12 am »

eBay sells a lot of stuff, and people are used to them. We could start with the same set of categories they have, or a realistic subset. With their years of experience and budget, they have sort of done this work for us.

We could include a free form category field for sellers who are feeling rebellious.

I'm very confident the solution I proposed will work well.
Logged

jl777

  • Hero Member
  • *****
  • Karma: +718/-123
  • Offline Offline
  • Posts: 6170
    • View Profile
Re: NXTorrent
« Reply #34 on: April 15, 2014, 03:57:49 am »

Seeing that GUI development time is the bottleneck, I semi-automated generating the forms to submit to the websockets API.
It is just text, but it lets webdevs to start from a working syntax. It still takes about 10 minutes per form, but no point in spending 10 times more time to squeeze out the last minutes of work.

The following page has the current set of API's for NXTorrent.

http://209.126.71.170/api.html

I will upload a new version soon.

James

Edit: new version is at http://209.126.71.170/NXTorrent_01.zip, only for Mac

super awesome. im very excited.

i was thinking about how to do categories. i was thinking that there is no way for us to impose categories onto other people. we want to avoid dictating to people. i was thinking that we should just have a section were a seller can list his item as part of any category he likes and then as many sub categories as he likes as well filled out with anything he likes. then on the client end we just filter what ever we dont like. so for example we may chose to display only the 100 categories with the most items for sale in them. and then then a similar rule of 20 for sub categories and sub-sub categories. ect. there would be pressure on sellers to conform to standards and norms that would organically develop since listing his shoes under the category "amusement park rides" would not be conducive to him actually making a sale. its sort of self governing.

anyway i know im jumping ahead but some questions about this were raised earlier so i thought i would give it a mention.
Things are setup in the API so that you pass in an array of filters and these filter can be anything. Similarity with the listing, there is no restriction on what fields or values that can be used. I guess the one thing we can do is help with heirarchical organization instead of intersections of flat global categories.

Anyway, now that testnet is working, I need to shift to 100% multigateway and nothing but multigateway until it is done.
I think I pushed this project pretty close to the finish line in a day! Now it is time for others to develop bug lists (I am sure there have to be plenty) and desired features. Please try to get the list by Wed, I have some time available then.

James

P.S. I just had a crazy idea. Not sure if there will be any point, but what do you think about realtime auctions?
Logged
There are over 1000 people in SuperNET slack! http://slackinvite.supernet.org/ automatically sends you an invite

I am just a simple C programmer

anon136

  • Hero Member
  • *****
  • Karma: +86/-19
  • Offline Offline
  • Posts: 1015
    • View Profile
Re: NXTorrent
« Reply #35 on: April 15, 2014, 04:49:27 am »

Seeing that GUI development time is the bottleneck, I semi-automated generating the forms to submit to the websockets API.
It is just text, but it lets webdevs to start from a working syntax. It still takes about 10 minutes per form, but no point in spending 10 times more time to squeeze out the last minutes of work.

The following page has the current set of API's for NXTorrent.

http://209.126.71.170/api.html

I will upload a new version soon.

James

Edit: new version is at http://209.126.71.170/NXTorrent_01.zip, only for Mac

super awesome. im very excited.

i was thinking about how to do categories. i was thinking that there is no way for us to impose categories onto other people. we want to avoid dictating to people. i was thinking that we should just have a section were a seller can list his item as part of any category he likes and then as many sub categories as he likes as well filled out with anything he likes. then on the client end we just filter what ever we dont like. so for example we may chose to display only the 100 categories with the most items for sale in them. and then then a similar rule of 20 for sub categories and sub-sub categories. ect. there would be pressure on sellers to conform to standards and norms that would organically develop since listing his shoes under the category "amusement park rides" would not be conducive to him actually making a sale. its sort of self governing.

anyway i know im jumping ahead but some questions about this were raised earlier so i thought i would give it a mention.
Things are setup in the API so that you pass in an array of filters and these filter can be anything. Similarity with the listing, there is no restriction on what fields or values that can be used. I guess the one thing we can do is help with heirarchical organization instead of intersections of flat global categories.

Anyway, now that testnet is working, I need to shift to 100% multigateway and nothing but multigateway until it is done.
I think I pushed this project pretty close to the finish line in a day! Now it is time for others to develop bug lists (I am sure there have to be plenty) and desired features. Please try to get the list by Wed, I have some time available then.

James

P.S. I just had a crazy idea. Not sure if there will be any point, but what do you think about realtime auctions?

Yes thats right. we need a way to express and interpret hierarchy in categories. also i think category field should be differentiated from tags, which are also a useful thing.

I didn't specify anything about platforms in my bounty thread and i really should have but how do you feel about windows mac and linux (at least ubuntu)? those three platforms cover almost all users.

also don't forget that part of this bounty, and part of the reason why its set so high (ateast i think its pretty high) is the bit at the end where im going to be a major pain in everyones ass. :D so just start to get prepared for that. (ill try not to be too bad i just want it to at-least approximately look as nice and feel as slick in operation as bitmit did)

any idea on an eta for multigateway? it can be pretty rough just a general idea ya know.

yea auctions would be cool. im trying to keep it from getting out of hand by limiting the total number of features. there is already going to be so much work to be done to get it to the level of a product that consumers actually want to use. maybe ill go back and fund stretch goals after the fact.

thanks for all the help so far!
Logged

jl777

  • Hero Member
  • *****
  • Karma: +718/-123
  • Offline Offline
  • Posts: 6170
    • View Profile
Re: NXTorrent
« Reply #36 on: April 15, 2014, 04:57:58 am »

Seeing that GUI development time is the bottleneck, I semi-automated generating the forms to submit to the websockets API.
It is just text, but it lets webdevs to start from a working syntax. It still takes about 10 minutes per form, but no point in spending 10 times more time to squeeze out the last minutes of work.

The following page has the current set of API's for NXTorrent.

http://209.126.71.170/api.html

I will upload a new version soon.

James

Edit: new version is at http://209.126.71.170/NXTorrent_01.zip, only for Mac

super awesome. im very excited.

i was thinking about how to do categories. i was thinking that there is no way for us to impose categories onto other people. we want to avoid dictating to people. i was thinking that we should just have a section were a seller can list his item as part of any category he likes and then as many sub categories as he likes as well filled out with anything he likes. then on the client end we just filter what ever we dont like. so for example we may chose to display only the 100 categories with the most items for sale in them. and then then a similar rule of 20 for sub categories and sub-sub categories. ect. there would be pressure on sellers to conform to standards and norms that would organically develop since listing his shoes under the category "amusement park rides" would not be conducive to him actually making a sale. its sort of self governing.

anyway i know im jumping ahead but some questions about this were raised earlier so i thought i would give it a mention.
Things are setup in the API so that you pass in an array of filters and these filter can be anything. Similarity with the listing, there is no restriction on what fields or values that can be used. I guess the one thing we can do is help with heirarchical organization instead of intersections of flat global categories.

Anyway, now that testnet is working, I need to shift to 100% multigateway and nothing but multigateway until it is done.
I think I pushed this project pretty close to the finish line in a day! Now it is time for others to develop bug lists (I am sure there have to be plenty) and desired features. Please try to get the list by Wed, I have some time available then.

James

P.S. I just had a crazy idea. Not sure if there will be any point, but what do you think about realtime auctions?

Yes thats right. we need a way to express and interpret hierarchy in categories. also i think category field should be differentiated from tags, which are also a useful thing.

I didn't specify anything about platforms in my bounty thread and i really should have but how do you feel about windows mac and linux (at least ubuntu)? those three platforms cover almost all users.

also don't forget that part of this bounty, and part of the reason why its set so high (ateast i think its pretty high) is the bit at the end where im going to be a major pain in everyones ass. :D so just start to get prepared for that. (ill try not to be too bad i just want it to at-least approximately look as nice and feel as slick in operation as bitmit did)

any idea on an eta for multigateway? it can be pretty rough just a general idea ya know.

yea auctions would be cool. im trying to keep it from getting out of hand by limiting the total number of features. there is already going to be so much work to be done to get it to the level of a product that consumers actually want to use. maybe ill go back and fund stretch goals after the fact.

thanks for all the help so far!
There is a reason I dont do GUIs :)
I prefer to stay out of subjective areas, so go wild and harass the GUI guys
I've been stalled for two weeks on multigateway due to all the testnet resets and problems, but it finally looks like it is working well. I figure a few days to get all the main paths tested and debugged, then a week to deal with issues raised by code review. The review is happening now starting with the parts that have been stable.

So, barring any surprises around two weeks, or about the same time as AE goes live. I still have to deal with porting websockets to ubuntu (should be easy) and windows (yuk!). I agree that ubuntu, Mac and Windows are the platforms that we need to support

James
Logged
There are over 1000 people in SuperNET slack! http://slackinvite.supernet.org/ automatically sends you an invite

I am just a simple C programmer

PoofKnuckle

  • Hero Member
  • *****
  • Karma: +111/-7
  • Offline Offline
  • Posts: 849
  • Your Concern is Noted.
    • View Profile
    • NXT FreeMarket
Re: NXTorrent
« Reply #37 on: April 15, 2014, 05:26:24 pm »



I'm very confident the solution I proposed will work well.

OK, I have changed my test GUI to have 3 categories (hard-coded to three for now, since it's faster to test - I can make this into an all-you-can-type affair later). These are free-form fields, you can type in whatever you want.

This does raise some interface issues. For instance, if I am about to post my kitten for sale, I may wonder what category/categories to put him in. Users will need to know what the top categories are. Is "Cats" a category? How about "Pets?" Maybe "Annoying Animals?"

Also, some form of autocomplete might be helpful, so if I start typing "Small" the UI will show me that "Small Furry Things" is a category that exists, or has existed, or that currently has other items listed in it. That could also help with people typing "Small furry things" when they should have typed "Small Furry Things." In general, free form fields present issues for databases, so while you want to let people type in anything they want, there's nothing wrong with giving some feedback to help them get their items into the consensus categories that develop over time.
Logged
NXT: NXT-WBVP-83YM-FRB3-9MQLY
BM-NBTVHaA41Ejh2G6krD9p5vM62vk84isM

IveBeenBit

  • Full Member
  • ***
  • Karma: +7/-2
  • Offline Offline
  • Posts: 131
    • View Profile
Re: NXTorrent
« Reply #38 on: April 15, 2014, 05:54:25 pm »

Yes thats right. we need a way to express and interpret hierarchy in categories. also i think category field should be differentiated from tags, which are also a useful thing.

I didn't specify anything about platforms in my bounty thread and i really should have but how do you feel about windows mac and linux (at least ubuntu)? those three platforms cover almost all users.

also don't forget that part of this bounty, and part of the reason why its set so high (ateast i think its pretty high) is the bit at the end where im going to be a major pain in everyones ass. :D so just start to get prepared for that. (ill try not to be too bad i just want it to at-least approximately look as nice and feel as slick in operation as bitmit did)

any idea on an eta for multigateway? it can be pretty rough just a general idea ya know.

yea auctions would be cool. im trying to keep it from getting out of hand by limiting the total number of features. there is already going to be so much work to be done to get it to the level of a product that consumers actually want to use. maybe ill go back and fund stretch goals after the fact.

thanks for all the help so far!

Anon -- I just wanted to say I really like the way you seem to be managing this project. Keep up the good work, and don't be afraid to be strict. As you say, there's real money on the line, so a half assed job shouldn't cut it, IMO.
Logged
I need your suggestions for Nxt Podcast ideas. Click here and speak your mind!

anon136

  • Hero Member
  • *****
  • Karma: +86/-19
  • Offline Offline
  • Posts: 1015
    • View Profile
Re: NXTorrent
« Reply #39 on: April 15, 2014, 08:24:38 pm »



I'm very confident the solution I proposed will work well.

OK, I have changed my test GUI to have 3 categories (hard-coded to three for now, since it's faster to test - I can make this into an all-you-can-type affair later). These are free-form fields, you can type in whatever you want.

This does raise some interface issues. For instance, if I am about to post my kitten for sale, I may wonder what category/categories to put him in. Users will need to know what the top categories are. Is "Cats" a category? How about "Pets?" Maybe "Annoying Animals?"

Also, some form of autocomplete might be helpful, so if I start typing "Small" the UI will show me that "Small Furry Things" is a category that exists, or has existed, or that currently has other items listed in it. That could also help with people typing "Small furry things" when they should have typed "Small Furry Things." In general, free form fields present issues for databases, so while you want to let people type in anything they want, there's nothing wrong with giving some feedback to help them get their items into the consensus categories that develop over time.

Well you look through all the ones that already exist. Or the top 100 or how ever many are being displayed by default in most peoples interfaces. If you like one of them than you use it. If you don't than you make it the way you think it ought to be. A kitten would be a tough one. Probably just pets with no sub category. But inside of pets would be other subcategories like clothing, or medicine ect... You just wouldn't even use one of those sub categories if you were actually selling a pet. Though i could be wrong. Maybe something else appropriate would evolve naturally and i would just go with that.

and yea for all that other stuff about auto complete and giving people feedback in terms of the consensus categories. that sounds wonderful.
Logged

msin

  • Hero Member
  • *****
  • Karma: +138/-18
  • Offline Offline
  • Posts: 1288
    • View Profile
Re: NXTorrent
« Reply #40 on: April 15, 2014, 10:59:29 pm »


Anon -- I just wanted to say I really like the way you seem to be managing this project. Keep up the good work, and don't be afraid to be strict. As you say, there's real money on the line, so a half assed job shouldn't cut it, IMO.

+1, really excited about this.
Logged

jl777

  • Hero Member
  • *****
  • Karma: +718/-123
  • Offline Offline
  • Posts: 6170
    • View Profile
Re: NXTorrent
« Reply #41 on: April 16, 2014, 01:23:42 am »

sepehr is working on getting aria2 working on ubuntu/mac/windows
once that is done, I just hook it up to the get_URI_contents() function, which currently just uses libcurl to get http, and we will have decentralized NXT blockchain hosting listings with content specified by magnet links.

I got some source review feedback from chanc3r and made some fixes/improvements

PookKnuckle thankfully has a Mac and is running the websockets binary and interfacing HTML to the API. With the forms I autogenerated, it should dramatically speed up the integration process.

What is needed is more people testing the basic functions. just needs Mac user who can fill in forms and make sure listings are created, etc. I have only tested each function a few times just to make sure it looks like it is working. Need to get much more thorough testing

James
Logged
There are over 1000 people in SuperNET slack! http://slackinvite.supernet.org/ automatically sends you an invite

I am just a simple C programmer

anon136

  • Hero Member
  • *****
  • Karma: +86/-19
  • Offline Offline
  • Posts: 1015
    • View Profile
Re: NXTorrent
« Reply #42 on: April 16, 2014, 03:39:43 am »

Yes thats right. we need a way to express and interpret hierarchy in categories. also i think category field should be differentiated from tags, which are also a useful thing.

I didn't specify anything about platforms in my bounty thread and i really should have but how do you feel about windows mac and linux (at least ubuntu)? those three platforms cover almost all users.

also don't forget that part of this bounty, and part of the reason why its set so high (ateast i think its pretty high) is the bit at the end where im going to be a major pain in everyones ass. :D so just start to get prepared for that. (ill try not to be too bad i just want it to at-least approximately look as nice and feel as slick in operation as bitmit did)

any idea on an eta for multigateway? it can be pretty rough just a general idea ya know.

yea auctions would be cool. im trying to keep it from getting out of hand by limiting the total number of features. there is already going to be so much work to be done to get it to the level of a product that consumers actually want to use. maybe ill go back and fund stretch goals after the fact.

thanks for all the help so far!

Anon -- I just wanted to say I really like the way you seem to be managing this project. Keep up the good work, and don't be afraid to be strict. As you say, there's real money on the line, so a half assed job shouldn't cut it, IMO.

thanks for the words of encouragement :) the trick is finding the right trade off between realizing my unrealistically specific vision and being cooperative and reasonable. for example. I really dont like the centralization the relying on trackers poses. A blockchain based torrent tracking system will have to be on the todo list but not yet. Not as part of this bounty.
Logged

anon136

  • Hero Member
  • *****
  • Karma: +86/-19
  • Offline Offline
  • Posts: 1015
    • View Profile
Re: NXTorrent
« Reply #43 on: April 16, 2014, 03:43:31 am »

sepehr is working on getting aria2 working on ubuntu/mac/windows
once that is done, I just hook it up to the get_URI_contents() function, which currently just uses libcurl to get http, and we will have decentralized NXT blockchain hosting listings with content specified by magnet links.

I got some source review feedback from chanc3r and made some fixes/improvements

PookKnuckle thankfully has a Mac and is running the websockets binary and interfacing HTML to the API. With the forms I autogenerated, it should dramatically speed up the integration process.

What is needed is more people testing the basic functions. just needs Mac user who can fill in forms and make sure listings are created, etc. I have only tested each function a few times just to make sure it looks like it is working. Need to get much more thorough testing

James

James you are like an angel sent from heaven. Keep up the good work man! If we do this project right nxt will be the talk of the town.
Logged

jl777

  • Hero Member
  • *****
  • Karma: +718/-123
  • Offline Offline
  • Posts: 6170
    • View Profile
Re: NXTorrent
« Reply #44 on: April 16, 2014, 04:06:13 am »

sepehr is working on getting aria2 working on ubuntu/mac/windows
once that is done, I just hook it up to the get_URI_contents() function, which currently just uses libcurl to get http, and we will have decentralized NXT blockchain hosting listings with content specified by magnet links.

I got some source review feedback from chanc3r and made some fixes/improvements

PookKnuckle thankfully has a Mac and is running the websockets binary and interfacing HTML to the API. With the forms I autogenerated, it should dramatically speed up the integration process.

What is needed is more people testing the basic functions. just needs Mac user who can fill in forms and make sure listings are created, etc. I have only tested each function a few times just to make sure it looks like it is working. Need to get much more thorough testing

James

James you are like an angel sent from heaven. Keep up the good work man! If we do this project right nxt will be the talk of the town.
I am verifying some last tests before making multigateway test release. I will include NXTorrent in the same release, so people can test both.

Still Mac only. I guess I need to get it working on Ubuntu also.

So far, I havent heard any real bugs. Do you have a spec on the type of searching you want? I think once that is defined, the API generates an array of listings for the GUI to display, and then once sephr gets me the aria2, we will have magnet link support and category searching.

If we let people specify their listing as category A, subcategory B, sub-subcategory C, it can be free form and self-organizing. I could always break the hierarchy by allowing matches for a search filter to any of the A, B or C listing categories.

So, there would need to be a new API call, getCategories. It could list all categoryA as a default. If a category is input, it would list all subcategories of categoryA. If categoryA and B are given, then the third level associated with CategoryA+B will be returned.

I think this solves the category problem and it is self-organizing. The GUI can start by getting showing all the top level categories. When the user clicks a link, it would display the subcategories and so on.

The only issue I see with this is that there could be too many high level categories if we allow it to be totally free form. Maybe just super high level sections?

James
Logged
There are over 1000 people in SuperNET slack! http://slackinvite.supernet.org/ automatically sends you an invite

I am just a simple C programmer

anon136

  • Hero Member
  • *****
  • Karma: +86/-19
  • Offline Offline
  • Posts: 1015
    • View Profile
Re: NXTorrent
« Reply #45 on: April 16, 2014, 05:16:07 am »

sepehr is working on getting aria2 working on ubuntu/mac/windows
once that is done, I just hook it up to the get_URI_contents() function, which currently just uses libcurl to get http, and we will have decentralized NXT blockchain hosting listings with content specified by magnet links.

I got some source review feedback from chanc3r and made some fixes/improvements

PookKnuckle thankfully has a Mac and is running the websockets binary and interfacing HTML to the API. With the forms I autogenerated, it should dramatically speed up the integration process.

What is needed is more people testing the basic functions. just needs Mac user who can fill in forms and make sure listings are created, etc. I have only tested each function a few times just to make sure it looks like it is working. Need to get much more thorough testing

James

James you are like an angel sent from heaven. Keep up the good work man! If we do this project right nxt will be the talk of the town.
I am verifying some last tests before making multigateway test release. I will include NXTorrent in the same release, so people can test both.

Still Mac only. I guess I need to get it working on Ubuntu also.

So far, I havent heard any real bugs. Do you have a spec on the type of searching you want? I think once that is defined, the API generates an array of listings for the GUI to display, and then once sephr gets me the aria2, we will have magnet link support and category searching.

If we let people specify their listing as category A, subcategory B, sub-subcategory C, it can be free form and self-organizing. I could always break the hierarchy by allowing matches for a search filter to any of the A, B or C listing categories.

So, there would need to be a new API call, getCategories. It could list all categoryA as a default. If a category is input, it would list all subcategories of categoryA. If categoryA and B are given, then the third level associated with CategoryA+B will be returned.

I think this solves the category problem and it is self-organizing. The GUI can start by getting showing all the top level categories. When the user clicks a link, it would display the subcategories and so on.

The only issue I see with this is that there could be too many high level categories if we allow it to be totally free form. Maybe just super high level sections?

James

We will just have it set to display say 100 (arbitrary number it could be different) high level categories in a column on the left side of the screen to start with. It will show the 100 with the greatest number of total listings in them and they will be organized alphabetically. near the top left probably we should have a section for category related options and filtering. so if you wanted to display 200 instead of 100 or 50 instead of 100 or only categories with the word pet in them or only categories or categories with sub-categories with the word pet in them. at the bottom left should be a simple, click this to show more categories button just for user friendliness (even though it would be slightly redundant with the options in the top left).

"I think this solves the category problem and it is self-organizing. The GUI can start by getting showing all the top level categories. When the user clicks a link, it would display the subcategories and so on." yep this sounds perfect

as far as searching is concerned its a tough question. effective searching algorithms are almost as much of an art as they are a science. what do you think about relying on filters instead of traditional searching? so for example, we already talked about category filters, lets imagine a higher level filter. So for example in the top right of the pannel, where there is usually a search bar, what if we had filter options. So for example if someone searched for the word silver, it would remove every listing that didnt have the word silver in the title or the categories, or the tags. then everything else stays the exact same except for the fact that a huge amount of the total listings have been filtered out of the system. then they proceed to look through the now narrowed categories and sub categories to find what they are looking for.

just tossing some thoughts around. let me know what you guys think.
« Last Edit: April 16, 2014, 05:18:13 am by anon136 »
Logged

jl777

  • Hero Member
  • *****
  • Karma: +718/-123
  • Offline Offline
  • Posts: 6170
    • View Profile
Re: NXTorrent
« Reply #46 on: April 16, 2014, 05:54:45 am »

http://209.126.71.170/multigateway_NXTorrent_v02.zip has a combined Mac version of multigateway and NXTorrent. For the brave, the source is at https://github.com/jl777/NXTprotocol/tree/master/multigateway

It really needs a lot of testing. It is currently limited to DOGE, I got exactly 1 multisig withdraw to work, so no guarantees you will be able to withdraw. I am not seeing any problems in getting the deposits, so your DOGEs will be safe.

There is one file in the ZIP file, just run it and it will launch a command line program. First thing it does is generate a high entropy password (along with a bunch of files, so best to put it in its own directory). It will print this address at the top of http://127.0.0.1:7777  You need to send it enough testNXT so it can send AM's

You might have to wait a bit and sometimes it returns blank page. just hit refresh. You can see multigateway stats, filter by NXT acct or coin. Before you can make a deposit, you need to generate one and you can set your withdraw address in the same AM.

I have enabled tokenized security,which means all non-display functions will fail at first. It will display the actual command you need with the proper token calculated. copy it and paste it over starting at the ? in the URL.
127.0.0.1:7777/multigateway?<paste the tokenized JSON here>

For the curious, you can look at the commandline window and see a bunch of status going by.

Any crashes, or problems, definitely post here,along with the last part of the command window. I will probably offline most of the day, so dont worry if not response for a bit. It would be nice to get some test results. I am pretty sure the display of account info is not quite right.

James

P.S. NXTorrent does not have tokenized security (yet) and it could use some testing too
Logged
There are over 1000 people in SuperNET slack! http://slackinvite.supernet.org/ automatically sends you an invite

I am just a simple C programmer

Jean-Luc

  • Core Dev
  • Hero Member
  • *****
  • Karma: +816/-81
  • Offline Offline
  • Posts: 1610
    • View Profile
Re: NXTorrent
« Reply #47 on: April 16, 2014, 07:56:48 am »

I don't follow this discussion closely, but now that you mentioned search - how are you planning to do it? It has to be all client side for now, but I do want to integrate Lucene search into the NRS eventually, and provide an API to search and filter all text fields in the blockchain. But I will not have time to look into that soon.

Logged
GPG key fingerprint: 263A 9EB0 29CF C77A 3D06  FD13 811D 6940 E1E4 240C
NXT-X4LF-9A4G-WN9Z-2R322

kodtycoon

  • Hero Member
  • *****
  • Karma: +43/-18
  • Offline Offline
  • Posts: 916
    • View Profile
Re: NXTorrent
« Reply #48 on: April 16, 2014, 09:28:41 am »

so for example, we already talked about category filters, lets imagine a higher level filter. So for example in the top right of the pannel, where there is usually a search bar, what if we had filter options. So for example if someone searched for the word silver, it would remove every listing that didnt have the word silver in the title or the categories, or the tags. then everything else stays the exact same except for the fact that a huge amount of the total listings have been filtered out of the system. then they proceed to look through the now narrowed categories and sub categories to find what they are looking for.

just tossing some thoughts around. let me know what you guys think.

as long as you could enter multiple entries that sounds good.. say you put in silver... it will still come back with silver tv, silver platter, silver spool, silver remote ect ect... perhaps when you enter silver it creates a tag thing below the search bar that has an "x" to cancle that selection.. you like you would get on shopping sites when you click on certain categories..  that way you could enter [silver] [tea] [spoon] and it would only show results that have those 3 words in it.. and if you were looking for a 32 inch samsung 3d tv you could enter [32 inch] [samsung] [3d] [tv]... if you want to see different sizes of that tv just remove the 32 inches...
Logged

jl777

  • Hero Member
  • *****
  • Karma: +718/-123
  • Offline Offline
  • Posts: 6170
    • View Profile
Re: NXTorrent
« Reply #49 on: April 16, 2014, 02:19:29 pm »

I don't follow this discussion closely, but now that you mentioned search - how are you planning to do it? It has to be all client side for now, but I do want to integrate Lucene search into the NRS eventually, and provide an API to search and filter all text fields in the blockchain. But I will not have time to look into that soon.
I wasnt planning on doing anything fancy, just enough to organize all the listings. However for something like what you are talking about, can be done as a handler. Doesnt have to be in the core. It is easy for any handler using my layer code to only receive the AM's it cares about and provide an API via 127.0.0.1:7777

However, my stuff is all in C.

James
Logged
There are over 1000 people in SuperNET slack! http://slackinvite.supernet.org/ automatically sends you an invite

I am just a simple C programmer

jl777

  • Hero Member
  • *****
  • Karma: +718/-123
  • Offline Offline
  • Posts: 6170
    • View Profile
Re: NXTorrent
« Reply #50 on: April 16, 2014, 04:24:48 pm »

Looking into porting multigateway, NXTorrent, etc. to Windows. It seems that pthreads, sockets and time functions are not standard for windows. If anybody knows of a good cross platform equivalent for:

pthreads
sockets
time functions

please let me know

James
Logged
There are over 1000 people in SuperNET slack! http://slackinvite.supernet.org/ automatically sends you an invite

I am just a simple C programmer

anon136

  • Hero Member
  • *****
  • Karma: +86/-19
  • Offline Offline
  • Posts: 1015
    • View Profile
Re: NXTorrent
« Reply #51 on: April 16, 2014, 06:31:02 pm »

I don't follow this discussion closely, but now that you mentioned search - how are you planning to do it? It has to be all client side for now, but I do want to integrate Lucene search into the NRS eventually, and provide an API to search and filter all text fields in the blockchain. But I will not have time to look into that soon.

we are trying to avoid needing any help from the core. this is going to be entirely built on top of existing infrastructure the way it is already. as for searching at this time, im thinking more along the lines of advanced filtering options rather than a traditional search. so yea that will all be on the client level.
Logged

anon136

  • Hero Member
  • *****
  • Karma: +86/-19
  • Offline Offline
  • Posts: 1015
    • View Profile
Re: NXTorrent
« Reply #52 on: April 16, 2014, 06:42:20 pm »

@jl i just realized we need a way for sellers to accept a buy offer only on the condition that buyer agrees to have no ability to leave any trust information on the seller. This would be to protect sellers from extortion by buyers with little to no rating who would make spam accounts to use to hold sellers for ransom for their reputation.
« Last Edit: April 16, 2014, 06:57:14 pm by anon136 »
Logged

anon136

  • Hero Member
  • *****
  • Karma: +86/-19
  • Offline Offline
  • Posts: 1015
    • View Profile
Re: NXTorrent
« Reply #53 on: April 16, 2014, 06:44:24 pm »

so for example, we already talked about category filters, lets imagine a higher level filter. So for example in the top right of the pannel, where there is usually a search bar, what if we had filter options. So for example if someone searched for the word silver, it would remove every listing that didnt have the word silver in the title or the categories, or the tags. then everything else stays the exact same except for the fact that a huge amount of the total listings have been filtered out of the system. then they proceed to look through the now narrowed categories and sub categories to find what they are looking for.

just tossing some thoughts around. let me know what you guys think.

as long as you could enter multiple entries that sounds good.. say you put in silver... it will still come back with silver tv, silver platter, silver spool, silver remote ect ect... perhaps when you enter silver it creates a tag thing below the search bar that has an "x" to cancle that selection.. you like you would get on shopping sites when you click on certain categories..  that way you could enter [silver] [tea] [spoon] and it would only show results that have those 3 words in it.. and if you were looking for a 32 inch samsung 3d tv you could enter [32 inch] [samsung] [3d] [tv]... if you want to see different sizes of that tv just remove the 32 inches...

you've got it. im looking at having a bar for "must include" and one below for "must exclude". then an button to drop down advanced filtering. in there we could have "must include in title" "must exclude in title" "must include category" "must exclude category" "must include in tags" "must exclude in tags" "must include in description" "must exclude in description".

That sounds like a lot but it would be pretty much everything you need to sort through as many options as you can imagine. Aside from that we just need clever ways to sort assenting and descending results. Like total amount of feedback. Positive feedback / negative feedback.  Positive feedback / negative feedback with minimum X number of ratings in total. Just ideas there i really dont know the best sorting options to most effectively sort the wheat from the chaff but you get the idea.
Logged

brandp

  • Jr. Member
  • **
  • Karma: +4/-0
  • Offline Offline
  • Posts: 98
    • View Profile
Re: NXTorrent
« Reply #54 on: April 16, 2014, 06:49:10 pm »

@anon

Are you planning to offer an escrow service for bigger transactions done over the Physical Goods Store?
Logged

anon136

  • Hero Member
  • *****
  • Karma: +86/-19
  • Offline Offline
  • Posts: 1015
    • View Profile
Re: NXTorrent
« Reply #55 on: April 16, 2014, 06:51:17 pm »

@anon

Are you planning to offer an escrow service for bigger transactions done over the Physical Goods Store?

yes i will be listing my escrow services on the exchange :D
Logged

anon136

  • Hero Member
  • *****
  • Karma: +86/-19
  • Offline Offline
  • Posts: 1015
    • View Profile
Re: NXTorrent
« Reply #56 on: April 16, 2014, 06:56:06 pm »

reputation is a very hard question. how do you stop people from making 100 dummy accounts and trading fake auctions back and forth between their dummy accounts until they all have built up a strong reputation? we need something like a web of trust where trust rating is granted on people you dont know by the fact that people you trust trust them. This is going to have to be a bit more complex than bitmit in this regard.
Logged

brandp

  • Jr. Member
  • **
  • Karma: +4/-0
  • Offline Offline
  • Posts: 98
    • View Profile
Re: NXTorrent
« Reply #57 on: April 16, 2014, 06:59:41 pm »

Excellent.
Do you plan to display the escrow feature within the client of the Physical Good Store?
Logged

anon136

  • Hero Member
  • *****
  • Karma: +86/-19
  • Offline Offline
  • Posts: 1015
    • View Profile
Re: NXTorrent
« Reply #58 on: April 16, 2014, 07:04:37 pm »

Excellent.
Do you plan to display the escrow feature within the client of the Physical Good Store?

like that would be wonderful and i would love to do that, but a project like this is all about picking your battles and im afraid thats not one that i can afford to shovel on the devs at this time.
Logged

emule

  • Jr. Member
  • **
  • Karma: +15/-64
  • Offline Offline
  • Posts: 49
    • View Profile
Re: NXTorrent
« Reply #59 on: April 16, 2014, 08:38:50 pm »



is this working yet ? zzzzzzzz :-\
Logged

anon136

  • Hero Member
  • *****
  • Karma: +86/-19
  • Offline Offline
  • Posts: 1015
    • View Profile
Re: NXTorrent
« Reply #60 on: April 16, 2014, 08:43:48 pm »



is this working yet ? zzzzzzzz :-\

this thread was started on April 13th. how long do you think a project like this is supposed to take?
Logged

jl777

  • Hero Member
  • *****
  • Karma: +718/-123
  • Offline Offline
  • Posts: 6170
    • View Profile
Re: NXTorrent
« Reply #61 on: April 16, 2014, 08:59:42 pm »

@jl i just realized we need a way for sellers to accept a buy offer only on the condition that buyer agrees to have no ability to leave any trust information on the seller. This would be to protect sellers from extortion by buyers with little to no rating who would make spam accounts to use to hold sellers for ransom for their reputation.
I hope I can disagree. Doing this will allow no way for buyers to report abuses by sellers.
I think we have some sort of Judgement System in the works. Maybe a seller can just dispute baseless negative feedbacks. It will soon be clear if it is the buyer who is always ransoming, or if the seller is the one who is at fault.

James
Logged
There are over 1000 people in SuperNET slack! http://slackinvite.supernet.org/ automatically sends you an invite

I am just a simple C programmer

jl777

  • Hero Member
  • *****
  • Karma: +718/-123
  • Offline Offline
  • Posts: 6170
    • View Profile
Re: NXTorrent
« Reply #62 on: April 16, 2014, 09:04:45 pm »

so for example, we already talked about category filters, lets imagine a higher level filter. So for example in the top right of the pannel, where there is usually a search bar, what if we had filter options. So for example if someone searched for the word silver, it would remove every listing that didnt have the word silver in the title or the categories, or the tags. then everything else stays the exact same except for the fact that a huge amount of the total listings have been filtered out of the system. then they proceed to look through the now narrowed categories and sub categories to find what they are looking for.

just tossing some thoughts around. let me know what you guys think.

as long as you could enter multiple entries that sounds good.. say you put in silver... it will still come back with silver tv, silver platter, silver spool, silver remote ect ect... perhaps when you enter silver it creates a tag thing below the search bar that has an "x" to cancle that selection.. you like you would get on shopping sites when you click on certain categories..  that way you could enter [silver] [tea] [spoon] and it would only show results that have those 3 words in it.. and if you were looking for a 32 inch samsung 3d tv you could enter [32 inch] [samsung] [3d] [tv]... if you want to see different sizes of that tv just remove the 32 inches...

you've got it. im looking at having a bar for "must include" and one below for "must exclude". then an button to drop down advanced filtering. in there we could have "must include in title" "must exclude in title" "must include category" "must exclude category" "must include in tags" "must exclude in tags" "must include in description" "must exclude in description".

That sounds like a lot but it would be pretty much everything you need to sort through as many options as you can imagine. Aside from that we just need clever ways to sort assenting and descending results. Like total amount of feedback. Positive feedback / negative feedback.  Positive feedback / negative feedback with minimum X number of ratings in total. Just ideas there i really dont know the best sorting options to most effectively sort the wheat from the chaff but you get the idea.
(Must include and must not include) for (title, tags, description)
that will be 6 optional search fields, but I think it will be quite powerful
I would suggest to add minprice and maxprice.

If the search also used the current location in the three level hierarchy to apply the search to, then I think people will be able to find pretty much anything they want pretty quickly.

James

P.S. I didnt realize this project included as mini-search engine!
Logged
There are over 1000 people in SuperNET slack! http://slackinvite.supernet.org/ automatically sends you an invite

I am just a simple C programmer

jl777

  • Hero Member
  • *****
  • Karma: +718/-123
  • Offline Offline
  • Posts: 6170
    • View Profile
Re: NXTorrent
« Reply #63 on: April 16, 2014, 09:05:41 pm »



is this working yet ? zzzzzzzz :-\
Actually it is functioning. Please test it and find bugs. I will give you a cracker if you find one

James
Logged
There are over 1000 people in SuperNET slack! http://slackinvite.supernet.org/ automatically sends you an invite

I am just a simple C programmer

anon136

  • Hero Member
  • *****
  • Karma: +86/-19
  • Offline Offline
  • Posts: 1015
    • View Profile
Re: NXTorrent
« Reply #64 on: April 16, 2014, 10:48:33 pm »

@jl i just realized we need a way for sellers to accept a buy offer only on the condition that buyer agrees to have no ability to leave any trust information on the seller. This would be to protect sellers from extortion by buyers with little to no rating who would make spam accounts to use to hold sellers for ransom for their reputation.
I hope I can disagree. Doing this will allow no way for buyers to report abuses by sellers.
I think we have some sort of Judgement System in the works. Maybe a seller can just dispute baseless negative feedbacks. It will soon be clear if it is the buyer who is always ransoming, or if the seller is the one who is at fault.

James

there is no way for a seller to dispute a baseless negative feedback because there is no authority for them to appeal to in a decentralized system.

yes that is correct, it will soon be clear that a buyer is always ransoming, the point of this provision is to allow buyers who have little to no feeback to come to arrangements with sellers who have very strong feedback. it is to allow an entry point for people who would otherwise be caught in a viscous cycle of needing feedback to come to a deal and needing a deal to get feedback. its not for buyers with reputation.

yes thats right. the buyer has to trust the seller. he may look at the sellers rating. or hear from a friend that he is reputable. its a voluntary transaction though so if the buyer doesnt like the terms that the seller sets than he is free to not make the exchange. thus we can axiomatically deduce that if both parties agree to the terms than they think the arrangement (the product of the terms) is in their best interest.

thats the beauty of voluntary exchange, more options make everyone better. the only drawback of more options is not to the buyer or seller but the network as a whole in the form more spam on the blockchain. in this case its a very worthy tradeoff since it will allow deals to go through that otherwise wouldn't have because the seller would otherwise have rejected the buyer due to the risk it posed to him.

as for the trust system, for now i was hoping that we could just piggy back ontop of the Bitcoin OTC web of trust. we can do our best to make that as simple for the users as possible but either way it will add unfortunate complexity. or alternatively how hard do you think it would be to copy the bitcoin WOT system and make something in parallel that is integrated into the client?
« Last Edit: April 16, 2014, 11:08:50 pm by anon136 »
Logged

fanaticalfishing

  • Full Member
  • ***
  • Karma: +10/-1
  • Offline Offline
  • Posts: 149
    • View Profile
Re: NXTorrent
« Reply #65 on: April 16, 2014, 11:16:45 pm »

@jl i just realized we need a way for sellers to accept a buy offer only on the condition that buyer agrees to have no ability to leave any trust information on the seller. This would be to protect sellers from extortion by buyers with little to no rating who would make spam accounts to use to hold sellers for ransom for their reputation.

The following is from Ebay's page on how feed back works.

Quote
Other terms

Only registered members can leave Feedback. Buyers must wait at least 7 days before leaving negative or neutral Feedback for a PowerSeller who has been registered on eBay for at least 12 months.

Perhaps prevent new users from leaving feedback for an established seller.
« Last Edit: April 16, 2014, 11:19:45 pm by fanaticalfishing »
Logged

jl777

  • Hero Member
  • *****
  • Karma: +718/-123
  • Offline Offline
  • Posts: 6170
    • View Profile
Re: NXTorrent
« Reply #66 on: April 16, 2014, 11:30:41 pm »

@jl i just realized we need a way for sellers to accept a buy offer only on the condition that buyer agrees to have no ability to leave any trust information on the seller. This would be to protect sellers from extortion by buyers with little to no rating who would make spam accounts to use to hold sellers for ransom for their reputation.
I hope I can disagree. Doing this will allow no way for buyers to report abuses by sellers.
I think we have some sort of Judgement System in the works. Maybe a seller can just dispute baseless negative feedbacks. It will soon be clear if it is the buyer who is always ransoming, or if the seller is the one who is at fault.

James

there is no way for a seller to dispute a baseless negative feedback because there is no authority for them to appeal to in a decentralized system.

yes that is correct, it will soon be clear that a buyer is always ransoming, the point of this provision is to allow buyers who have little to no feeback to come to arrangements with sellers who have very strong feedback. it is to allow an entry point for people who would otherwise be caught in a viscous cycle of needing feedback to come to a deal and needing a deal to get feedback. its not for buyers with reputation.

yes thats right. the buyer has to trust the seller. he may look at the sellers rating. or hear from a friend that he is reputable. its a voluntary transaction though so if the buyer doesnt like the terms that the seller sets than he is free to not make the exchange. thus we can axiomatically deduce that if both parties agree to the terms than they think the arrangement (the product of the terms) is in their best interest.

thats the beauty of voluntary exchange, more options make everyone better. the only drawback of more options is not to the buyer or seller but the network as a whole in the form more spam on the blockchain. in this case its a very worthy tradeoff since it will allow deals to go through that otherwise wouldn't have because the seller would otherwise have rejected the buyer due to the risk it posed to him.

as for the trust system, for now i was hoping that we could just piggy back ontop of the Bitcoin OTC web of trust. we can do our best to make that as simple for the users as possible but either way it will add unfortunate complexity. or alternatively how hard do you think it would be to copy the bitcoin WOT system and make something in parallel that is integrated into the client?
bitcoin WOT seems like a whole new project, especially if you want to submit feedbacks to it. GPG, etc. Maybe its not so bad,but I am currently overloaded with yet another new bunch of protocols!

How about this. Can you specify exactly what you need for this project? It seems that there are constantly new features, each with potentially giant amounts of work (search engine, WOT). Rather than incrementally add this, then that, etc. I would like to see the full final set of features you need. Then I can think about how best to implement it

James
Logged
There are over 1000 people in SuperNET slack! http://slackinvite.supernet.org/ automatically sends you an invite

I am just a simple C programmer

anon136

  • Hero Member
  • *****
  • Karma: +86/-19
  • Offline Offline
  • Posts: 1015
    • View Profile
Re: NXTorrent
« Reply #67 on: April 17, 2014, 02:09:24 am »

@jl i just realized we need a way for sellers to accept a buy offer only on the condition that buyer agrees to have no ability to leave any trust information on the seller. This would be to protect sellers from extortion by buyers with little to no rating who would make spam accounts to use to hold sellers for ransom for their reputation.
I hope I can disagree. Doing this will allow no way for buyers to report abuses by sellers.
I think we have some sort of Judgement System in the works. Maybe a seller can just dispute baseless negative feedbacks. It will soon be clear if it is the buyer who is always ransoming, or if the seller is the one who is at fault.

James

there is no way for a seller to dispute a baseless negative feedback because there is no authority for them to appeal to in a decentralized system.

yes that is correct, it will soon be clear that a buyer is always ransoming, the point of this provision is to allow buyers who have little to no feeback to come to arrangements with sellers who have very strong feedback. it is to allow an entry point for people who would otherwise be caught in a viscous cycle of needing feedback to come to a deal and needing a deal to get feedback. its not for buyers with reputation.

yes thats right. the buyer has to trust the seller. he may look at the sellers rating. or hear from a friend that he is reputable. its a voluntary transaction though so if the buyer doesnt like the terms that the seller sets than he is free to not make the exchange. thus we can axiomatically deduce that if both parties agree to the terms than they think the arrangement (the product of the terms) is in their best interest.

thats the beauty of voluntary exchange, more options make everyone better. the only drawback of more options is not to the buyer or seller but the network as a whole in the form more spam on the blockchain. in this case its a very worthy tradeoff since it will allow deals to go through that otherwise wouldn't have because the seller would otherwise have rejected the buyer due to the risk it posed to him.

as for the trust system, for now i was hoping that we could just piggy back ontop of the Bitcoin OTC web of trust. we can do our best to make that as simple for the users as possible but either way it will add unfortunate complexity. or alternatively how hard do you think it would be to copy the bitcoin WOT system and make something in parallel that is integrated into the client?
bitcoin WOT seems like a whole new project, especially if you want to submit feedbacks to it. GPG, etc. Maybe its not so bad,but I am currently overloaded with yet another new bunch of protocols!

How about this. Can you specify exactly what you need for this project? It seems that there are constantly new features, each with potentially giant amounts of work (search engine, WOT). Rather than incrementally add this, then that, etc. I would like to see the full final set of features you need. Then I can think about how best to implement it

James

woah woah woah. i was very explicit about not having a search engine. one would assume that search would be a feature and i bucked that assumption by saying that we wouldn't need to have search. im trying really hard to be super fair here. i have shot down so many great ideas for precisely the reasons mentioned (think blockchain based tracking, built in escrow) but we NEED SOME way to handle trust. Obviously. That's very strongly implied. This whole idea has no worth to anyone with out a means of people trusting each other. Additionally i was offering the possibility of just using the existing bitcoin web of trust and not building our own. again me being very grounded and reasonable. im working very hard not to be the guy who "Rather than incrementally add this, then that, etc". I understand this problem and it is a constant refrain in my mind before every single thing i say.

granted i did spring the thing with buyers being able to opt out of having the right to leave feedback. but thats only cause it wasnt an easy problem to see. sometimes you dont realize things until you realize them. i do apologize for that one. i really am sorry about that.

anyway so features:

we need the ability to filter

we need a web of trust, no need to build our own for now, lets just use bitcoin's WOT (again trying to be reasonable and save you work)

once filtered we need the ability to list ascending and descending by relevant metrics, just like at the top of ebay when you can list by price, we probably need to be able to list by things that help to separate the legit sellers from the scammers

everything im pretty sure you already know about. of course i may append something if i think of something important that i missed but its not going to be on a whim. im not just going to ask you to add a feature because i think it would be nice or cool. only if it is something important that i hadn't thought about already. and again, allow me to apologize for the fact that i do, and will continue to, miss important things sometimes. i wish i was infallible but im not :-\
« Last Edit: April 17, 2014, 02:12:53 am by anon136 »
Logged

jl777

  • Hero Member
  • *****
  • Karma: +718/-123
  • Offline Offline
  • Posts: 6170
    • View Profile
Re: NXTorrent
« Reply #68 on: April 17, 2014, 02:16:59 am »

@jl i just realized we need a way for sellers to accept a buy offer only on the condition that buyer agrees to have no ability to leave any trust information on the seller. This would be to protect sellers from extortion by buyers with little to no rating who would make spam accounts to use to hold sellers for ransom for their reputation.
I hope I can disagree. Doing this will allow no way for buyers to report abuses by sellers.
I think we have some sort of Judgement System in the works. Maybe a seller can just dispute baseless negative feedbacks. It will soon be clear if it is the buyer who is always ransoming, or if the seller is the one who is at fault.

James

there is no way for a seller to dispute a baseless negative feedback because there is no authority for them to appeal to in a decentralized system.

yes that is correct, it will soon be clear that a buyer is always ransoming, the point of this provision is to allow buyers who have little to no feeback to come to arrangements with sellers who have very strong feedback. it is to allow an entry point for people who would otherwise be caught in a viscous cycle of needing feedback to come to a deal and needing a deal to get feedback. its not for buyers with reputation.

yes thats right. the buyer has to trust the seller. he may look at the sellers rating. or hear from a friend that he is reputable. its a voluntary transaction though so if the buyer doesnt like the terms that the seller sets than he is free to not make the exchange. thus we can axiomatically deduce that if both parties agree to the terms than they think the arrangement (the product of the terms) is in their best interest.

thats the beauty of voluntary exchange, more options make everyone better. the only drawback of more options is not to the buyer or seller but the network as a whole in the form more spam on the blockchain. in this case its a very worthy tradeoff since it will allow deals to go through that otherwise wouldn't have because the seller would otherwise have rejected the buyer due to the risk it posed to him.

as for the trust system, for now i was hoping that we could just piggy back ontop of the Bitcoin OTC web of trust. we can do our best to make that as simple for the users as possible but either way it will add unfortunate complexity. or alternatively how hard do you think it would be to copy the bitcoin WOT system and make something in parallel that is integrated into the client?
bitcoin WOT seems like a whole new project, especially if you want to submit feedbacks to it. GPG, etc. Maybe its not so bad,but I am currently overloaded with yet another new bunch of protocols!

How about this. Can you specify exactly what you need for this project? It seems that there are constantly new features, each with potentially giant amounts of work (search engine, WOT). Rather than incrementally add this, then that, etc. I would like to see the full final set of features you need. Then I can think about how best to implement it

James

woah woah woah. i was very explicit about not having a search engine. one would assume that search would be a feature and i bucked that assumption by saying that we wouldn't need to have search. im trying really hard to be super fair here. i have shot down so many great ideas for precisely the reasons mentioned (think blockchain based tracking, built in escrow) but we NEED SOME way to handle trust. Obviously. That's very strongly implied. This whole idea has no worth to anyone with out a means of people trusting each other. Additionally i was offering the possibility of just using the existing bitcoin web of trust and not building our own. again me being very grounded and reasonable. im working very hard not to be the guy who "Rather than incrementally add this, then that, etc". I understand this problem and it is a constant refrain in my mind before every single thing i say.

granted i did spring the thing with buyers being able to opt out of having the right to leave feedback. but thats only cause it wasnt an easy problem to see. sometimes you dont realize things until you realize them. i do apologize for that one. i really am sorry about that.

anyway so features:

we need the ability to filter

we need a web of trust, no need to build our own for now, lets just use bitcoin's WOT (again trying to be reasonable and save you work)

once filtered we need the ability to list ascending and descending by relevant metrics, just like at the top of ebay when you can list by price, we probably need to be able to list by things that help to separate the legit sellers from the scammers

everything im pretty sure you already know about. of course i may append something if i think of something important that i missed but its not going to be on a whim. im not just going to ask you to add a feature because i think it would be nice or cool. only if it is something important that i hadn't thought about already. and again, allow me to apologize for the fact that i do, and will continue to, miss important things sometimes. i wish i was infallible but im not :-\
When you say lets use bitcoin WOT, does that mean you want me to interface to their servers and submit feedback through their system, or to just use similar algos as they do?
What algorithm do they use?
Can I just come up with some sort of reasonable (to me) way of measuring a persons rating or is there some standard way (WOT?) that is required
Logged
There are over 1000 people in SuperNET slack! http://slackinvite.supernet.org/ automatically sends you an invite

I am just a simple C programmer

anon136

  • Hero Member
  • *****
  • Karma: +86/-19
  • Offline Offline
  • Posts: 1015
    • View Profile
Re: NXTorrent
« Reply #69 on: April 17, 2014, 04:02:49 am »

@jl i just realized we need a way for sellers to accept a buy offer only on the condition that buyer agrees to have no ability to leave any trust information on the seller. This would be to protect sellers from extortion by buyers with little to no rating who would make spam accounts to use to hold sellers for ransom for their reputation.
I hope I can disagree. Doing this will allow no way for buyers to report abuses by sellers.
I think we have some sort of Judgement System in the works. Maybe a seller can just dispute baseless negative feedbacks. It will soon be clear if it is the buyer who is always ransoming, or if the seller is the one who is at fault.

James

there is no way for a seller to dispute a baseless negative feedback because there is no authority for them to appeal to in a decentralized system.

yes that is correct, it will soon be clear that a buyer is always ransoming, the point of this provision is to allow buyers who have little to no feeback to come to arrangements with sellers who have very strong feedback. it is to allow an entry point for people who would otherwise be caught in a viscous cycle of needing feedback to come to a deal and needing a deal to get feedback. its not for buyers with reputation.

yes thats right. the buyer has to trust the seller. he may look at the sellers rating. or hear from a friend that he is reputable. its a voluntary transaction though so if the buyer doesnt like the terms that the seller sets than he is free to not make the exchange. thus we can axiomatically deduce that if both parties agree to the terms than they think the arrangement (the product of the terms) is in their best interest.

thats the beauty of voluntary exchange, more options make everyone better. the only drawback of more options is not to the buyer or seller but the network as a whole in the form more spam on the blockchain. in this case its a very worthy tradeoff since it will allow deals to go through that otherwise wouldn't have because the seller would otherwise have rejected the buyer due to the risk it posed to him.

as for the trust system, for now i was hoping that we could just piggy back ontop of the Bitcoin OTC web of trust. we can do our best to make that as simple for the users as possible but either way it will add unfortunate complexity. or alternatively how hard do you think it would be to copy the bitcoin WOT system and make something in parallel that is integrated into the client?
bitcoin WOT seems like a whole new project, especially if you want to submit feedbacks to it. GPG, etc. Maybe its not so bad,but I am currently overloaded with yet another new bunch of protocols!

How about this. Can you specify exactly what you need for this project? It seems that there are constantly new features, each with potentially giant amounts of work (search engine, WOT). Rather than incrementally add this, then that, etc. I would like to see the full final set of features you need. Then I can think about how best to implement it

James

woah woah woah. i was very explicit about not having a search engine. one would assume that search would be a feature and i bucked that assumption by saying that we wouldn't need to have search. im trying really hard to be super fair here. i have shot down so many great ideas for precisely the reasons mentioned (think blockchain based tracking, built in escrow) but we NEED SOME way to handle trust. Obviously. That's very strongly implied. This whole idea has no worth to anyone with out a means of people trusting each other. Additionally i was offering the possibility of just using the existing bitcoin web of trust and not building our own. again me being very grounded and reasonable. im working very hard not to be the guy who "Rather than incrementally add this, then that, etc". I understand this problem and it is a constant refrain in my mind before every single thing i say.

granted i did spring the thing with buyers being able to opt out of having the right to leave feedback. but thats only cause it wasnt an easy problem to see. sometimes you dont realize things until you realize them. i do apologize for that one. i really am sorry about that.

anyway so features:

we need the ability to filter

we need a web of trust, no need to build our own for now, lets just use bitcoin's WOT (again trying to be reasonable and save you work)

once filtered we need the ability to list ascending and descending by relevant metrics, just like at the top of ebay when you can list by price, we probably need to be able to list by things that help to separate the legit sellers from the scammers

everything im pretty sure you already know about. of course i may append something if i think of something important that i missed but its not going to be on a whim. im not just going to ask you to add a feature because i think it would be nice or cool. only if it is something important that i hadn't thought about already. and again, allow me to apologize for the fact that i do, and will continue to, miss important things sometimes. i wish i was infallible but im not :-\
When you say lets use bitcoin WOT, does that mean you want me to interface to their servers and submit feedback through their system, or to just use similar algos as they do?
What algorithm do they use?
Can I just come up with some sort of reasonable (to me) way of measuring a persons rating or is there some standard way (WOT?) that is required

i mean "interface to their servers and submit feedback through their system" i just thought that would be easiest for you and most fair to you. i said in the offest that developing a trust system is not part of this bounty because that is a can of worms its self. but we do need a trust mechanism, so i was always panning on just outsourcing that to the Bitcoin OTC WOT early on and then maybe doing separate bounties later on for a dedicated nxt trust system.

im really trying very hard to be as agreeable as possible, as reasonable as possable and make this as fair on you as a possibly can. i hope you understand that :-\

you could yes just come up with something yourself, but you have to understand the risk of people making dummy accounts and making fake transactions back and forth between them. this rules out the possibility of just strait forward rating or even rating by weight of how many ratings the person doing the rating has. we have to use a web of trust type algo. One where you rate people that you trust, and then that extends the people you trust out to the people who are trusted by the people that you trust. (which is how bitcoin OTC works). but again, im not suggesting that you design such a system, lets just use Bitcoin OTC WOT for now.
Logged

jl777

  • Hero Member
  • *****
  • Karma: +718/-123
  • Offline Offline
  • Posts: 6170
    • View Profile
Re: NXTorrent
« Reply #70 on: April 17, 2014, 04:35:20 am »

you could yes just come up with something yourself, but you have to understand the risk of people making dummy accounts and making fake transactions back and forth between them. this rules out the possibility of just strait forward rating or even rating by weight of how many ratings the person doing the rating has. we have to use a web of trust type algo. One where you rate people that you trust, and then that extends the people you trust out to the people who are trusted by the people that you trust. (which is how bitcoin OTC works). but again, im not suggesting that you design such a system, lets just use Bitcoin OTC WOT for now.
Actually I think it would be less work for me to design my own system than figure out how to interface to the bitcoin WOT servers. I think this explains the disconnect here. You are assuming it will be much easier to use the existing WOT servers.

I dont see it as being such a difficult math problem to come up with a reasonable metric which gives little to no weight on feedback from people that nobody you know trusts

Anyway doing that is much more interesting than battling against why I am getting errors submitting the GPG encoded packets to the WOT server

James
Logged
There are over 1000 people in SuperNET slack! http://slackinvite.supernet.org/ automatically sends you an invite

I am just a simple C programmer

anon136

  • Hero Member
  • *****
  • Karma: +86/-19
  • Offline Offline
  • Posts: 1015
    • View Profile
Re: NXTorrent
« Reply #71 on: April 17, 2014, 06:10:36 am »

you could yes just come up with something yourself, but you have to understand the risk of people making dummy accounts and making fake transactions back and forth between them. this rules out the possibility of just strait forward rating or even rating by weight of how many ratings the person doing the rating has. we have to use a web of trust type algo. One where you rate people that you trust, and then that extends the people you trust out to the people who are trusted by the people that you trust. (which is how bitcoin OTC works). but again, im not suggesting that you design such a system, lets just use Bitcoin OTC WOT for now.
Actually I think it would be less work for me to design my own system than figure out how to interface to the bitcoin WOT servers. I think this explains the disconnect here. You are assuming it will be much easier to use the existing WOT servers.

I dont see it as being such a difficult math problem to come up with a reasonable metric which gives little to no weight on feedback from people that nobody you know trusts

Anyway doing that is much more interesting than battling against why I am getting errors submitting the GPG encoded packets to the WOT server

James

either way, do you understand that im trying very hard to be reasonable and fair and that i do infact understand your concern about just adding features and requests as we go along. just talk to me. we can talk through an issues we may have, i know it. I am a very reasonable and fair person. My only concern is that we have a product that works to accomplish the sorts of things we need it to and is as easy as possible for joe six pack to use. There are cool features that it would be nice to add later, but for now i only am trying to create a working product. That requires certain things like WOT reputation systems and good filtering. But im really not trying to "spring" things on you. Or pile on unfair requirements as we move along, like trying to force you to hit a moving goal post in order to be able to claim the bounty. Do you believe me when i say that?

Anything auxiulury, that would be "nice to have" but not necessary, is not part of this bounty. I'm only looking at the things that are bare minimum to have a working product that accomplishes the sorts of things we need it to in order to do what its supposed to do. Unfortunately some sort of basic reputation system is one of those things :-\

anyway i just want to make sure that we are on good terms before we continue. i really am so greatful for the work you have been doing and it is really important to me that i be fair to you. that previous comment felt sort of charged is all and i just want to make sure that we understand each other be fore we move on is all.
« Last Edit: April 17, 2014, 06:13:25 am by anon136 »
Logged

v39453

  • Full Member
  • ***
  • Karma: +12/-2
  • Offline Offline
  • Posts: 155
    • View Profile
Re: NXTorrent
« Reply #72 on: April 17, 2014, 09:14:56 am »

Quote
we have to use a web of trust type algo.

This discussion sounds too complicated for the problem you are solving. The trust system has to be very simple so you can get regular people to join.

Existing tor-based anonymous markets have worked without a web of trust. I doubt the participants would be willing to join a web of trust even if they understood how it works.

Being scammed is part of doing business. It is to be expected, and is not the store's fault. Also scammers will be exposed in forums, etc.
Logged

PoofKnuckle

  • Hero Member
  • *****
  • Karma: +111/-7
  • Offline Offline
  • Posts: 849
  • Your Concern is Noted.
    • View Profile
    • NXT FreeMarket
Re: NXTorrent
« Reply #73 on: April 17, 2014, 02:52:05 pm »



is this working yet ? zzzzzzzz :-\

Anyone good with HTML, JavaScript, and CSS? I am building a front end, but I would be happy to have help to make it go faster. My day job limits how much I can do, and I have more ideas than my coding can keep up with.

Current interface:

http://cl.ly/image/1o2k2k3U0p0U
Logged
NXT: NXT-WBVP-83YM-FRB3-9MQLY
BM-NBTVHaA41Ejh2G6krD9p5vM62vk84isM

kodtycoon

  • Hero Member
  • *****
  • Karma: +43/-18
  • Offline Offline
  • Posts: 916
    • View Profile
Re: NXTorrent
« Reply #74 on: April 17, 2014, 03:54:36 pm »



is this working yet ? zzzzzzzz :-\

Anyone good with HTML, JavaScript, and CSS? I am building a front end, but I would be happy to have help to make it go faster. My day job limits how much I can do, and I have more ideas than my coding can keep up with.

Current interface:

http://cl.ly/image/1o2k2k3U0p0U

that looks really good.. will this be a completely separate client/webpage or could this be linked with wesleys client? like a tab button in the top right hand of wesleys webclient, click it, and the page smoothly slides from right to left bringing in the market place page with you still logged in on your own account..

like the way the really long web pages slide down when you click the arrow in the footer, only it goes horizontally apposed to vertically..? that would be slick.. just have another tab top left to slide back to wesleys client..
Logged

IveBeenBit

  • Full Member
  • ***
  • Karma: +7/-2
  • Offline Offline
  • Posts: 131
    • View Profile
Re: NXTorrent
« Reply #75 on: April 17, 2014, 03:59:51 pm »

Anyone good with HTML, JavaScript, and CSS? I am building a front end, but I would be happy to have help to make it go faster. My day job limits how much I can do, and I have more ideas than my coding can keep up with.

Current interface:

http://cl.ly/image/1o2k2k3U0p0U

This looks really good so far. Are you planning to have a "browse" feature instead of search? So you click "browse" and it brings up the top 50ish top level categories, you click on one of them and get a list of subcategories, click on one and get sub-sub categories, etc.?
Logged
I need your suggestions for Nxt Podcast ideas. Click here and speak your mind!

PoofKnuckle

  • Hero Member
  • *****
  • Karma: +111/-7
  • Offline Offline
  • Posts: 849
  • Your Concern is Noted.
    • View Profile
    • NXT FreeMarket
Re: NXTorrent
« Reply #76 on: April 17, 2014, 04:04:49 pm »


that looks really good.. will this be a completely separate client/webpage or could this be linked with wesleys client? like a tab button in the top right hand of wesleys webclient, click it, and the page smoothly slides from right to left bringing in the market place page with you still logged in on your own account..

like the way the really long web pages slide down when you click the arrow in the footer, only it goes horizontally apposed to vertically..? that would be slick.. just have another tab top left to slide back to wesleys client..

I don't see why it couldn't be included in Wesley's client, at least the interface portion - it's just HTML, JavaScript, and CSS, which I think is how that client's interface is build. Only James can say if the part that communicates with the blockchain could be included though, that I don't know.
Logged
NXT: NXT-WBVP-83YM-FRB3-9MQLY
BM-NBTVHaA41Ejh2G6krD9p5vM62vk84isM

PoofKnuckle

  • Hero Member
  • *****
  • Karma: +111/-7
  • Offline Offline
  • Posts: 849
  • Your Concern is Noted.
    • View Profile
    • NXT FreeMarket
Re: NXTorrent
« Reply #77 on: April 17, 2014, 04:06:57 pm »


This looks really good so far. Are you planning to have a "browse" feature instead of search? So you click "browse" and it brings up the top 50ish top level categories, you click on one of them and get a list of subcategories, click on one and get sub-sub categories, etc.?

Since there is no enforcement of categories, I think this is necessary. I expect there will be a browse API that will return the top categories, and you'll be able to drill down from there. I am still thinking about the APIs that are needed from a user interface perspective, which I will then pass on to James as suggestions for new APIs that only he can make. I am happy to take suggestions like this!

Logged
NXT: NXT-WBVP-83YM-FRB3-9MQLY
BM-NBTVHaA41Ejh2G6krD9p5vM62vk84isM

jl777

  • Hero Member
  • *****
  • Karma: +718/-123
  • Offline Offline
  • Posts: 6170
    • View Profile
Re: NXTorrent
« Reply #78 on: April 17, 2014, 04:20:31 pm »

@jl i just realized we need a way for sellers to accept a buy offer only on the condition that buyer agrees to have no ability to leave any trust information on the seller. This would be to protect sellers from extortion by buyers with little to no rating who would make spam accounts to use to hold sellers for ransom for their reputation.
I hope I can disagree. Doing this will allow no way for buyers to report abuses by sellers.
I think we have some sort of Judgement System in the works. Maybe a seller can just dispute baseless negative feedbacks. It will soon be clear if it is the buyer who is always ransoming, or if the seller is the one who is at fault.

James

there is no way for a seller to dispute a baseless negative feedback because there is no authority for them to appeal to in a decentralized system.

yes that is correct, it will soon be clear that a buyer is always ransoming, the point of this provision is to allow buyers who have little to no feeback to come to arrangements with sellers who have very strong feedback. it is to allow an entry point for people who would otherwise be caught in a viscous cycle of needing feedback to come to a deal and needing a deal to get feedback. its not for buyers with reputation.

yes thats right. the buyer has to trust the seller. he may look at the sellers rating. or hear from a friend that he is reputable. its a voluntary transaction though so if the buyer doesnt like the terms that the seller sets than he is free to not make the exchange. thus we can axiomatically deduce that if both parties agree to the terms than they think the arrangement (the product of the terms) is in their best interest.

thats the beauty of voluntary exchange, more options make everyone better. the only drawback of more options is not to the buyer or seller but the network as a whole in the form more spam on the blockchain. in this case its a very worthy tradeoff since it will allow deals to go through that otherwise wouldn't have because the seller would otherwise have rejected the buyer due to the risk it posed to him.

as for the trust system, for now i was hoping that we could just piggy back ontop of the Bitcoin OTC web of trust. we can do our best to make that as simple for the users as possible but either way it will add unfortunate complexity. or alternatively how hard do you think it would be to copy the bitcoin WOT system and make something in parallel that is integrated into the client?
bitcoin WOT seems like a whole new project, especially if you want to submit feedbacks to it. GPG, etc. Maybe its not so bad,but I am currently overloaded with yet another new bunch of protocols!

How about this. Can you specify exactly what you need for this project? It seems that there are constantly new features, each with potentially giant amounts of work (search engine, WOT). Rather than incrementally add this, then that, etc. I would like to see the full final set of features you need. Then I can think about how best to implement it

James

woah woah woah. i was very explicit about not having a search engine. one would assume that search would be a feature and i bucked that assumption by saying that we wouldn't need to have search. im trying really hard to be super fair here. i have shot down so many great ideas for precisely the reasons mentioned (think blockchain based tracking, built in escrow) but we NEED SOME way to handle trust. Obviously. That's very strongly implied. This whole idea has no worth to anyone with out a means of people trusting each other. Additionally i was offering the possibility of just using the existing bitcoin web of trust and not building our own. again me being very grounded and reasonable. im working very hard not to be the guy who "Rather than incrementally add this, then that, etc". I understand this problem and it is a constant refrain in my mind before every single thing i say.

granted i did spring the thing with buyers being able to opt out of having the right to leave feedback. but thats only cause it wasnt an easy problem to see. sometimes you dont realize things until you realize them. i do apologize for that one. i really am sorry about that.

anyway so features:

we need the ability to filter

we need a web of trust, no need to build our own for now, lets just use bitcoin's WOT (again trying to be reasonable and save you work)

once filtered we need the ability to list ascending and descending by relevant metrics, just like at the top of ebay when you can list by price, we probably need to be able to list by things that help to separate the legit sellers from the scammers

everything im pretty sure you already know about. of course i may append something if i think of something important that i missed but its not going to be on a whim. im not just going to ask you to add a feature because i think it would be nice or cool. only if it is something important that i hadn't thought about already. and again, allow me to apologize for the fact that i do, and will continue to, miss important things sometimes. i wish i was infallible but im not :-\
sorry if I sounded cranky. dont worry we are cool.
just coming down with a cold
Logged
There are over 1000 people in SuperNET slack! http://slackinvite.supernet.org/ automatically sends you an invite

I am just a simple C programmer

jl777

  • Hero Member
  • *****
  • Karma: +718/-123
  • Offline Offline
  • Posts: 6170
    • View Profile
Re: NXTorrent
« Reply #79 on: April 17, 2014, 04:29:44 pm »


This looks really good so far. Are you planning to have a "browse" feature instead of search? So you click "browse" and it brings up the top 50ish top level categories, you click on one of them and get a list of subcategories, click on one and get sub-sub categories, etc.?

Since there is no enforcement of categories, I think this is necessary. I expect there will be a browse API that will return the top categories, and you'll be able to drill down from there. I am still thinking about the APIs that are needed from a user interface perspective, which I will then pass on to James as suggestions for new APIs that only he can make. I am happy to take suggestions like this!
I am thinking about self-organizing by most listed categories. So if "electronics" had the most listings, it would be the first item seen.

Or, I could grab the top N categories by number of listings and then alphabetically sort them. That would make it easier to find things, so each page will have roughly the same volume listings, but in alphabetical order.

Doing it this way, you wont even need to figure out which is your primary, secondary, ... category!

It will all just be based on how many other listings use the same category tag. Once you click into a specific category, then all sorts are based on frequency of categories of listings with the selected category.

The problem I see with this is that the size of datastructures needed to cross reference everything will grow and so the total number of listings becomes a key issue. I think we need to make listings expire or have a maximum time they can be active.

James
Logged
There are over 1000 people in SuperNET slack! http://slackinvite.supernet.org/ automatically sends you an invite

I am just a simple C programmer

chanc3r

  • Hero Member
  • *****
  • Karma: +124/-50
  • Offline Offline
  • Posts: 1019
  • NXTInspect
    • View Profile
Re: NXTorrent
« Reply #80 on: April 17, 2014, 04:42:02 pm »


The problem I see with this is that the size of datastructures needed to cross reference everything will grow and so the total number of listings becomes a key issue. I think we need to make listings expire or have a maximum time they can be active.

James

If all you need to do is index on category - why not create an index hash for each category - assume all it needs to store is pointers to the actual category records??
Logged
NXT: 29996814460165 (NXT-JTA7-B2QR-8BFC-2V222)
@imrimr @NXTinspect

PoofKnuckle

  • Hero Member
  • *****
  • Karma: +111/-7
  • Offline Offline
  • Posts: 849
  • Your Concern is Noted.
    • View Profile
    • NXT FreeMarket
Re: NXTorrent
« Reply #81 on: April 17, 2014, 04:42:37 pm »


The problem I see with this is that the size of datastructures needed to cross reference everything will grow and so the total number of listings becomes a key issue. I think we need to make listings expire or have a maximum time they can be active.

James

Alternatively, you could let listings without an explicit expiration stay "active" indefinitely, but the client could default to searching only, say, 2 weeks back, while still allowing "power searchers" to specify longer date ranges.
Logged
NXT: NXT-WBVP-83YM-FRB3-9MQLY
BM-NBTVHaA41Ejh2G6krD9p5vM62vk84isM

jl777

  • Hero Member
  • *****
  • Karma: +718/-123
  • Offline Offline
  • Posts: 6170
    • View Profile
Re: NXTorrent
« Reply #82 on: April 17, 2014, 04:47:50 pm »


The problem I see with this is that the size of datastructures needed to cross reference everything will grow and so the total number of listings becomes a key issue. I think we need to make listings expire or have a maximum time they can be active.

James

If all you need to do is index on category - why not create an index hash for each category - assume all it needs to store is pointers to the actual category records??
You know I was going to use hashtables :)
The number of pointers will be the total number of categories. So if people start putting in 10 categories and we get a million listings, thats 10 million pointers. ~80 MB. I guess not so bad.

A bit under the weather, had thought it could get closer to 1GB of RAM, which is too big

We need to filter based on age of listing

James
Logged
There are over 1000 people in SuperNET slack! http://slackinvite.supernet.org/ automatically sends you an invite

I am just a simple C programmer

PoofKnuckle

  • Hero Member
  • *****
  • Karma: +111/-7
  • Offline Offline
  • Posts: 849
  • Your Concern is Noted.
    • View Profile
    • NXT FreeMarket
Re: NXTorrent
« Reply #83 on: April 17, 2014, 04:50:34 pm »

Unrelated to the technical side of things, maybe this needs a catchy name. The Silk Road people had "Silk Road," of course, which is memorable and evocative. That's important for when you end up in the news, as this will  :)

I will suggest "Samarkand" (one of the cities on the Silk Road: http://en.wikipedia.org/wiki/Samarkand). But that's just a stab at something cool, marketing is not my thing.

Logged
NXT: NXT-WBVP-83YM-FRB3-9MQLY
BM-NBTVHaA41Ejh2G6krD9p5vM62vk84isM

IveBeenBit

  • Full Member
  • ***
  • Karma: +7/-2
  • Offline Offline
  • Posts: 131
    • View Profile
Re: NXTorrent
« Reply #84 on: April 17, 2014, 04:59:27 pm »

Samarkand is not good IMO because I can't even guess at how to pronounce it. I like "Open Bazaar" or something like that.

Anything related to Silk Road is now tainted with drug connotations.

Edit: but I agree that it's important to have a cool name. Thanks for bringing it up.
Logged
I need your suggestions for Nxt Podcast ideas. Click here and speak your mind!

chanc3r

  • Hero Member
  • *****
  • Karma: +124/-50
  • Offline Offline
  • Posts: 1019
  • NXTInspect
    • View Profile
Re: NXTorrent
« Reply #85 on: April 17, 2014, 05:27:24 pm »

You know I was going to use hashtables :)
The number of pointers will be the total number of categories. So if people start putting in 10 categories and we get a million listings, thats 10 million pointers. ~80 MB. I guess not so bad.

A bit under the weather, had thought it could get closer to 1GB of RAM, which is too big

We need to filter based on age of listing

James
Of course ;)

Agree it needs to filter based on some age or number.. and state i.e. all items over this age should be 'inactive' anyway.
Perhaps 'history' function can be provided which just pulls items from the chain and returns to the client but these are in a sense 'archived' i.e. the server won't accept any transactions against them and doesn't try to store them.

In fact if all of this is in the chain is there any reason why a 'code example' cant be provided for the clients to pull 'archived listings' from the chain directly.

The client can then do what it likes with them in terms of displaying or cloning them for new listings perhaps.
Logged
NXT: 29996814460165 (NXT-JTA7-B2QR-8BFC-2V222)
@imrimr @NXTinspect

jl777

  • Hero Member
  • *****
  • Karma: +718/-123
  • Offline Offline
  • Posts: 6170
    • View Profile
Re: NXTorrent
« Reply #86 on: April 17, 2014, 06:48:45 pm »

You know I was going to use hashtables :)
The number of pointers will be the total number of categories. So if people start putting in 10 categories and we get a million listings, thats 10 million pointers. ~80 MB. I guess not so bad.

A bit under the weather, had thought it could get closer to 1GB of RAM, which is too big

We need to filter based on age of listing

James
Of course ;)

Agree it needs to filter based on some age or number.. and state i.e. all items over this age should be 'inactive' anyway.
Perhaps 'history' function can be provided which just pulls items from the chain and returns to the client but these are in a sense 'archived' i.e. the server won't accept any transactions against them and doesn't try to store them.

In fact if all of this is in the chain is there any reason why a 'code example' cant be provided for the clients to pull 'archived listings' from the chain directly.

The client can then do what it likes with them in terms of displaying or cloning them for new listings perhaps.
Ignoring blockchain purges, filtering by age is not an issue
How the GUI deals with all the listings is up to the GUI, I will make the API flexible
Logged
There are over 1000 people in SuperNET slack! http://slackinvite.supernet.org/ automatically sends you an invite

I am just a simple C programmer

brandp

  • Jr. Member
  • **
  • Karma: +4/-0
  • Offline Offline
  • Posts: 98
    • View Profile
Re: NXTorrent
« Reply #87 on: April 18, 2014, 07:37:48 am »

Samarkand is not good IMO because I can't even guess at how to pronounce it. I like "Open Bazaar" or something like that.

Anything related to Silk Road is now tainted with drug connotations.

Edit: but I agree that it's important to have a cool name. Thanks for bringing it up.

Nobody knows that Smarakand was on the Silk Road. Its too intellectual.
I also prefer Open Bazaar. Because everyone can imagine what to find on such censorshipfree market.
Logged

jl777

  • Hero Member
  • *****
  • Karma: +718/-123
  • Offline Offline
  • Posts: 6170
    • View Profile
Re: NXTorrent
« Reply #88 on: April 18, 2014, 03:49:48 pm »

Samarkand is not good IMO because I can't even guess at how to pronounce it. I like "Open Bazaar" or something like that.

Anything related to Silk Road is now tainted with drug connotations.

Edit: but I agree that it's important to have a cool name. Thanks for bringing it up.

Nobody knows that Smarakand was on the Silk Road. Its too intellectual.
I also prefer Open Bazaar. Because everyone can imagine what to find on such censorshipfree market.
you can call the HTML GUI whatever you want,but at the low level it will stay NXTorrent, simply because it will require some effort for me to change it and nobody will really see that name, so I dont see it as worth changing
Logged
There are over 1000 people in SuperNET slack! http://slackinvite.supernet.org/ automatically sends you an invite

I am just a simple C programmer

PoofKnuckle

  • Hero Member
  • *****
  • Karma: +111/-7
  • Offline Offline
  • Posts: 849
  • Your Concern is Noted.
    • View Profile
    • NXT FreeMarket
Re: NXTorrent
« Reply #89 on: April 18, 2014, 04:02:56 pm »


you can call the HTML GUI whatever you want,but at the low level it will stay NXTorrent, simply because it will require some effort for me to change it and nobody will really see that name, so I dont see it as worth changing

I was thinking of the GUI only. I imagine (and hope) there will ultimately be more than one GUI, no reason people can't build their own. I am just trying to make the first functional front end.

NXTorrent is a cool name anyway, I wouldn't change it.
Logged
NXT: NXT-WBVP-83YM-FRB3-9MQLY
BM-NBTVHaA41Ejh2G6krD9p5vM62vk84isM

anon136

  • Hero Member
  • *****
  • Karma: +86/-19
  • Offline Offline
  • Posts: 1015
    • View Profile
Re: NXTorrent
« Reply #90 on: April 19, 2014, 05:16:25 pm »

any news updates or things to report?

i take it you are back working on multigateway james and we will pick up where we left off when ever you get that sorted?
Logged

PoofKnuckle

  • Hero Member
  • *****
  • Karma: +111/-7
  • Offline Offline
  • Posts: 849
  • Your Concern is Noted.
    • View Profile
    • NXT FreeMarket
Re: NXTorrent
« Reply #91 on: April 19, 2014, 05:19:35 pm »

any news updates or things to report?

i take it you are back working on multigateway james and we will pick up where we left off when ever you get that sorted?

As far as the UI goes, still trying to get it to work with NXTorrent.
Logged
NXT: NXT-WBVP-83YM-FRB3-9MQLY
BM-NBTVHaA41Ejh2G6krD9p5vM62vk84isM

jl777

  • Hero Member
  • *****
  • Karma: +718/-123
  • Offline Offline
  • Posts: 6170
    • View Profile
Re: NXTorrent
« Reply #92 on: April 19, 2014, 05:25:50 pm »

any news updates or things to report?

i take it you are back working on multigateway james and we will pick up where we left off when ever you get that sorted?
I did manage to get a Windows build somewhat working, but there are still some non-portable functions I need to redo. Also, even if I am not coding NXTorrent, it is percolating in my subconscious. Just dont feel ready to crank out the feedback/sorting yet.

I am just about to start debugging NXTsubatomic and hopefully a test release this weekend. I will test portable networking and pthreading in that context, so once it is done, I will be able to make NXTorrent releases for windows.

James

P.S.
Logged
There are over 1000 people in SuperNET slack! http://slackinvite.supernet.org/ automatically sends you an invite

I am just a simple C programmer

anon136

  • Hero Member
  • *****
  • Karma: +86/-19
  • Offline Offline
  • Posts: 1015
    • View Profile
Re: NXTorrent
« Reply #93 on: April 19, 2014, 06:05:07 pm »

thanks guys!
Logged

jl777

  • Hero Member
  • *****
  • Karma: +718/-123
  • Offline Offline
  • Posts: 6170
    • View Profile
Re: NXTorrent
« Reply #94 on: April 20, 2014, 05:15:50 pm »

thanks guys!
Porting to windows will require some significant reworking. I have found http://nikhilm.github.io/uvbook/An%20Introduction%20to%20libuv.pdf

It seems to be industrial strength as things like node.js are built on top of it.

Bad news is that it will probably take me a week to get up to speed on libev, but the good news is that once I do, NXTprotocol and all the handlers will be built on top of libev. It appears to solve the pthread and sockets and system timer non-portabilities all at the same time!

Happy Easter!

James
Logged
There are over 1000 people in SuperNET slack! http://slackinvite.supernet.org/ automatically sends you an invite

I am just a simple C programmer

anon136

  • Hero Member
  • *****
  • Karma: +86/-19
  • Offline Offline
  • Posts: 1015
    • View Profile
Re: NXTorrent
« Reply #95 on: April 21, 2014, 04:21:41 am »

thanks guys!
Porting to windows will require some significant reworking. I have found http://nikhilm.github.io/uvbook/An%20Introduction%20to%20libuv.pdf

It seems to be industrial strength as things like node.js are built on top of it.

Bad news is that it will probably take me a week to get up to speed on libev, but the good news is that once I do, NXTprotocol and all the handlers will be built on top of libev. It appears to solve the pthread and sockets and system timer non-portabilities all at the same time!

Happy Easter!

James

question: does google translate work for w/e language that was?
Logged

jl777

  • Hero Member
  • *****
  • Karma: +718/-123
  • Offline Offline
  • Posts: 6170
    • View Profile
Re: NXTorrent
« Reply #96 on: April 21, 2014, 04:30:53 am »

thanks guys!
Porting to windows will require some significant reworking. I have found http://nikhilm.github.io/uvbook/An%20Introduction%20to%20libuv.pdf

It seems to be industrial strength as things like node.js are built on top of it.

Bad news is that it will probably take me a week to get up to speed on libev, but the good news is that once I do, NXTprotocol and all the handlers will be built on top of libev. It appears to solve the pthread and sockets and system timer non-portabilities all at the same time!

Happy Easter!

James

question: does google translate work for w/e language that was?
Portado al fenestroj postulos iom signifa adapto. Mi trovis http://nikhilm.github.io/uvbook/An% 20Introduction% 20to% 20libuv.pdf

Ĝi ŝajnas esti industria forto, kiel aĵojn kiel node.js estas konstruitaj sur gxian supron.

Malbona novaĵo estas ke gxi versxajne prenu min por semajno ellitiĝi por plirapidigi la libev, sed la bona novaĵo estas ke iam mi faros, NXTprotocol kaj ĉiuj kodogrupo except estos konstruita sur supro de libev. Ĝi aperas por solvi la pthread kaj bazojn kaj la sistemo timer ne-portabilities ĉiuj samtempe!

Happy Easter!

Jakobo
Logged
There are over 1000 people in SuperNET slack! http://slackinvite.supernet.org/ automatically sends you an invite

I am just a simple C programmer

MrV777

  • Hero Member
  • *****
  • Karma: +115/-4
  • Offline Offline
  • Posts: 991
    • View Profile
Re: NXTorrent
« Reply #97 on: April 21, 2014, 02:44:56 pm »

I'm trying to test this on my Mac.  I have it up and running, but when I try somthiing like this:
http://127.0.0.1:7777/NXTorrent?{"requestType":"status","NXT":"8989816935121514892","listingid":"11211870085003945075"}
I get this:
Code: [Select]
{"error":"no listingid"}
I thought I had everything setup correctly.  The only thing I could think of was this:
When you first run it, it will take a while generating a high entropy password. It will print this and the NXT address. You need to send it some testnxt so that it will be able to send AM's

Is that what is causing the problem?  I tried using the password NXTorrent created in the GUI client and it let me login to an account, but I'm guessing that is the mainNet?

Thank you
Logged
NXT: NXT-BK2J-ZMY4-93UY-8EM9V
NXT nodes: 209.222.98.250, 216.155.128.10

jl777

  • Hero Member
  • *****
  • Karma: +718/-123
  • Offline Offline
  • Posts: 6170
    • View Profile
Re: NXTorrent
« Reply #98 on: April 21, 2014, 04:58:31 pm »

I'm trying to test this on my Mac.  I have it up and running, but when I try somthiing like this:
http://127.0.0.1:7777/NXTorrent?{"requestType":"status","NXT":"8989816935121514892","listingid":"11211870085003945075"}
I get this:
Code: [Select]
{"error":"no listingid"}
I thought I had everything setup correctly.  The only thing I could think of was this:
When you first run it, it will take a while generating a high entropy password. It will print this and the NXT address. You need to send it some testnxt so that it will be able to send AM's

Is that what is causing the problem?  I tried using the password NXTorrent created in the GUI client and it let me login to an account, but I'm guessing that is the mainNet?

Thank you
This is all only for testnet
it sounds like everything is working!
with the recent testnet resets, my guess is that the listing got wiped out, so there is no listing

get some testNXT in your NXTorrent acct and also make sure to put that acct# in there, not the one in the URL you posted. Make a listing and then try to get status on it

James
Logged
There are over 1000 people in SuperNET slack! http://slackinvite.supernet.org/ automatically sends you an invite

I am just a simple C programmer

innovator256

  • Sr. Member
  • ****
  • Karma: +24/-2
  • Offline Offline
  • Posts: 282
    • View Profile
Logged

PoofKnuckle

  • Hero Member
  • *****
  • Karma: +111/-7
  • Offline Offline
  • Posts: 849
  • Your Concern is Noted.
    • View Profile
    • NXT FreeMarket
Re: NXTorrent
« Reply #100 on: April 22, 2014, 03:05:36 pm »

http://www.coindesk.com/airbitz-wins-toronto-bitcoin-expo-hackathon-darkmarket/

https://www.youtube.com/watch?v=lHVqH8XO1Pk

https://github.com/genjix/darkmarket

Dark market is HERE! but not production ready

Options are good, but I'd like to see us win this race.

Either way though, this is very exciting.

Logged
NXT: NXT-WBVP-83YM-FRB3-9MQLY
BM-NBTVHaA41Ejh2G6krD9p5vM62vk84isM

innovator256

  • Sr. Member
  • ****
  • Karma: +24/-2
  • Offline Offline
  • Posts: 282
    • View Profile
Re: NXTorrent
« Reply #101 on: April 22, 2014, 03:11:34 pm »

http://www.coindesk.com/airbitz-wins-toronto-bitcoin-expo-hackathon-darkmarket/

https://www.youtube.com/watch?v=lHVqH8XO1Pk

https://github.com/genjix/darkmarket

Dark market is HERE! but not production ready

Options are good, but I'd like to see us win this race.

Either way though, this is very exciting.

I rather see use win this race also and we still can..the news is still exciting though.
Logged

anon136

  • Hero Member
  • *****
  • Karma: +86/-19
  • Offline Offline
  • Posts: 1015
    • View Profile
Re: NXTorrent
« Reply #102 on: April 22, 2014, 04:51:18 pm »

http://www.coindesk.com/airbitz-wins-toronto-bitcoin-expo-hackathon-darkmarket/

https://www.youtube.com/watch?v=lHVqH8XO1Pk

https://github.com/genjix/darkmarket

Dark market is HERE! but not production ready

Options are good, but I'd like to see us win this race.

Either way though, this is very exciting.

I rather see use win this race also and we still can..the news is still exciting though.

awesome! no matter who wins this race, every good person will be a winner.
Logged

jl777

  • Hero Member
  • *****
  • Karma: +718/-123
  • Offline Offline
  • Posts: 6170
    • View Profile
Re: NXTorrent
« Reply #103 on: April 25, 2014, 11:43:06 am »

I got encrypted realtime chat working and integrated. This means that buyer and seller can hammer out any details via chat. I think that is pretty useful.

I guess I need to come up with an API so it can be displayed in webpage

James
Logged
There are over 1000 people in SuperNET slack! http://slackinvite.supernet.org/ automatically sends you an invite

I am just a simple C programmer

bitcoinpaul

  • Hero Member
  • *****
  • Karma: +590/-590
  • Offline Offline
  • Posts: 3097
  • Karmageddon
    • View Profile
Re: NXTorrent
« Reply #104 on: April 25, 2014, 11:44:42 am »

I got encrypted realtime chat working and integrated. This means that buyer and seller can hammer out any details via chat. I think that is pretty useful.

I guess I need to come up with an API so it can be displayed in webpage

James

This is wonderful.

edit:

One of many similar quotes about additional apps in the client:
Now I thought about apps, I kind of like the idea. For example, we could have an app for James' multigateway (since I'm not sure it should be installed by default - it's not part of the core). The "app", once installed, can add a link to the sidebar menu and when clicked will show it's contents in a sandboxed iframe.

Apps were mentioned now a few times by different people in the community and I think we should talk about it more.

Let's discuss the possibility for developers to make add-ons for the client to enhance the experience with the core & to provide an interface/gateway for services on top of Nxt.
« Last Edit: April 25, 2014, 11:51:21 am by bitcoinpaul »
Logged
Like my Avatar? Reply now! NXT-M5JR-2L5Z-CFBP-8X7P3

PoofKnuckle

  • Hero Member
  • *****
  • Karma: +111/-7
  • Offline Offline
  • Posts: 849
  • Your Concern is Noted.
    • View Profile
    • NXT FreeMarket
Re: NXTorrent
« Reply #105 on: April 25, 2014, 12:44:37 pm »

I got encrypted realtime chat working and integrated. This means that buyer and seller can hammer out any details via chat. I think that is pretty useful.

I guess I need to come up with an API so it can be displayed in webpage

James

Yes please! Happy to help with this :)
Logged
NXT: NXT-WBVP-83YM-FRB3-9MQLY
BM-NBTVHaA41Ejh2G6krD9p5vM62vk84isM

anon136

  • Hero Member
  • *****
  • Karma: +86/-19
  • Offline Offline
  • Posts: 1015
    • View Profile
Re: NXTorrent
« Reply #106 on: April 26, 2014, 08:51:36 pm »

I got encrypted realtime chat working and integrated. This means that buyer and seller can hammer out any details via chat. I think that is pretty useful.

I guess I need to come up with an API so it can be displayed in webpage

James

You are a monster james. Smart people will buy a little nxt before this is released because the crypto community is going to flip when this hits the news ;D
Logged

jl777

  • Hero Member
  • *****
  • Karma: +718/-123
  • Offline Offline
  • Posts: 6170
    • View Profile
Re: NXTorrent
« Reply #107 on: April 26, 2014, 09:11:08 pm »

I got encrypted realtime chat working and integrated. This means that buyer and seller can hammer out any details via chat. I think that is pretty useful.

I guess I need to come up with an API so it can be displayed in webpage

James

You are a monster james. Smart people will buy a little nxt before this is released because the crypto community is going to flip when this hits the news ;D
I am glad you agree it is worth the delay that adding this took. Thats the advantage on working on so many things at once, never know when a feature for one project becomes a killer feature for another!

James
Logged
There are over 1000 people in SuperNET slack! http://slackinvite.supernet.org/ automatically sends you an invite

I am just a simple C programmer

MrV777

  • Hero Member
  • *****
  • Karma: +115/-4
  • Offline Offline
  • Posts: 991
    • View Profile
Re: NXTorrent
« Reply #108 on: April 30, 2014, 08:17:25 pm »

Samarkand is not good IMO because I can't even guess at how to pronounce it. I like "Open Bazaar" or something like that.

Anything related to Silk Road is now tainted with drug connotations.

Edit: but I agree that it's important to have a cool name. Thanks for bringing it up.

Open Bazaar is now an alternative it looks like:  :(
http://www.coindesk.com/darkmarket-alternative-launches-friendlier-title-openbazaar/
Logged
NXT: NXT-BK2J-ZMY4-93UY-8EM9V
NXT nodes: 209.222.98.250, 216.155.128.10

PoofKnuckle

  • Hero Member
  • *****
  • Karma: +111/-7
  • Offline Offline
  • Posts: 849
  • Your Concern is Noted.
    • View Profile
    • NXT FreeMarket
Re: NXTorrent
« Reply #109 on: April 30, 2014, 08:25:51 pm »

Meh, they caved. I like the "dark" adjectives. Too many people are afraid of being tainted by association with black markets, but IMO it's the supporters of the crazy regulatory burdens we live under who should be ashamed of themselves, not those who are trying to win back some of our inherent liberty.

/soapbox
Logged
NXT: NXT-WBVP-83YM-FRB3-9MQLY
BM-NBTVHaA41Ejh2G6krD9p5vM62vk84isM

anon136

  • Hero Member
  • *****
  • Karma: +86/-19
  • Offline Offline
  • Posts: 1015
    • View Profile
Re: NXTorrent
« Reply #110 on: April 30, 2014, 09:45:16 pm »

Meh, they caved. I like the "dark" adjectives. Too many people are afraid of being tainted by association with black markets, but IMO it's the supporters of the crazy regulatory burdens we live under who should be ashamed of themselves, not those who are trying to win back some of our inherent liberty.

/soapbox

we dont even have a name for ours yet. obviously nxtorrent isn't going to work. its fine for jamse's layer but not for the complete package.
Logged

innovator256

  • Sr. Member
  • ****
  • Karma: +24/-2
  • Offline Offline
  • Posts: 282
    • View Profile
Re: NXTorrent
« Reply #111 on: May 01, 2014, 05:05:15 am »

Meh, they caved. I like the "dark" adjectives. Too many people are afraid of being tainted by association with black markets, but IMO it's the supporters of the crazy regulatory burdens we live under who should be ashamed of themselves, not those who are trying to win back some of our inherent liberty.

/soapbox

we dont even have a name for ours yet. obviously nxtorrent isn't going to work. its fine for jamse's layer but not for the complete package.

Guys take this name from a marketing and branding perpective: "Free Market" its perfect, especially when being referenced in the media. See more discussion here:  http://www.reddit.com/r/Bitcoin/comments/23vo5s/petition_to_change_the_name_of_dark_market_to/
Logged

anon136

  • Hero Member
  • *****
  • Karma: +86/-19
  • Offline Offline
  • Posts: 1015
    • View Profile
Re: NXTorrent
« Reply #112 on: May 01, 2014, 05:31:20 am »

Meh, they caved. I like the "dark" adjectives. Too many people are afraid of being tainted by association with black markets, but IMO it's the supporters of the crazy regulatory burdens we live under who should be ashamed of themselves, not those who are trying to win back some of our inherent liberty.

/soapbox

we dont even have a name for ours yet. obviously nxtorrent isn't going to work. its fine for jamse's layer but not for the complete package.

Guys take this name from a marketing and branding perpective: "Free Market" its perfect, especially when being referenced in the media. See more discussion here:  http://www.reddit.com/r/Bitcoin/comments/23vo5s/petition_to_change_the_name_of_dark_market_to/

Yea but that phrase is already claimed. My only concern is that it could lead to confusion in general speech when one says "free market" and people arnt sure if they mean a proper noun free market or regular noun free market.
Logged

innovator256

  • Sr. Member
  • ****
  • Karma: +24/-2
  • Offline Offline
  • Posts: 282
    • View Profile
Re: NXTorrent
« Reply #113 on: May 01, 2014, 06:04:44 am »

Meh, they caved. I like the "dark" adjectives. Too many people are afraid of being tainted by association with black markets, but IMO it's the supporters of the crazy regulatory burdens we live under who should be ashamed of themselves, not those who are trying to win back some of our inherent liberty.

/soapbox

we dont even have a name for ours yet. obviously nxtorrent isn't going to work. its fine for jamse's layer but not for the complete package.

Guys take this name from a marketing and branding perpective: "Free Market" its perfect, especially when being referenced in the media. See more discussion here:  http://www.reddit.com/r/Bitcoin/comments/23vo5s/petition_to_change_the_name_of_dark_market_to/

Yea but that phrase is already claimed. My only concern is that it could lead to confusion in general speech when one says "free market" and people arnt sure if they mean a proper noun free market or regular noun free market.

There is no claim on this name, no one has the right to "claim a name" unless there is working software being used which is actively recognized by the name or it has biend trademark for use in a particular line of business.

Also thats the point of the whole discussion, the confusion is good for the curious, it will lead to more inquisitions and research and its more publicity for the software client..question: why is this an issue? what harm could it possibly bring? we know that there are definitely positive effect from having a name like this.

edit: Also, I am sure there is alway context in "general speech" that parties in discussion understand, I don't see how there would be any confusion unless there is an explicit reference to a certain decentralized  online store
« Last Edit: May 01, 2014, 06:07:57 am by ola »
Logged

bitcoinpaul

  • Hero Member
  • *****
  • Karma: +590/-590
  • Offline Offline
  • Posts: 3097
  • Karmageddon
    • View Profile
Re: NXTorrent
« Reply #114 on: May 01, 2014, 07:36:52 am »

"Asset Exchange" is also in use by others. When you talk about it, you say "Nxt Asset Exchange". I see no confusion. I vote for "Free Market".
Logged
Like my Avatar? Reply now! NXT-M5JR-2L5Z-CFBP-8X7P3

innovator256

  • Sr. Member
  • ****
  • Karma: +24/-2
  • Offline Offline
  • Posts: 282
    • View Profile
Re: NXTorrent
« Reply #115 on: May 01, 2014, 08:09:03 am »

"Asset Exchange" is also in use by others. When you talk about it, you say "Nxt Asset Exchange". I see no confusion. I vote for "Free Market".

+1 I think "Asset Exchange" is sufficient name for the hub for the sales and transfers of digital assets. But for the "physical goods store" I don't see how you can come up with  better name than "Free Market"
Logged

Conurtrol

  • Jr. Member
  • **
  • Karma: +8/-1
  • Offline Offline
  • Posts: 62
    • View Profile
Re: NXTorrent
« Reply #116 on: May 01, 2014, 11:03:28 am »

"Asset Exchange" is also in use by others. When you talk about it, you say "Nxt Asset Exchange". I see no confusion. I vote for "Free Market".

+1 I think "Asset Exchange" is sufficient name for the hub for the sales and transfers of digital assets. But for the "physical goods store" I don't see how you can come up with  better name than "Free Market"

+1. Free Market might be the perfect name.
Logged

msin

  • Hero Member
  • *****
  • Karma: +138/-18
  • Offline Offline
  • Posts: 1288
    • View Profile
Re: NXTorrent
« Reply #117 on: May 01, 2014, 03:40:47 pm »

+1, like Free Market.
Logged

anon136

  • Hero Member
  • *****
  • Karma: +86/-19
  • Offline Offline
  • Posts: 1015
    • View Profile
Re: NXTorrent
« Reply #118 on: May 01, 2014, 05:52:45 pm »

I still have my previously mentioned reservations but If enough people support free market than thats what it will be called. :)
Logged

gs02xzz

  • Hero Member
  • *****
  • Karma: +56/-12
  • Offline Offline
  • Posts: 1101
    • View Profile
Re: NXTorrent
« Reply #119 on: May 01, 2014, 06:05:24 pm »

FreeMarket has my vote.
Logged
Nxt Mission is to commercialize the crypto technology and build new commerce and society.

innovator256

  • Sr. Member
  • ****
  • Karma: +24/-2
  • Offline Offline
  • Posts: 282
    • View Profile
Re: NXTorrent
« Reply #120 on: May 01, 2014, 06:17:02 pm »

I still have my previously mentioned reservations but If enough people support free market than thats what it will be called. :)
++ people voice your opinions  :)
Logged

CoinTropololis_JustaBit

  • Hero Member
  • *****
  • Karma: +144/-11
  • Offline Offline
  • Posts: 727
    • View Profile
Re: NXTorrent
« Reply #121 on: May 01, 2014, 06:20:53 pm »

Free Market

Daedelus

  • Hero Member
  • *****
  • Karma: +230/-12
  • Offline Offline
  • Posts: 3280
    • View Profile
Re: NXTorrent
« Reply #122 on: May 01, 2014, 07:20:28 pm »

Somewhere you go to sell stuff you don't want... hmm.

Hoe about The Tat Tent? That has an arabian mystique. Or maybe The Crap Shack? :D

Ok then, +1 for free market ;D  :D
Logged
NXT: NXT-4CS7-S4N5-PTH5-A8R2Q

justbetweenus

  • Jr. Member
  • **
  • Karma: +4/-2
  • Offline Offline
  • Posts: 53
    • View Profile
Re: NXTorrent
« Reply #123 on: May 01, 2014, 07:35:31 pm »

Free Market
Logged

jl777

  • Hero Member
  • *****
  • Karma: +718/-123
  • Offline Offline
  • Posts: 6170
    • View Profile
Re: NXTorrent
« Reply #124 on: May 05, 2014, 08:36:03 pm »

209.126.71.170/NXTorrent_v03.zip

this is a mac only release, mostly for poofknuckle. I have only tested the list function, it takes hard-coded fields now:

127.0.0.1:7777/NXTorrent?{"requestType":"list","NXT":"8989816935121514892","title":"test","category1":"cat1","category2":"cat2","category3":"cat3","tag1":"tag1","tag2":"tag2","tag3":"tag3","description":"this is a description","URI":"www.google.com","price":"1.01","duration":"12"}

duration is in hours

price is in terms of NXT, unless you have a NXTsubatomic field, in which case it can be in any NXT asset or any supported bitcoind fork. This part is untested. I also have the submit offer and accept offer automatically generating the necessary data for NXTsubatomic to finalize the trade, if both parties are offering NXT or NXT assets. In case there is both a price and a NXTsubatomic field, I think the NXTsubatomic takes precedence. still need to work out all the kinks

So, theoretically it will be possible to offer for sale:
A) NXT
B) NXT assets
C) bitcoind
D) physical goods

For payment it is possible to offer A), B) or C) or some off blockchain payment. I am hoping to be able to fully integrate the NXTsubatomic payment for cases of [A|B|C] <-> [A|B|C]. I hope anon136 wont mind.

Internally, I have everything setup for searching and feedback is implemented. A buyers and sellers rating is calculated in a way customized to each person. Basically the way you rate other people is used as the reference and how the other people rate their other people is mapped to how you rate. this way if somebody is giving ratings +/- 10 and you use the full range of +/-100, the ratings of the +/-10 guy is multiplied by 10.

To create a "web of trust" type of behavior, I calculate a blended feedback giving the most weight to any direct feedback and less weight to indirect feedback. This problem is complex and iterates, eg. the result will change depending on how many times you apply the indirect feedback. For now, I limit it to one level. Not sure how well it will work, hopefully someone will actually test this...

I also have chat somewhat integrated into this. you type into the command line window for chat and the responses will go to the websockets data feed. I am having lots of problems with HTML, so havent been able to test it much

I still need to verify all the other API commands and actually implement the searching.

Separately, I am battling windows, so I wanted to get a somewhat stable release out before I break everything trying to make Windows happy.

James
Logged
There are over 1000 people in SuperNET slack! http://slackinvite.supernet.org/ automatically sends you an invite

I am just a simple C programmer

PoofKnuckle

  • Hero Member
  • *****
  • Karma: +111/-7
  • Offline Offline
  • Posts: 849
  • Your Concern is Noted.
    • View Profile
    • NXT FreeMarket
Re: NXTorrent
« Reply #125 on: May 05, 2014, 08:38:02 pm »

209.126.71.170/NXTorrent_v03.zip

this is a mac only release, mostly for poofknuckle. I have only tested the list function, it takes hard-coded fields now:


Thank you! I'll start on it tonight.

Logged
NXT: NXT-WBVP-83YM-FRB3-9MQLY
BM-NBTVHaA41Ejh2G6krD9p5vM62vk84isM

jl777

  • Hero Member
  • *****
  • Karma: +718/-123
  • Offline Offline
  • Posts: 6170
    • View Profile
Re: NXTorrent
« Reply #126 on: May 05, 2014, 08:43:00 pm »

Hopefully I can get some feedback on how I am doing feedback:

The following is pseudo code:
calc_dpreds_ave returns the average of the update_dpreds values
dpreds[4] has min and dpreds[5] has max of all updated values

double calc_NXTorrent_weight(double dpreds[6])
{
    return(calc_dpreds_ave(dpreds) / MAX_NXTORRENT_RATING);
}

double map_NXTorrent_rating(double ave,double aveabs,double min,double max,double dpreds[6],double rating)
{
    otherave = calc_dpreds_ave(dpreds);
    otherabs = calc_dpreds_abs(dpreds);
    rating -= otherave, rating += ave;
    rating /= otherabs, rating *= otherabs;
    if ( rating > MAX_NXTORRENT_RATING )
        rating = MAX_NXTORRENT_RATING;
    else if ( rating < -MAX_NXTORRENT_RATING )
        rating = -MAX_NXTORRENT_RATING;
    return(rating);
}

.... feedback calculation loop
       for (i=0; i<fb->numfeedbacks; i++)
        {
            raw = &fb->raw;
            if ( raw->other64bits == my64bits )
                update_dpreds(direct,raw->rating);
            else
            {
                expand_nxt64bits(otherNXTaddr,raw->other64bits);
                np = get_NXTacct(&createdflag,Global_mp,otherNXTaddr);
                rating = map_NXTorrent_rating(ave,aveabs,refdpreds[4],refdpreds[5],np->hisfeedbacks,raw->rating);
                if ( rating != 0. )
                {
                    update_dpreds(indirect,rating);
                    update_dpreds(weighed,rating * MAX(0.,calc_NXTorrent_weight(np->myfb_tohim)));
                }
            }
        }
    return(calc_dpreds_ave(direct) + calc_dpreds_ave(indirect)/10. + calc_dpreds_ave(weighed)/3.);

I just chose 1/10'th for indirect and 1/3'rd for weighed arbitrarily

James
Logged
There are over 1000 people in SuperNET slack! http://slackinvite.supernet.org/ automatically sends you an invite

I am just a simple C programmer

jl777

  • Hero Member
  • *****
  • Karma: +718/-123
  • Offline Offline
  • Posts: 6170
    • View Profile
Re: NXTorrent
« Reply #127 on: May 05, 2014, 08:54:41 pm »

If there is anybody who knows HTML and has a MAC, I'd appreciate it if you could run the NXTorrent_v03

After it initializes go to 127.0.0.1:7777 and you should get a form page. The problem is that most of the buttons just dont work. Hopefully you can view source and tell me what horrible thing i did with the generated HTML

I dont have time to debug this, so for now I just manually construct API URLs, but it would really be nice if I could get reliable debug page
Logged
There are over 1000 people in SuperNET slack! http://slackinvite.supernet.org/ automatically sends you an invite

I am just a simple C programmer

chanc3r

  • Hero Member
  • *****
  • Karma: +124/-50
  • Offline Offline
  • Posts: 1019
  • NXTInspect
    • View Profile
Re: NXTorrent
« Reply #128 on: May 05, 2014, 09:19:16 pm »

If there is anybody who knows HTML and has a MAC, I'd appreciate it if you could run the NXTorrent_v03

After it initializes go to 127.0.0.1:7777 and you should get a form page. The problem is that most of the buttons just dont work. Hopefully you can view source and tell me what horrible thing i did with the generated HTML

I dont have time to debug this, so for now I just manually construct API URLs, but it would really be nice if I could get reliable debug page

james - these sequences in the file

document.status.listingid.value'"}';

should be

document.status.listingid.value + '"}';

I think - this sequence error where you add '"}'; seems to be consistently missing + i.e. I think its in lots of places

Image insert seems to be broken - so here is a link https://www.dropbox.com/s/1vhl5r4ix1gtrpn/Screen%20Shot%202014-05-05%20at%2022.21.46.png
« Last Edit: May 05, 2014, 09:28:24 pm by chanc3r »
Logged
NXT: 29996814460165 (NXT-JTA7-B2QR-8BFC-2V222)
@imrimr @NXTinspect

anon136

  • Hero Member
  • *****
  • Karma: +86/-19
  • Offline Offline
  • Posts: 1015
    • View Profile
Re: NXTorrent
« Reply #129 on: May 05, 2014, 09:29:11 pm »

can you explain what different parts of the code do for me?

how many degrees of separation do you intend to search?
Logged

jl777

  • Hero Member
  • *****
  • Karma: +718/-123
  • Offline Offline
  • Posts: 6170
    • View Profile
Re: NXTorrent
« Reply #130 on: May 05, 2014, 09:51:55 pm »

If there is anybody who knows HTML and has a MAC, I'd appreciate it if you could run the NXTorrent_v03

After it initializes go to 127.0.0.1:7777 and you should get a form page. The problem is that most of the buttons just dont work. Hopefully you can view source and tell me what horrible thing i did with the generated HTML

I dont have time to debug this, so for now I just manually construct API URLs, but it would really be nice if I could get reliable debug page

james - these sequences in the file

document.status.listingid.value'"}';

should be

document.status.listingid.value + '"}';

I think - this sequence error where you add '"}'; seems to be consistently missing + i.e. I think its in lots of places

Image insert seems to be broken - so here is a link https://www.dropbox.com/s/1vhl5r4ix1gtrpn/Screen%20Shot%202014-05-05%20at%2022.21.46.png
!! That was it. Thanks
Now the only strangeness left is that the websockets isnt activated with the autogenerated HTML, but it works if it is in a static file
Logged
There are over 1000 people in SuperNET slack! http://slackinvite.supernet.org/ automatically sends you an invite

I am just a simple C programmer

jl777

  • Hero Member
  • *****
  • Karma: +718/-123
  • Offline Offline
  • Posts: 6170
    • View Profile
Re: NXTorrent
« Reply #131 on: May 05, 2014, 10:03:05 pm »

can you explain what different parts of the code do for me?

how many degrees of separation do you intend to search?
Right now it is just one, but I think maybe six iterations will do nicely. Each one having something like one third the weight of the previous iteration. First, need to get the one degree of separation working as we want it to.

The loop above is iterating through every feedback the specific buyer/seller has ever gotten. So each entry is a feedback to the same acct, but it could be from any other acct, including yours


I track every feedback each acct gives to any other acct, that is in "hisfeedbacks"
this gives a baseline of the average rating each acct gives

I also track all feedbacks your acct gives to all other accts, that is in "myfb_tohim"

To calculate an overall feedback rating I have the direct, indirected, and weighed. the direct is pretty self-explanatory

                rating = map_NXTorrent_rating(ave,aveabs,refdpreds[4],refdpreds[5],np->hisfeedbacks,raw->rating);
map_NXTorrent_rating maps the rating that was given to a range that should be much closer to how you would rate people. I just use this value for indirect, regardless of if there is any linkage between you. That is why I put the weight at 10%.

                if ( rating != 0. )
                {
                    update_dpreds(indirect,rating);
                    update_dpreds(weighed,rating * MAX(0.,calc_NXTorrent_weight(np->myfb_tohim)));
                }
The weighed data is only updated if you have actually given that person any ratings before. The weight is calculated by how positive you have rated him. If you have rated him +100 all the time, it gets full weight. If average of +1, then 1% weight. Anything 0 or negative adds no weight

I then combine the direct, indirect and weighed to come up with an approximation to what the expected rating you would give this buyer/seller, assuming all these assumptions and past ratings are valid

James
Logged
There are over 1000 people in SuperNET slack! http://slackinvite.supernet.org/ automatically sends you an invite

I am just a simple C programmer

chanc3r

  • Hero Member
  • *****
  • Karma: +124/-50
  • Offline Offline
  • Posts: 1019
  • NXTInspect
    • View Profile
Re: NXTorrent
« Reply #132 on: May 05, 2014, 10:03:46 pm »


!! That was it. Thanks
Now the only strangeness left is that the websockets isnt activated with the autogenerated HTML, but it works if it is in a static file
I'm seeing a syntax error in that 'try' section.. if thats what you mean... haven't figured out where it is yet.
Logged
NXT: 29996814460165 (NXT-JTA7-B2QR-8BFC-2V222)
@imrimr @NXTinspect

jl777

  • Hero Member
  • *****
  • Karma: +718/-123
  • Offline Offline
  • Posts: 6170
    • View Profile
Re: NXTorrent
« Reply #133 on: May 05, 2014, 10:29:47 pm »


!! That was it. Thanks
Now the only strangeness left is that the websockets isnt activated with the autogenerated HTML, but it works if it is in a static file
I'm seeing a syntax error in that 'try' section.. if thats what you mean... haven't figured out where it is yet.
i found it
        document.getElementById(\"number\").textContent = msg.data + \"\n\";\n\ --> needed to be

        document.getElementById(\"number\").textContent = msg.data + \"\\n\";\n\
Logged
There are over 1000 people in SuperNET slack! http://slackinvite.supernet.org/ automatically sends you an invite

I am just a simple C programmer

jl777

  • Hero Member
  • *****
  • Karma: +718/-123
  • Offline Offline
  • Posts: 6170
    • View Profile
Re: NXTorrent
« Reply #134 on: May 05, 2014, 10:46:38 pm »


!! That was it. Thanks
Now the only strangeness left is that the websockets isnt activated with the autogenerated HTML, but it works if it is in a static file
I'm seeing a syntax error in that 'try' section.. if thats what you mean... haven't figured out where it is yet.
Found a buffer overflow in the libwebsockets test-server, which explains why it kept closing the websockets.
So, now I think I have all the debug forms to test the API working and websockets displaying last chatline working without any external HTML file.

More importantly, I have a realtime path into the browser window for pretty much any data. Very nice
Logged
There are over 1000 people in SuperNET slack! http://slackinvite.supernet.org/ automatically sends you an invite

I am just a simple C programmer

chanc3r

  • Hero Member
  • *****
  • Karma: +124/-50
  • Offline Offline
  • Posts: 1019
  • NXTInspect
    • View Profile
Re: NXTorrent
« Reply #135 on: May 05, 2014, 10:49:22 pm »


!! That was it. Thanks
Now the only strangeness left is that the websockets isnt activated with the autogenerated HTML, but it works if it is in a static file
I'm seeing a syntax error in that 'try' section.. if thats what you mean... haven't figured out where it is yet.
Found a buffer overflow in the libwebsockets test-server, which explains why it kept closing the websockets.
So, now I think I have all the debug forms to test the API working and websockets displaying last chatline working without any external HTML file.

More importantly, I have a realtime path into the browser window for pretty much any data. Very nice

Nice - so share the new toys? :D
Logged
NXT: 29996814460165 (NXT-JTA7-B2QR-8BFC-2V222)
@imrimr @NXTinspect

jl777

  • Hero Member
  • *****
  • Karma: +718/-123
  • Offline Offline
  • Posts: 6170
    • View Profile
Re: NXTorrent
« Reply #136 on: May 05, 2014, 10:58:45 pm »


!! That was it. Thanks
Now the only strangeness left is that the websockets isnt activated with the autogenerated HTML, but it works if it is in a static file
I'm seeing a syntax error in that 'try' section.. if thats what you mean... haven't figured out where it is yet.
Found a buffer overflow in the libwebsockets test-server, which explains why it kept closing the websockets.
So, now I think I have all the debug forms to test the API working and websockets displaying last chatline working without any external HTML file.

More importantly, I have a realtime path into the browser window for pretty much any data. Very nice

Nice - so share the new toys? :D
209.126.71.170/NXTorrent_v04.zip

Has listings function working and it shows summary detail for each listing. status API works. Still havent verified feedback, makeoffer, etc. but for now should be enough for the GUI to make progress with

James
Logged
There are over 1000 people in SuperNET slack! http://slackinvite.supernet.org/ automatically sends you an invite

I am just a simple C programmer

anon136

  • Hero Member
  • *****
  • Karma: +86/-19
  • Offline Offline
  • Posts: 1015
    • View Profile
Re: NXTorrent
« Reply #137 on: May 05, 2014, 11:30:20 pm »

can you explain what different parts of the code do for me?

how many degrees of separation do you intend to search?
Right now it is just one, but I think maybe six iterations will do nicely. Each one having something like one third the weight of the previous iteration. First, need to get the one degree of separation working as we want it to.

The loop above is iterating through every feedback the specific buyer/seller has ever gotten. So each entry is a feedback to the same acct, but it could be from any other acct, including yours


I track every feedback each acct gives to any other acct, that is in "hisfeedbacks"
this gives a baseline of the average rating each acct gives

I also track all feedbacks your acct gives to all other accts, that is in "myfb_tohim"

To calculate an overall feedback rating I have the direct, indirected, and weighed. the direct is pretty self-explanatory

                rating = map_NXTorrent_rating(ave,aveabs,refdpreds[4],refdpreds[5],np->hisfeedbacks,raw->rating);
map_NXTorrent_rating maps the rating that was given to a range that should be much closer to how you would rate people. I just use this value for indirect, regardless of if there is any linkage between you. That is why I put the weight at 10%.

                if ( rating != 0. )
                {
                    update_dpreds(indirect,rating);
                    update_dpreds(weighed,rating * MAX(0.,calc_NXTorrent_weight(np->myfb_tohim)));
                }
The weighed data is only updated if you have actually given that person any ratings before. The weight is calculated by how positive you have rated him. If you have rated him +100 all the time, it gets full weight. If average of +1, then 1% weight. Anything 0 or negative adds no weight

I then combine the direct, indirect and weighed to come up with an approximation to what the expected rating you would give this buyer/seller, assuming all these assumptions and past ratings are valid

James

awesome. it sounds great so far. like you said before, implementation first, optimization later. you clearly have the right idea so awesome. though when the time for optimization comes i would say probably much higher than 1/3 would be desirable otherwise you may get into situations where people who have tons of positive ratings but are highly separated end up rated higher than people who have negative ratings from people you trust.
Logged

jl777

  • Hero Member
  • *****
  • Karma: +718/-123
  • Offline Offline
  • Posts: 6170
    • View Profile
Re: NXTorrent
« Reply #138 on: May 05, 2014, 11:40:01 pm »

you may get into situations where people who have tons of positive ratings but are highly separated end up rated higher than people who have negative ratings from people you trust.
I'm a bit confused. Wouldnt we want people who have tons of positive ratings rated higher than people who have negative ratings from people we trust?

I think it is important to decay the weights pretty fast, otherwise the contribution of our ratings and the ratings from people we rate highly will get diluted away.

This whole part really needs to be fine tuned a lot, I am pretty sure a model of it can be put into a spreadsheet. Then you can play around with how changing ratings from different people change your calculated rating of them. Its a dangerously fascinating puzzle, how to balance all the factors and I dont want to get sucked into that vortex as i have many projects to get done!

James
Logged
There are over 1000 people in SuperNET slack! http://slackinvite.supernet.org/ automatically sends you an invite

I am just a simple C programmer

anon136

  • Hero Member
  • *****
  • Karma: +86/-19
  • Offline Offline
  • Posts: 1015
    • View Profile
Re: NXTorrent
« Reply #139 on: May 06, 2014, 12:52:39 am »

you may get into situations where people who have tons of positive ratings but are highly separated end up rated higher than people who have negative ratings from people you trust.
I'm a bit confused. Wouldnt we want people who have tons of positive ratings rated higher than people who have negative ratings from people we trust?

I think it is important to decay the weights pretty fast, otherwise the contribution of our ratings and the ratings from people we rate highly will get diluted away.

This whole part really needs to be fine tuned a lot, I am pretty sure a model of it can be put into a spreadsheet. Then you can play around with how changing ratings from different people change your calculated rating of them. Its a dangerously fascinating puzzle, how to balance all the factors and I dont want to get sucked into that vortex as i have many projects to get done!

James

yep im an idiot and i said that backwards by accident.

you may get into situations where people who have tons of positive ratings but are highly separated end up rated higher lower than people who have negative ratings from people you trust.

and you know that there is no reason why we cant have default weights that we think are good but then have options in the settings so each individual can customize them.

im just glad you so clearly understand the ideas behind WOT. as long as you understand all of the concepts i trust that your choices on some of the specifics are just as likely (if not more likely) to be as good or better than mine.
« Last Edit: May 06, 2014, 12:55:50 am by anon136 »
Logged

jl777

  • Hero Member
  • *****
  • Karma: +718/-123
  • Offline Offline
  • Posts: 6170
    • View Profile
Re: NXTorrent
« Reply #140 on: May 06, 2014, 01:31:02 am »

you may get into situations where people who have tons of positive ratings but are highly separated end up rated higher lower than people who have negative ratings from people you trust.
I am not sure how people with lots of positive ratings can end up with a negative rating. It is a very complicated system though, so I guess anything could happen.

If there is a lot of separation, then I think all ratings should be close to neutral. It is pretty meaningless if the only thing we know about a person is that some person who rated another person who rated yet another person rated that person positively/negatively.

There is a lot we can do with this. Each person can specify how they want to calculate this. They can even say, rank them as if I was somebody else. Or even create some combination of rankings out of what other people's rankings would be.

Maybe all we need to do is one level using that approach. Each person when they are getting started would list half a dozen to a dozen people they trust and set the ranking to be equal weights of what those people have. Kind of like creating a virtual rating system by compositing other people's rankings. Then as you end up with more and more direct feedback, that portion starts becoming more and more relevant.

Once I get NXT(sub)atomic transactions fully integrated, we can even have the total amount of crypto traded as part of the feedback system.

In any case, until we get lots of users, it will be hard to know if the feedback system is working as we want it. I think once we get into a beta test we can start getting some "actual" feedbacks and I think this feature will continue to evolve as time goes on. I am not totally satisfied with it, after all it was just my first attempt at this

On the searching/browsing side, we now have three tags and three categories. Until there are enough listings ,the current list 100 approach will be fine. The sooner you can get enough real looking listings into the blockchain, the sooner I will be able to get the searching/browsing finished. It is hard to solve this in a vacuum.

Sephr hasnt come through with the aria2 port. From the low level, the magnet link is the only real substantial thing left. Do you know how to make a magnet link file and get it out into the cloud? If you dont know, how will people be able to do this and if they cant do it, what benefit is there to supporting it? Maybe you can find a program that lets people author the magnet link contents and pushes it to the peers?

James
Logged
There are over 1000 people in SuperNET slack! http://slackinvite.supernet.org/ automatically sends you an invite

I am just a simple C programmer

Daedelus

  • Hero Member
  • *****
  • Karma: +230/-12
  • Offline Offline
  • Posts: 3280
    • View Profile
Re: NXTorrent
« Reply #141 on: May 06, 2014, 08:52:54 am »

I have been following this but doesn't allowing people to choose their own weightings open an avenue to scammers?

I could create a number of sock puppets and trade with myself to highly rate a scammer account and set the wighting for the first 3-4 separations to 90% (which are all me) and the odd legit trade with others to plug my ratings into the web. My sockpuppet ratings would then be fed into others ratings (albeit at maybe 30%) but could enough sockpuppets skew the results enough to scam $5000 in selling a car?

If there are variable weightings for users, they would need to be kept in a range?

Although, we have trustless exchange right? So this might be moot. 

(I realise these details are down the line but as we're talking about it now...  ;D)
Logged
NXT: NXT-4CS7-S4N5-PTH5-A8R2Q

jl777

  • Hero Member
  • *****
  • Karma: +718/-123
  • Offline Offline
  • Posts: 6170
    • View Profile
Re: NXTorrent
« Reply #142 on: May 06, 2014, 09:01:44 am »

I have been following this but doesn't allowing people to choose their own weightings open an avenue to scammers?

I could create a number of sock puppets and trade with myself to highly rate a scammer account and set the wighting for the first 3-4 separations to 90% (which are all me) and the odd legit trade with others to plug my ratings into the web. My sockpuppet ratings would then be fed into others ratings (albeit at maybe 30%) but could enough sockpuppets skew the results enough to scam $5000 in selling a car?

If there are variable weightings for users, they would need to be kept in a range?

Although, we have trustless exchange right? So this might be moot. 

(I realise these details are down the line but as we're talking about it now...  ;D)
Sure, you could sockpuppet yourself to get a very high rating that you will see for yourself. Unless you can convince others to also use you and your sockpuppets as a reference, you will be the only one that has such a high rating.

Presumably all the sockpuppets would essentially be like an island without any connections to real people. Now, the danger is that somebody that does real transactions will try to boost their rating by sockpuppet trading and once they get others to give them decent ratings, the sockpuppets will also inherit this. This is why I feel an exponential dropoff is needed for each extra link. Or maybe just zero out any indirect ratings unless there is nothing else to go on.

As soon as people find out the sockpuppet nature, they will get negative ratings and things should correct pretty quickly. I think it is important that you dont buy anything expensive from a seller that you dont directly trust or someone you trusts directly trusts.

James
Logged
There are over 1000 people in SuperNET slack! http://slackinvite.supernet.org/ automatically sends you an invite

I am just a simple C programmer

jl777

  • Hero Member
  • *****
  • Karma: +718/-123
  • Offline Offline
  • Posts: 6170
    • View Profile
Re: NXTorrent
« Reply #143 on: May 06, 2014, 05:07:56 pm »

Make sure to set enforce POST to false in the .conf file
I havent had a chance to change to POST yet
Logged
There are over 1000 people in SuperNET slack! http://slackinvite.supernet.org/ automatically sends you an invite

I am just a simple C programmer

anon136

  • Hero Member
  • *****
  • Karma: +86/-19
  • Offline Offline
  • Posts: 1015
    • View Profile
Re: NXTorrent
« Reply #144 on: May 06, 2014, 07:23:00 pm »

from some website from a google search:

Quote
In the case of BitTorrent, they hold the hash value of the torrent which is then used to locate copies of the files among the peers. They may also hold file name data or links to trackers used by the torrent.

Quote
magnet:?xt=urn:btih:LMJXHHNOW33Z3YGXJLCTJZ23WK2D6VO4&dn=10.OClock.Live.S01E01.WS.PDTV.XviD-PVR&tr=udp://tracker.openbittorrent.com:80&tr=udp://tracker.publicbt.com:80&tr=udp://tracker.istole.it:80&tr=udp://open.demonii.com:80&tr=udp://tracker.coppersurfer.tk:80

so if we look at the actual magnet link its pretty obvious what parts are what. "magnet:?" tells us that this is a magnet link "xt=urn:btih:LMJXHHNOW33Z3YGXJLCTJZ23WK2D6VO4" gives us the hash "&" separates fields "tr=udp://tracker.publicbt.com:80" tells us a tracker. it should be pretty easy to add the ability to create a magnet link into the software its self.

technically i dont think we need trackers if you have the [DHT] [Local Peer Discovery] and [Peer Exchange] https://answers.yahoo.com/question/index?qid=20091105210508AA9NYyf just like all other torrent software i have seen. So really i think you would only need to provide a hash and a name for the file. I'll go test that now by modifying my own magnet link and report back here.
Logged

anon136

  • Hero Member
  • *****
  • Karma: +86/-19
  • Offline Offline
  • Posts: 1015
    • View Profile
Re: NXTorrent
« Reply #145 on: May 06, 2014, 07:26:32 pm »

success! no need for trackers. took all of the tracker information out of the magnet link and just sent it to utorrent like this

Quote
magnet:?xt=urn:btih:FWS6RP5UDBBV5QNNVSEK2I556CCY7BN2&dn=Adventure.Time.S06E04.HDTV.x264-W4F

and it worked perfectly. now downloading at 1.2mbp/s
Logged

jl777

  • Hero Member
  • *****
  • Karma: +718/-123
  • Offline Offline
  • Posts: 6170
    • View Profile
Re: NXTorrent
« Reply #146 on: May 06, 2014, 07:56:28 pm »

success! no need for trackers. took all of the tracker information out of the magnet link and just sent it to utorrent like this

Quote
magnet:?xt=urn:btih:FWS6RP5UDBBV5QNNVSEK2I556CCY7BN2&dn=Adventure.Time.S06E04.HDTV.x264-W4F

and it worked perfectly. now downloading at 1.2mbp/s
So you are saying the user can create file (or just paste into a dialog box), generate the hash and magic URL, broadcast to peers and that file will live forever bouncing around the peers?

The spec I saw for magnet links had dozens of variants, scared me. Maybe you can define one specific type of link (maybe the ?xt=), the algo (or even C code) for calculating the hash and a spec on how to find and broadcast to the peer networks.

I am battling Windows and if you can do that it would help me. Thanks

James
Logged
There are over 1000 people in SuperNET slack! http://slackinvite.supernet.org/ automatically sends you an invite

I am just a simple C programmer

anon136

  • Hero Member
  • *****
  • Karma: +86/-19
  • Offline Offline
  • Posts: 1015
    • View Profile
Re: NXTorrent
« Reply #147 on: May 06, 2014, 08:05:55 pm »

success! no need for trackers. took all of the tracker information out of the magnet link and just sent it to utorrent like this

Quote
magnet:?xt=urn:btih:FWS6RP5UDBBV5QNNVSEK2I556CCY7BN2&dn=Adventure.Time.S06E04.HDTV.x264-W4F

and it worked perfectly. now downloading at 1.2mbp/s
So you are saying the user can create file (or just paste into a dialog box), generate the hash and magic URL, broadcast to peers and that file will live forever bouncing around the peers?

The spec I saw for magnet links had dozens of variants, scared me. Maybe you can define one specific type of link (maybe the ?xt=), the algo (or even C code) for calculating the hash and a spec on how to find and broadcast to the peer networks.

I am battling Windows and if you can do that it would help me. Thanks

James

well we dont want it to live forever. only for the length of the auction. but essentially yes, i think. we do have this question of whether dht, peer exchange, and local peer discovery will work when there is only 1 seeder. ill have to test that. does anyone want to help me test that?
Logged

valarmg

  • Hero Member
  • *****
  • Karma: +178/-57
  • Offline Offline
  • Posts: 1766
    • View Profile
Re: NXTorrent
« Reply #148 on: May 30, 2014, 07:38:01 pm »

Didn't want to mess up with MGW testing in the other thread so thought I'd post this here. It's an attempt at a status document for NXTorrent. Probably some parts of it are wrong due to my lack of understanding of how NXTorrent is supposed to work, but hopefully it'll help with discussion and out of it will come a NXTorrent API document when testing is complete.

https://docs.google.com/document/d/1h9SSPLhoLRInGGeWg5Dsp3IxfogYwRqgJsl_aoCdmd8/edit?usp=sharing

So let me know stuff I have to change/add. I can add other collaborators if someone else wants to edit.
Logged
NXT-CSED-4PK5-AR4V-6UB5V

valarmg

  • Hero Member
  • *****
  • Karma: +178/-57
  • Offline Offline
  • Posts: 1766
    • View Profile
Re: NXTorrent
« Reply #149 on: May 31, 2014, 08:30:42 am »

Set the link to be read publicly. Sorry about that.
Logged
NXT-CSED-4PK5-AR4V-6UB5V

valarmg

  • Hero Member
  • *****
  • Karma: +178/-57
  • Offline Offline
  • Posts: 1766
    • View Profile
Re: NXTorrent
« Reply #150 on: June 04, 2014, 08:44:43 pm »

I read this thread a few more times and updated the document. I tried to include all open discussion points from this thread in the last section of the doc.
Logged
NXT-CSED-4PK5-AR4V-6UB5V

valarmg

  • Hero Member
  • *****
  • Karma: +178/-57
  • Offline Offline
  • Posts: 1766
    • View Profile
Re: NXTorrent
« Reply #151 on: June 20, 2014, 09:18:33 am »

Logged
NXT-CSED-4PK5-AR4V-6UB5V

PoofKnuckle

  • Hero Member
  • *****
  • Karma: +111/-7
  • Offline Offline
  • Posts: 849
  • Your Concern is Noted.
    • View Profile
    • NXT FreeMarket
Re: NXTorrent
« Reply #152 on: June 20, 2014, 01:32:08 pm »

Logged
NXT: NXT-WBVP-83YM-FRB3-9MQLY
BM-NBTVHaA41Ejh2G6krD9p5vM62vk84isM

PoofKnuckle

  • Hero Member
  • *****
  • Karma: +111/-7
  • Offline Offline
  • Posts: 849
  • Your Concern is Noted.
    • View Profile
    • NXT FreeMarket
Re: NXTorrent
« Reply #153 on: June 20, 2014, 01:50:50 pm »

Their planned release is in ... the Oct to Dec timeframe. I think we will pop up on them like a submarine.

Surprise!  ;D

Logged
NXT: NXT-WBVP-83YM-FRB3-9MQLY
BM-NBTVHaA41Ejh2G6krD9p5vM62vk84isM

anon136

  • Hero Member
  • *****
  • Karma: +86/-19
  • Offline Offline
  • Posts: 1015
    • View Profile
Logged

jl777

  • Hero Member
  • *****
  • Karma: +718/-123
  • Offline Offline
  • Posts: 6170
    • View Profile
Re: NXTorrent
« Reply #155 on: June 20, 2014, 02:55:06 pm »

@anon136

just to keep you posted on progress, just made release that solves nagging Chrome problem and so now NXTorrent is in GUI land. I still have a few things to implement, but would be much easier when there are enough listings to test out search logics.

That and refining the feedback, which also requires a real looking feedback data set, so I think as soon as we have a NXTorrent GUI that is nice, I will make a testnet version, you can rally people to make realistic listings, trades and feedbacks to create the data set to mimic what we expect.

Then I can much better implement the missing pieces

There might be some things I need to fix before we are ready for mass testing, but whatever they are, I dont expect it to take long.

James

P.S.I am totally ignoring the magnet stuff for now
Logged
There are over 1000 people in SuperNET slack! http://slackinvite.supernet.org/ automatically sends you an invite

I am just a simple C programmer

anon136

  • Hero Member
  • *****
  • Karma: +86/-19
  • Offline Offline
  • Posts: 1015
    • View Profile
Re: NXTorrent
« Reply #156 on: June 20, 2014, 02:58:16 pm »

@anon136

just to keep you posted on progress, just made release that solves nagging Chrome problem and so now NXTorrent is in GUI land. I still have a few things to implement, but would be much easier when there are enough listings to test out search logics.

That and refining the feedback, which also requires a real looking feedback data set, so I think as soon as we have a NXTorrent GUI that is nice, I will make a testnet version, you can rally people to make realistic listings, trades and feedbacks to create the data set to mimic what we expect.

Then I can much better implement the missing pieces

There might be some things I need to fix before we are ready for mass testing, but whatever they are, I dont expect it to take long.

James

P.S.I am totally ignoring the magnet stuff for now

How are you feeling about the web of trust? Do you think its going to work well in both preventing fraud? Do you think its going to scale well enough?
Logged

valarmg

  • Hero Member
  • *****
  • Karma: +178/-57
  • Offline Offline
  • Posts: 1766
    • View Profile
Re: NXTorrent
« Reply #157 on: June 20, 2014, 03:16:18 pm »

@anon136

I still have a few things to implement, but would be much easier when there are enough listings to test out search logics.


I made up a python script than can automatically add semi-realistic entries. I think I added about a 100 or so, but can easily add more.
Logged
NXT-CSED-4PK5-AR4V-6UB5V

jl777

  • Hero Member
  • *****
  • Karma: +718/-123
  • Offline Offline
  • Posts: 6170
    • View Profile
Re: NXTorrent
« Reply #158 on: June 20, 2014, 03:18:43 pm »

@anon136

I still have a few things to implement, but would be much easier when there are enough listings to test out search logics.


I made up a python script than can automatically add semi-realistic entries. I think I added about a 100 or so, but can easily add more.
On testnet?
otherwise too expensive
search is very tricky to get right. semi-realistic vs realistic would be big difference
Logged
There are over 1000 people in SuperNET slack! http://slackinvite.supernet.org/ automatically sends you an invite

I am just a simple C programmer

valarmg

  • Hero Member
  • *****
  • Karma: +178/-57
  • Offline Offline
  • Posts: 1766
    • View Profile
Re: NXTorrent
« Reply #159 on: June 20, 2014, 03:56:37 pm »

@anon136

I still have a few things to implement, but would be much easier when there are enough listings to test out search logics.


I made up a python script than can automatically add semi-realistic entries. I think I added about a 100 or so, but can easily add more.
On testnet?
otherwise too expensive
search is very tricky to get right. semi-realistic vs realistic would be big difference

Yeah, on testnet. How realistic do you need them? I made them all be part of a pseudo electronics shop, and added what I felt was enough randomization to make them useful for search. Here's 5 entries that I just added a moment ago.
Code: [Select]

        "seller":       "4975043625210111000",
        "listingid":    "4076652161",
        "title":        "Laptop5588",
        "price":        "3509.00000000",
        "status":       "inactive listing",
        "listedtime":   17984809,
        "expiration":   18071209,
        "duration":     "24.00000000",
        "category1":    "Microso$t",
        "category2":    "Electronics",
        "category3":    "ValarShop2",
        "tag1": "Best Price",
        "tag2": "",
        "tag3": "",
        "description":  "Extraordinary and Incredible"
})
        "seller":       "4975043625210111000",
        "listingid":    "93877182",
        "title":        "Console2656",
        "price":        "2319.00000000",
        "status":       "inactive listing",
        "listedtime":   17984848,
        "expiration":   18071248,
        "duration":     "24.00000000",
        "category1":    "Goggle",
        "category2":    "Electronics",
        "category3":    "ValarShop2",
        "tag1": "Great Reviews",
        "tag2": "",
        "tag3": "",
        "description":  "Incredible and Great Value"
})
        "seller":       "4975043625210111000",
        "listingid":    "1400589047",
        "title":        "Phone8190",
        "price":        "4866.00000000",
        "status":       "inactive listing",
        "listedtime":   17984853,
        "expiration":   18071253,
        "duration":     "24.00000000",
        "category1":    "Microso$t",
        "category2":    "Electronics",
        "category3":    "ValarShop2",
        "tag1": "Great Reviews",
        "tag2": "",
        "tag3": "",
        "description":  "Great Value and Incredible"
})
        "seller":       "4975043625210111000",
        "listingid":    "1727728383",
        "title":        "Laptop7778",
        "price":        "2702.00000000",
        "status":       "inactive listing",
        "listedtime":   17984858,
        "expiration":   18071258,
        "duration":     "24.00000000",
        "category1":    "Deli",
        "category2":    "Electronics",
        "category3":    "ValarShop2",
        "tag1": "Great Reviews",
        "tag2": "",
        "tag3": "",
        "description":  "Unique and Great Value"
})
        "seller":       "4975043625210111000",
        "listingid":    "2517827868",
        "title":        "Laptop4237",
        "price":        "1597.00000000",
        "status":       "inactive listing",
        "listedtime":   17984862,
        "expiration":   18071262,
        "duration":     "24.00000000",
        "category1":    "Deli",
        "category2":    "Electronics",
        "category3":    "ValarShop2",
        "tag1": "Great Reviews",
        "tag2": "",
        "tag3": "",
        "description":  "Extraordinary and Unique"
})
Basically: price is a number between 500 and 5000, title is the random object name+4digit number, tags and categories are randomly chosen from below and Description combines two descriptive phrases with an 'and'.

objects = ["Phone", "Tablet", "Laptop", "desktop", "Console", "Hard Drive"]
cat1_list = ["Microso$t", "Appel", "Goggle", "Samsong", "Deli"]
cat2 = "Electronics"
cat3 = "ValarShop2"
tag1_list = ["New Tech", "Best Price", "Great Reviews"]
tag2_list = ["Black", "Orange", "Red", "White", "Blue"]
description_words = ["Ingenious", "Extraordinary", "Great Value", "Luxurious", "Unique", "Epic", "Incredible"]
« Last Edit: June 20, 2014, 04:01:05 pm by valarmg »
Logged
NXT-CSED-4PK5-AR4V-6UB5V

^[GS]^

  • Jr. Member
  • **
  • Karma: +2/-1
  • Offline Offline
  • Posts: 51
  • NXTio
    • View Profile
    • NXTio
Re: NXTorrent
« Reply #160 on: June 21, 2014, 04:29:09 am »

I like this project!  ;D I can offer NXTio node to put online.
Logged
NXTio.org First automated NXT's forging platform! http://www.nxtio.org - OFFLINE!
NXT: NXT-9G2H-XNCD-MH92-AU3D7 | BTC: 1BMNBnuthKn9hBKXWXbvVNYTJ8NecdaAdc | DOGE: DSC2Ub8q2Ta8kKUxb2sVwkg438H5Xu3RNW

allwelder

  • Hero Member
  • *****
  • Karma: +196/-13
  • Offline Offline
  • Posts: 1867
  • NxtChina.org
    • View Profile
    • NxtChina.org
Re: NXTorrent
« Reply #161 on: June 30, 2014, 01:07:15 am »

Logged
NxtChina |Weibo |Twitter Donation welcomed:NXT-APL9-66GU-K8LY-B3JJJ

Daedelus

  • Hero Member
  • *****
  • Karma: +230/-12
  • Offline Offline
  • Posts: 3280
    • View Profile
Re: NXTorrent
« Reply #162 on: December 18, 2014, 10:16:20 am »

Did NxtTorrent become Nxt Free Market?

Edit: Wait, Free Market isn't torrent based so I guess not.
Logged
NXT: NXT-4CS7-S4N5-PTH5-A8R2Q

jl777

  • Hero Member
  • *****
  • Karma: +718/-123
  • Offline Offline
  • Posts: 6170
    • View Profile
Re: NXTorrent
« Reply #163 on: December 18, 2014, 10:24:27 am »

Did NxtTorrent become Nxt Free Market?

Edit: Wait, Free Market isn't torrent based so I guess not.
NXTorrent to NXT Free Market is like vodka to chocolate

The FreeMarket is what NXTorrent would have become, except without the torrent for page storage
Logged
There are over 1000 people in SuperNET slack! http://slackinvite.supernet.org/ automatically sends you an invite

I am just a simple C programmer

Daedelus

  • Hero Member
  • *****
  • Karma: +230/-12
  • Offline Offline
  • Posts: 3280
    • View Profile
Re: NXTorrent
« Reply #164 on: April 21, 2015, 09:20:34 pm »

Anyone who was interested in torrents, we are crowd funding a bounty for it to be implemented in a plug-in in NRS version 1.5.

See here for more details: https://nxtforum.org/job-board/(wanted)-nxt-torrent-plugin-dev

Logged
NXT: NXT-4CS7-S4N5-PTH5-A8R2Q
Pages: 1 2 3 ... 9 [All]
 

elective-stereophonic
elective-stereophonic
assembly
assembly