# url =
field:gemini://gemini.ctrl-c.club/~nristen/twtxt.txt
And I wonder if @nristen is aware that the order of those fields matter. 🤔
# url =
field:gemini://gemini.ctrl-c.club/~nristen/twtxt.txt
And I wonder if @nristen is aware that the order of those fields matter. 🤔
# url =
field:gemini://gemini.ctrl-c.club/~nristen/twtxt.txt
And I wonder if @nristen is aware that the order of those fields matter. 🤔
# url =
field:gemini://gemini.ctrl-c.club/~nristen/twtxt.txt
And I wonder if @nristen is aware that the order of those fields matter. 🤔
> the right way to solve this is to use public/private key(s) where you _actually_ have a public key fingerprint as your feed's unique identity that never changes
Okay, this is interesting. How would this work in practice? 🤔
> the right way to solve this is to use public/private key(s) where you _actually_ have a public key fingerprint as your feed's unique identity that never changes
Okay, this is interesting. How would this work in practice? 🤔
> the right way to solve this is to use public/private key(s) where you _actually_ have a public key fingerprint as your feed's unique identity that never changes
Okay, this is interesting. How would this work in practice? 🤔
> the right way to solve this is to use public/private key(s) where you _actually_ have a public key fingerprint as your feed's unique identity that never changes
Okay, this is interesting. How would this work in practice? 🤔
Btw, @prologic, in my experience, people editing their twts is a much more common thing than people changing the URL of their feed. 😅 It breaks threading all the time.
Btw, @prologic, in my experience, people editing their twts is a much more common thing than people changing the URL of their feed. 😅 It breaks threading all the time.
Btw, @prologic, in my experience, people editing their twts is a much more common thing than people changing the URL of their feed. 😅 It breaks threading all the time.
Btw, @prologic, in my experience, people editing their twts is a much more common thing than people changing the URL of their feed. 😅 It breaks threading all the time.
> If you post quality content and you've developed a loyal audience, you should be able to ask your most passionate followers to support you with a premium subscription.
You already can ask your most passionate followers to support you: You can ask for donations.
I regularly donate to people if their content is great and if they actually ask for donations (many just don’t). The platforms for that already exist, I think. 🤔
I’m not interested in the slightest in stuff that has a paywall. “Subscribe for more content!” No, why, go away. Pages that do this immediately feel shady and not trust-worthy. 🤔
> If you post quality content and you've developed a loyal audience, you should be able to ask your most passionate followers to support you with a premium subscription.
You already can ask your most passionate followers to support you: You can ask for donations.
I regularly donate to people if their content is great and if they actually ask for donations (many just don’t). The platforms for that already exist, I think. 🤔
I’m not interested in the slightest in stuff that has a paywall. “Subscribe for more content!” No, why, go away. Pages that do this immediately feel shady and not trust-worthy. 🤔
> If you post quality content and you've developed a loyal audience, you should be able to ask your most passionate followers to support you with a premium subscription.
You already can ask your most passionate followers to support you: You can ask for donations.
I regularly donate to people if their content is great and if they actually ask for donations (many just don’t). The platforms for that already exist, I think. 🤔
I’m not interested in the slightest in stuff that has a paywall. “Subscribe for more content!” No, why, go away. Pages that do this immediately feel shady and not trust-worthy. 🤔
> If you post quality content and you've developed a loyal audience, you should be able to ask your most passionate followers to support you with a premium subscription.
You already can ask your most passionate followers to support you: You can ask for donations.
I regularly donate to people if their content is great and if they actually ask for donations (many just don’t). The platforms for that already exist, I think. 🤔
I’m not interested in the slightest in stuff that has a paywall. “Subscribe for more content!” No, why, go away. Pages that do this immediately feel shady and not trust-worthy. 🤔
> Yes, I'm all for dedicated message IDs. That would be a whole new format then. *But I would be fine with it.*
Honestly, me too. When Yarn originally showed up, I was concerned that it would extend twtxt in dramatically incompatible ways or, worse, change it in a way so that you needed *server software*. 😅 The latter would have ruined it for me. A *major* reason why I still use twtxt/Yarn is that it’s still just a file you put somewhere. If there was the need to *run a daemon*, I’d give up and just use some ActivityPub thingy instead.
What I did not expect, however, was that the original twtxt itself would just … die. There has been no development in the original software anymore and virtually all the original feeds are dead. Some feeds are left, but they’re just used as an alternative to Atom/RSS for some blogs. I don’t know what happened behind the scenes that killed off twtxt (I have a few guesses, though), but the sad truth is that it’s gone.
So, yeah, maybe this gives us the freedom now to *break* with the original twtxt spec (if needed) and come up with a format that *fixes* the issues we’re seeing.
(Oh god. Are we re-inventing Usenet then? Again? 😂)
> Yes, I'm all for dedicated message IDs. That would be a whole new format then. *But I would be fine with it.*
Honestly, me too. When Yarn originally showed up, I was concerned that it would extend twtxt in dramatically incompatible ways or, worse, change it in a way so that you needed *server software*. 😅 The latter would have ruined it for me. A *major* reason why I still use twtxt/Yarn is that it’s still just a file you put somewhere. If there was the need to *run a daemon*, I’d give up and just use some ActivityPub thingy instead.
What I did not expect, however, was that the original twtxt itself would just … die. There has been no development in the original software anymore and virtually all the original feeds are dead. Some feeds are left, but they’re just used as an alternative to Atom/RSS for some blogs. I don’t know what happened behind the scenes that killed off twtxt (I have a few guesses, though), but the sad truth is that it’s gone.
So, yeah, maybe this gives us the freedom now to *break* with the original twtxt spec (if needed) and come up with a format that *fixes* the issues we’re seeing.
(Oh god. Are we re-inventing Usenet then? Again? 😂)
> Yes, I'm all for dedicated message IDs. That would be a whole new format then. *But I would be fine with it.*
Honestly, me too. When Yarn originally showed up, I was concerned that it would extend twtxt in dramatically incompatible ways or, worse, change it in a way so that you needed *server software*. 😅 The latter would have ruined it for me. A *major* reason why I still use twtxt/Yarn is that it’s still just a file you put somewhere. If there was the need to *run a daemon*, I’d give up and just use some ActivityPub thingy instead.
What I did not expect, however, was that the original twtxt itself would just … die. There has been no development in the original software anymore and virtually all the original feeds are dead. Some feeds are left, but they’re just used as an alternative to Atom/RSS for some blogs. I don’t know what happened behind the scenes that killed off twtxt (I have a few guesses, though), but the sad truth is that it’s gone.
So, yeah, maybe this gives us the freedom now to *break* with the original twtxt spec (if needed) and come up with a format that *fixes* the issues we’re seeing.
(Oh god. Are we re-inventing Usenet then? Again? 😂)
> Yes, I'm all for dedicated message IDs. That would be a whole new format then. *But I would be fine with it.*
Honestly, me too. When Yarn originally showed up, I was concerned that it would extend twtxt in dramatically incompatible ways or, worse, change it in a way so that you needed *server software*. 😅 The latter would have ruined it for me. A *major* reason why I still use twtxt/Yarn is that it’s still just a file you put somewhere. If there was the need to *run a daemon*, I’d give up and just use some ActivityPub thingy instead.
What I did not expect, however, was that the original twtxt itself would just … die. There has been no development in the original software anymore and virtually all the original feeds are dead. Some feeds are left, but they’re just used as an alternative to Atom/RSS for some blogs. I don’t know what happened behind the scenes that killed off twtxt (I have a few guesses, though), but the sad truth is that it’s gone.
So, yeah, maybe this gives us the freedom now to *break* with the original twtxt spec (if needed) and come up with a format that *fixes* the issues we’re seeing.
(Oh god. Are we re-inventing Usenet then? Again? 😂)
But the great thing about the current system is that nobody can spoof message IDs. 🤔 When you think about it, message IDs in e-mails only work because (almost) everybody plays fair. Nothing stops me from using the same
Message-ID
header in *each and every mail*, that would break e-mail threading all the time.In Yarn, twt hashes are *derived* from twt content and feed metadata. That is pretty elegant and I’d hate see us lose that property.
If we wanted to allow editing twts, we could do something like this:
2024-09-05T13:37:40+00:00 (~mp6ox4a) Hello world!
Here,
mp6ox4a
would be a “partial hash”: To get the actual hash of this twt, you’d concatenate the feed’s URL and mp6ox4a
and get, say, hlnw5ha
. (Pretty similar to the current system.) When people reply to this twt, they would have to do this:2024-09-05T14:57:14+00:00 (~bpt74ka) (#hlnw5ha) Yes, hello!
That second twt has a partial hash of
bpt74ka
and is a reply to the full hash hlnw5ha
. The author of the “Hello world!” twt could then edit their twt and change it to 2024-09-05T13:37:40+00:00 (~mp6ox4a) Hello friends!
or whatever. Threading wouldn’t break.Would this be worth it? It’s certainly not backwards-compatible. 😂
But the great thing about the current system is that nobody can spoof message IDs. 🤔 When you think about it, message IDs in e-mails only work because (almost) everybody plays fair. Nothing stops me from using the same
Message-ID
header in *each and every mail*, that would break e-mail threading all the time.In Yarn, twt hashes are *derived* from twt content and feed metadata. That is pretty elegant and I’d hate see us lose that property.
If we wanted to allow editing twts, we could do something like this:
2024-09-05T13:37:40+00:00 (~mp6ox4a) Hello world!
Here,
mp6ox4a
would be a “partial hash”: To get the actual hash of this twt, you’d concatenate the feed’s URL and mp6ox4a
and get, say, hlnw5ha
. (Pretty similar to the current system.) When people reply to this twt, they would have to do this:2024-09-05T14:57:14+00:00 (~bpt74ka) (#hlnw5ha) Yes, hello!
That second twt has a partial hash of
bpt74ka
and is a reply to the full hash hlnw5ha
. The author of the “Hello world!” twt could then edit their twt and change it to 2024-09-05T13:37:40+00:00 (~mp6ox4a) Hello friends!
or whatever. Threading wouldn’t break.Would this be worth it? It’s certainly not backwards-compatible. 😂
But the great thing about the current system is that nobody can spoof message IDs. 🤔 When you think about it, message IDs in e-mails only work because (almost) everybody plays fair. Nothing stops me from using the same
Message-ID
header in *each and every mail*, that would break e-mail threading all the time.In Yarn, twt hashes are *derived* from twt content and feed metadata. That is pretty elegant and I’d hate see us lose that property.
If we wanted to allow editing twts, we could do something like this:
2024-09-05T13:37:40+00:00 (~mp6ox4a) Hello world!
Here,
mp6ox4a
would be a “partial hash”: To get the actual hash of this twt, you’d concatenate the feed’s URL and mp6ox4a
and get, say, hlnw5ha
. (Pretty similar to the current system.) When people reply to this twt, they would have to do this:2024-09-05T14:57:14+00:00 (~bpt74ka) (#hlnw5ha) Yes, hello!
That second twt has a partial hash of
bpt74ka
and is a reply to the full hash hlnw5ha
. The author of the “Hello world!” twt could then edit their twt and change it to 2024-09-05T13:37:40+00:00 (~mp6ox4a) Hello friends!
or whatever. Threading wouldn’t break.Would this be worth it? It’s certainly not backwards-compatible. 😂
But the great thing about the current system is that nobody can spoof message IDs. 🤔 When you think about it, message IDs in e-mails only work because (almost) everybody plays fair. Nothing stops me from using the same
Message-ID
header in *each and every mail*, that would break e-mail threading all the time.In Yarn, twt hashes are *derived* from twt content and feed metadata. That is pretty elegant and I’d hate see us lose that property.
If we wanted to allow editing twts, we could do something like this:
2024-09-05T13:37:40+00:00 (~mp6ox4a) Hello world!
Here,
mp6ox4a
would be a “partial hash”: To get the actual hash of this twt, you’d concatenate the feed’s URL and mp6ox4a
and get, say, hlnw5ha
. (Pretty similar to the current system.) When people reply to this twt, they would have to do this:2024-09-05T14:57:14+00:00\t(~bpt74ka) (#hlnw5ha) Yes, hello!
That second twt has a partial hash of
bpt74ka
and is a reply to the full hash hlnw5ha
. The author of the “Hello world!” twt could then edit their twt and change it to 2024-09-05T13:37:40+00:00 (~mp6ox4a) Hello friends!
or whatever. Threading wouldn’t break.Would this be worth it? It’s certainly not backwards-compatible. 😂
$ du -sh ~/Mail/twt
244M /home/user/Mail/twt
But:
$ du -sh --apparent-size ~/Mail/twt
33M /home/user/Mail/twt
There are about 60k twts in there.
Regarding one-way junk: True. Looks like I mostly unfollowed those, I don’t really have that in my inbox. 🤔
These are the Top 10, btw:
$ awk '/^From: / { user\n++ } END { for (u in user) { print user\n, u } }' * | sort -k1rn | head -n 10
24020 "prologic"
5269 "lyse"
3928 "movq"
2285 "adi"
1985 "abucci"
1713 "mckinley"
1415 "off_grid_living"
1352 "darch"
1280 "eaplmx"
956 "bender"*
$ du -sh ~/Mail/twt
244M /home/user/Mail/twt
But:
$ du -sh --apparent-size ~/Mail/twt
33M /home/user/Mail/twt
There are about 60k twts in there.
Regarding one-way junk: True. Looks like I mostly unfollowed those, I don’t really have that in my inbox. 🤔
These are the Top 10, btw:
$ awk '/^From: / { user[$2]++ } END { for (u in user) { print user[u], u } }' * | sort -k1rn | head -n 10
24020 "prologic"
5269 "lyse"
3928 "movq"
2285 "adi"
1985 "abucci"
1713 "mckinley"
1415 "off_grid_living"
1352 "darch"
1280 "eaplmx"
956 "bender"*
$ du -sh ~/Mail/twt
244M /home/user/Mail/twt
But:
$ du -sh --apparent-size ~/Mail/twt
33M /home/user/Mail/twt
There are about 60k twts in there.
Regarding one-way junk: True. Looks like I mostly unfollowed those, I don’t really have that in my inbox. 🤔
These are the Top 10, btw:
$ awk '/^From: / { user[$2]++ } END { for (u in user) { print user[u], u } }' * | sort -k1rn | head -n 10
24020 "prologic"
5269 "lyse"
3928 "movq"
2285 "adi"
1985 "abucci"
1713 "mckinley"
1415 "off_grid_living"
1352 "darch"
1280 "eaplmx"
956 "bender"*
$ du -sh ~/Mail/twt
244M /home/user/Mail/twt
But:
$ du -sh --apparent-size ~/Mail/twt
33M /home/user/Mail/twt
There are about 60k twts in there.
Regarding one-way junk: True. Looks like I mostly unfollowed those, I don’t really have that in my inbox. 🤔
These are the Top 10, btw:
$ awk '/^From: / { user[$2]++ } END { for (u in user) { print user[u], u } }' * | sort -k1rn | head -n 10
24020 "prologic"
5269 "lyse"
3928 "movq"
2285 "adi"
1985 "abucci"
1713 "mckinley"
1415 "off_grid_living"
1352 "darch"
1280 "eaplmx"
956 "bender"*
$ du -sh ~/Mail/twt
244M /home/user/Mail/twt
But:
$ du -sh --apparent-size ~/Mail/twt
33M /home/user/Mail/twt
There are about 60k twts in there.
Regarding one-way junk: True. Looks like I mostly unfollowed those, I don’t really have that in my inbox. 🤔
These are the Top 10, btw:
$ awk '/^From: / { user[$2]++ } END { for (u in user) { print user[u], u } }' * | sort -k1rn | head -n 10
24020 "prologic"
5269 "lyse"
3928 "movq"
2285 "adi"
1985 "abucci"
1713 "mckinley"
1415 "off_grid_living"
1352 "darch"
1280 "eaplmx"
956 "bender"*
And I just realized: Mutt’s layout helps a lot. Skimming over new twts is really easy and it’s not a big loss if there are a couple of shitposts™ in my “timeline”. This is very different from Mastodon (both the default web UI and all clients I’ve tried), where the timeline is always *huge*. Posts take up a lot of space on screen. Makes me think twice if I want to follow someone or not. 😅
(I mostly only follow Hashtags on Mastodon anyway. It’s more interesting that way.)
And I just realized: Mutt’s layout helps a lot. Skimming over new twts is really easy and it’s not a big loss if there are a couple of shitposts™ in my “timeline”. This is very different from Mastodon (both the default web UI and all clients I’ve tried), where the timeline is always *huge*. Posts take up a lot of space on screen. Makes me think twice if I want to follow someone or not. 😅
(I mostly only follow Hashtags on Mastodon anyway. It’s more interesting that way.)
And I just realized: Mutt’s layout helps a lot. Skimming over new twts is really easy and it’s not a big loss if there are a couple of shitposts™ in my “timeline”. This is very different from Mastodon (both the default web UI and all clients I’ve tried), where the timeline is always *huge*. Posts take up a lot of space on screen. Makes me think twice if I want to follow someone or not. 😅
(I mostly only follow Hashtags on Mastodon anyway. It’s more interesting that way.)
And I just realized: Mutt’s layout helps a lot. Skimming over new twts is really easy and it’s not a big loss if there are a couple of shitposts™ in my “timeline”. This is very different from Mastodon (both the default web UI and all clients I’ve tried), where the timeline is always *huge*. Posts take up a lot of space on screen. Makes me think twice if I want to follow someone or not. 😅
(I mostly only follow Hashtags on Mastodon anyway. It’s more interesting that way.)
st3wsda
and it started like this:(#yqke7sq) I've been sketching out some …
When fetching the feed *now*, the twt starts like this and the current twt gets the hash
6mdqxrq
:(#yqke7sq) I've been sketching out some …
This can’t be avoided, really. Publishing twts and then editing them is like doing a
git push --force
after rewriting the commit history. Chaos will ensue. 😅
st3wsda
and it started like this:(#yqke7sq) I've been sketching out some …
When fetching the feed *now*, the twt starts like this and the current twt gets the hash
6mdqxrq
:(#yqke7sq) I've been sketching out some …
This can’t be avoided, really. Publishing twts and then editing them is like doing a
git push --force
after rewriting the commit history. Chaos will ensue. 😅
st3wsda
and it started like this:(#yqke7sq) I've been sketching out some …
When fetching the feed *now*, the twt starts like this and the current twt gets the hash
6mdqxrq
:(#yqke7sq) I've been sketching out some …
This can’t be avoided, really. Publishing twts and then editing them is like doing a
git push --force
after rewriting the commit history. Chaos will ensue. 😅
st3wsda
and it started like this:(#yqke7sq) I've been sketching out some …
When fetching the feed *now*, the twt starts like this and the current twt gets the hash
6mdqxrq
:(#yqke7sq) I've been sketching out some …
This can’t be avoided, really. Publishing twts and then editing them is like doing a
git push --force
after rewriting the commit history. Chaos will ensue. 😅
# follow_notify = gemini://foo/bar
to your feed’s metadata, so that clients who follow you can ping that URL every now and then? How would you even notice that, do you regularly read your gemini logs? 🤔
# follow_notify = gemini://foo/bar
to your feed’s metadata, so that clients who follow you can ping that URL every now and then? How would you even notice that, do you regularly read your gemini logs? 🤔
# follow_notify = gemini://foo/bar
to your feed’s metadata, so that clients who follow you can ping that URL every now and then? How would you even notice that, do you regularly read your gemini logs? 🤔
# follow_notify = gemini://foo/bar
to your feed’s metadata, so that clients who follow you can ping that URL every now and then? How would you even notice that, do you regularly read your gemini logs? 🤔
https://devblogs.microsoft.com/oldnewthing/20211129-00/?p=105979
Confession: I completely forgot that Alt+Tab existed in text mode. 🤦 It’s not even a hidden feature, it’s advertised right when you start a fullscreen dos box. Well, Alt+Tab wasn’t a thing I did regularly anyway – it was usually Ctrl+Esc to open the window list (which also worked in OS/2). 🤔 I *think* I only started using Alt+Tab when Windows 95 removed Ctrl+Esc (because it had no use anymore, it essentially got replaced by the tasklist).
https://devblogs.microsoft.com/oldnewthing/20211129-00/?p=105979
Confession: I completely forgot that Alt+Tab existed in text mode. 🤦 It’s not even a hidden feature, it’s advertised right when you start a fullscreen dos box. Well, Alt+Tab wasn’t a thing I did regularly anyway – it was usually Ctrl+Esc to open the window list (which also worked in OS/2). 🤔 I *think* I only started using Alt+Tab when Windows 95 removed Ctrl+Esc (because it had no use anymore, it essentially got replaced by the tasklist).
https://devblogs.microsoft.com/oldnewthing/20211129-00/?p=105979
Confession: I completely forgot that Alt+Tab existed in text mode. 🤦 It’s not even a hidden feature, it’s advertised right when you start a fullscreen dos box. Well, Alt+Tab wasn’t a thing I did regularly anyway – it was usually Ctrl+Esc to open the window list (which also worked in OS/2). 🤔 I *think* I only started using Alt+Tab when Windows 95 removed Ctrl+Esc (because it had no use anymore, it essentially got replaced by the tasklist).
https://devblogs.microsoft.com/oldnewthing/20211129-00/?p=105979
Confession: I completely forgot that Alt+Tab existed in text mode. 🤦 It’s not even a hidden feature, it’s advertised right when you start a fullscreen dos box. Well, Alt+Tab wasn’t a thing I did regularly anyway – it was usually Ctrl+Esc to open the window list (which also worked in OS/2). 🤔 I *think* I only started using Alt+Tab when Windows 95 removed Ctrl+Esc (because it had no use anymore, it essentially got replaced by the tasklist).
https://devblogs.microsoft.com/oldnewthing/20240903-00/?p=110205
All this Virtual Machine Manager stuff went completely over my head back then … 🤯
https://devblogs.microsoft.com/oldnewthing/20240903-00/?p=110205
All this Virtual Machine Manager stuff went completely over my head back then … 🤯
https://devblogs.microsoft.com/oldnewthing/20240903-00/?p=110205
All this Virtual Machine Manager stuff went completely over my head back then … 🤯
https://devblogs.microsoft.com/oldnewthing/20240903-00/?p=110205
All this Virtual Machine Manager stuff went completely over my head back then … 🤯
> But maybe with the climate getting hotter and hotter, they migrate north to me, too.
And a lot of other nasty stuff with it, bugs, spiders, you name it. Didn’t we migrate all this way up north to be free from such Ungeziefer? 😅
> But maybe with the climate getting hotter and hotter, they migrate north to me, too.
And a lot of other nasty stuff with it, bugs, spiders, you name it. Didn’t we migrate all this way up north to be free from such Ungeziefer? 😅
> But maybe with the climate getting hotter and hotter, they migrate north to me, too.
And a lot of other nasty stuff with it, bugs, spiders, you name it. Didn’t we migrate all this way up north to be free from such Ungeziefer? 😅
> But maybe with the climate getting hotter and hotter, they migrate north to me, too.
And a lot of other nasty stuff with it, bugs, spiders, you name it. Didn’t we migrate all this way up north to be free from such Ungeziefer? 😅
https://movq.de/v/f79b94485a/s.png
This was really useful. 🤔 Chromium also did it for a while and then they removed it due to privacy concerns. Now none of the popular browsers do it anymore. 🫤
- https://bugzilla.mozilla.org/show_bug.cgi?id=665531
- https://chromium.googlesource.com/chromium/src/+/a9b4fb70b4318b220deee0da7b1693d16b8ed071
- https://bugs.webkit.org/show_bug.cgi?id=260778
https://movq.de/v/f79b94485a/s.png
This was really useful. 🤔 Chromium also did it for a while and then they removed it due to privacy concerns. Now none of the popular browsers do it anymore. 🫤
- https://bugzilla.mozilla.org/show_bug.cgi?id=665531
- https://chromium.googlesource.com/chromium/src/+/a9b4fb70b4318b220deee0da7b1693d16b8ed071
- https://bugs.webkit.org/show_bug.cgi?id=260778
https://movq.de/v/f79b94485a/s.png
This was really useful. 🤔 Chromium also did it for a while and then they removed it due to privacy concerns. Now none of the popular browsers do it anymore. 🫤
- https://bugzilla.mozilla.org/show_bug.cgi?id=665531
- https://chromium.googlesource.com/chromium/src/+/a9b4fb70b4318b220deee0da7b1693d16b8ed071
- https://bugs.webkit.org/show_bug.cgi?id=260778
https://movq.de/v/f79b94485a/s.png
This was really useful. 🤔 Chromium also did it for a while and then they removed it due to privacy concerns. Now none of the popular browsers do it anymore. 🫤
- https://bugzilla.mozilla.org/show_bug.cgi?id=665531
- https://chromium.googlesource.com/chromium/src/+/a9b4fb70b4318b220deee0da7b1693d16b8ed071
- https://bugs.webkit.org/show_bug.cgi?id=260778