Would it be possible to implement ”Top trends” as “Trending” instead? I.e., based on relative rather than absolute numbers, so that the tags that have seen the largest increase in ocurrance during the past, say 12 or 24 hours, will appear on the trending list.
@bahque
First derivative, yes. Second derivative (acceleration?) never occured to me…
We can even make the algorithm selectable so each user may decide whats fits better for him.
We can even make the algorithm selectable so each user may decide whats fits better for him.personally I want to have in client 1 configurable list of top trends (with possibility to delete/forbid some hashtags) and 1 one list of favorite hashtags.
Current things about implementation of this idea:
1. Twister stores user's messages as separate pieces of the torrent file, and we could use the same idea for additional "data" torrent (that is, 1 files = 1 piece), but it's better to split large file into several pieces to speed up loading from several peers. Usually, piece size of about 256Kb is used in large torrent, so we can use this value as well (note that piece size limits maximal amount of data that may be stored in the torrent). So, each reference to a file in "data" torrent should contain file size and starting piece index in the torrent (amount of pieces to load is easily derived from known file size). Each piece of data torrent should contain data block followed by PGP signature to be sure it's valid content (the same way is used currently in Twister's messages torrent).
2. Main torrent should support new type of messages (in addition to posts, RTs, and DMs): message (description) + file information. Additional type allows to easily filter messages and display all "file" messages separately (like Twitter does in photos/videos tab). This type of messages should include following info:
- description message (standard 140 chars limit)
- start piece number in data torrent
- file size
- original file name (optionally)
- mime type (optionally)
3. Full data torrent may be quite big in size (e.g. if it contains videos), so this torrents shouldn't be joined into swarm to minimize total size of data stored on user's nodes, and followers are the only users who distribute the torrent. Most likely there should be a way to set maximal file size to load/share automatically, and bigger files can be loaded by direct request only (e.g. by click on "load" button in client's interface). In additional, we can use some time-to-live technique and remove loaded files (pieces of the torrent file) if they are not requested for certain time (but continue to store on author's Twister instance(s)), or to don't load all of very old files (older than time-to-live) by a new follower. There is a chance that old files will be "forgotten" if data torrent of author's Twister instance is damaged, but maybe it's a reasonable compromise between functionality and required storage. Note that Miguel's opinion is "The problem is availability: the data might still be there, but if the author is offline then for all practical effects the data is lost. That's the reason i don't believe in torrents requesting data only by-demand, requesting earlier we increase data availability for the whole network. Too low availability will kill this cool concept imho.", so any feedback and ideas are welcome.
4. Note that there is a way to send files in direct messages. The idea is to encrypt file using a symmetric algorithm with random key and include this key in the direct message.
Any response will be greatly appreciated.
-------
Best regards,
Denis Ryabov (twister: @denis)
--
You received this message because you are subscribed to the Google Groups "twister-dev" group.
To unsubscribe from this group and stop receiving emails from it, send an email to twister-dev...@googlegroups.com.
To post to this group, send email to twist...@googlegroups.com.
For more options, visit https://groups.google.com/d/optout.
My 2 cents: Torrents are not metadata secure. Distribution of the torrent creates direct connections between the author and the readers of that post. I'm not saying that torrents are a bad idea, but they dial down privacy significantly. They should definitely be optional.
My proposal is a simple concept: if you follow some user, then you join his "media" torrent and helps sharing the files. If you don't follow, you don't host/share any of his data.
So please feel free to contribute a patch of this per-item storage idea when we have the basic support working ;-)
--
You received this message because you are subscribed to the Google Groups "twister-dev" group.
To unsubscribe from this group and stop receiving emails from it, send an email to twister-dev...@googlegroups.com.
To post to this group, send email to twist...@googlegroups.com.
For more options, visit https://groups.google.com/d/optout.
that's right, that's a really issue..
Erkan Yüksel
--
You received this message because you are subscribed to the Google Groups "twister-dev" group.
To unsubscribe from this group and stop receiving emails from it, send an email to twister-dev...@googlegroups.com.
To post to this group, send email to twist...@googlegroups.com.
For more options, visit https://groups.google.com/d/optout.
>>> email to twist...@googlegroups.com.
>>> To post to this group, send email to twist...@googlegroups.com.
>>> For more options, visit https://groups.google.com/d/optout.
>
> --
> You received this message because you are subscribed to the Google Groups "twister-dev" group.
> To unsubscribe from this group and stop receiving emails from it, send an email to twist...@googlegroups.com.
To unsubscribe from this group and stop receiving emails from it, send an email to twister-dev...@googlegroups.com.
To view this discussion on the web visit https://groups.google.com/d/msgid/twister-dev/2a94699c-15e9-4d21-ae41-e240f13baddf%40googlegroups.com.
To unsubscribe from this group and stop receiving emails from it, send an email to twist...@googlegroups.com.
Indeed, would you at least have a few minutes to share with me to give me the entry points in your code, and a few explainations on how the hacked bitcoin lib works (What was changed), and same for the bittorrent lib,
so that I can fully understand the mecanism you implemented with wallets. I still ignore how it works for account creation, and what kind of bitcoin transactions are generated and when.I would also need to know what kind of objects are stored in the DHT, and with all this, I should be able to understand more easily your code and add what needs to be added to implement this new functionnality.
Entering your code with ZERO informations regarding the basic mecanism twisterd implements is very hard, but once ytou know what is done, it's way much easier.