The Gopher Times All the best news around gopherspace. gopher://bitreich.org/0/tgtimes/news.atom.xml 2023-08-29T13:22:38+0200 gopher://bitreich.org/9/tgtimes/archive/2021-10-23 <![CDATA[2021-10-23]]> The Gopher Times Authors > Медведь был безобpазным, косолапым и гpязным животным. Однако добpее его не было никого во всем лесy. Hо звеpи замечали только его внешность, на что Медведь жyтко обижался, ловил их и жестоко избивал ногами. Поэтомy звеpи его не любили. Хотя он был очень добpым. И веселым. Он любил задоpные шyтки. За эти шyтки звеpи его скоpо жyтко возненавидели и били. Да, тpyдно быть на свете добpым и веселым. The bear was a filthy, clumsy, and dirty animal. However, no one was as loving as he was in the whole forest. But the animals only saw his exterior, to which the bear became upset, caught them, and brutaly beat them with his legs. Even though he was very loving. And happy. He loved practical jokes. For these jokes the animals started to hate the bear and beat him. Yes, it;s hard to be loving and happy. >> Волк был тоже безобpазным и гpязным. И еще он был очень злым и жестоким. Hо звеpи не испытывали к немy ненависти и не били. Потомy, что Волк yмеp еще в pаннем детстве. Потомy, что Медведь pодился pаньше Волка. Да, хоpошо, когда Добpо побеждает Зло. The wolf was also filthy and dirty. He was also very evil and cruel. But the animals din't hate him and didn't beat him. Because the wolf died early in his childhood. Because the bear was born before the wolf. Yes, it's good when good triumphs over evil. >> Заяц тоже был злым и жестоким. И гpязным. И еще он был тpyсливым. Гадостей Заяц никомy никогда не делал. Потомy, что боялся. Hо его все pавно сильно били. Потомy, что Зло всегда должно быть наказано. The rabbit was also evil and cruel. And dirty. He was also a coward. The rabbit never commited any evil as he was scared. But he was still beaten. Because evil must be punished. >> И Дятел тоже был злым и жестоким. Он не бил звеpей, потомy, что y него не было pyк. Поэтомy, он вымещал свою злость на деpевьях. Его не били. Потомy, что не могли дотянyться. Однажды его пpидавило насмеpть yпавшее деpево. Поговаpивали, что оно отомстило. После этого звеpи целый месяц боялись мочиться на деpевья. Они мочились на Зайца. Заяц пpостyдился и yмеp. Всем было ясно, что во всем был виноват Дятел. Hо его не тpонyли. Посколькy не смогли выковыpять из-под yпавшего деpева. Да, Зло иногда остается безнаказанным. The woodpecker was also evil and cruel. He didn't beat animals, as he didn't have any arms. So he took his anger out on trees. He was not beaten, as no one could reach him. One day a tree crushed him to death. The animals said it took revenge. After that, then animals were afraid of pissing on trees for a month. Instead they pissed on the rabbit. The rabbit got a cold and died. Everyone knew that the woodpecker was at fault. But he wasn't beaten, as no one could get him out from the fallen tree. Yes, sometimes evil remains unpunished. >> Кpот был маленьким и слепым. Он не был злым. Он пpосто хоpошо делал свое дело. Это он подъел деpево, котоpое yпало на дятла. Об этом никто не yзнал, и поэтомy его не избили. Его вообще били pедко. Чаще пyгали. Hо его было очень тpyдно испyгать, потомy что он был слепой и не видел, что его пyгают. Когда не yдавалось испyгать Кpота, звеpи очень огоpчались. И били Медведя. Потомy, что им было очень обидно. Однажды Медведь тоже захотел испyгать Кpота. Hо Кpот не испyгался. Потомy, что Медведь его yбил. Hечаянно. Пpосто Медведь был очень неyклюжим. И звеpи его очень сильно избили. Даже, несмотpя на то, что Медведь сказал, что пошyтил. Плохо, когда твои шyтки никто не понимает. The mole was small and blind. He was not evil. He just did his job really well. It was he who dug under the tree which fell on the woodpecker. No one knew about his digging and he was not beaten. He was rarely beaten. More often scared. But it was really hard to scare him as he was blind, and didn't see that he was being scared. When the animals were unable to scare the mole they became very upset. And beat the bear. One day the bear decided to sacre the mole. But he didn't scare the mole. Because he killed him. Accidentally. As he was very clumsy. And the animals brutally beat him for killing the mole, even though the bear said it was a prank. It's unfortunate when no one understands your pranks. >> Лиса была очень хитpой. Она могла запpосто обхитpить кого yгодно. Когда ей это yдавалось, то ее не били. Hо иногда ей не везло. И ее били. Били всем лесом. И она yже не могла кого-нибyдь обхитpить. Потомy, что очень тpyдно го-нибyдь обхитpить, когда тебя бьют. Однажды ее избили до смеpти. Да, жилда всегда на пpавдy выйдет. The fox was very cunning. She could easily outsmart anyone. When she could outsmart someone, she was not beaten. But when she coudln't, she was beaten. Hard. And at that point she couldn't outsmart anyone, as it's hard to outsmart someone when you're being beaten. One day she was beaten to death. Yes, truth will always come to light. >> Кабан был большой, сильный и стpашный. Его все очень боялись. И поэтомy его били только всем лесом. Или пpосто кидали в него камнями. Кабан этого очень не любил. И однажды ночью он спpятал все камни в лесy. За это его очень сильно избили. Больше Кабан никогда не пpятал камни. Воистинy говоpят - вpемя собиpать камни и вpемя их не тpогать никогда. The boar was big, strong, and scary. Everyone was scared of him. That is why he was always beaten with the whole forest. Or simply stoned him. The boar didn't like that. One day he hid all of the stones in the forest. For the he was beaten really hard. After that, the boar never hid stones. And so they say, there is time to collect stones, and time to not touch them. >> Козел не был ни злым, ни добpым. Он был пpосто Козел. н часто козлил. И его боялись бить. И он своим козловством всех достал. И тогда его избили до смеpти. Потомy, что иначе он бы yмеp от стаpости. Когда-нибyдь. Когда Козел yмеp, Медведь сильно плакал. Потомy, что он в тайне любил Козла. Да, любовь зла, полюбишь и Козла. The goat was neither good nor evil. He was a goat. He often goated. And the animals were scared of beating him. With his goatness he got on everyones nerves. And he was beaten to death, because otherwise he would have died of old age. Someday. After the goat died, the bear cried, because he secretly loved the goat. Yes, love is a cruel mistress. >> Ежик был маленький и колючий. Он кололся. Он не был злым, он кололся по своей пpиpоде. Из-за этого его били только в живот. Ежик этого не любил и стал бpиться наголо. И тогда его стали бить как всех. Да, очень тpyдно быть не таким как все. The hedgehog was small and prickly. He wasn't evil, he was prickly by his own nature. For that he was beaten exclusively in the stomach. And so the hedgehog started shaving bald. And he was beaten like everyone else. Yes, it's hard to be not like everyone else. >> Скyнс был почти таким, как Заяц. Hо только очень нючим. Он плохо пахнyл. Его били только в полиэтиленовом пакете. Тогда запах был не такой сильный. Однажды y Скyнса был день pождения. Он пpигласил всех звеpей, потомy, что был жадным и любил подаpки. И звеpи подаpили емy новый полиэтиленовый пакет. И сильно избили до потеpи сознания. И Скyнс задохнyлся в пакете. Так его и похоpонили. В пакете. В очень Дальнем Лесy. Потомy, что меpтвый Скyнс вонял еще сильнее. Потом пpишли жители Очень Дальнего Леса и в сех сильно избили. Им не понpавился запах меpтвого Скyнса. Да, с соседями надо жить в миpе. The skunk was very much like rabbit. But very smelly. He was beaten only inside a plastic bag, because then the smell wasn't as bad. One day the skunk had a birthday party, and he invited all of the animals as he was greedy and he loved presents. The animals got him a new plastig bag. And then proceeded to beat him until loss of consciousness. The skunk then suffocated inside the bag. That is how he was buried. In the plastic bag. In the very far away forest, as a dead skunk smelt worse than a living skunk. Then the animals from the very far away forest came and beat everyone hard. They didn't like the smell of the dead skunk. Yes, you must love your neighbour. >> Хомяк был тоже очень жадным. И богатым. Если бы он делился своим богатством, его бы били не так сильно. Hо он был очень жадным. За это его били сильно. И емy все pавно пpиходилось делиться. И он гоpько плакал. Да, богатые тоже плачyт. The hasmter was also very greedy. And rich. If he shared his riches he woudn't be beaten as hard. But he was greedy. And he was beaten hard. And he still had to share his riches. For that he cried. Yes, even rich people cry. >> Лев был цаpь звеpей. Он пpавил лесом. Цаpей бить не положено. Это закон. Hо звеpи давно забили на закон. Звеpи били и льва. Hи за что. Потомy, что так yж здесь повелось. The lion was king. He ruled the forest. You're not supposed to beat kings. Such is the law. But the animals gave a fuck about the law. They beat the lion. Why? That's just how things go in forest. >> Моpаль: А зоpи здесь тихие... Moral: Sunrises here are quiet... Publishing in The Gopher Times you ____________________________________________________________ Want your article published? Want to announce something to the Gopher world? Directly related to Gopher or not, reach us on IRC with an article in any format, we will handle the rest. ircs://irc.bitreich.org/#bitreich-en ]]> 2021-10-23T21:09:52+0200 gopher://bitreich.org/9/tgtimes/archive/2021-10-23-errata1 <![CDATA[2021-10-23-errata1]]> The Gopher Times Authors > Медведь был безобpазным, косолапым и гpязным животным. Однако добpее его не было никого во всем лесy. Hо звеpи замечали только его внешность, на что Медведь жyтко обижался, ловил их и жестоко избивал ногами. Поэтомy звеpи его не любили. Хотя он был очень добpым. И веселым. Он любил задоpные шyтки. За эти шyтки звеpи его скоpо жyтко возненавидели и били. Да, тpyдно быть на свете добpым и веселым. The bear was a filthy, clumsy, and dirty animal. However, no one was as loving as he was in the whole forest. But the animals only saw his exterior, to which the bear became upset, caught them, and brutaly beat them with his legs. Even though he was very loving. And happy. He loved practical jokes. For these jokes the animals started to hate the bear and beat him. Yes, it;s hard to be loving and happy. >> Волк был тоже безобpазным и гpязным. И еще он был очень злым и жестоким. Hо звеpи не испытывали к немy ненависти и не били. Потомy, что Волк yмеp еще в pаннем детстве. Потомy, что Медведь pодился pаньше Волка. Да, хоpошо, когда Добpо побеждает Зло. The wolf was also filthy and dirty. He was also very evil and cruel. But the animals din't hate him and didn't beat him. Because the wolf died early in his childhood. Because the bear was born before the wolf. Yes, it's good when good triumphs over evil. >> Заяц тоже был злым и жестоким. И гpязным. И еще он был тpyсливым. Гадостей Заяц никомy никогда не делал. Потомy, что боялся. Hо его все pавно сильно били. Потомy, что Зло всегда должно быть наказано. The rabbit was also evil and cruel. And dirty. He was also a coward. The rabbit never commited any evil as he was scared. But he was still beaten. Because evil must be punished. >> И Дятел тоже был злым и жестоким. Он не бил звеpей, потомy, что y него не было pyк. Поэтомy, он вымещал свою злость на деpевьях. Его не били. Потомy, что не могли дотянyться. Однажды его пpидавило насмеpть yпавшее деpево. Поговаpивали, что оно отомстило. После этого звеpи целый месяц боялись мочиться на деpевья. Они мочились на Зайца. Заяц пpостyдился и yмеp. Всем было ясно, что во всем был виноват Дятел. Hо его не тpонyли. Посколькy не смогли выковыpять из-под yпавшего деpева. Да, Зло иногда остается безнаказанным. The woodpecker was also evil and cruel. He didn't beat animals, as he didn't have any arms. So he took his anger out on trees. He was not beaten, as no one could reach him. One day a tree crushed him to death. The animals said it took revenge. After that, then animals were afraid of pissing on trees for a month. Instead they pissed on the rabbit. The rabbit got a cold and died. Everyone knew that the woodpecker was at fault. But he wasn't beaten, as no one could get him out from the fallen tree. Yes, sometimes evil remains unpunished. >> Кpот был маленьким и слепым. Он не был злым. Он пpосто хоpошо делал свое дело. Это он подъел деpево, котоpое yпало на дятла. Об этом никто не yзнал, и поэтомy его не избили. Его вообще били pедко. Чаще пyгали. Hо его было очень тpyдно испyгать, потомy что он был слепой и не видел, что его пyгают. Когда не yдавалось испyгать Кpота, звеpи очень огоpчались. И били Медведя. Потомy, что им было очень обидно. Однажды Медведь тоже захотел испyгать Кpота. Hо Кpот не испyгался. Потомy, что Медведь его yбил. Hечаянно. Пpосто Медведь был очень неyклюжим. И звеpи его очень сильно избили. Даже, несмотpя на то, что Медведь сказал, что пошyтил. Плохо, когда твои шyтки никто не понимает. The mole was small and blind. He was not evil. He just did his job really well. It was he who dug under the tree which fell on the woodpecker. No one knew about his digging and he was not beaten. He was rarely beaten. More often scared. But it was really hard to scare him as he was blind, and didn't see that he was being scared. When the animals were unable to scare the mole they became very upset. And beat the bear. One day the bear decided to sacre the mole. But he didn't scare the mole. Because he killed him. Accidentally. As he was very clumsy. And the animals brutally beat him for killing the mole, even though the bear said it was a prank. It's unfortunate when no one understands your pranks. >> Лиса была очень хитpой. Она могла запpосто обхитpить кого yгодно. Когда ей это yдавалось, то ее не били. Hо иногда ей не везло. И ее били. Били всем лесом. И она yже не могла кого-нибyдь обхитpить. Потомy, что очень тpyдно го-нибyдь обхитpить, когда тебя бьют. Однажды ее избили до смеpти. Да, жилда всегда на пpавдy выйдет. The fox was very cunning. She could easily outsmart anyone. When she could outsmart someone, she was not beaten. But when she coudln't, she was beaten. Hard. And at that point she couldn't outsmart anyone, as it's hard to outsmart someone when you're being beaten. One day she was beaten to death. Yes, truth will always come to light. >> Кабан был большой, сильный и стpашный. Его все очень боялись. И поэтомy его били только всем лесом. Или пpосто кидали в него камнями. Кабан этого очень не любил. И однажды ночью он спpятал все камни в лесy. За это его очень сильно избили. Больше Кабан никогда не пpятал камни. Воистинy говоpят - вpемя собиpать камни и вpемя их не тpогать никогда. The boar was big, strong, and scary. Everyone was scared of him. That is why he was always beaten with the whole forest. Or simply stoned him. The boar didn't like that. One day he hid all of the stones in the forest. For the he was beaten really hard. After that, the boar never hid stones. And so they say, there is time to collect stones, and time to not touch them. >> Козел не был ни злым, ни добpым. Он был пpосто Козел. н часто козлил. И его боялись бить. И он своим козловством всех достал. И тогда его избили до смеpти. Потомy, что иначе он бы yмеp от стаpости. Когда-нибyдь. Когда Козел yмеp, Медведь сильно плакал. Потомy, что он в тайне любил Козла. Да, любовь зла, полюбишь и Козла. The goat was neither good nor evil. He was a goat. He often goated. And the animals were scared of beating him. With his goatness he got on everyones nerves. And he was beaten to death, because otherwise he would have died of old age. Someday. After the goat died, the bear cried, because he secretly loved the goat. Yes, love is a cruel mistress. >> Ежик был маленький и колючий. Он кололся. Он не был злым, он кололся по своей пpиpоде. Из-за этого его били только в живот. Ежик этого не любил и стал бpиться наголо. И тогда его стали бить как всех. Да, очень тpyдно быть не таким как все. The hedgehog was small and prickly. He wasn't evil, he was prickly by his own nature. For that he was beaten exclusively in the stomach. And so the hedgehog started shaving bald. And he was beaten like everyone else. Yes, it's hard to be not like everyone else. >> Скyнс был почти таким, как Заяц. Hо только очень нючим. Он плохо пахнyл. Его били только в полиэтиленовом пакете. Тогда запах был не такой сильный. Однажды y Скyнса был день pождения. Он пpигласил всех звеpей, потомy, что был жадным и любил подаpки. И звеpи подаpили емy новый полиэтиленовый пакет. И сильно избили до потеpи сознания. И Скyнс задохнyлся в пакете. Так его и похоpонили. В пакете. В очень Дальнем Лесy. Потомy, что меpтвый Скyнс вонял еще сильнее. Потом пpишли жители Очень Дальнего Леса и в сех сильно избили. Им не понpавился запах меpтвого Скyнса. Да, с соседями надо жить в миpе. The skunk was very much like rabbit. But very smelly. He was beaten only inside a plastic bag, because then the smell wasn't as bad. One day the skunk had a birthday party, and he invited all of the animals as he was greedy and he loved presents. The animals got him a new plastig bag. And then proceeded to beat him until loss of consciousness. The skunk then suffocated inside the bag. That is how he was buried. In the plastic bag. In the very far away forest, as a dead skunk smelt worse than a living skunk. Then the animals from the very far away forest came and beat everyone hard. They didn't like the smell of the dead skunk. Yes, you must love your neighbour. >> Хомяк был тоже очень жадным. И богатым. Если бы он делился своим богатством, его бы били не так сильно. Hо он был очень жадным. За это его били сильно. И емy все pавно пpиходилось делиться. И он гоpько плакал. Да, богатые тоже плачyт. The hasmter was also very greedy. And rich. If he shared his riches he woudn't be beaten as hard. But he was greedy. And he was beaten hard. And he still had to share his riches. For that he cried. Yes, even rich people cry. >> Лев был цаpь звеpей. Он пpавил лесом. Цаpей бить не положено. Это закон. Hо звеpи давно забили на закон. Звеpи били и льва. Hи за что. Потомy, что так yж здесь повелось. The lion was king. He ruled the forest. You're not supposed to beat kings. Such is the law. But the animals gave a fuck about the law. They beat the lion. Why? That's just how things go in forest. >> Моpаль: А зоpи здесь тихие... Moral: Sunrises here are quiet... Publishing in The Gopher Times you ____________________________________________________________ Want your article published? Want to announce something to the Gopher world? Directly related to Gopher or not, reach us on IRC with an article in any format, we will handle the rest. ircs://irc.bitreich.org/#bitreich-en ]]> 2021-10-23T21:45:45+0200 gopher://bitreich.org/9/tgtimes/archive/2021-11-23 <![CDATA[2021-11-23]]> The Gopher Times Authors (then once again later): login: guest By just staying here waiting, battle offers from other players start to spawn: GuestJZMS (++++) seeking 5 0 unrated blitz f \ ("play 50" to respond) GuestJZMS (++++) seeking 5 0 unrated wild/fr f \ ("play 72" to respond) GuestJZMS (++++) seeking 1 0 unrated lightning f \ ("play 73" to respond) fics% Playing one of these games leads you to an ASCII chessboard ready for white to play: fics% play 72 --------------------------------- 8 | *R| *N| *B| *Q| *K| *B| *N| *R| |---+---+---+---+---+---+---+---| 7 | *P| *P| *P| *P| *P| *P| *P| *P| |---+---+---+---+---+---+---+---| 6 | | | | | | | | | |---+---+---+---+---+---+---+---| 5 | | | | | | | | | |---+---+---+---+---+---+---+---| 4 | | | | | | | | | |---+---+---+---+---+---+---+---| 3 | | | | | | | | | |---+---+---+---+---+---+---+---| 2 | P | P | P | P | P | P | P | P | |---+---+---+---+---+---+---+---| 1 | R | N | B | Q | K | B | N | R | --------------------------------- a b c d e f g h fics% In complement to the raw telnet interface, a graphical client may be used to join a game with the board shown on-screen. The Embedded Muse Newsletter ganssle ____________________________________________________________ Ever felt curious about the embedded world? These tiny machines that are low-power enough to last all winter powered by a potato battery? Then take a peek at the Embedded Muse Newsletter. This mail-based monthly publication is run by Jack Ganssle since 1997. A well-known pioneer, but each issue is turned toward the community, where everyone submits its story that Jack publishes back. You might find spicy UNIX and engineering humour. http://www.ganssle.com/tem-back.htm Mozilla, "OBEY" and 1988 movie jwz ____________________________________________________________ Surprisingly diverse themes. Just as diverse as Jamie Zawinski's creations: Netscape, Mozilla, the DNA- Lounge night club. The 1988 movie offers a revelation about advertizing. The "OBEY" Clothing Brand refers to that movie. The Mozilla logo shares the same author as the "OBEY" logo. Out of tihs, jwz narrates us a piece of our own history. Sometimes, ubiquitous, vastly popular, and highly profitable projects have the most unexpected history, in contradiction with what they became. https://www.jwz.org/blog/2016/10/they-live-and-the -secret-history-of-the-mozilla-logo/ Twtxt Over Gopher gopher ml ____________________________________________________________ The twtxt format is a plain text microbloggin format that lives as a text file hosted on any server, in the same style as RSS feeds. The support gopher://example.com/0/twtxt.txt is already there! As prologic points out on the Gopher Mailing list, it is possible to use gopher:// links for twtxt, as showcased by the yarn.social search engine. This might as well be the case for many other twtxt clients, given that libcurl supports gopher:// and gophers://. It will soon be difficult to find a single software that does not support Gopher... https://twtxt.net/ https://lists.debian.org/gopher-project/ https://yarn.social/ Hosting Providers Projects tgtimes ____________________________________________________________ While hosting a server at home has its benefits (and its charms), some interesting hosting providers do a good job at sharing all the fun that hosting servers can have while still handling the long-winged work of keeping the hypervisors up and running. Efforts also coming from the community that sometimes take part into the project, or in reverse, hosting providers contributing to help community projects, either through funds or bug-fixing. sdf.org Around since as early as 1987, the Super Dimension Fortress describes itself as a public access supercomputing center. An invitation to jump both foot into the UNIX culture featuring games, email, usenet, chat, bboard, gopherspace, webspace, programming utilities, archivers, browsers, and more. A different sense of community than the one offered by social networks. sdfeu.org Joint effort with the north Amercian sdf.org, the European counterpart will have a better network lattency for European, Middle east, and African users. grex.org Grex brings democracy to hosting, a concept little explored by commercial hosting providers: open access, but also owned by its members who can vote on what to plan next for Grex. Also a good pretext to get around a good meal during the Grex conferences. openbsd.amsterdam A hosting provider running OpenBSD for its entire stack, including the hypervisor itself: vmm(4). It permits its user to connect directly onto the hypervisor through SSH and run commands such as vmctl vm02 restart. blinkenshell.org Younger by a few years, this open shell project lets you give Linux a try. Occasion to make someone discover the world of command-line and programming through the editor and compilers installed up there. prgmr.com While keeping a commercial model, this Xen- based hosting provider offers a command-line approach to hosting, and consider the user as a respectable admin rather than a supermarket custommer. Nixers.net Con 2021 nixers ____________________________________________________________ On November the 7th, the second edition of the nixers.net *NIX users community took place: • Creating your own troff macros — seninha • Keeping track of your things — venam • Truly Federated Identity for the web — push-f The video recording are already available: https://nixers.net/Thread-Nixers-net-Conf-2021 A message to developers nitot ____________________________________________________________ While Mozilla keeps the web browser vendor race going while a former founder moved elsewhere offering to try a different take on technology. Tristan Nitot is the of Mozilla Europe, who also worked at Netscape before its decline. After he left Mozilla, he published "surveillance://" defending privacy, and went as far as offering alternative to Google by joining the Qwant team (web serach engine). Yes, this is a Google-funded conference. During this web, mobile and cloud conference, under OVH, Google, and Microsoft sponsorship, what message would he have to spread to developers getting started? Mind the Global Warming! How unexpected but welcome. He simply shew the numbers, and shew big newspaper headlines: explaining that the poor performance of software have been largely compensated by the Moore's law for the last 50 years, letting software fat to accumulate without dire consequence on usability. A call to developers to consider supporting the existing hardware through providing reasonable performance, considering removing features, would have the greatest impact; most CO² emission of IT originating from producing new end-user devices. He blamed Windows 11 badly for that, refusing to support older chips. Yes, this is a Microsoft-funded conference. >> Between the early web pages of a few kilobytes to the web pages of today, the size was went up by a factor of 150. Are web pages 150 times better than they used to be? At the beginning of its talk, Tristan Nitot quoted Upton Sinclair: >> It is difficult to get a man to understand something when his salary depends upon his not understanding it. https://devfest.gdglille.org/ https://climatefresk.org/ https://standblog.org/blog/ cirosantilli, a rabbit hole on its own tgtimes ____________________________________________________________ Is this name familiar to you? Maybe you encountered cirosantilli on a StackOverflow or remembered one of the iconic profile picture he chose? Did you encounter the name on GitHub? If so you may have immediately noticed how he weaponized this popular code hosting platform into a freedom of speech silver bullet against China's censorship. The entire user profile was turned into a long document that can resist to the most ferocious censorship. A vast amount of images and keywords censored by China is published straight on the front page, making it outstanding to the visitors. Would china dare to try to take down the biggest code hosting platform, harming most of IT companies in the world? And even if it tries, would it succeed? And so without provoking too much tension with the U.S.? While China's government censorship violence is world famous, so is GitHub's DDoS mitigation services (provided by a dedicated company, not performed by GitHub themself), after undertaking 1.3 Terabit per second during a famous DDoS attack. This Brazilian Italian turned Goliath against Goliath. Are you curious about its practical plan to take down China's great firewall? Or maybe you are interested in one of the many computer-related topics he teaches on its website? This activist doubled as student and teacher might take you down the rabbit hole of both computer science and fight for freedom. https://stackoverflow.com/users/895245/ https://cirosantilli.com/ https://github.com/cirosantilli Digitalisation Evangelists Hymn 20h ____________________________________________________________ Original Text: Dieter Birr / Wolfgang Tilgner https://www.youtube.com/watch?v=jbQuauLn52c >> Einem war sein Heim, war sein Haus zu eng One was his home, his home was too narrow >> Sehnte sich in die Welt Strived for the world >> Sah den Himmel an, sah wie dort ein Schwan hinzog Saw the sky, saw how a swan directed there >> Er hieß Ikarus und er war sehr jung He was named Ikarus and he was young >> War voller Ungeduld He was full of impatience >> Baute Flügel sich, sprang vom Boden ab und flog Built wings for him, jumped off the ground and flew >> Und flog And flew >> Steige Ikarus! Fliege uns voraus! Strive Ikarus! Fly ahead! >> Steige Ikarus! Zeige uns den Weg! Strive Ikarus! Show us the way! >> Als sein Vater sprach: "Fliege nicht zu hoch! As his father said: "Do not fly too high! >> Sonne wird dich zerstör'n" sun will destroy you" >> Hat er nur gelacht, hat er laut gelacht und schrie He only laughed, he laughed loud and screamed >> Er hat's nicht geschafft und er ist zerschellt He didn't make it and he shattered >> Doch der erste war er But the first one he was >> Viele folgten ihm, darum ist sein Tod ein Sieg Many followed him, that is why his dead is a victory >> Ein Sieg! A victory! >> Steige Ikarus! Fliege uns voraus! Strive Ikarus! Fly ahead! >> Steige Ikarus! Zeige uns den Weg! Strive Ikarus! Show us the way! >> Einem war sein Heim, war sein Haus zu eng One was his home, his home was too narrow >> Sehnte sich in die Welt Strived for the world >> Sieht den Himmel an, sieht wie dort ein Schwan Sees the sky, sees how a swan >> Sich wiegt himself enjoys >> Er heißt Ikarus und ist immer jung He is called Ikarus and he is always young >> Ist voller Ungeduld Is full of impatience >> Baut die Flügel sich, springt vom Boden ab und fliegt Builds himself wings, jumps off the ground and flies >> Und fliegt And flies >> Steige Ikarus! Fliege uns voraus! Strive Ikarus! Fly ahead! >> Steige Ikarus! Zeige uns den Weg! Strive Ikarus! Show us the way! >> Steige Ikarus! Fliege uns voraus! Strive Ikarus! Fly ahead! >> Steige Ikarus! Zeige uns den Weg! Strive Ikarus! Show us the way! >> Steige Ikarus! Fliege uns voraus! Strive Ikarus! Fly ahead! >> Steige Ikarus! Zeige uns den Weg! Strive Ikarus! Show us the way! Publishing in The Gopher Times you ____________________________________________________________ Want your article published? Want to announce something to the Gopher world? Directly related to Gopher or not, reach us on IRC with an article in any format, we will handle the rest. ircs://irc.bitreich.org/#bitreich-en gopher://bitreich.org/1/tgtimes/ ]]> 2021-11-23T21:43:56+0100 gopher://bitreich.org/9/tgtimes/archive/2021-11-23-errata1 <![CDATA[2021-11-23-errata1]]> The Gopher Times Authors (then once again later): login: guest By just staying here waiting, battle offers from other players start to spawn: GuestJZMS (++++) seeking 5 0 unrated blitz f \ ("play 50" to respond) GuestJZMS (++++) seeking 5 0 unrated wild/fr f \ ("play 72" to respond) GuestJZMS (++++) seeking 1 0 unrated lightning f \ ("play 73" to respond) fics% Playing one of these games leads you to an ASCII chessboard ready for white to play: fics% play 72 --------------------------------- 8 | *R| *N| *B| *Q| *K| *B| *N| *R| |---+---+---+---+---+---+---+---| 7 | *P| *P| *P| *P| *P| *P| *P| *P| |---+---+---+---+---+---+---+---| 6 | | | | | | | | | |---+---+---+---+---+---+---+---| 5 | | | | | | | | | |---+---+---+---+---+---+---+---| 4 | | | | | | | | | |---+---+---+---+---+---+---+---| 3 | | | | | | | | | |---+---+---+---+---+---+---+---| 2 | P | P | P | P | P | P | P | P | |---+---+---+---+---+---+---+---| 1 | R | N | B | Q | K | B | N | R | --------------------------------- a b c d e f g h fics% In complement to the raw telnet interface, a graphical client may be used to join a game with the board shown on-screen. The Embedded Muse Newsletter ganssle ____________________________________________________________ Ever felt curious about the embedded world? These tiny machines that are low-power enough to last all winter powered by a potato battery? Then take a peek at the Embedded Muse Newsletter. This mail-based monthly publication is run by Jack Ganssle since 1997. A well-known pioneer, but each issue is turned toward the community, where everyone submits its story that Jack publishes back. You might find spicy UNIX and engineering humour. http://www.ganssle.com/tem-back.htm Mozilla, "OBEY" and 1988 movie jwz ____________________________________________________________ Surprisingly diverse themes. Just as diverse as Jamie Zawinski's creations: Netscape, Mozilla, the DNA- Lounge night club. The 1988 movie offers a revelation about advertizing. The "OBEY" Clothing Brand refers to that movie. The Mozilla logo shares the same author as the "OBEY" logo. Out of this, jwz narrates us a piece of our own history. Sometimes, ubiquitous, vastly popular, and highly profitable projects have the most unexpected history, in contradiction with what they became. https://www.jwz.org/blog/2016/10/they-live-and-the -secret-history-of-the-mozilla-logo/ Twtxt Over Gopher gopher ml ____________________________________________________________ The twtxt format is a plain text microblogging format that lives as a text file hosted on any server, in the same style as RSS feeds. The support gopher://example.com/0/twtxt.txt is already there! As prologic points out on the Gopher Mailing list, it is possible to use gopher:// links for twtxt, as showcased by the yarn.social search engine. This might as well be the case for many other twtxt clients, given that libcurl supports gopher:// and gophers://. It will soon be difficult to find a single software that does not support Gopher... https://twtxt.net/ https://lists.debian.org/gopher-project/ https://yarn.social/ Hosting Providers Projects tgtimes ____________________________________________________________ While hosting a server at home has its benefits (and its charms), some interesting hosting providers do a good job at sharing all the fun that hosting servers can have while still handling the long-winged work of keeping the hypervisors up and running. Efforts also coming from the community that sometimes take part into the project, or in reverse, hosting providers contributing to help community projects, either through funds or bug-fixing. sdf.org Around since as early as 1987, the Super Dimension Fortress describes itself as a public access supercomputing center. An invitation to jump both feet into the UNIX culture featuring games, email, usenet, chat, bboard, gopherspace, webspace, programming utilities, archivers, browsers, and more. A different sense of community than the one offered by social networks. sdfeu.org Joint effort with the north Amercian sdf.org, the European counterpart will have a better network latency for European, Middle east, and African users. grex.org Grex brings democracy to hosting, a concept little explored by commercial hosting providers: open access, but also owned by its members who can vote on what to plan next for Grex. Also a good pretext to get around a good meal during the Grex conferences. openbsd.amsterdam A hosting provider running OpenBSD for its entire stack, including the hypervisor itself: vmm(4). It permits its user to connect directly onto the hypervisor through SSH and run commands such as vmctl vm02 restart. blinkenshell.org Younger by a few years, this open shell project lets you give Linux a try. Occasion to make someone discover the world of command-line and programming through the editor and compilers installed up there. prgmr.com While keeping a commercial model, this Xen- based hosting provider offers a command-line approach to hosting, and consider the user as a respectable admin rather than a supermarket customer. Nixers.net Con 2021 nixers ____________________________________________________________ On November the 7th, the second edition of the nixers.net *NIX users community took place: • Creating your own troff macros — seninha • Keeping track of your things — venam • Truly Federated Identity for the web — push-f The video recordings are already available: https://nixers.net/Thread-Nixers-net-Conf-2021 A message to developers nitot ____________________________________________________________ While Mozilla keeps the web browser vendor race going, a former founder moved elsewhere offering to try a different take on technology. Tristan Nitot founded Mozilla Europe, and also worked at Netscape before its decline. After he left Mozilla, he published "surveillance://" defending privacy, and went as far as offering alternative to Google by joining the Qwant team (web search engine). Yes, this is a Google-funded conference. During this web, mobile and cloud conference, under OVH, Google, and Microsoft sponsorship, what message would he have to spread to developers getting started? Mind the Global Warming! How unexpected but welcome. He simply showed the numbers and big newspaper headlines: explaining that the poor performance of software has been largely compensated by the Moore's law for the last 50 years, letting software fat to accumulate without dire consequence on usability. A call to developers to consider supporting the existing hardware through providing reasonable performance, considering removing features, would have the greatest impact; most CO² emission of IT originating from producing new end-user devices. He blamed Windows 11 badly for that, refusing to support older chips. Yes, this is a Microsoft-funded conference. >> Between the early web pages of a few kilobytes to the web pages of today, the size was went up by a factor of 150. Are web pages 150 times better than they used to be? At the beginning of its talk, Tristan Nitot quoted Upton Sinclair: >> It is difficult to get a man to understand something when his salary depends upon his not understanding it. https://devfest.gdglille.org/ https://climatefresk.org/ https://standblog.org/blog/ cirosantilli, a rabbit hole on its own tgtimes ____________________________________________________________ Is this name familiar to you? Maybe you encountered cirosantilli on a StackOverflow or remember one of the iconic profile pictures he chose? Did you encounter the name on GitHub? If so you may have immediately recall how he weaponized this popular code hosting platform into a freedom of speech silver bullet against China's censorship. The entire user profile was turned into a long document that can resist to the most ferocious censorship. A vast amount of images and keywords censored by China is published straight on the front page, making it outstanding to the visitors. Would China dare to try to take down the biggest code hosting platform, harming most of IT companies in the world? And even if it tries, would it succeed? And so without provoking too much tension with the U.S.? While China's government censorship violence is world famous, so is GitHub's DDoS mitigation services (provided by a dedicated company, not performed by GitHub themself), after undertaking 1.3 Terabit per second during a famous DDoS attack. This Brazilian Italian turned Goliath against Goliath. Are you curious about cirosantilli's practical plan to take down China's great firewall? Or maybe you are interested in one of the many computer-related topics he teaches on his website? This activist doubles as student and teacher might take you down the rabbit hole of both computer science and fight for freedom. https://stackoverflow.com/users/895245/ https://cirosantilli.com/ https://github.com/cirosantilli Digitalisation Evangelists Hymn 20h ____________________________________________________________ Original Text: Dieter Birr / Wolfgang Tilgner https://www.youtube.com/watch?v=jbQuauLn52c >> Einem war sein Heim, war sein Haus zu eng One was his home, his home was too narrow >> Sehnte sich in die Welt Strived for the world >> Sah den Himmel an, sah wie dort ein Schwan hinzog Saw the sky, saw how a swan directed there >> Er hieß Ikarus und er war sehr jung He was named Ikarus and he was young >> War voller Ungeduld He was full of impatience >> Baute Flügel sich, sprang vom Boden ab und flog Built wings for him, jumped off the ground and flew >> Und flog And flew >> Steige Ikarus! Fliege uns voraus! Strive Ikarus! Fly ahead! >> Steige Ikarus! Zeige uns den Weg! Strive Ikarus! Show us the way! >> Als sein Vater sprach: "Fliege nicht zu hoch! As his father said: "Do not fly too high! >> Sonne wird dich zerstör'n" sun will destroy you" >> Hat er nur gelacht, hat er laut gelacht und schrie He only laughed, he laughed loud and screamed >> Er hat's nicht geschafft und er ist zerschellt He didn't make it and he shattered >> Doch der erste war er But the first one he was >> Viele folgten ihm, darum ist sein Tod ein Sieg Many followed him, that is why his dead is a victory >> Ein Sieg! A victory! >> Steige Ikarus! Fliege uns voraus! Strive Ikarus! Fly ahead! >> Steige Ikarus! Zeige uns den Weg! Strive Ikarus! Show us the way! >> Einem war sein Heim, war sein Haus zu eng One was his home, his home was too narrow >> Sehnte sich in die Welt Strived for the world >> Sieht den Himmel an, sieht wie dort ein Schwan Sees the sky, sees how a swan >> Sich wiegt himself enjoys >> Er heißt Ikarus und ist immer jung He is called Ikarus and he is always young >> Ist voller Ungeduld Is full of impatience >> Baut die Flügel sich, springt vom Boden ab und fliegt Builds himself wings, jumps off the ground and flies >> Und fliegt And flies >> Steige Ikarus! Fliege uns voraus! Strive Ikarus! Fly ahead! >> Steige Ikarus! Zeige uns den Weg! Strive Ikarus! Show us the way! >> Steige Ikarus! Fliege uns voraus! Strive Ikarus! Fly ahead! >> Steige Ikarus! Zeige uns den Weg! Strive Ikarus! Show us the way! >> Steige Ikarus! Fliege uns voraus! Strive Ikarus! Fly ahead! >> Steige Ikarus! Zeige uns den Weg! Strive Ikarus! Show us the way! Publishing in The Gopher Times you ____________________________________________________________ Want your article published? Want to announce something to the Gopher world? Directly related to Gopher or not, reach us on IRC with an article in any format, we will handle the rest. ircs://irc.bitreich.org/#bitreich-en gopher://bitreich.org/1/tgtimes/ ]]> 2021-11-24T10:32:18+0100 gopher://bitreich.org/9/tgtimes/archive/2022-01-29 <![CDATA[2022-01-29]]> The Gopher Times Authors > Features were weighted against the relative difficulty they would add for programmers implementing their own emulators. Say welcome to this rabbit hole, inviting you with a fresh take on making computers work for end-users. Impressive acheivements were reached, such as portability of this platform on things as small as a 32bit microcontroller: >> Currently, there are ports (not all are complete) for GBA, Nintendo DS, Playdate, DOS, PS Vita, Raspberry Pi Pico, Teletype, ESP32, iOS, STM32, STM32, IBM PC, and many more. https://100r.co/site/uxn.html New Gopher Banner on bitreich.org 20h ____________________________________________________________ To support local gopher politics, we added a banner to bitreich.org gopherhole. This is there to support political movement into more gopher support all over the world. Please support your local gopher charity, if you can. Please do not block the banner in your gopher adblocker! +===========================================+ +##########[ ALL GOPHERS MATTER ]###########+ +##[ DONATE TO YOUR LOCAL GOPHER CHARITY ]##+ +##############[ CLICK HERE ]###############+ +===========================================+ Sincerely yours, Chief Political Officer (CPO). The UNIX calendar(1) command tgtimes ____________________________________________________________ It is probably there sitting in /usr/bin, the calendar(1) command can offer you a fair dose of flexibility that web-based or smartphone-based calendars lacks. By storing events in a single file of text edited by hand, calendar(1) brings the comfort of your existing text editor to manage events with a simple syntax: - one line per event: first a date, then a tab, then a description. - A line starting with a tab implicitly has the same date as the previous event. - Empty lines are ignored, and the C preprocessor brings #include and /* comments */ as needed. No need to format everything right away: taking notes at the bottom of the file, in the middle of a phone call and formatting after hanging-up... It is it trivial to manage a calendar file. While the calendar(1) command is run, events for today and tomorrow are printed: as a digest of what is upcoming. A command line flag permits sending this digest to all users by email, making it a complete calendar software suite from edition to reminder. There is even support for weekly, monthly and yearly (birthdays) events. Sharing calendar events is as easy as sending the section of the calendar file by email, and synchronising the calendar across devices is a matter of synchronising a single file. By adding a few more custom syntax rules on top of those supported by calendar(1), readable text can be maintained with little effort. Jan 23 09:00 Breakfast: cooked eggs and fruits @ Home Sweet Home 10:30 The Gopher Times proof-reading @ ircs://irc.bitreich.org/ 15:30 On-call duty untill! @ https://the-dull-gull.corp/login Jan 24 12:30 Lunch break in town with folks @ that small cafe that does snacks Jan 26 19:15 Call with friends abroad @ mumble://example.com/ Gopher log4j contest 20h ____________________________________________________________ We hereby announce the gopher log4j contest. Anyone sending in the patches to java to allow jdni gopher:// loading will be awarded with one year free bitreich premium membership. One drink per day is free. Please post your patch on ircs://irc.bitreich.org/#bitreich-en and you will be rewarded with your membership pass and a free towel for the member pool. Sincerely yours, Leading Organisational Gardener 4 Java (LOG4J) A Guide to Hell by J. Mickens usenix ____________________________________________________________ >> As a highly trained academic researcher, I spend a lot of time trying to advance the frontiers of human knowledge. However, as someone who was born in the South, I secretly believe that true progress is a fantasy, and that I need to prepare for the end times, and for the chickens coming home to roost, and fast zombies, and slow zombies, and the polite zombies who say "sir" and "ma'am" but then try to eat your brain to acquire your skills. When the revolution comes, I need to be prepared; thus, in the quiet moments, when I'm not producing incredible scientific breakthroughs, I think about what I'll do when the weather forecast inevitably becomes RIVERS OF BLOOD ALL DAY EVERY DAY. [...] If James Mickens looks like he is a highly trained soldier killing zombies in the doomed lands of System Programming, that is because James Mickens is a highly trained soldier killing zombies in the doomed lands of System Programming. https://usenix.org/system/files/1311_05-08_mickens.pdf Annna now on #gopherproject too 20h ____________________________________________________________ With the extension of annna for multi-server support, she is now able to join irc.libera.chat/#gopherproject and help our gopher comrades there. They will receive the bitreich news and have all the pleasure of annna features, like memes, URI resolvers etc. There is much to find out! If you want to dig deeper, look at the annna internals: git://bitreich.org/annna I hope this brings an influx of new ideas for gopher<>IRC. Sincerely yours, Chief IRC Officer (CIO) Confessions of a thief chemla ____________________________________________________________ >> Below is the beginning of "Confessions of a Thief" from Laurent Chemla. He founded a major French DNS registrar, but before that, was the first to commit online piracy in France (from a Minitel), and worked on development tools for Atari. The book is published online in French and translated below. A thief. How else to name one of the first individual in France to procure itself an Internet access? In 1994, borrowing the clothes of a telecommunication expert, that I was not yet, I obtained from an IT staff employee of a parisian University that he let me an access to Internet. In exchange, I brought him help - relatively - to the building of a network devoted to let student work from home. I then stole, I confess, this first access to a network that remained to me a mostly unexplored land since my last visits in 1992, mediated by obscure manoeuvres of a friend or through piracy. This theft benefited to me, I could learn to use a tool long before the majority of the IT crowd, gaining an advance that still persist today. I stole, but I plead good faith. At this epoch nobody around me did understand what it was about. Would it bit a thief to steal something nobody had interest in? This access was to the reach of only a few testing university students, this access that a small IT company could not afford, I stole it, and I am not ashamed. For my relatives, I am nontheless an "IT janitor". Programmer to a tiny IT company, I always have been passionated by telematic networks. A passion that costed me, in 1986, to be the first to be guilty of piracy in France, pirated from a Minitel, yes, but to each his glory. As there was not yet any law against IT piracy, I have been incriminated for stealing electrical power. All that ended up in an acquittal, but still, here is a decent start for a thief career! Indeed, how to name differently someone who constituted its professional network by taking part to associations? We have the impression to contribute unpaid for the many, but we mostly get known and, time after time, the clients get attracted by this visibility. Of course anyone whose professional occupation deals with voluntary sector end-up face to its own consciousness. Not unlike, I suppose, a lawyer who gain clients from the excluded folk that he help graciously and daily. I ignore what its consciousness would tell him, but I know mine is not at rest. Nowadays again, my activities continue to be lucrative out of Internet, at the time of Nasdaq's fall. How can one earn while everyone loose, if not by cheating? A thief is on that use to its profit else's good. To me, Internet is a public good and, if serve as commercial gallery for some, it must not limit itself to such a deviation. Internet must first and foremost be the tool that, for the first time in mankind, permitted the freedom of speech, defined as a fundamental human right. This right, in all its guarantee from our constitutional state, has stayed hypothetical since its proclamation. In France law protects freedom of Speech of syndicates and journalists but no text that permit to the simple citizen to undertake justice, to reach its freedom. What else since, before Internet, this freedom was to the reach of some privilegied? The lawyer protected them because only them needed that protection. Ten years ago, noone would have been able to benefit an as simple, fast and affordable way to expose works, arts or ideas but by vociferating in the street or by climbing the social scale rung by rung to the point of having media's attention. One had to be represented by others with the expression right for themself. Only ersatz. The only freedom that matters is the one available to all and I dont give a damn about those reserved to the mighty or their representatives. Internet thereby permit to a growing number of citizen to apply their fundamental right to take the parole on the public place. From this point of view, it must be protected such as any other necessary yet fragile resource, such as water we drink everyday. It cannot be reserved to anyone, neither be limited in its usages if not by the common right. No exception legislation must forbide the exercise of freedom of speech and, as soon as possible, states must preserve the common tool that became a public benefit. And as I use a public good to lead my own fights, yet again, I behave as a thief. I thereby knew the Internet some time before everybody else, still at the age of the Far West, Eldorado, Utopia. At this era, the network was backed by public money (mostly from United States), the life was happier and the electronic sky bluer. We worked all along, among passionated, inventing new computer objects that even Microsoft did ignore, like Linux or the World Wide Web (you know, the three fastidious *w* we have to type in the address of your favorite porn website...) that did not yet exist and that today everybody mistake for the network itself. We were far from thinking that some day, we would need a plethora of lawyers to organize the network. That some day, we would need interdepartmental comittees to address of the question. That some day, we would have to put black on white the manners not yet named "netiquette" that seemd all so natural to us. Our only desire, share that formidable invention with the most people, make its apology, attract the most numerous of passionated who shared with us their competency, their knowledge and intelligence. I remember that at this epoch, when I was saying "Internet", my friends looked at me as if coming from another planet. When I transfered a file from a computer from one end of of the world to my own machine - by cabalistic commands typed by hand under an interface working without a mouse pointer - the seasoned IT engineers was assisting to the demonstration as to a bad movie: finding a file was taking hours, reading speeds was worth a sick snail and the file often revealed to be unusable... But while a pal entered in my office, I would show him how by typing a single command line I could share, for a ridiculous price, my work, my knowledge, my files or my data with pure strangers and that could live at the other side of the street as the other side of the world. Besides from other passionated people, everybody was laughing at me. I could tell them that this thingy would be a revolution for human knowledge, they looked at me in pity and went back to their work. In the best case, I was told with lucidity "It is a pirate thing.". Some was asking who would that fit, beyond telematic specialists. Other claimed that volontary and free sharing of resources would not have, by definition, any economical future. I was also asked sometimes who would dare to provide such a terrible service. And when I explained them that everything was entirely decentralised, with for only coordination volunteership and good will of all, the same ones was telling me that it could never work at a large scale. https://www.confessions-voleur.net/ Publishing in The Gopher Times you ____________________________________________________________ Want your article published? Want to announce something to the Gopher world? Directly related to Gopher or not, reach us on IRC with an article in any format, we will handle the rest. ircs://irc.bitreich.org/#bitreich-en gopher://bitreich.org/1/tgtimes/ git://bitreich.org/tgtimes/ ]]> 2022-01-29T10:35:25+0100 gopher://bitreich.org/9/tgtimes/archive/2022-04-22 <![CDATA[2022-04-22]]> The Gopher Times Authors > A new gopher client, Molasses, is now available for general use. It is a multi-platform graphical client that runs on Windows, Mac OS, and Linux. Leveraging functionnal programming with Racket, the binaries come battery included, bundling the racket runtime code, famous for building-up robust graphical user interfaces straight from the core language li- braries. Inline images, multiple tabs, keyboard navigation, Go- pher and Gemini support, opening external http:// links on an external browser, Molasses has everything one might expect to browse the little Internet. >> Feedback is welcome and appreciated. sfeed 1.4 released ____________________________________________________________ I want to thank all people who gave feedback. sfeed is a tool to convert RSS or Atom feeds from XML to a TAB-separated file. It can be found at: [1] sfeed has the following notable changes compared to 1.2: Fixes o Fix a compiler warning with some curses implementa- tions, like NetBSD curses. o sfeed_curses: add keybinds for the home key and the default home and end key for urxvt. o sfeed_curses: fix a redraw when reloading a file with a feed file read from stdin and using an URL file and changing this URL file externally. o sfeed_curses: cast character for SFEED_AUTOCMD to unsigned char to allow character sequences outside the ASCII range. Documentation o README: add an example script to count new and un- read items. This can be useful for some statusbar indicator (asked about by e-mail). o Small code-style, comments and documentation im- provements and fixes. Testsuite improvements The testsuite repo has had improvements to test the most important code paths of sfeed_curses in an auto- mated way (currently 95% automated coverage). The sfeed.c and xml.c parser coverage has also near 100% coverage. The goal is to find bugs and avoid regressions. The input/sfeed/realworld/ directory contains files with various feeds from popular systems to more ob- scure ones. These may be useful to test other RSS/Atom programs aswell. These tests can be found here: [2] Thanks, Hiltjo [1] git://git.codemadness.org/sfeed gopher://codemadness.org/1/git/sfeed https://codemadness.org/releases/sfeed/ gopher://codemadness.org/1/releases/sfeed/ [2] https://git.codemadness.org/sfeed_tests/ gopher://codemadness.org/1/git/sfeed_tests/ BBC Reviving the Plain Old Radio ____________________________________________________________ BBC, one of the earliest if not the first radio broad- casting ever, comes back to using a WWII era technol- ogy, to overcome limitation Russia imposes over Ukraine. In between a rain of missiles and a short moment of temporary peace, fetching information on what is hap- pening around is a relief, maybe even a requirement for survival. Internet infrastructure of Ukraine are being impacted, and the backbone getting shackled by all kind of limi- tations, provoked the BBC news bulletin to be unreach- able. A more primitive way to broadcast critical headlines than Internet: shortwave radio, which can live off a simple emitter for covering a large region. >> It has launched two new shortwave frequencies in the region for four hours of World Service English news a day. These frequencies can be received clearly in Kyiv and parts of Russia. [1] Shortly after, possessing a shortwave radio device at home became forbidden, proving that in spite of being a low-technology solution, it was efficient enough to disturb the control of the press by the government. This showcases how quickly-deployed and resilient sim- ple technologies can be in comparison to fragile, high-tech interdependent ecosystems. Radio is also trivially interfaced with high-tech: Any person with an analog emitter may start broadcasting a radio signal, reading a news digest out loud. Given instructions, a receiver is also very easy to build with scavenged parts. An antenna is simply a wire producing an input signal, that after demodula- tion, becomes a sound signal to be fed to a speaker. It also shows benefits of putting all the technically difficult parts onto the side of the content producer. It helps with adoption of a new technology: Making the client device/software trivial and safe to build, set- up and use. [2] [1] https://www.bbc.co.uk/mediacentre/2022/millions-of-russians-turn-to-bbc-news [2] https://hackaday.com/2022/03/17/owning-a-shortwave-radio New Bitreich Project: rfcommd ____________________________________________________________ There is a new project on bitreich: rfcommd. Rfcommd is a daemon sitting on top of your bluez/bluetooth stack, waiting for RFCOMM devices to connect. The daemon will then run scripts or daemons on that new rfcomm connection. This can be used to cre- ate a custom bluetooth printer without buying some dedicated hardware device. See the filter spirofil- ter in the repository for some pcl printer script. Here is the first release: [1] All questions and comments welcome! Please send them to Christoph Lohmann <20h@r-36.net> or come on bitreich.org IRC #bitreich-en. Have fun! [1] gopher://bitreich.org/9/scm/rfcommd/tag/rfcommd-v0.2.tar.lz gopher://bitreich.org/9/scm/rfcommd/tag/rfcommd-v0.2.tar.lz.sha512sum ftp://ftp@bitreich.org/releases/rfcommd/rfcommd-v0.2.tar.lz ftp://ftp@bitreich.org/releases/rfcommd/rfcommd-v0.2.tar.lz.sha512sum gopher://bitreich.org/9/scm/rfcommd/tag/rfcommd-v0.2.tar.gz gopher://bitreich.org/9/scm/rfcommd/tag/rfcommd-v0.2.tar.gz.sha512sum ftp://ftp@bitreich.org/releases/rfcommd/rfcommd-v0.2.tar.gz ftp://ftp@bitreich.org/releases/rfcommd/rfcommd-v0.2.tar.gz.sha512sum 2022-03-06 GangBAN aftermaths 20h ____________________________________________________________ This Sunday was a fun one. After lunch we had the su- pertuxkart tournament of five(!) players competing against eachother on various tracks. All kind of CPUs and hardware setups participates and rushed off the cliffs. In the evening there was the huge OpenRA battlefield. Sadly the hardware requirement of OpenRA is too high, so only two players could participate. But this time against seven other AIs. The humans won multiple times! See you at the next GangBAN! Sincerely yours, 20h Chief Gaming Officer (CGO) Breaking free from medical devices 20h ____________________________________________________________ Unlike most USB gadgets around, medical devices re- quire a specification to be proven fit for handling patients data. This makes doctor-hacking difficult for the sake of better control over what is allowed for medical use. While this may sound as a non-starter for many, not all doctors are discouraged. Interview with 20h: >> You are __20h__, a doctor in Falken, the best vil- lage to live in in Germany, is that correct? Yes. >> You managed to do some hacking around a medical de- vice. What was it? How did it help you in your di- agnostics? I wrote rfcommd to have my spirometer print out the results to a standard printer. It helps me having a more detailed view on the results. The normal printout is just like 8 centimeters wide. Now it is A4. I plan on using rfcommd to read out ECG data from a ECG for further analysis. The collecting computer is a gentoo hardened on x86_64, with a standard bluetooth dongle, sending the print jobs via TCP/IP to a network printer. For printing there is a cups installation, converting the PCL output of the spirometer to postscript for the network printer. >> What software were provided to collect the data on a computer? On which kind of system was that run- ning? Before rfcommd there was no collection of the data. The spirometer has some built-in printer, which is very expensive and the printout is small. >> Are you using it often? I/We are using it every day for printing out spirome- try (lung function) results. By the way. A secondary function why rfcommd has fil- ters: We have a sterilization device, which has a se- rial printout of sterilization runs. This is what rfcommd does print out too. The features of rfcommd moved from: Accept every rf- comm request to having filters per device mac, was be- cause of those two devices. But it will allow to have the ecg readout as a filter for free. >> It had limited interaction, and yet you managed to made it available from a linux computer. How did you do it? First I had a python script using pybluez to offer some bluetooth printer service, which bluetooth clients connect to and send print jobs. But I migrated this to some C implementation and gen- eralized it as rfcommd so it is more modular for me and others can reuse it too. Bluez stack had some rfcomm client application, but it was removed in newer version because they hate comman- dline users. >> Was it difficult? How long did it take? Digging around bluetooth is difficult. It looks simi- lar to TCP/IP, but is its own terminology, protocols and principles. Look at rfcommd for how to announce some service. It took me two weekends to write rfcommd as it is now. >> What would you advise to designers of such devices to make everyone's life easier? If you mean medical devices: Please open source all firmware and open up all schematics. In ten years you will be dead or in pension but still people can extend or update your devices. And second: Never have specific assumptions and fool end users into costly standard. You never know better than your users. For example in the spirometry description, they say, that only some bluetooth printers are compatible. This is due to the bluetooth standard not having de- fined, what is sent to bluetooth printers. It should be the minimum, to define this, as it is in the USB printing standard. >> What kind of protocol interface would have been the easiest? The easiest protocol interface, also considering secu- rity and data protection standard, would be ssh over TCP/IP. Everyone knows SSH, it can be integrated into everything and it is easily upgradable to newer secu- rity standards. >> What does it permits to do that was not possible before? With the spirometry data ready as simple text data, I can further process it using standard unix tools, in case I ever need this. >> Are other people using it in the practice as well? Even indirectly? My nurses use it mainly. They press the »print« but- ton on the spirometry device and it prints the re- sults. I, as doctor, only see the printed out results and ex- plain them to patients. >> Does she have to use command line interface for that? No, it's all practical. The spirometer starts its bluetooth client for rfcommd and rfcommd runs the spirofilter printing filter script, which invokes lpr(1). >> Are there many situations like that, where cumber- some interfaces makes life harder for working with medical devices? Yes, it's built into all medical devices to enforce proprietary and expensive Windows software to be bought. For example the newer version of my ECG device has some undocumented network mode. The ECG standard I will be using over serial was defined in 1990. Since then old devices only got bluetooth and ethernet, but did nothing else new. The price stayed the same, of course. >> Do you think designers would benefits themself from offering another interface that is easier to use? In the short term viewpoint it protects you from com- petitors to enter the market. But in the long run, this now stops me from easily processing patient data for further research. I am using a 25 yr old ECG and some 10 yr old spirometer. >> Are there any similarities in other devices to reuse the existing work you just did? Yes. Bluetooth is the new hype in medical devices. All those smart devices for body measurement are for example BLE, some insecure bluetooth standard to read out key=value from bluetooth clients. Some bled(8) should be easy to write. Nearly every medical device still has some serial port, either for communication or measurement. For measurement this will never die out, since raw data is required. And some serial2bluetooth, that's what I am using for my practical examples. >> Would it have been possible to build such device yourself from parts, but with sane interfaces in- stead? Building such a device is not the hard part. The hard part is licensing the device as being a medical de- vice. I am, as a doctor, am allowed to license some medical device for my patients. But if I'd want to sell or give this device to some other doctor, I'd need some EU medical device license. This is a complex process. You have severial medical device classes. Some always require some EU-wide licensing. The logic of some ECG is very simple. But licensing it for selling is what makes it expensive and/or keeps the competition low. >> What do you advise to people also stuck with cum- bersome device, but without reverse engineer super- powers? Force the device producers to open up standards. Write into contracts, that devices have to be interop- erable, so producers need to adapt. It's the same for software. If you can't write it on your own, force them to open up standards, because you want to extend the software. For extension of software, reverse engineering is le- gal. Carrying the Cross tgtimes ____________________________________________________________ Walking on the streets, slowly, slowed-down by carry- ing a huge wooden cross, tall as three persons, paint- ed in blue, a recognisable cross shaped as an 'f', the 'f' of facebook. This is the project Filipe Vilas-Boas, inviting anyone to watch the unrealistic scene, and question themself on the weight of social media, and beliefs associated with technology. >> investigating global interconnection utopia, spiri- tual magic and contemporary algorithmic slavery dys- topia Was there an event declaring that technology was not only for looneys on their geek basement? The opening of facebook? The advent of the iPhone? The first day you could fired from an office job for not being able to turn on a computer? Technology did not really ap- pear all at once in our lives, and does not even reach every citizen of every country. Looking at ourself with a fresh candide look and wondering if how we live make sense is becoming increasingly difficult. Like Filipe Vilas-Boas, artists offers us a tiny win- dow onto our own life, a porthole toward ourself, for allowing us to watching ourself from the outside. [1] [1] https://filipevilasboas.com/Carrying-The-Cross Fortran Diahrea ____________________________________________________________ Quoting Ganssle in The Embedded Muse mailing list: >> The University of Maryland's Ralph compiler would abort after 50 compiletime errors and print out a picture of Alfred E. Neuman, with the caption "This man never worries, but from the look of your code, you should." [1] [1] http://www.ganssle.com/tem/tem439.html High-Tech, Low-Life tgtimes ____________________________________________________________ High-Tech Refers to the ability to use complex tools created by engineering, or hacking things together. Low-Life Refers to those put aside by society, such as criminal or drug dealer, making itself edgy; or ho- bos and beggars, pushed to the edge by more or less everyone. One way to develop the idea of High-Tech Low-Life would be a criminal using modern tools such to empower its crimes. A transaction giving the bad guys the big guns. Not good. But another way to portray it is someone rejected by its surroundings, seeking support through technologi- cal tools. May it be as a source of direct income, or as a way to get informed, or inform its surrounding, perhaps the entire world such as what did happen with the late revolts in China. The "High Tech, Low Life" (2012) documentary shows us that it is not a science-fiction plot, but a phe- nomenon happenning today. Giving High-Tech toys to poor population sounds more like a GAFAM (Google, Amazon, Facebook, Apple, Mi- crosoft) plan to rule over the third-world while look- ing like a humanitarian hero saving the world. But an- other way to see it is surrending the Low-Life people to the claws of High-Tech corps, extending further the frontiers of ad-tech. Giving entertainment platform is probably not the most urgent kind of technology people without a meal a day is going to need. What about a tractor though? In its simplest form, in China again, a 55 years-old lady farmer started to use a hoverboard (board to stand on with a wheel on left and right) to change 3 hours of daily walk to carry the vegetables harvested, into 40 minutes riding this board. [1] Or what about deploying long-range point-to-point wireless links in west Africa to circumvent the poor cable infrastructure? This would help escaping the lobby and regulations that take over the few IT re- sources of that country? [2] Or even inventing affordable small solar or wind-power stations for the tights budgets of off-grid villages? Or an on-street display continuously showing live job offers? >> Did you open-source a driver for the community as part of your job? Installed Linux on an old laptop for someone in need? Convincing the boss to make the project open-source? Attended a surprising situation of that kind? Tell us your story of High-Tech given to Low-Life on #bitreich-en IRC channel on the irc.bitreich.org server. [1] https://nextshark.com/chinese-farmer-hoverboard-life/ https://www.chinanews.com.cn/tp/hd2011/2018/02-13/800254.shtml [2] http://www.melissadensmore.com/papers/m4d08-mho-reassessing.pdf https://www.resilience.org/stories/2015-10-27/how-to-build-a-low-tech-internet/ FreeDOOMDay on 2022-03-27 20h ____________________________________________________________ In comemoration of the beginning summer time in cen- tral Europe, we will celebrate FreeDOOMDay! On 2022-03-27 20:00 CEST (be careful!), we will play chocolate-doom [1] This is a doom variant which runs on nearly every ma- chine out there and supports extra modes: [2] Please try to install the FreeDOOM wad files as a base: See you on Sunday! Sincerely yours, 20h Chief Gaming Officer (CGO) [1] https://www.chocolate-doom.org [2] https://www.chocolate-doom.org/wiki/index.php/Three_screen_mode Beerware: Hardware for Beer tgtimes ____________________________________________________________ Retreated industrial robot hardware recycled into a bartender. Such is the project of the Bistromatik, born in Brittany, now visiting countries abroad. A mechanical robot arm was built for the industry, but while still working, was removed from production, and collected dust in a warehouse. Jean-Marie Ollivier took this bored machine that he named "Nestor", got it to move again, and rather than servicing the industry, was programmed it to serve beers. >> It is not rare to see Jean-Marie make Nestor dance on a violin melody. Moving from town to town, this iron giant, taller than any human, goes on display grabbing gobelets, filling them at the tap, and offering them to the curious crowd passing by. And if you feel hungry too, you may ask it for a treat, it can also prepare some crepes, the Bretons' favorite dessert. [1] [1] https://bistromatik.com/ Memecache atom feed ____________________________________________________________ Thanks to the innovation from the Netherlands, we can now offer an atom feed for the memecache at bitreich.org: [1] Please subscribe for your newest meme pleasure! Sincerely yours, 20h Chief Meme Officer (CMO) [1] gopher://bitreich.org/0/memecache/news.atom St-Lazare's Paris Train Station tgtimes ____________________________________________________________ Ah! The Saint Lazare train station. Emblem of the Par- isian train station, and today still looking like on the painting by the XIXth century painter Monet. This typical look were somehow preserved regardless of the modernisation of the train equipments. Lately, new equipments have been installed to prevent fraud: tick- et barriers are now surrounding all the stations and their surrounding, only letting those owning a ticket onto the station. Not unexpected from a train company for a country with fraud around 10% on long train lines. Mr. Monet would probably still be able to come and settle down for painting the train station nowaday, although to the price of a ticket to anywhere. Yet the devices themself seems not of the greatest comfort to both fraudsters, beggars frequently coming where most passengers are, and legitimate passengers alike. While it might be improved shortly, there is an high error rate for passengers trying to insert their ticket or NFC card. In case of a misunderstanding of how to use these de- vices, the train stations are not overcrowded with staff to welcome passengers in need for information, and it would take a bit of time. Setting-up a new solution seems a difficult challenge, putting in compromise price to setup, comfort of use, reliability, finding the new staff in charge of main- tenance... A reminder that technical solutions only solve technical problems. [1] [1] https://lenouvelautomobiliste.fr/actualites/39949/des-portes-pour-transformer-la-vie-de-la-gare-saint-lazare/ FreeDOOMDay results ____________________________________________________________ Thanks to everyone participating in our first tryout to play doom over our bitreich infrastructure. It worked out pretty well. In the end we played the freedm.wad of freedoom. Some statistics: Maximum up and down bandwidth re- quired was 14 kbytes/s. Maximum CPU usage here: 2% of one core. RAM: 400 kb. Chocolate Doom is compatible to vanilla doom. Every- one having some old DOS doom can join in using rf- commd: [1] Just attach a serial2bluetooth dongle and some blue- tooth dongle in your linux machine, then use the new added filter: [2] This will automatically connect your serial connection to a doom server over tcp/ip. Change it to bitreich.org and the standard port and you are set. Of course you can use socat from some ttyUSB0 or ttyS0 too. Nothing stops you, but your own laziness. The possibilities are endless. See you next time, with whatever machine you can find and which runs DOOM! Sincerely yours, 20h Chief Gaming Officer (CGO) [1] git://bitreich.org/rfcommd [2] gopher://bitreich.org/1/scm/rfcommd/commit/ 9b77ca90e9cf4ca7cd9521e6756dc2b833cdefce.gph What really happened on Mars? ____________________________________________________________ What can possibly go wrong while sending a device en- tirely controlled by software on a remote location where noone would ever be able to go for a long while? The question opens a vast field of answers. 1997, Pathfinder, a solar-powered ground lander and station, with VxWorks proprietary real time operating system onboard, embedding an 6-wheeled Sojourner rover with custom firmware, landed on Mars. During a field data collection mission a priority in- version did happen on the Pathfinder station total loss of control for the time of a reboot. The bug was reproduced on earth and patched, latter explained on a mailing list, published online. [1] At its core, most operating systems are built around a scheduler that orchestrates execution of many tasks onto one or several CPUs. It is a critical piece of software in the case of real-time operating systems, that must ensure to trigger some actions right on time. Complex systems may be unfit for such purposes, and software simplicity has found its way through experi- menting how complex systems may end-up in difficult- to-debug situations. Imagine yourself in charge of reproducing a bug on earth for something that went wrong on another planet, with a patch expected for next Monday. A strong argu- ment toward keeping systems simple and easier to de- bug. Although, the Mars operating system landscape is not all VxWorks and nothing else. For instance, the RTEMS system, Real-Time Executive for Multiprocessor Systems was open-sourced from US army 1993 and is today ac- tively maintained by both corporations and the open source community. Being part of Google Summer of Code, it is also wel- coming newcomers to real-time operating system devel- opment, who might be able to contribute to embedded software making its way onto space. [2] While the ISS project was put at threat by the current events in Ukraine involving all nations, outter-space still represents a middle ground where all sides have a same objective and can collaborate: extending the horizons above what could be reached before. [1] https://www.cs.unc.edu/~anderson/teach/comp790/papers/mars_pathfinder_long_version.html [2] https://www.rtems.org/ Gopher for Medical Research ____________________________________________________________ The National Institute of Health is well used to the Gopher protocol, for it used it as a way to publish medical documentation. You named it: PubMed itself have been delivering documents through Gopher: Phone books with name, phone number and e-mail ad- dresses of those willing to submit it, Images like weathermaps, Audio such as 1992 presidential debates, Books and all kind of publcations, also proposed to users as a way to publish their own content, Videos short ones, but also on-demand movies! Telnet interfaces with login and password, Search engines For browsing this entire content. The technical bulletin of March-April 1994 reveals as much. While 1994 does not sounds like a world gifted with nowadays unlimited technology, equivalents to modern tools, with less bells and less whistles, were already widespread among providers, but much less used as they are today: Spotify were files through Gopher. Netflix were files through Gopher. PubMed, ResearchGate were files through Gopher. Instagram were files through Gopher. Facebook were publication as files through Gopher. Amazon Kindle were text files through Gopher. Office365 were telnet interactive session, or Word- Star, PostScript, and ASCII files through Gopher. Google was either gopher search, or interactive telnet sessions, with sometimes powerful query languages, permitting to filter the result held in the data- bases: Searching for references about Italians with AIDS that are not indexed with ITALY (MH) This showcases that a lot of thing declared as possi- ble today thank to the advances of technology were available since as early as 1994. With much less bells and much less whistles. With much less bandwidth for everyone, but existing bandwidth much less used as well. Interactive database querying languages would look a bit uninviting, and TurboGopher (showcased in the doc- ument) has not all the font, layout, media integration features of modern day web browsers. Under that perspective, the race to technology looks like not a quest for new use-cases, but taking what was possible in the early days to in a crude format and only to some initiated, to the masses, in an inviting layout, packed onto small, shiny objects that fit on a mere pocket. [1] One year later, the Gopher for Science and Medecine project still is blown at full steam, as the National Library of Medecine publishes a bibliography for setting-up gopher servers for collaborating on spe- cific medical topics. >> Developing a subject-specific Gopher at the Na- tional Library of Medicine [2] [1] https://www.nlm.nih.gov/pubs/techbull/archive/nlm_technical_bulletin_march_april_1994.pdf [2] https://pubmed.ncbi.nlm.nih.gov/7599590/ Secret voting for Bitreich Council ____________________________________________________________ Bitreich is always ahead in its structure, organisa- tion and technology. So is our democracy: [1] The majority of council members has decided, that: >> Secret voting is possible on certain topics. When council members vote in secret, they need to vote un- der a bedcover. Multiple council members can be un- der one bedcover. Bitreich is reacting to the decision of Debian to in- troduce back chamber corruption in its decision mak- ing: [2] This is completely prevented in the Bitreich model, since multiple council members are allowed under one bedcover, while hidden from any eavesdropper in the room. Sincerely yours, 20h Chief Democracy Officer (CDO) [1] gopher://bitreich.org/1/scm/bitreich-council/commit/ f43daad938405d966c158a12b6fcb8f13a9d1868.gph [2] https://lwn.net/Articles/889444/ TMP.0UT Volume 2 is Out ____________________________________________________________ In the sytle of the Phrack online resource, tmp.0ut publishes its second volume. >> TMP.0UT stands on the shoulders of giants, and we lend a hand for the next generation of giants to stand on ours. Focused on the ELF format reverse engineering, the on- line zine culminates a rich set of resources and arti- cles by experts for everyone interested in the world of ELF hacking. o Bare Metal Jacket o How to write a virtual machine in order to hide your viruses o Every Boring Problem Found in eBPF And much, much more... News straight out of the com- piler: [1] [1] https://tmpout.sh/2/ Bitreich migrating to Windows Server 20h ____________________________________________________________ Yesterday the last SSH.com license we had expired. We are now unable to access Linux on the old bitreich.org servers. In an approach to modernize Bitreich, the council decided to go further: o Windows Server 2022 will be the new server OS for growing our business opportunities and fast deploy- ment of critical workloads such as SQL Server with confidence using 48TB of memory, 64 sockets, and 2048 logical cores. o Irc.bitreich.org will be replaced by Microsoft Teams to create a more engaging meeting experience with together mode. Focus on faces, pick up on nonverbal cues, and easily see who is talking. o The ed(1) cloud will be replaced by Microsoft Office 365 to connect and empower every employee, from the office to the frontline worker, with a Microsoft 365 solution that enhances productivity and drives inno- vation. We hope to see you on the new services, which enrich your daily business life. Sincerely yours, 20h Chief Technology Officer (CTO) Linux Sysadmin Job Offer announce ____________________________________________________________ The web is hiring over and over. A lot of professions were converted from something, to something with on- line web tools and a lot of computer systems are using a webinterfaces that are just skins for a database. If you feel like giving a good sweep in all the dust of webservers, and transform fragile, complex, buggy ecosystems onto leaner, more stable systems, and are currently looking for a job as an Admin, we might have an offer for you. The offer is located in France, within a warm and horsing team in a 20-sized company powering a little part of the Internet (not only the Web), dealing with clients from local shops to international groups. Come and discover the culture of Lille, in North of France, one of the only places where you can taste both Carbonnade (Belgian, meat cooked onto Belgian beer) and Welsh (Great Britain, quality melted cheddar served on a dish). Contact josuah on #bitreich-en channel on irc.bitreich.org server to know more about it. Publishing in The Gopher Times you ____________________________________________________________ Want your article published? Want to announce some- thing to the Gopher world? Directly related to Gopher or not, reach us on IRC with an article in any format, we will handle the rest. ircs://irc.bitreich.org/#bitreich-en gopher://bitreich.org/1/tgtimes/ git://bitreich.org/tgtimes/ ]]> 2022-04-22T20:58:34+0200 gopher://bitreich.org/9/tgtimes/archive/2022-06-28 <![CDATA[2022-06-28]]> The Gopher Times Authors There is already a wide variety of topics registered, from medicine to simple software over geology and hopefully a special greeting from our science supervi- sor Prof. Skildgaard who wants to give advices to all of us humans. See you online and in presence! Sincerely yours, 20h Chief Conference Officer (CCO) 1 gopher://bitreich.org/1/con/2022 Animated ASCII art linuxconsole ____________________________________________________________ With all the history of ASCII art and demoscene, it would be a shame if noone ever tried to combine the two in animated ASCII art. Courtesy of textfiles.com, we can browse through a collection of 93 animated ASCII pieces of arts. [1] They are also mirrored at the bitreich gopher site [2] The animation speed will likely be too high for a ter- minal, and can be slowed down with the throttle(1) program as advised by linuxconsole.net, or with pv(1) as below: 1 http://artscene.textfiles.com/vt100/ http://linuxconsole.net/ascii_art.html 2 gopher://bitreich.org/1/vt100/animations/ ____________________________________________________________ curl -s gopher://bitreich.org/1/vt100/animations/twilight.vt | pv -qL3000 ____________________________________________________________ You may use the "reset" command to get your terminal normal again after watching. Some are just a pun, a few frames to only give impres- sion of movement, while other might be closer to a short animated movie. Talking of which, long movies were also done: https://www.asciimation.co.nz/ telnet towel.blinkenlights.nl These characters transmitted through one protocol or another, whispers to us, through our terminal screen, tales from the imagination of plain text artists. Prof. Skildgaard: Only Turtle Fans 20h ____________________________________________________________ I am happy to announce, that the scientific head of bitreich, Prof. Skildgaard, the professor for slow sciences at the Aarhus university in Denmark, now has opened his own website [1] You can see many #turtlefan pictures. [2] Please recommend his work! He has done so much for us, like reviewing all entries to the last and the coming brcon. This takes ages! Sincerely yours, 20h Chief Slowness Executive (CSE) 1 http://onlyturtlefans.com/ 2 #turtlefan: gopher://bitreich.org/I/memecache/turtlefan.png Synthetic ASCII Art tgtimes ____________________________________________________________ When an entirely new way to solve problems is discov- ered, all sorts of medias, and not only the tech- oriented ones, are fond to publish abundantly about it. Be it quantum computing, blockchains, machine learning... Shortly after a new big toys like these comes-up, hackers come, and start experimenting with it, sometimes coming-up with entirely new way to use it. This time we are reviewing the combo of Machine Learn- ing and ASCII art. I was expecting to present cute attempts at drawing images with computer-made text, but this is nothing of the sort. Be prepared to see Science at the service of Art. Generated Typewriter Art This research paper (no less!) shows that it is possible to write software for placing characters, later typed during 6 hours by a human operator (for this example). It is un- settling to see details much smaller than the char- acters themself be drawn on paper, along with shades of grey of various intensities. [1] Generated ASCII Art in 2010 This is possibly the state of the art of 2010 technology. It was announced in the yearly conference SIGGRAPH hence presented to an audience full of computer graphics engineers. The work of three researchers from Hong Kong, Xuemiao Xu, Linling Zhang and Tien-Tsin Wong, shows results of surprising accuracy. The story does not tell whether there ever was a job offer "looking for ASCII artists for a scientific experiment" posted on the job board of the Chinese University of Hong Kong. While the paper contains the complete math used, it also illustrates and explains methods to acheive this level of accuracy. And no, it is not exactly machine learning, but hand-crafted strate- gies, combined statistics and other data massaging. After all, it was published five years before things like Tensor Flow were introduced... [2] Generated ASCII Art in 2017 Is seven years enough time to improve upon that previous acheivement? Quoting the previous paper as well as others in its own work, Osamu Akiyama of the Osaka Faculty of Medicine kept the ball rolling. This throws the big guns of machine learning to reach higher skies. Its input data were Japaneses BBS such as 5chan (2chan) or Shitaraba, which extends the ASCII set to all of unicode, notably the CJK set. If the result of the paper are not enough to convince you, the "Bad Ap- ple" often used as a video demo in the Asian market have been converted in its entirety. Something out of reach if doing every frame by hand. The Tensor- Flow and Python code used is released publicly, and an online demo is offered for the curious. [3] [4] [5] [6] [7] Is it so futile? Not so sure. After all, representing anything with a computer is a matter of making a real- ity fit onto something terribly awkward and unnatural: a display. The pixels, the square elements praised for providing a grid to throw data at, are promising, but themself have their quirks to be worked around. For instance, sub-pixel geometry uses the same tech- niques as those presented by these papers for improv- ing the realism of images beyond what a single pixel can offer. It is, for ASCII art like for anything else, a matter of representing something, real or fic- tious, through a medium of some kind. ASCII art has the ability to fit an image somewhere where there could only be text. For the example of a train station concourse with a large split-flap dis- play: for displaying a big arrow at the end of the service, replacing the display by an equally large color screen can be costly and much more power-hungry, while an ASCII arrow on that existing display would be consuming no power for that still image. 1 https://graphicsinterface.org/wp-content/uploads/gi2021-13.pdf 2 http://www.cse.cuhk.edu.hk/~ttwong/papers/asciiart/asciiart.html 3 https://nips2017creativity.github.io/doc/ASCII_Art_Synthesis.pdf 4 https://nips2017creativity.github.io/ 5 https://yewtu.be/watch?v=8GulN69Cgbg 6 https://www.vice.com/en/article/zmymwx/machine-learning-ascii-art-neural-net 7 https://github.com/OsciiArt/DeepAA BIG BROWSER IS WATCHING YOU! 20h ____________________________________________________________ Are you feeling watched all the time? Do you feel un- sure when doing something nasty? It is true, you are watched: By BIG BROWSER. Whenever you use the web, someone else is masturbating to your web history. You want to know how to be able to do nasty things on- line without someone masturbating to it? Come to br- con2022 and find out more. [1] This time online and in presence! See you there! Sincerely yours, 20h Chief Espionage Officer (CEO) 1 gopher://bitreich.org/1/con/2022 Sailing With Grace tgtimes ____________________________________________________________ The sea! Water all around, not a single piece of land around to stand in, only a single boat that becomes one with you, its capitain. Infinite waves under the blue or cloudly sky is all you see for a long trip of many days. Feeling lost, but at the same time united with surrounding nature. After all, the largest part of Earth is covered by the sea. This is the world of Sailing that awaits each of us, for a single trip hosted by a well proven crew, or as a lone sailor braving tempests after tempests. Sailing blogs are definitely a good opportunity to dream, the instant of an article. This blog, Sailing With Grace, has taken the decision of offering all its content through HTTP, but also proxied over Gopher. [1] This recalls an interesting point: it proves that Gopher is not only good for talking about Gopher and computer things, but is also oriented toward the outside. Is it ready to be used by people who are not gopher geeks? It always was to begin with, so why would it not? Are people less able to use computers now than they was before the web came? The discussion is open. 1 gopher://gopher.sailingwithgrace.com sfeed 1.5 Released Hiltjo ____________________________________________________________ sfeed [1] is a tool to convert RSS or Atom feeds from XML to a TAB-separated file. sfeed has the following notable changes compared to 1.4: o sfeed_curses: interrupt waitpid while interactive child program is running. This now handles SIGTERM on sfeed_curses while an interactive child program is running. o sfeed_curses: close stdin before spawning a plumb program in non-interactive mode, which is more intu- itive: the program doesn't seem to hang when it ex- pects input in this case since there is no way to send input anyway. o Properly escape backslashes in the man pages (thanks adc!). o Documentation improvements to the man pages and a progress indicator example script for sfeed_update. I want to thank all people who gave feedback. Thanks, Hiltjo. 1 git://git.codemadness.org/sfeed gopher://codemadness.org/1/git/sfeed https://codemadness.org/releases/sfeed/ gopher://codemadness.org/1/releases/sfeed/ Wireless, wireless everywhere tgtimes ____________________________________________________________ Wires! Cables! Connectors! Computer and electric sys- tems seems to befriend with plugs and sockets. Why is the computer industry running away from them for ev- erything exposed to users? Where do I plug the cable? Everyone needfully face this question at least once, be it the first time they own a computer. From the various connector shapes to choose from, to the various set of proto- col the Universal USB connector supports, cables provoke confusion to cable-haters and computer neo- phytes. Cables are ugly It might not be true for everyone, but computer manufacturers seems to say differently. Starting with the name "wireless", that comes by op- position to wires, supposing they were something to avoid. Cable management is a full time job for dat- acenter jockeys, and a chore for the cable-hating computer user. Cables are immobile Unless making use of an uncommon cable management strategy, objects connected to ca- bles cannot be carried too far away without unplug- ging everything devices are connected to. So here comes wireless. While not frequent in large computer infrastructure, wireless is invading the mar- ket along with battery devices. Using radio waves to make device talk to each other, at various frequen- cies, modulation, datarate and distance. Ready to sacrifice any amount of good engineering to make it- self more seducing to the market, marketting perpetu- ates the same illusion of making computer troubles fade away with wireless. From the Bluetooth protocol swamp of mixed edge-cases and complexity, to the security vulnerabilities of Wi-Fi, to the security vulnerabilities of Bluetooth, to the proprietary but popular protocols like LoRaWan, to the unreliability and unstability as opposed to wires, to the black box of wireless broadband such as UTMS and LTE, Wireless does not have the same fame among developers valuing simplicity and reliability. Even the United Army holds griefs against wireless such as Bluetooth, and disrecommand it for use by mil- itaries: [1] >> Do not use Bluetooth devices to send, receive, store, or process classified information. This means no Bluetooth keybaord, no Bluetooth headset during phone calls, no Bluetooth sharing between the phone and the computer... In other words, no Blue- tooth. Nontheless, wireless is fun, beautiful, and filled with culture. While marketting pushed engineers from the wireless cliff, long before computer came, radio waves were put at good use in the most simple forms: radio communication. From the AM and FM radio sta- tions to listen while on the road, the medium-range boat, airplane, truck, pedestrian talkies, and even satellite communications, hobbyists building-up their own antennas for inter-continental communication, garage door openners and remotely controlled drones... Complex and twisted wireless protocols are only a spe- cial case of radio communication, and simple unobfus- cated methods of communication are possible, and even frequent. Be it a simple and inexpensive RTL SDR dongle receiver [2] or a complete receiver-emitter such as HackRF [3] or LimeSDR, [4] many gears exist for experimenting with radio transmissions. Every year, the American Relay Radio League (ARRL) is publishing a large book focused on radiocommunication, and its chapter 1 section 1 is Do-It-Yourself Wire- less. This is an invitation for everyone to discover or re- discover the universe of electromagnetic fields commu- nication. 1 https://armypubs.army.mil/epubs/DR_pubs/DR_a/pdf/web/ ARN4771_Pam25-2-9_Final_Web.pdf 2 https://www.rtl-sdr.com/ 3 https://greatscottgadgets.com/hackrf/one/ 4 https://limemicro.com/products/boards/limesdr/ Open-Source Breathing tgtimes ____________________________________________________________ The previous opus had a word or two about how diffi- cult it could be to get open hardware medical devices. The Freespireco [1] project aims to bring a respirator device to life as a completely Open Hardware project. The challenge is not coming-up with something that works and is reliable, but instead to provide a struc- ture robust enough to be accepted (and funded) for performing all the necessary certifications needed be- fore being allowed to the medical device market. There are usually categories of criticalities, and an artificial respirator is not escaping to the rule. The organiser of the project have pursued this goal since long, and might likely have a very long road to go. It is essentially a pioneer of Open Hardware for crit- ical medical devices, step-by-step paving up the road toward certification: designing and building devices to test these equipment, issuing standards for data (like a JSON schema received over a serial port di- rectly from the device). The strategy: offering reproducible tests as an anchor for trust. Precious argument for facing big pharma equipment vendors that are having an interest in lock- ing their device down, preventing repair or even in- spection. In a same journey toward braving Goliath: accessing the Outter Space. And it is, as crazy as it looks, far from impossible to contribute to space research even without a diploma: The RTEMS [2] project is open to contribution. But that does not discourage the authors of the respi- rator project to keep going. Not in a blind trust for the medical industry, but in full foresight that no- body would want its mom's life given to a hobbyist toy made in a garage. With this reality in mind, "what- ever it takes" turns into "whatever is done", and the road to certification progresses, one breath at a time. 1 https://www.pubinv.org/project/freespireco/ 2 https://rtems.org/ 20h Presents: Geomyidae 20h ____________________________________________________________ This project existed since a while, and kept improv- ing. In this interview with 20h, he shows us what Geomyidae's got under the hood. >> What is Geomyidae? Geomyidae is a Unix/Linux daemon/service serving the gopher protocol. >> So what is gopher? Gopher here is an internet protocol, which was first developed at the University of Minnesota. After its short success, it declined, but is now striving again to be used for its simplicity and hierarchy. For bet- ter visual display of your gopher experience, use something like links, lynx or sacc. Those are gopher clients. >> How does Geomyidae help with getting started with gopher? The installation of Geomyidae is very simple. You can setup your Geomyidae right away: ____________________________________________________________ git clone git://bitreich.org/geomyidae cd geomyidae make curl -s gopher://localhost:7070 ____________________________________________________________ Yes, curl supports gopher! And it supports gopher and TLS too! >> Are there many alternatives among gopher daemons? Yes, there are many. Some are there due to historical reasons, others have gone out of shape over time. One of the most popular alternatives is pygopherd. >> How does Geomyidae compares to other implementa- tions? Geomyidae offers a unique simple way of expressing go- pher content. See the manpage or the examples in the source for how .gph files are formatted. And it does just what you want it to do. No strange abstraction files like in the original gopher daemons are the de- fault way. In the newest release of Geomyidae compat- ibility scripts were added. But those are to preserve the unique history of gopher. >> Did Geomyidae have significant evolutions since the beginning? Yes. Originally Geomyidae was named gopherd for Plan 9. It then was ported over to Linux. On Linux it was renamed to Geomyidae. During that development much has happened: There were significant speedups (due to the patches and work of other people!), features were added especially in new dynamic content handling. You can easily see all features in the documentation and especially the simple manpage. >> Does Geomyidae work with all gopher clients? Yes. Geomyidae supports the original protocol from the beginning, up to modern gopher with TLS. For the intermediary gopher+ protocol there is a compatibility layer. >> Has NSA inserted a backdoor onto Geomyidae? I am not allowed to tell you. >> How does gopher help with privacy? The gopher protocol has the unique property that all data you send over the line can be easily controlled and seen. This is different to HTTP, where headers, HTML and Javascript got so complex, it is uncontrol- lable. See the gopher onion project [1] for how to combine this with tor for total privacy and anonymity. >> Are there TLS support on some gopher clients al- ready? There is support in curl, mpv/ffmpeg, sacc and more. It is very easy to add TLS support to any client. You simply connect via TLS on the gopher TCP port (de- fault: 70) and if it works, keep that connection open. >> Are there been any evolution of the gopher protocol itself since the beginning of Geomyidae? The technology used is simple. Gopher does not allow requests, which begin with the first bytes of a TLS request. So any proper and old gopher daemon will simply refuse the connection. Then the client is free to reconnect without TLS based on its security config- uration. Any ISDN line will handle such probing re- quests for TLS easily. >> Did Geomyidae have to adapt itself to the gopher protocol? Did it make gopher change? Geomyidae changed the part of gophespace it was able to reach. Many servers run on Geomyidae. There is software written just for Geomyidae and its gph for- mat. The TLS extension of the protocol came from Bi- treich / Geomyidae. We also set the standard to sim- ply use UTF-8 as default representation in gopher menus and so bring it into the 21st century. I can conclude: Yes, Geomyidae changed and will change go- pher. >> Have you seen Geomyidae ever used outside a hobby project? Well, Bitreich is serious in changing the software world. Most of gopherspace is »hobby projects«. But then, most of gopherspace is made from heart blood and love, which makes it part of the life of the authors. >> Is Geomyidae ready for non-hobby uses? Geomyidae is ready for any use. It is stable and op- timized to scale better than the cloud. >> Geomyidae uses ".gph" files. Does it replace the gophermap standard? Yes, in Ge- omyidae it does. Gph is simpler and easier to adapt to, especially when you come from some markup world. >> Does Geomyidae support dynamic pages? Geomyidae supports two forms of dynamic pages: One which uses the gph markup and one, where the script/application outputs raw gopher output. Addi- tionally it supports in the latest release a form of REST, where paths are transformed into arguments to scripts. There is also support for index.dcgi/index.cgi scripts to have better looking paths and URIs. >> Is Geomyidae already packaged in some Linux/BSD distributions? As far as I know it is packaged in gentoo, Archlinux (and more), all BSDs. Since it is so simple to pack- age: Just extract the tarball, run make and make in- stall, the packages are easily made for any package manager. >> What is planned for the next releases of Geomyidae? As of now I have worked through my whole long-standing TODO list for Geomyidae. New ideas will evolve from people sending in patches or through practical need. Geomyidae follows the Bitreich manifesto [2] where a software can be done. >> How to get involved? Getting help, discussing, bug hunting, code contribution, documentation... If anyone wants to get involved, first download Ge- omyidae, run it, have fun using it, creating gopher content. If you run into problems, have patches or suggestions, come on IRC [3] and discuss with us your problem. For e-mail, send such requests to 20h@r- 36.net. All contact is in the manpage too. >> Can I have an ice cream? Yes, you will get one, once we meet again. 1 gopher://bitreich.org/1/onion 2 gopher://bitreich.org/0/documents/bitreich-manifesto.md 3 ircs://irc.bitreich.org/#bitreich-en Embedded Forth Programming tgtimes ____________________________________________________________ Big computers can run large and complex programming languages, so what can small computer run? Compiled languages, in particular those with a small runtime are often chosen. But the interpreted lan- guages also have an audience willing to code with their favorite programming environment for them. Pro- gramming languages as big as Python have their embed- ded counterpart (MicroPython) thanks to significant efforts. They serve their purpose to embedded enthu- siasts as educational and scripting languages to many. But small "language in a nutshell" are fitting right the small resources of microcontrollers. This is the case of Forth and its stack-machine approach. ____________________________________________________________ Mecrisp This implementation immediately targets micro- controllers. See for instance the work of librehacker.com author Christopher Howard. [1] chipFORTH Another implementation of Forth, which were used by NASA [2] for improving reliability of its flight control system, among the mosts critical pieces of software of a shuttle. https://github.com/corecode/forth Among notable Forth projects is Simon "corecode" Schubert's nimble forth implementation as well as hardware code describing the working of a CPU that executes Forth natively [3] https://forth.chat/ If feeling like having a taste of Forth and Forth community, there are several chan- nels featuring forth that you could enjoy, some of which are oriented toward hardware projects directly [4] https://github.com/chmykh/apl-life This is Conway Game of Life in APL in Forth What a long chain! It is APL programming language implemented in Forth, and Con- way game of life implemented in APL https://github.com/remko/waforth Feeling like pushing the irony of "Web" assembly even further? Why not blasting a Forth implementation at it? [5] This proves Forth as the new programming language en vogue http://collapseos.org/ What else does a programming language need to prove itself useful? A kernel? Check! Collapse OS is an operating system target- ting resilience beyond extreme, as it is designed to resist everything around it tearing apart, including the whole civilisation. When nothing remains but wastelands, CollapseOS will be there for a rebirth of civilisation out of computers made from scavenged parts. Civilisation is rising and falling all of the time, just not all parts at the same time. >> Forth is, to my knowledge, the most compact lan- guage allowing high level constructs. -- Collapse OS author. gopher://retroforth.org/ https://retroforth.org/ A forth implemented in C, Python, C#, Nim, JavaScript and Pascal! The C version permits to embed the script into a binary along with the interpreter, for a single-binary deployment process. The more clas- sic way to use it is to use shebangs scripts to have executable scripts. Many smaller utilities can already provide something you needed: http://retroforth.org/examples/Casket-HTTP.retro.html An HTTP server http://retroforth.org/examples/Atua-WWW.retro.html A Gopher to HTTP+HTML Proxy on top of Atua. http://retroforth.org/examples/Atua.retro.html A go- pher server, already listed on the Gopher index of links, the Gopher Lawn [6] http://retroforth.org/examples/7080.retro.html A s https://gitlab.com/goblinrieur/spreedsheet/ A spread- sheet application in the terminal. gopher://forth.works:100 This is a collection of code blocks written in the Retro Forth's author (crc) newest Forth implementation. It is itself served by a gopher server (blocks 203-205 on the list above) in Forth. https://github.com/oriontransfer/pl0-language-tools A PL/0 implementation in Python that can emmit Retro Forth code as ouput. It looks like Forth simplic- ity, portability, stability and speed of execution made it a good candidate as a target language. The PL/0 language is known for the book Algorithms + Data Structures = Programs from Niklaus Wirth, him- self famous for the Wirth Law: >> The hope is that the progress in hardware will cure all software ills. However, a critical observer may observe that software manages to outgrow hardware in size and sluggishness. -- https://en.wikipedia.org/wiki/Wirth's_law https://ribccs.com/candy/ If you were doubting about Forth being fit for the industry, bear in mind that the above is a very-large scale VFX Forth project with over a million lines of code! http://sam-falvo.github.io/kestrel/2016/03/29/vibe-2.2 Why not spin a vi-like text editor itself in forth? See how few code it takes to implement one. https://git.sr.ht/~vertigo/shoehorn An answer to the bootstrapping problem: how to get from no software to a complete system? Which compiler compiles the first compiler? Forth's simplicity is a good candi- date for solving this problem. https://git.sr.ht/~vertigo/forthbox Software environ- ment for computers to base upon right after booting: a system shell in forth with real hardware projects dedicated to it. Think of a LISP machine, but in- stead being a Forth machine. http://deathroadtocanada.com/ This video-game uses Forth as a scripting language. When a whole script- ing language fits on a thumb, putting it everywhere costs nothing! ____________________________________________________________ Such a large tool chest for such a small language. With the Covid, Wars under disguise, and other supply chain troubles, the demand of feature stability rises face to the traditionnal "more features". In these trying times, anyone is welcome to go Forth. 1 gemini://gem.librehacker.com/gemlog/tech/20220331-0.gmi gemini://gem.librehacker.com/gemlog/tech/20220305-0.gmi 2 https://www.forth.com/space-shuttle-instrumentation-interface/ 3 https://github.com/corecode/forth-cpu 4 ircs://irc.hackint.org/#forth-hardware-projects 5 https://el-tramo.be/waforth/ https://el-tramo.be/thurtle/ 6 bitreich.org/1/lawn/c/gopher.gph A new IRC network: IRCNow! tgtimes ____________________________________________________________ A new IRC network is in town! [1] Ever wanted to feel what an early community looks like? The admin jrmu brought the project together, and is currently col- lecting users along the way. Whether you looked for a place to host your own commu- nity, or wanted a see a fresh community be grow from fertile ground, the community is welcoming and active. >> IRCNow: Of the Users, By the Users, For the Users Something else from this community might catch your attention, is its orientation toward being adminis- trated by its users themself: rather than letting the founder handle everything, the community is oriented toward serious teaching of unix command line and sys- tem administration to anyone, from beginners to ad- vanced users seeking improvement. In-person teaching sessions were covered during the LibrePlanet 2022 event [2] with recording of a test- run of the event [3] where future and present hackers met together working our their system administration and community building skills. Linux Magazine also ran an interview giving a good impression about the spirit of the project: [4] Beyond yet another IRC network to chat with, IRCnow offers hosting services for IRC bouncers, Bots, E- Mail, VPN, Code, File Storage, and Shell Accounts. The wiki itself features plenty of technical informa- tion on system administration as a support for its bootcamps, which offers a comfortable step-by-step in- troduction to a complete server administration. [5] I have seen system administrators getting hired knowing less than this! 1 irc://irc.ircnow.net:6667 ircs://irc.ircnow.net:6697 2 https://jrmu.host.ircnow.org/libreplanet/libreplanet.pdf 3 https://0x0.st/oTal.webm - 0h20m: audio starts - 1h15m: talking about Gopher 4 https://www.linux-magazine.com/Issues/2021/249/Interview-IRCNow 5 https://wiki.ircnow.org/index.php?n=Minutemin.Bootcamp Search podcasts via Gopher tgtimes ____________________________________________________________ Do you happen to be a podcast enjoyer? Maybe you con- sidered to have something to listen to on the road or while cooking. Combining many different sources, you may encounter some heirlooms by searching through this gopher front-end for podcast search. [1] The platform aggregates multiple search APIs of RSS link aggregators with a focus on audio podcasts, and extracts the RSS links for you, so you do not have to search throug a dozen of webpages just to find the RSS button. For instance, knowing about the Amp Hour podcast, I tried searching for it: "Amp Hour" in the search field, and bingo! The first result is "The Amp Hour Electronics Podcast", that was quickly added to my list of RSS feeds in a blast. Being based off Gopher, this makes it insanely easy to automate a script searching for podcasts, then down- loading the entries and uploading them to an MP3 player of any kind (dedicated, or as part of a phone or other portable computer). Want to know more about it? One place to discuss about it is the Bitreich IRC server [2] 1 gopher://gopher.icu/1/pod 2 ircs://irc.bitreich.org/#bitreich-en Relics of Fast Fourrier Transform rue_mohr ____________________________________________________________ In 1967, the Kooley-Tukey FFT algorythm (the one we all use now) was written in Fortran. What the hell were they running it on, and what damned data were they feeding into it?! ____________________________________________________________ SUBROUTINE FOUR1(DATA,NN,ISIGN) C THE COOLEY-TUKEY FAST ROURIER TRANSFORM IN USASI BASIC FORTRAN C TRANSFORM(J) = SUM(DATA(I)+W**((I-1)*(J-1)). WHERE I AND J RUN C FROM 1 TO NN AND W = EXP(ISIGN*2*PI+SQRT(-1)/NN). DATA IS ONE- C DIMENSIONAL COMPLEX ARRAY (I.E.: THE REAL AND IMAGINARY PARTS OF C THE DATA ARE LOCATE IMMEDIATELY ADJACENT IN STORAGE, SUCH AS C FORTRAN IV PLACES THEM) WHOSE LENGTH NN IS A POWER OF TWO. ISIGN C IS +1 OR -1, GIVING THE SIGN OF THE TRANSFORM, TRANSFORM VALUES C ARE RETURNED IN ARRAY DATA, REPLACING THE INPUT DATA. THE TIME IS C PROPORTIONAL TO N*LOG2(N), RATHER THAN THE USUAL N**2. WRITTEN BY C NORMAN BRENNER, JUNE 1967, THIS IS THE SHOURTEST VERSION C OF FFT KNOWN THE THE AUTHOR, AND IS INTENDED MAINLY FOR C DEMONSTRATION. PROGRAMS FOUR2 AND FOURT ARE AVAILABLE THAT RUN C TWICE AS FAST AND OPERATE ON MULTIDIMENSIONAL ARRAYS WHOSE C DIMENSIONS ARE NOT RESTRICTED TO POWERS OR TWO. (LOOKING UP SINES C AND COSINES IN A TABLE WILL CUT RUNNING TIME OF FOUR1 BY A THIRD.) C SEE-- IEEE AUDIO TRANSACTIONS (JUNE 1967), SPECIAL ISSUE ON FFT. DIMENSION DATA(1) N=2*NN J=1 DO 5 I=1,N,2 IF(I-J)1,2,2 1 TEMPR=DATA(J) TEMPI=DATA(J+1) DATA(J)=DATA(I) DATA(J+1)=DATA(I+1) DATA(I)=TEMPR DATA(I+1)=TEMPI 2 M=N/2 3 IF(J-M)5,5,4 4 J=J-M M=M/2 IF(M-2)5,3,3 5 J=J+M MMAX=2 6 IF(MMAX-N)7,9,9 7 ISTEP=2*MMAX DO 8 M=1,MMAX,2 THETA=3.1415926535*FLOAT(ISIGN*(M-1))/FLOAT(MMAX) WR=COS(THETA) WI=SIN(THETA) DO 8 I=M,N,ISTEP J=I+MMAX TEMPR=WR*DATA(J)-WI*DATA(J+1) TEMPI=WR*DATA(J+1)+WI*DATA(J) DATA(J)=DATA(I)-TEMPR DATA(J+1)=DATA(I+1)-TEMPI DATA(I)=DATA(I)+TEMPR 8 DATA(I+1)=DATA(I+1)+TEMPI MMAX=ISTEP GO TO 6 9 RETURN END ____________________________________________________________ And no, you cannot get the IEEE document because IEEE broke it up into pages and sells each page individu- ally. ____________________________________________________________ "PROGRAMS FOUR2 AND FOURT ARE AVAILABLE THAT RUN C TWICE AS FAST AND OPERATE ON MULTIDIMENSIONAL ARRAYS WHOSE C DIMENSIONS ARE NOT RESTRICTED TO POWERS OR TWO." ____________________________________________________________ But, this code was easy to port because it was small, so, to this day, we use it. It was ported from For- tran to BASIC, then to C, then to C++ and everything else. Nobody ever actually understood it, so they didn't fix anything. You see, Fortran has no bitwise operateors, so alot of the acrobatics in that code are just doing bitwise operations in regular math. Its absolutely amazing when you tear it apart. I got the code from a bad scan of a document off a military ftp site. What I love, and find halarious, is that this code has been ported and hacked a million times since it was written. But, from the comments, it, itself, is a hack. It is a mash up of cooley and tukeys code. It is a hack, from 1967. Maemo Leste keeps kicking in! tgtimes ____________________________________________________________ The ultimate hacker's toy project: a OpenSource pow- ered hand-held computer. Where to start from? There can be two walls prevent- ing every Linux enthusiast from having its own phone with a "Linux Powered" sticker on it: 1. hardware support: getting Linux to boot on the twisted hardware setups of smartphones can be frus- trating. 2. application support: writing all the tools that make a plain unix shell useable as a phone, that we usually take for granted on a phone operating sys- tem. It may be as simple as a daemon watching in- coming phone call from hardware abstractions (those from in 1.) and playing a ringtone.wav whenever a call comes in, it still has to be written. Same goes for a keyboard application if it uses a touch- screen. Same goes for anything. Since it goes beyond the scope of a week-end hack, collaboration takes place for making these projects happen. Maemo Leste is now existing since more than four years, and keeps being developed at good pace. It even shines where Android does not: it uses mainline Linux kernel instead of forks that never get upgraded nor contributed back to Linux. This means that all software officially supported by Maemo Leste might also be available to many more Linux-based projects. Of course, there are non-official porting efforts for more hardware underway to become a completely sup- ported target. Like it is for every operating system project. Maemo Leste, the project bringing a real UNIX shell where you only had a Android Java ecosystem, featuring GPS chips reverse engineering, and a working phone module. The support for the inexpensive PinePhone means you can get a fully working linux phone in your pocket. Grab it while it is hot, the lack of bloated prebuilt application forced into it by the vendor means it will not catch fire! [1] 1 https://maemo-leste.github.io/maemo-leste-sixteenth-update-november-and- december-2021-january-april-2022.html I Do Not Know, Do Not Ask Me josuah ____________________________________________________________ The post-Snowden era is marked by a new fact that can- not be ignored anymore: NSA (among others) is watching you (among others). Does that change anything to my everyday life? Proba- bly not, they already were before you knew about it. Should I do anything about it? No answer. The eter- nal doubt that modern society is famous for: >> I do not know, do not ask me. That question is weird anyway. Let me go back to my life. That same doubt that occurs when you look up on a su- permarket and see the mess of wires, tubes, cables and neon lighting, barely even hidden, at best painted in white... The worst scene of industrial warehouse, as if taken straight out of the Brazil [1] movie. A landscape that is in such opposition with the images printed onto every food product being sold, picturing what more or less fits the collective imagery of "house of my grandparents in back-country", promising a natural environment and suggest quality, authentic- ity, tradition to the buyer... Pictures of a caring lady baking something appetizing, a honest farmer of- fering a handful of home-grown vegetables or meat... Where did they even find all these landscapes of back- country without phone line everywhere, tracktors, al- sphalt, cattle warehouses, wind turbines to put on these product background images? >> I do not know, do not ask me. That question is weird anyway. Let me go back to my life. How did such a landscape, neon distopia pictures that seems straight out of a /r/cyberpunk [2] post or the latest Blade Runner, got invited into the cozzy bubble of the average citizen doing shopping? [3] Who made these places so ugly? Why do I feel like human is be- ing considered like cattle in these kind of places? >> I do not know, do not ask me. That question is weird anyway. Let me go back to my life. What weird things am I even saying! It is not like an NSA agent is sitting on every metal beams of these su- permarket looking at passersby with an empty gaze. There are cameras though. What do they film? Thieves? Who is checking? Software? Peoples? Are marketting managers looking at these pictures? Of me too? Right now? What do they think of me? Did they look at my hand hesitating between these two products? >> I do not know, do not ask me. That question is weird anyway. Let me go back to my life. Going out, one might encounter someone sitting on its empty backpack, with a small cup filled with coins, looking a bit panicked, looking a bit dirty, looking a bit lost, sometimes even a bit drunk, or is it dizzi- ness from living outside? Occasionally they will ask you for another coin to add to their small collection. Passerbys offer them a lie such as "I do not have cash", or a kind word like "no, sorry", keep walking faster without looking, and eventually stops paying the tax and quickly keep going before they got asked for more. What did happen to them? Did they choose to live here? How can I know it will never happen to me? Why do I feel bad if I do not give them what they ask? Why do I feel bad if I give them what they ask? >> I do not know, do not ask me. That question is weird anyway. Let me go back to my life. Let's not get fooled or reverse the roles here: Writ- ing this, I am not asking these questions to you, nei- ther you are asking these questions to yourself. The places we live in are suggesting these questions. By building a supermarket out of a warehouse but dis- playing eye-catchy pictures of a scenery that does not even exist, it is obvious that people will notice the disbalance between the two. By placing cameras filming every square meter of such a place, or even a whole city, it is obvious that peo- ple will wonder at some point, who is behind the screen reviewing these images. The questions are left open. Nothing is made to even give hint about the answer. We are left in the doubt, letting some comfort themself with "it is just in case of a burglary, only a police officer is going to watch" or other claim "they are using these images to study how we think to better control us!"; claims based upon convictions, not facts. The technician installing these cameras up there has no hint either, its manager just followed the recom- mandations of the mothership company, itself getting directions from the investor group who purchased the brand, who themself are only trying to keep-up with the trends in that domain. Why would I care? I stopped to care about these silly questions since long. I came back to the real world for the better. I live my life ignoring what happens around me and it works plenty well. >> So why is that, at deep down, in the middle of my gut, there is a voice whispering to me that something's wrong. [4] The thing with living like an ant in the anthill is: you do not get too many answers about how the whole anthill works. 1 https://www.imdb.com/title/tt0088846/ 2 https://teddit.net/r/cyberpunk 3 https://theuws.com/wp-content/uploads/2011/12/supermarkt.jpg 4 https://yewtu.be/watch?v=QcSlAihVM0Q Mallumo Encrypted IRC darkfi ____________________________________________________________ IRC is part of the protocols that survived to the ad- vent of the Web. It still has users, it still has new network and com- munities initiatives springing out, it is alive. One single little touch it lacks is end-to-end encryp- tion. Without it, it is perfect for public communi- ties such as software projects discussions and support chat, live event chats... but private 1-to-1 communi- cation could suddenly become a good candidate for end-to-end encryption. Part of the DarkFi project, this is what Mallumo [1] brings in a simple piece of code using libNaCl, the crypto library from Dan Bernstein, author of ED25519 (in its repackaged libsodium form). This is state- of-the-art, well-proven and fast cryptography for end-to-end communication. With this plug-in dropped in the plugin folder, all private communication start by a simple key exchange over normal IRC, and the conversation upgrades to nacl-encrypted messages over regular IRC. There might not be any simpler way to encrypt peer- to-peer communication online. 1 https://github.com/darkrenaissance/mallumo Publishing in The Gopher Times you ____________________________________________________________ Want your article published? Want to announce some- thing to the Gopher world? Directly related to Gopher or not, reach us on IRC with an article in any format, we will handle the rest. ircs://irc.bitreich.org/#bitreich-en gopher://bitreich.org/1/tgtimes/ git://bitreich.org/tgtimes/ Did you notice the new layout? We now can jump be- tween single and double column as it is more fit: Some large code chunks will not fit in a two-column layout, but text is more pleasant to read on two columns. ]]> 2022-06-28T13:59:43+0200 gopher://bitreich.org/9/tgtimes/archive/2022-06-28-errata1 <![CDATA[2022-06-28-errata1]]> The Gopher Times Authors There is already a wide variety of topics registered, from medicine to simple software over geology and hopefully a special greeting from our science supervi- sor Prof. Skildgaard who wants to give advices to all of us humans. See you online and in presence! Sincerely yours, 20h Chief Conference Officer (CCO) 1 gopher://bitreich.org/1/con/2022 Animated ASCII art linuxconsole ____________________________________________________________ With all the history of ASCII art and demoscene, it would be a shame if noone ever tried to combine the two in animated ASCII art. Courtesy of textfiles.com, we can browse through a collection of 93 animated ASCII pieces of arts. [1] They are also mirrored at the bitreich gopher site [2] The animation speed will likely be too high for a ter- minal, and can be slowed down with the throttle(1) program as advised by linuxconsole.net, or with pv(1) as below: 1 http://artscene.textfiles.com/vt100/ http://linuxconsole.net/ascii_art.html 2 gopher://bitreich.org/1/vt100/animations/ ____________________________________________________________ curl -s gopher://bitreich.org/1/vt100/animations/twilight.vt | pv -qL3000 ____________________________________________________________ You may use the "reset" command to get your terminal normal again after watching. Some are just a pun, a few frames to only give impres- sion of movement, while other might be closer to a short animated movie. Talking of which, long movies were also done: https://www.asciimation.co.nz/ telnet towel.blinkenlights.nl These characters transmitted through one protocol or another, whispers to us, through our terminal screen, tales from the imagination of plain text artists. Prof. Skildgaard: Only Turtle Fans 20h ____________________________________________________________ I am happy to announce, that the scientific head of bitreich, Prof. Skildgaard, the professor for slow sciences at the Aarhus university in Denmark, now has opened his own website [1] You can see many #turtlefan pictures. [2] Please recommend his work! He has done so much for us, like reviewing all entries to the last and the coming brcon. This takes ages! Sincerely yours, 20h Chief Slowness Executive (CSE) 1 http://onlyturtlefans.com/ 2 #turtlefan: gopher://bitreich.org/I/memecache/turtlefan.png Synthetic ASCII Art tgtimes ____________________________________________________________ When an entirely new way to solve problems is discov- ered, all sorts of medias, and not only the tech- oriented ones, are fond to publish abundantly about it. Be it quantum computing, blockchains, machine learning... Shortly after a new big toys like these comes-up, hackers come, and start experimenting with it, sometimes coming-up with entirely new way to use it. This time we are reviewing the combo of Machine Learn- ing and ASCII art. I was expecting to present cute attempts at drawing images with computer-made text, but this is nothing of the sort. Be prepared to see Science at the service of Art. Generated Typewriter Art This research paper (no less!) shows that it is possible to write software for placing characters, later typed during 6 hours by a human operator (for this example). It is un- settling to see details much smaller than the char- acters themself be drawn on paper, along with shades of grey of various intensities. [1] Generated ASCII Art in 2010 This is possibly the state of the art of 2010 technology. It was announced in the yearly conference SIGGRAPH hence presented to an audience full of computer graphics engineers. The work of three researchers from Hong Kong, Xuemiao Xu, Linling Zhang and Tien-Tsin Wong, shows results of surprising accuracy. The story does not tell whether there ever was a job offer "looking for ASCII artists for a scientific experiment" posted on the job board of the Chinese University of Hong Kong. While the paper contains the complete math used, it also illustrates and explains methods to achieve this level of accuracy. And no, it is not exactly machine learning, but hand-crafted strate- gies, combined statistics and other data massaging. After all, it was published five years before things like Tensor Flow were introduced... [2] Generated ASCII Art in 2017 Is seven years enough time to improve upon that previous achievement? Quoting the previous paper as well as others in its own work, Osamu Akiyama of the Osaka Faculty of Medicine kept the ball rolling. This throws the big guns of machine learning to reach higher skies. Its input data were Japaneses BBS such as 5chan (2chan) or Shitaraba, which extends the ASCII set to all of unicode, notably the CJK set. If the result of the paper are not enough to convince you, the "Bad Ap- ple" often used as a video demo in the Asian market have been converted in its entirety. Something out of reach if doing every frame by hand. The Tensor- Flow and Python code used is released publicly, and an online demo is offered for the curious. [3] [4] [5] [6] [7] Is it so futile? Not so sure. After all, representing anything with a computer is a matter of making a real- ity fit onto something terribly awkward and unnatural: a display. The pixels, the square elements praised for providing a grid to throw data at, are promising, but themself have their quirks to be worked around. For instance, sub-pixel geometry uses the same tech- niques as those presented by these papers for improv- ing the realism of images beyond what a single pixel can offer. It is, for ASCII art like for anything else, a matter of representing something, real or fic- tious, through a medium of some kind. ASCII art has the ability to fit an image somewhere where there could only be text. For the example of a train station concourse with a large split-flap dis- play: for displaying a big arrow at the end of the service, replacing the display by an equally large color screen can be costly and much more power-hungry, while an ASCII arrow on that existing display would be consuming no power for that still image. 1 https://graphicsinterface.org/wp-content/uploads/gi2021-13.pdf 2 http://www.cse.cuhk.edu.hk/~ttwong/papers/asciiart/asciiart.html 3 https://nips2017creativity.github.io/doc/ASCII_Art_Synthesis.pdf 4 https://nips2017creativity.github.io/ 5 https://yewtu.be/watch?v=8GulN69Cgbg 6 https://www.vice.com/en/article/zmymwx/machine-learning-ascii-art-neural-net 7 https://github.com/OsciiArt/DeepAA BIG BROWSER IS WATCHING YOU! 20h ____________________________________________________________ Are you feeling watched all the time? Do you feel un- sure when doing something nasty? It is true, you are watched: By BIG BROWSER. Whenever you use the web, someone else is masturbating to your web history. You want to know how to be able to do nasty things on- line without someone masturbating to it? Come to br- con2022 and find out more. [1] This time online and in presence! See you there! Sincerely yours, 20h Chief Espionage Officer (CEO) 1 gopher://bitreich.org/1/con/2022 Sailing With Grace tgtimes ____________________________________________________________ The sea! Water all around, not a single piece of land around to stand in, only a single boat that becomes one with you, its capitain. Infinite waves under the blue or cloudly sky is all you see for a long trip of many days. Feeling lost, but at the same time united with surrounding nature. After all, the largest part of Earth is covered by the sea. This is the world of Sailing that awaits each of us, for a single trip hosted by a well proven crew, or as a lone sailor braving tempests after tempests. Sailing blogs are definitely a good opportunity to dream, the instant of an article. This blog, Sailing With Grace, has taken the decision of offering all its content through HTTP, but also proxied over Gopher. [1] This recalls an interesting point: it proves that Gopher is not only good for talking about Gopher and computer things, but is also oriented toward the outside. Is it ready to be used by people who are not gopher geeks? It always was to begin with, so why would it not? Are people less able to use computers now than they was before the web came? The discussion is open. 1 gopher://gopher.sailingwithgrace.com sfeed 1.5 Released Hiltjo ____________________________________________________________ sfeed [1] is a tool to convert RSS or Atom feeds from XML to a TAB-separated file. sfeed has the following notable changes compared to 1.4: o sfeed_curses: interrupt waitpid while interactive child program is running. This now handles SIGTERM on sfeed_curses while an interactive child program is running. o sfeed_curses: close stdin before spawning a plumb program in non-interactive mode, which is more intu- itive: the program doesn't seem to hang when it ex- pects input in this case since there is no way to send input anyway. o Properly escape backslashes in the man pages (thanks adc!). o Documentation improvements to the man pages and a progress indicator example script for sfeed_update. I want to thank all people who gave feedback. Thanks, Hiltjo. 1 git://git.codemadness.org/sfeed gopher://codemadness.org/1/git/sfeed https://codemadness.org/releases/sfeed/ gopher://codemadness.org/1/releases/sfeed/ Wireless, wireless everywhere tgtimes ____________________________________________________________ Wires! Cables! Connectors! Computer and electric sys- tems seems to befriend with plugs and sockets. Why is the computer industry running away from them for ev- erything exposed to users? Where do I plug the cable? Everyone needfully face this question at least once, be it the first time they own a computer. From the various connector shapes to choose from, to the various set of proto- col the Universal USB connector supports, cables provoke confusion to cable-haters and computer neo- phytes. Cables are ugly It might not be true for everyone, but computer manufacturers seems to say differently. Starting with the name "wireless", that comes by op- position to wires, supposing they were something to avoid. Cable management is a full time job for dat- acenter jockeys, and a chore for the cable-hating computer user. Cables are immobile Unless making use of an uncommon cable management strategy, objects connected to ca- bles cannot be carried too far away without unplug- ging everything devices are connected to. So here comes wireless. While not frequent in large computer infrastructure, wireless is invading the mar- ket along with battery devices. Using radio waves to make device talk to each other, at various frequen- cies, modulation, datarate and distance. Ready to sacrifice any amount of good engineering to make it- self more seducing to the market, marketing perpetu- ates the same illusion of making computer troubles fade away with wireless. From the Bluetooth protocol swamp of mixed edge-cases and complexity, to the security vulnerabilities of Wi-Fi, to the security vulnerabilities of Bluetooth, to the proprietary but popular protocols like LoRaWan, to the unreliability and unstability as opposed to wires, to the black box of wireless broadband such as UTMS and LTE, Wireless does not have the same fame among developers valuing simplicity and reliability. Even the United Army holds griefs against wireless such as Bluetooth, and disrecommends it for use by militaries: [1] >> Do not use Bluetooth devices to send, receive, store, or process classified information. This means no Bluetooth keyboard, no Bluetooth headset during phone calls, no Bluetooth sharing between the phone and the computer... In other words, no Blue- tooth. Nontheless, wireless is fun, beautiful, and filled with culture. While marketting pushed engineers from the wireless cliff, long before computer came, radio waves were put at good use in the most simple forms: radio communication. From the AM and FM radio sta- tions to listen while on the road, the medium-range boat, airplane, truck, pedestrian talkies, and even satellite communications, hobbyists building-up their own antennas for inter-continental communication, garage door openners and remotely controlled drones... Complex and twisted wireless protocols are only a spe- cial case of radio communication, and simple unobfus- cated methods of communication are possible, and even frequent. Be it a simple and inexpensive RTL SDR dongle receiver [2] or a complete receiver-emitter such as HackRF [3] or LimeSDR, [4] many gears exist for experimenting with radio transmissions. Every year, the American Relay Radio League (ARRL) is publishing a large book focused on radiocommunication, and its chapter 1 section 1 is Do-It-Yourself Wire- less. This is an invitation for everyone to discover or re- discover the universe of electromagnetic fields commu- nication. 1 https://armypubs.army.mil/epubs/DR_pubs/DR_a/pdf/web/ ARN4771_Pam25-2-9_Final_Web.pdf 2 https://www.rtl-sdr.com/ 3 https://greatscottgadgets.com/hackrf/one/ 4 https://limemicro.com/products/boards/limesdr/ Open-Source Breathing tgtimes ____________________________________________________________ The previous opus had a word or two about how diffi- cult it could be to get open hardware medical devices. The Freespireco [1] project aims to bring a respirator device to life as a completely Open Hardware project. The challenge is not coming-up with something that works and is reliable, but instead to provide a struc- ture robust enough to be accepted (and funded) for performing all the necessary certifications needed be- fore being allowed to the medical device market. There are usually categories of criticalities, and an artificial respirator is not escaping to the rule. The organiser of the project have pursued this goal since long, and might likely have a very long road to go. It is essentially a pioneer of Open Hardware for crit- ical medical devices, step-by-step paving up the road toward certification: designing and building devices to test these equipment, issuing standards for data (like a JSON schema received over a serial port di- rectly from the device). The strategy: offering reproducible tests as an anchor for trust. Precious argument for facing big pharma equipment vendors that are having an interest in lock- ing their device down, preventing repair or even in- spection. In a same journey toward braving Goliath: accessing the Outter Space. And it is, as crazy as it looks, far from impossible to contribute to space research even without a diploma: The RTEMS [2] project is open to contribution. But that does not discourage the authors of the respi- rator project to keep going. Not in a blind trust for the medical industry, but in full foresight that no- body would want its mom's life given to a hobbyist toy made in a garage. With this reality in mind, "what- ever it takes" turns into "whatever is done", and the road to certification progresses, one breath at a time. 1 https://www.pubinv.org/project/freespireco/ 2 https://rtems.org/ 20h Presents: Geomyidae 20h ____________________________________________________________ This project existed since a while, and kept improv- ing. In this interview with 20h, he shows us what Geomyidae's got under the hood. >> What is Geomyidae? Geomyidae is a Unix/Linux daemon/service serving the gopher protocol. >> So what is gopher? Gopher here is an internet protocol, which was first developed at the University of Minnesota. After its short success, it declined, but is now striving again to be used for its simplicity and hierarchy. For bet- ter visual display of your gopher experience, use something like links, lynx or sacc. Those are gopher clients. >> How does Geomyidae help with getting started with gopher? The installation of Geomyidae is very simple. You can setup your Geomyidae right away: ____________________________________________________________ git clone git://bitreich.org/geomyidae cd geomyidae make curl -s gopher://localhost:7070 ____________________________________________________________ Yes, curl supports gopher! And it supports gopher and TLS too! >> Are there many alternatives among gopher daemons? Yes, there are many. Some are there due to historical reasons, others have gone out of shape over time. One of the most popular alternatives is pygopherd. >> How does Geomyidae compares to other implementa- tions? Geomyidae offers a unique simple way of expressing go- pher content. See the manpage or the examples in the source for how .gph files are formatted. And it does just what you want it to do. No strange abstraction files like in the original gopher daemons are the de- fault way. In the newest release of Geomyidae compat- ibility scripts were added. But those are to preserve the unique history of gopher. >> Did Geomyidae have significant evolutions since the beginning? Yes. Originally Geomyidae was named gopherd for Plan 9. It then was ported over to Linux. On Linux it was renamed to Geomyidae. During that development much has happened: There were significant speedups (due to the patches and work of other people!), features were added especially in new dynamic content handling. You can easily see all features in the documentation and especially the simple manpage. >> Does Geomyidae work with all gopher clients? Yes. Geomyidae supports the original protocol from the beginning, up to modern gopher with TLS. For the intermediary gopher+ protocol there is a compatibility layer. >> Has NSA inserted a backdoor onto Geomyidae? I am not allowed to tell you. >> How does gopher help with privacy? The gopher protocol has the unique property that all data you send over the line can be easily controlled and seen. This is different to HTTP, where headers, HTML and Javascript got so complex, it is uncontrol- lable. See the gopher onion project [1] for how to combine this with tor for total privacy and anonymity. >> Are there TLS support on some gopher clients al- ready? There is support in curl, mpv/ffmpeg, sacc and more. It is very easy to add TLS support to any client. You simply connect via TLS on the gopher TCP port (de- fault: 70) and if it works, keep that connection open. >> Are there been any evolution of the gopher protocol itself since the beginning of Geomyidae? The technology used is simple. Gopher does not allow requests, which begin with the first bytes of a TLS request. So any proper and old gopher daemon will simply refuse the connection. Then the client is free to reconnect without TLS based on its security config- uration. Any ISDN line will handle such probing re- quests for TLS easily. >> Did Geomyidae have to adapt itself to the gopher protocol? Did it make gopher change? Geomyidae changed the part of gophespace it was able to reach. Many servers run on Geomyidae. There is software written just for Geomyidae and its gph for- mat. The TLS extension of the protocol came from Bi- treich / Geomyidae. We also set the standard to sim- ply use UTF-8 as default representation in gopher menus and so bring it into the 21st century. I can conclude: Yes, Geomyidae changed and will change go- pher. >> Have you seen Geomyidae ever used outside a hobby project? Well, Bitreich is serious in changing the software world. Most of gopherspace is »hobby projects«. But then, most of gopherspace is made from heart blood and love, which makes it part of the life of the authors. >> Is Geomyidae ready for non-hobby uses? Geomyidae is ready for any use. It is stable and op- timized to scale better than the cloud. >> Geomyidae uses ".gph" files. Does it replace the gophermap standard? Yes, in Ge- omyidae it does. Gph is simpler and easier to adapt to, especially when you come from some markup world. >> Does Geomyidae support dynamic pages? Geomyidae supports two forms of dynamic pages: One which uses the gph markup and one, where the script/application outputs raw gopher output. Addi- tionally it supports in the latest release a form of REST, where paths are transformed into arguments to scripts. There is also support for index.dcgi/index.cgi scripts to have better looking paths and URIs. >> Is Geomyidae already packaged in some Linux/BSD distributions? As far as I know it is packaged in gentoo, Archlinux (and more), all BSDs. Since it is so simple to pack- age: Just extract the tarball, run make and make in- stall, the packages are easily made for any package manager. >> What is planned for the next releases of Geomyidae? As of now I have worked through my whole long-standing TODO list for Geomyidae. New ideas will evolve from people sending in patches or through practical need. Geomyidae follows the Bitreich manifesto [2] where a software can be done. >> How to get involved? Getting help, discussing, bug hunting, code contribution, documentation... If anyone wants to get involved, first download Ge- omyidae, run it, have fun using it, creating gopher content. If you run into problems, have patches or suggestions, come on IRC [3] and discuss with us your problem. For e-mail, send such requests to 20h@r- 36.net. All contact is in the manpage too. >> Can I have an ice cream? Yes, you will get one, once we meet again. 1 gopher://bitreich.org/1/onion 2 gopher://bitreich.org/0/documents/bitreich-manifesto.md 3 ircs://irc.bitreich.org/#bitreich-en Embedded Forth Programming tgtimes ____________________________________________________________ Big computers can run large and complex programming languages, so what can small computer run? Compiled languages, in particular those with a small runtime are often chosen. But the interpreted lan- guages also have an audience willing to code with their favorite programming environment for them. Pro- gramming languages as big as Python have their embed- ded counterpart (MicroPython) thanks to significant efforts. They serve their purpose to embedded enthu- siasts as educational and scripting languages to many. But small "language in a nutshell" are fitting right the small resources of microcontrollers. This is the case of Forth and its stack-machine approach. ____________________________________________________________ Mecrisp This implementation immediately targets micro- controllers. See for instance the work of librehacker.com author Christopher Howard. [1] chipFORTH Another implementation of Forth, which were used by NASA [2] for improving reliability of its flight control system, among the mosts critical pieces of software of a shuttle. https://github.com/corecode/forth Among notable Forth projects is Simon "corecode" Schubert's nimble forth implementation as well as hardware code describing the working of a CPU that executes Forth natively [3] https://forth.chat/ If feeling like having a taste of Forth and Forth community, there are several chan- nels featuring forth that you could enjoy, some of which are oriented toward hardware projects directly [4] https://github.com/chmykh/apl-life This is Conway Game of Life in APL in Forth What a long chain! It is APL programming language implemented in Forth, and Con- way game of life implemented in APL https://github.com/remko/waforth Feeling like pushing the irony of "Web" assembly even further? Why not blasting a Forth implementation at it? [5] This proves Forth as the new programming language en vogue http://collapseos.org/ What else does a programming language need to prove itself useful? A kernel? Check! Collapse OS is an operating system target- ting resilience beyond extreme, as it is designed to resist everything around it tearing apart, including the whole civilisation. When nothing remains but wastelands, CollapseOS will be there for a rebirth of civilisation out of computers made from scavenged parts. Civilisation is rising and falling all of the time, just not all parts at the same time. >> Forth is, to my knowledge, the most compact lan- guage allowing high level constructs. -- Collapse OS author. gopher://retroforth.org/ https://retroforth.org/ A forth implemented in C, Python, C#, Nim, JavaScript and Pascal! The C version permits to embed the script into a binary along with the interpreter, for a single-binary deployment process. The more clas- sic way to use it is to use shebangs scripts to have executable scripts. Many smaller utilities can already provide something you needed: http://retroforth.org/examples/Casket-HTTP.retro.html An HTTP server http://retroforth.org/examples/Atua-WWW.retro.html A Gopher to HTTP+HTML Proxy on top of Atua. http://retroforth.org/examples/Atua.retro.html A go- pher server, already listed on the Gopher index of links, the Gopher Lawn [6] http://retroforth.org/examples/7080.retro.html A s https://gitlab.com/goblinrieur/spreedsheet/ A spread- sheet application in the terminal. gopher://forth.works:100 This is a collection of code blocks written in the Retro Forth's author (crc) newest Forth implementation. It is itself served by a gopher server (blocks 203-205 on the list above) in Forth. https://github.com/oriontransfer/pl0-language-tools A PL/0 implementation in Python that can emmit Retro Forth code as ouput. It looks like Forth simplic- ity, portability, stability and speed of execution made it a good candidate as a target language. The PL/0 language is known for the book Algorithms + Data Structures = Programs from Niklaus Wirth, him- self famous for the Wirth Law: >> The hope is that the progress in hardware will cure all software ills. However, a critical observer may observe that software manages to outgrow hardware in size and sluggishness. -- https://en.wikipedia.org/wiki/Wirth's_law https://ribccs.com/candy/ If you were doubting about Forth being fit for the industry, bear in mind that the above is a very-large scale VFX Forth project with over a million lines of code! http://sam-falvo.github.io/kestrel/2016/03/29/vibe-2.2 Why not spin a vi-like text editor itself in forth? See how few code it takes to implement one. https://git.sr.ht/~vertigo/shoehorn An answer to the bootstrapping problem: how to get from no software to a complete system? Which compiler compiles the first compiler? Forth's simplicity is a good candi- date for solving this problem. https://git.sr.ht/~vertigo/forthbox Software environ- ment for computers to base upon right after booting: a system shell in forth with real hardware projects dedicated to it. Think of a LISP machine, but in- stead being a Forth machine. http://deathroadtocanada.com/ This video-game uses Forth as a scripting language. When a whole script- ing language fits on a thumb, putting it everywhere costs nothing! ____________________________________________________________ Such a large tool chest for such a small language. With the Covid, Wars under disguise, and other supply chain troubles, the demand of feature stability rises face to the traditionnal "more features". In these trying times, anyone is welcome to go Forth. 1 gemini://gem.librehacker.com/gemlog/tech/20220331-0.gmi gemini://gem.librehacker.com/gemlog/tech/20220305-0.gmi 2 https://www.forth.com/space-shuttle-instrumentation-interface/ 3 https://github.com/corecode/forth-cpu 4 ircs://irc.hackint.org/#forth-hardware-projects 5 https://el-tramo.be/waforth/ https://el-tramo.be/thurtle/ 6 bitreich.org/1/lawn/c/gopher.gph A new IRC network: IRCNow! tgtimes ____________________________________________________________ A new IRC network is in town! [1] Ever wanted to feel what an early community looks like? The admin jrmu brought the project together, and is currently col- lecting users along the way. Whether you looked for a place to host your own commu- nity, or wanted a see a fresh community be grow from fertile ground, the community is welcoming and active. >> IRCNow: Of the Users, By the Users, For the Users Something else from this community might catch your attention, is its orientation toward being adminis- trated by its users themself: rather than letting the founder handle everything, the community is oriented toward serious teaching of unix command line and sys- tem administration to anyone, from beginners to ad- vanced users seeking improvement. In-person teaching sessions were covered during the LibrePlanet 2022 event [2] with recording of a test- run of the event [3] where future and present hackers met together working our their system administration and community building skills. Linux Magazine also ran an interview giving a good impression about the spirit of the project: [4] Beyond yet another IRC network to chat with, IRCnow offers hosting services for IRC bouncers, Bots, E- Mail, VPN, Code, File Storage, and Shell Accounts. The wiki itself features plenty of technical informa- tion on system administration as a support for its bootcamps, which offers a comfortable step-by-step in- troduction to a complete server administration. [5] I have seen system administrators getting hired knowing less than this! 1 irc://irc.ircnow.net:6667 ircs://irc.ircnow.net:6697 2 https://jrmu.host.ircnow.org/libreplanet/libreplanet.pdf 3 https://0x0.st/oTal.webm - 0h20m: audio starts - 1h15m: talking about Gopher 4 https://www.linux-magazine.com/Issues/2021/249/Interview-IRCNow 5 https://wiki.ircnow.org/index.php?n=Minutemin.Bootcamp Search podcasts via Gopher tgtimes ____________________________________________________________ Do you happen to be a podcast enjoyer? Maybe you con- sidered to have something to listen to on the road or while cooking. Combining many different sources, you may encounter some heirlooms by searching through this gopher front-end for podcast search. [1] The platform aggregates multiple search APIs of RSS link aggregators with a focus on audio podcasts, and extracts the RSS links for you, so you do not have to search throug a dozen of webpages just to find the RSS button. For instance, knowing about the Amp Hour podcast, I tried searching for it: "Amp Hour" in the search field, and bingo! The first result is "The Amp Hour Electronics Podcast", that was quickly added to my list of RSS feeds in a blast. Being based off Gopher, this makes it insanely easy to automate a script searching for podcasts, then down- loading the entries and uploading them to an MP3 player of any kind (dedicated, or as part of a phone or other portable computer). Want to know more about it? One place to discuss about it is the Bitreich IRC server [2] 1 gopher://gopher.icu/1/pod 2 ircs://irc.bitreich.org/#bitreich-en Relics of Fast Fourrier Transform rue_mohr ____________________________________________________________ In 1967, the Kooley-Tukey FFT algorythm (the one we all use now) was written in Fortran. What the hell were they running it on, and what damned data were they feeding into it?! ____________________________________________________________ SUBROUTINE FOUR1(DATA,NN,ISIGN) C THE COOLEY-TUKEY FAST ROURIER TRANSFORM IN USASI BASIC FORTRAN C TRANSFORM(J) = SUM(DATA(I)+W**((I-1)*(J-1)). WHERE I AND J RUN C FROM 1 TO NN AND W = EXP(ISIGN*2*PI+SQRT(-1)/NN). DATA IS ONE- C DIMENSIONAL COMPLEX ARRAY (I.E.: THE REAL AND IMAGINARY PARTS OF C THE DATA ARE LOCATE IMMEDIATELY ADJACENT IN STORAGE, SUCH AS C FORTRAN IV PLACES THEM) WHOSE LENGTH NN IS A POWER OF TWO. ISIGN C IS +1 OR -1, GIVING THE SIGN OF THE TRANSFORM, TRANSFORM VALUES C ARE RETURNED IN ARRAY DATA, REPLACING THE INPUT DATA. THE TIME IS C PROPORTIONAL TO N*LOG2(N), RATHER THAN THE USUAL N**2. WRITTEN BY C NORMAN BRENNER, JUNE 1967, THIS IS THE SHOURTEST VERSION C OF FFT KNOWN THE THE AUTHOR, AND IS INTENDED MAINLY FOR C DEMONSTRATION. PROGRAMS FOUR2 AND FOURT ARE AVAILABLE THAT RUN C TWICE AS FAST AND OPERATE ON MULTIDIMENSIONAL ARRAYS WHOSE C DIMENSIONS ARE NOT RESTRICTED TO POWERS OR TWO. (LOOKING UP SINES C AND COSINES IN A TABLE WILL CUT RUNNING TIME OF FOUR1 BY A THIRD.) C SEE-- IEEE AUDIO TRANSACTIONS (JUNE 1967), SPECIAL ISSUE ON FFT. DIMENSION DATA(1) N=2*NN J=1 DO 5 I=1,N,2 IF(I-J)1,2,2 1 TEMPR=DATA(J) TEMPI=DATA(J+1) DATA(J)=DATA(I) DATA(J+1)=DATA(I+1) DATA(I)=TEMPR DATA(I+1)=TEMPI 2 M=N/2 3 IF(J-M)5,5,4 4 J=J-M M=M/2 IF(M-2)5,3,3 5 J=J+M MMAX=2 6 IF(MMAX-N)7,9,9 7 ISTEP=2*MMAX DO 8 M=1,MMAX,2 THETA=3.1415926535*FLOAT(ISIGN*(M-1))/FLOAT(MMAX) WR=COS(THETA) WI=SIN(THETA) DO 8 I=M,N,ISTEP J=I+MMAX TEMPR=WR*DATA(J)-WI*DATA(J+1) TEMPI=WR*DATA(J+1)+WI*DATA(J) DATA(J)=DATA(I)-TEMPR DATA(J+1)=DATA(I+1)-TEMPI DATA(I)=DATA(I)+TEMPR 8 DATA(I+1)=DATA(I+1)+TEMPI MMAX=ISTEP GO TO 6 9 RETURN END ____________________________________________________________ And no, you cannot get the IEEE document because IEEE broke it up into pages and sells each page individu- ally. ____________________________________________________________ "PROGRAMS FOUR2 AND FOURT ARE AVAILABLE THAT RUN C TWICE AS FAST AND OPERATE ON MULTIDIMENSIONAL ARRAYS WHOSE C DIMENSIONS ARE NOT RESTRICTED TO POWERS OR TWO." ____________________________________________________________ But, this code was easy to port because it was small, so, to this day, we use it. It was ported from For- tran to BASIC, then to C, then to C++ and everything else. Nobody ever actually understood it, so they didn't fix anything. You see, Fortran has no bitwise operateors, so alot of the acrobatics in that code are just doing bitwise operations in regular math. Its absolutely amazing when you tear it apart. I got the code from a bad scan of a document off a military ftp site. What I love, and find halarious, is that this code has been ported and hacked a million times since it was written. But, from the comments, it, itself, is a hack. It is a mash up of cooley and tukeys code. It is a hack, from 1967. Maemo Leste keeps kicking in! tgtimes ____________________________________________________________ The ultimate hacker's toy project: a OpenSource pow- ered hand-held computer. Where to start from? There can be two walls prevent- ing every Linux enthusiast from having its own phone with a "Linux Powered" sticker on it: 1. hardware support: getting Linux to boot on the twisted hardware setups of smartphones can be frus- trating. 2. application support: writing all the tools that make a plain unix shell useable as a phone, that we usually take for granted on a phone operating sys- tem. It may be as simple as a daemon watching in- coming phone call from hardware abstractions (those from in 1.) and playing a ringtone.wav whenever a call comes in, it still has to be written. Same goes for a keyboard application if it uses a touch- screen. Same goes for anything. Since it goes beyond the scope of a week-end hack, collaboration takes place for making these projects happen. Maemo Leste is now existing since more than four years, and keeps being developed at good pace. It even shines where Android does not: it uses mainline Linux kernel instead of forks that never get upgraded nor contributed back to Linux. This means that all software officially supported by Maemo Leste might also be available to many more Linux-based projects. Of course, there are non-official porting efforts for more hardware underway to become a completely sup- ported target. Like it is for every operating system project. Maemo Leste, the project bringing a real UNIX shell where you only had a Android Java ecosystem, featuring GPS chips reverse engineering, and a working phone module. The support for the inexpensive PinePhone means you can get a fully working linux phone in your pocket. Grab it while it is hot, the lack of bloated prebuilt application forced into it by the vendor means it will not catch fire! [1] 1 https://maemo-leste.github.io/maemo-leste-sixteenth-update-november-and- december-2021-january-april-2022.html I Do Not Know, Do Not Ask Me josuah ____________________________________________________________ The post-Snowden era is marked by a new fact that can- not be ignored anymore: NSA (among others) is watching you (among others). Does that change anything to my everyday life? Proba- bly not, they already were before you knew about it. Should I do anything about it? No answer. The eter- nal doubt that modern society is famous for: >> I do not know, do not ask me. That question is weird anyway. Let me go back to my life. That same doubt that occurs when you look up on a su- permarket and see the mess of wires, tubes, cables and neon lighting, barely even hidden, at best painted in white... The worst scene of industrial warehouse, as if taken straight out of the Brazil [1] movie. A landscape that is in such opposition with the images printed onto every food product being sold, picturing what more or less fits the collective imagery of "house of my grandparents in back-country", promising a natural environment and suggest quality, authentic- ity, tradition to the buyer... Pictures of a caring lady baking something appetizing, a honest farmer of- fering a handful of home-grown vegetables or meat... Where did they even find all these landscapes of back- country without phone line everywhere, tracktors, al- sphalt, cattle warehouses, wind turbines to put on these product background images? >> I do not know, do not ask me. That question is weird anyway. Let me go back to my life. How did such a landscape, neon distopia pictures that seems straight out of a /r/cyberpunk [2] post or the latest Blade Runner, got invited into the cozzy bubble of the average citizen doing shopping? [3] Who made these places so ugly? Why do I feel like human is be- ing considered like cattle in these kind of places? >> I do not know, do not ask me. That question is weird anyway. Let me go back to my life. What weird things am I even saying! It is not like an NSA agent is sitting on every metal beams of these su- permarket looking at passersby with an empty gaze. There are cameras though. What do they film? Thieves? Who is checking? Software? Peoples? Are marketting managers looking at these pictures? Of me too? Right now? What do they think of me? Did they look at my hand hesitating between these two products? >> I do not know, do not ask me. That question is weird anyway. Let me go back to my life. Going out, one might encounter someone sitting on its empty backpack, with a small cup filled with coins, looking a bit panicked, looking a bit dirty, looking a bit lost, sometimes even a bit drunk, or is it dizzi- ness from living outside? Occasionally they will ask you for another coin to add to their small collection. Passerbys offer them a lie such as "I do not have cash", or a kind word like "no, sorry", keep walking faster without looking, and eventually stops paying the tax and quickly keep going before they got asked for more. What did happen to them? Did they choose to live here? How can I know it will never happen to me? Why do I feel bad if I do not give them what they ask? Why do I feel bad if I give them what they ask? >> I do not know, do not ask me. That question is weird anyway. Let me go back to my life. Let's not get fooled or reverse the roles here: Writ- ing this, I am not asking these questions to you, nei- ther you are asking these questions to yourself. The places we live in are suggesting these questions. By building a supermarket out of a warehouse but dis- playing eye-catchy pictures of a scenery that does not even exist, it is obvious that people will notice the disbalance between the two. By placing cameras filming every square meter of such a place, or even a whole city, it is obvious that peo- ple will wonder at some point, who is behind the screen reviewing these images. The questions are left open. Nothing is made to even give hint about the answer. We are left in the doubt, letting some comfort themself with "it is just in case of a burglary, only a police officer is going to watch" or other claim "they are using these images to study how we think to better control us!"; claims based upon convictions, not facts. The technician installing these cameras up there has no hint either, its manager just followed the recom- mandations of the mothership company, itself getting directions from the investor group who purchased the brand, who themself are only trying to keep-up with the trends in that domain. Why would I care? I stopped to care about these silly questions since long. I came back to the real world for the better. I live my life ignoring what happens around me and it works plenty well. >> So why is that, at deep down, in the middle of my gut, there is a voice whispering to me that something's wrong. [4] The thing with living like an ant in the anthill is: you do not get too many answers about how the whole anthill works. 1 https://www.imdb.com/title/tt0088846/ 2 https://teddit.net/r/cyberpunk 3 https://theuws.com/wp-content/uploads/2011/12/supermarkt.jpg 4 https://yewtu.be/watch?v=QcSlAihVM0Q Mallumo Encrypted IRC darkfi ____________________________________________________________ IRC is part of the protocols that survived to the ad- vent of the Web. It still has users, it still has new network and com- munities initiatives springing out, it is alive. One single little touch it lacks is end-to-end encryp- tion. Without it, it is perfect for public communi- ties such as software projects discussions and support chat, live event chats... but private 1-to-1 communi- cation could suddenly become a good candidate for end-to-end encryption. Part of the DarkFi project, this is what Mallumo [1] brings in a simple piece of code using libNaCl, the crypto library from Dan Bernstein, author of ED25519 (in its repackaged libsodium form). This is state- of-the-art, well-proven and fast cryptography for end-to-end communication. With this plug-in dropped in the plugin folder, all private communication start by a simple key exchange over normal IRC, and the conversation upgrades to nacl-encrypted messages over regular IRC. There might not be any simpler way to encrypt peer- to-peer communication online. 1 https://github.com/darkrenaissance/mallumo Publishing in The Gopher Times you ____________________________________________________________ Want your article published? Want to announce some- thing to the Gopher world? Directly related to Gopher or not, reach us on IRC with an article in any format, we will handle the rest. ircs://irc.bitreich.org/#bitreich-en gopher://bitreich.org/1/tgtimes/ git://bitreich.org/tgtimes/ Did you notice the new layout? We now can jump be- tween single and double column as it is more fit: Some large code chunks will not fit in a two-column layout, but text is more pleasant to read on two columns. ]]> 2022-07-05T23:20:46+0200 gopher://bitreich.org/9/tgtimes/archive/2022-10-10 <![CDATA[2022-10-10]]> The Gopher Times Authors > In the 1970s and 1980s, Byte magazine featured cov- ers with beautiful, surreal paintings by Robert F. Tinney. What if the scenes that Mr. Tinney imagined actually existed in real life? And what if, as Mr. Tinney was painting them, there was a photographer standing next to him, capturing the scene on film? >> That's the idea behind this site. I created and photographed real-world objects and composited the images together in order to show what Mr. Tinney's images might look like in real life. 1 https://archive.org/details/byte-magazine 2 https://bytecovers.com/ An experiment to test GitHub Copilot's legality seirdy ____________________________________________________________ >> This article was posted on 2022-07-01 by Rohan Ku- mar [1] and is now republished on this newspaper, with permission (CC-BY-SA 4.0). Preface I am not a lawyer. This post is satirical commentary on: o The absurdity of Microsoft and OpenAI's legal justi- fication for GitHub Copilot. o The oversimplifications people use to argue against GitHub Copilot (I don't like it when people agree with me for the wrong reasons). o The relationship between capital and legal outcomes. o How civil cases seem like sporting events where peo- ple “win” or “lose”, rather than opportunities to improve our understanding of law. In the process, I intentionally misrepresent how the judicial system works: I portray the system the way people like to imagine it works. Please don't make any important legal decisions based on anything I say. The only section you should take seriously is “Con- text: the relevant technologies”. Introduction GitHub is enabling copyleft violation at scale with Copilot. GitHub Copilot encourages people to make derivative works of source code without complying with the original code's license. This facilitates the creation of permissively-licensed or proprietary derivatives of copyleft code. Unfortunately, challenging Microsoft (GitHub's parent company) in court is a bad idea: their legal budget probably ensures their victory, and they likely al- ready have a comprehensive defense planned. How can we determine Copilot's legality on a level playing field? We can create legal precedent that they haven't had a chance to study yet! A chat with Matt Campbell about a speech synthesizer gave me a horrible idea. I think I know a way to find out if GitHub Copilot is legal: we could use its legal justification against another software project with a smaller legal budget. Specifically, against a speech synthesizer. The outcome of our actions could set a legal precedent to determine the legality of Copilot. Context: the relevant technologies Let's cover the technologies and actors at play before I start my evil monologue. Exhibit A: GitHub Copilot GitHub Copilot is a predictive autocompletion service for writing software. It's powered by OpenAI Codex, [2] a language model based on GPT-3. [3] It was trained using the source code of public repositories hosted on GitHub, regardless of their licensing. In response to a Request for Comments from the US Patent and Trademark Office, OpenAI claimed that “Artificial Intelligence Innovation”, such as code written by GitHub Copilot, should be considered “fair use”. [4] Many of the code snippets it suggests are exact copies of source code from various GitHub repositories. For an example, see this tweet: I don't want to say any- thing but that's not the right license Mr Copilot. [5] by Armin Ronacher [6] It contains a screen record- ing of Copilot suggesting this Quake code. [7] When prompted to do so, it obediently fills in a permissive license. That permissive license violates the Quake code's GPL-2.0 license. Copilot provides no indica- tion that a license violation is taking place. GitHub performed its own research into the matter. [8] You can read about it on their blog: GitHub Copi- lot research recitation, [9] by Albert Ziegler. [10] I'm not convinced that it accounts for the fact that suggested code might have mechanical alterations to match surrounding text, while still remaining close enough to trained data to be a license violation. Exhibit B: The Eloquence speech synthesizer I recently had a chat with Matt on IRC about screen readers and different types of speech synthesizers. I mentioned that while I do like some variety, I always find myself returning to the underrated robotic voice of eSpeak NG. [11] He shared some of my fondness, and also shared his preference for a similar speech syn- thesizer called Eloquence. Downloads of Eloquence are easy to find (it's even in- cluded with the JAWS screen reader), but I struggle to find any “official” pages about the original Elo- quence. Nuance acquired Eloquent Technology, the de- veloper of Eloquence. Microsoft later acquired Nu- ance. Eloquence sample audio Matt recorded this sample audio clip of Eloquence reading some text. [12] The text is from the intro- duction of Best practices for inclusive textual web- sites. [13] >> My primary focus is inclusive design. Specifi- cally, I focus on supporting underrepresented ways to read a page. Not all users load a page in a common web-browser and navigate effortlessly with their eyes and hands. Authors often neglect people who read through accessibility tools, tiny viewports, machine translators, “reading mode” implementations, the Tor network, printouts, hostile networks, and uncommon browsers, to name a few. I list more niches in the conclusion. Compatibility with so many niches sounds far more daunting than it really is: if you only se- lectively override browser defaults and use plain- old, semantic HTML (POSH), you've done half of the work already. I like the Eloquence speech synthesizer. It sounds similar to the robotic yet predictable voice of my beloved eSpeak NG, but with improved overall quality. Unfortunately, Eloquence is proprietary. Exhibit C: Deep learning speech synthesis Deep learning speech synthesis [14] is a recent ap- proach to speech synthesizer creation. It involves training a deep neural network on voice samples, and using the trained model to generate speech similar to a real human voice. One synthesizer using deep learn- ing speech synthesis is Mozilla's TTS. [15] Zero-shot approaches could allow a pre-trained model to generate multiple different voices. YourTTS [16] is one such example. This could allow us to syntheti- cally re-create a person's voice more easily. My horrible plan My horrible plan revolves around going through two different lawsuits to set some judicial precedents; these precedents could improve the odds of succeeding in a lawsuit against Microsoft for Copilot's licensing violations. If this succeeds, we have new legal justification that GitHub Copilot is illegal; if it fails, we have still gained a means to legally re-create proprietary soft- ware. It's a win-win situation. Part One: set a precedent 1. Train a modern text-to-speech (TTS) engine using the voice a proprietary one made by a company with a small legal budget. Keep the model's internals hid- den. 2. Then release the final TTS under a permissive li- cense. Remember, we're still keeping the machine- learning model hidden! 3. Wait for that company to file suit. [17] 4. Win or lose the case. Part Two: use that precedent against Microsoft's Nu- ance Our goal here is to get the same legal outcome as the low-stakes “trial run” of Part One. Microsoft owns Nuance. Nuance previously bought Elo- quent Technology, the developers of the Eloquence speech synthesizer. 1. Repeat Part One against Nuance speech synthesizers, including Eloquence. Go to court. 2. Have the ruling from Part One cited as legal prece- dent. 3. Achieve the same outcome as Part One, demonstrating that we have indeed set precedent that works against Microsoft's legal department. Implications of the outcomes If we win both cases: Microsoft has the legal high ground. Making a derivative of a copyrighted work us- ing a machine-learning algorithm allows us to bypass copyright licenses. If we lose both cases: Microsoft does not have the le- gal high ground. We have good judicial precedent against Microsoft to use when filing suit for Copilot's behavior. Either way, it's an absolute win for free software. Taking down Copilot protects copyleft from enabling proprietary derivatives (and by extension, protects software freedom). But if we accidentally win these two low-stakes “test” cases, we still gain something else: we can liberate huge swaths of proprietary soft- ware, starting with speech synthesizers. Update: on satire This post isn't “satire through-and-through” like something from The Onion. Rather, my intent was to make some clear points, but extrapolate them to absur- dity to highlight other problems. I don't think I was clear enough when doing this. I'm sorry. Copilot has been found to suggest significant amounts of code that is dangerously similar to existing works. It does this without disclosing obligations that come with those works' licenses. Training a model on copy- righted works may not be wrong in and of itself; how- ever, using that model to generate new works that are not sufficiently distinct from original works is where things get problematic. Copilot's users could apply proprietary licenses to the generated works, defeating the point of copyleft. When a tool almost exclusively encourages problematic behavior, the makers of that tool should have put thought into its implications. GitHub and OpenAI have not demonstrated a sufficiently careful approach. I don't think that “going after” a smaller player just to manipulate our legal system is a good thing to do. The fact that this idea seems plausible to some of my readers shows how warped our perception of the judi- cial system is. Even if it's accurate (I doubt it's accurate, but I'm not certain), it's sad. Judicial systems incentivise too much predatory behavior. Corrections It's come to my attention that Eloquence may or may not still belong to Nuance. Further re- search is needed. Eloquent Technology was acquired by SpeechWorks in 2000. 1 https://seirdy.one/posts/2022/07/01/experiment-copilot-legality/ gemini://seirdy.one/posts/2022/07/01/experiment-copilot-legality/index.gmi 2 https://openai.com/blog/openai-codex/ 3 https://en.wikipedia.org/wiki/GPT-3 4 See Comment Regarding Request for Comments on Intellectual Property Protection for Artificial Intelligence Innovation submitted by OpenAI to the USPTO. https://www.uspto.gov/sites/default/files/documents/OpenAI_RFC-84-FR-58141.pdf 5 https://nitter.net/mitsuhiko/status/1410886329924194309 https://twitter.com/mitsuhiko/status/1410886329924194309 6 https://lucumr.pocoo.org/about/ 7 https://github.com/id-Software/Quake-III-Arena/blob/master/code/game/q_math.c At line 552 8 I doubt anybody worth their salt would count on a company to hold itself accountable, but at least they tried. 9 https://github.blog/2021-06-30-github-copilot-research-recitation/ 10 https://github.com/wunderalbert 11 https://github.com/espeak-ng/espeak-ng/ 12 https://seirdy.one/a/eloquence.mp3 13 https://seirdy.one/posts/2020/11/23/website-best-practices/ 14 https://en.wikipedia.org/wiki/Deep_learning_speech_synthesis 15 https://github.com/mozilla/TTS 16 https://doi.org/10.48550/arXiv.2112.02418 17 If the stars align, you could file an anticipatory suit against the company. It's common for declaratory judgement regarding intellectual property rights. https://en.wikipedia.org/wiki/Declaratory_judgment Glenda adventure sirjofri ____________________________________________________________ >> Glenda found herself in a dark forest. Do operating systems dream of electric bunnies? Noth- ing is certain about that, but it does not prevent you to try to imagine. Sir Jofri offers us a piece of fiction built out of the reality of the plan 9 operating system. [1] Where should this go next? A story first published on the 9front Mailing List. 1 http://sirjofri.de/oat/tmp/glenda_adventure.txt Space Weather Woman tgtimes ____________________________________________________________ As she names herself, Tamitha Skov [1] is the Space Weather Woman. You read it right! She have been do- ing, since now close to ten years, forecasts about how is space weather is going. Just a nerd fantasy? Only a sci-fi artist on a peri- odic one woman show? Not at all! Knowing what the sun is blasting toward Earth can reveal more useful than it looks. This includes: o personnal safety for some plane flights at high lat- titude. o GPS communication, something happening in the pocket of many individuals, some of them even unaware of the involvement of satellites in the process. o Long distance radio communication, which include Am- ateur Radio operators, but also emergency services and militaries. o Something that Starlink did not invent [2] is satellite-relayed communication, including satellite internet and voice phone transmission. Actually a lot of wind turbines are being given satellite in- ternet, and see how a little disruption [3] in satellite internet access can disrupt their opera- tion. And all of these fancy things are benefiting from Tam- itha Skov's efforts as a researcher, but also by in- forming in layman's terms what is going on outter space. >> Weather phenomena like coronal mass ejections, so- lar flares, and solar particle events. [4] Science is elegant. 1 https://www.spaceweatherwoman.com/ https://yewtu.be/c/TamithaSkov 2 WildBlue, Viasat, NordNet... First amateur stellite launched in 1961. 3 https://hackaday.com/2022/06/02/the-great-euro-sat-hack-should-be-a-warning-to-us-all/ 4 https://en.wikipedia.org/wiki/Tamitha_Skov A C64 4chan Browser tgtimes ____________________________________________________________ The sewers of Internet in a C64? The link appeared on various IRC channels such as #electronics or #osdev, and not one more word. The investigation is open. [1] 1 https://imgur.com/H36LTRV BACK 2 ROOTS! I Hate Modern Technology ig0r ____________________________________________________________ >> The "advance of technology" is a source of excite- ment as well as frustration. ig0r gives us a crys- tallised view of human stupidity offered daily by technology. Modern technology sucks. This might be me behaving like a pathetic little angsty hipster or trying to LARP thinking I'm somehow cool, but I think it's a genuine problem. Planned Obsolesence Technology is being designed to fail. Apple purposefully makes batteries fail on their de- vices and solders them in such that replacing the bat- tery on an older device makes no sense, forcing the customer to buy a new device. Lenovo's quality has gone down the shitter. Thinkpads used to be thick, bulky, and rugged such that a cave- man could use it in place of a club. New models bend and creak, the hinges breaking after several years of use while older models still run like new. The reality is companies want people to consume tech- nology, not use it. They care about making a profit rather than giving users a good experience, hence poor quality of manufacturing to speed up distribution, consumption, and the filling of landfills. Modern Software Modern software is just bad. Here's a few reasons why... o It's idiot proof, in that I have little control over settings and configuration o Software has become synonymous with adware (see Mi- crosoft putting ads into explorer) o I have to pay money for it (fuck you, if I could copy-paste a car I would) Smartphones Smartphones are the most annoying little shits, and for some reason they've become ubiquitous. Restaurants are starting to ditch regular menus in fa- vor of QR codes to be scanned with smartphones. Why? Paper is more reliable. This is a step backwards in my opinion. What if I don't have a data plan? What if I don't carry a smartphone? Also why does everything have to be an app? Why does my passport have to be an app? I'm perfectly happy carrying around paper ID (paper ID doesn't spy on my). People are idiots Most companies justify making technology suck more by saying it's 'easier' and more 'convenient' for normal people. Stop making easy and more convenient. Nobody asked for that. We were happy when technology was hard. Better recording of the IRC Now events ircnow ____________________________________________________________ Here is a link with a better recording than the one in the previous tgtimes opus [1] As a teaser, here are some random contents from it: o Independence from Silicon Valley o Self-Governance with Free Software and Right to Code o Live demo of OpenBSD system administration from the ground up. 1 https://media.libreplanet.org/u/libreplanet/m/ircnow-of-the-users-by-the-users-for-the-users/ MNT Pocket Reform OS support tgtimes ____________________________________________________________ All these laptop and portable devices come with either Windows, Apple iOS or OSX, Android, sometimes Chrome OS, and even more rarely Ubuntu installed upon. But the open hardware commnity is rising, and calls for a change. The MNT Pocket Reform lists more exotic operating systems as officially supported, [1] or at least acknoledged and listed in the front page: o Debian GNU/Linux o Support for other distributions: Arch, Ubuntu, Void o Plan 9 (9front) o Genode o OpenBSD (in development) Are we seeing a year of the open hardware laptop com- ing? 1 https://mntre.com/media/reform_md/2022-06-20-introducing-mnt-pocket-reform.html Darknet Diaries tgtimes ____________________________________________________________ The mysterious Dark Net. While not an official insti- tution, this hypotetical place built its very own identity through popular culture and medias. Famous and infamous, the depths of the limbos are explored in the Darknet Diaries podcast, covering and reporting the day-to-day events of that suspicious eden of sha- dow. [1] 1 https://darknetdiaries.com/ https://en.wikipedia.org/wiki/Darknet_Diaries The Modern Mechanical Turk tgtimes ____________________________________________________________ In 1770, long before the exploitation of electricity, a machine was built in the pretention of being able to play Chess. This machine named Mechanical Turk was nothing more than a moving puppet actuated by a small human, such as a child. A child who is good at chess, that is! Actuating levers, the operator would make the puppet move, fooling the audience that technical advances oc- casionally make use of black magic. Amazon called a software platform Amazon Mechanical Turk. [1] It offers management for harvesting food for machine learning: human description of images, videos, products, and other kind of canned thoughts that machine learning can make use of to build models. Uber for Cyber. Human translators shouting at ma- chines the language they got whispered through their life. Ghostworker. Noun. 1. Worker performing activity that will only be appreciated as data feeding an algo- rhithm. 2. Worker with no access to who it provide work to, both employer and client are invisible to him. [2] given the very large scale at which these data- harvesting structures are deployed, it means that you, web user, have experienced the Google and Cloudflare "captcha" block window. That window preventing you to submit a form unless you click on all buses, track- tors, crosswalks, traffic lights... to verify that you are indeed a human and not a bot trying to access the website. Instead of prooving its belonging to the mankind, at the opposite, the user is explaining to machines what is a bus, a tracktor, a crosswalk, or a traffic light. Here is your Great Technological Singularity for the greatest common entertainment: Nothing more than a moving puppet, actuated by humans, barely even paid for it, if paid at all... [3] 1 https://en.wikipedia.org/wiki/Amazon_Mechanical_Turk 2 https://www.ghostwork.org/ 3 https://en.wikipedia.org/wiki/Mechanical_Turk Publishing in The Gopher Times you ____________________________________________________________ Want your article published? Want to announce some- thing to the Gopher world? Directly related to Gopher or not, reach us on IRC with an article in any format, we will handle the rest. ircs://irc.bitreich.org/#bitreich-en gopher://bitreich.org/1/tgtimes/ git://bitreich.org/tgtimes/ Did you notice the new layout? We now can jump be- tween single and double column as it is more fit: Some large code chunks will not fit in a two-column layout, but text is more pleasant to read on two columns. ]]> 2022-10-10T23:35:28+0200 gopher://bitreich.org/9/tgtimes/archive/2023-08-29 <![CDATA[2023-08-29]]> The Gopher Times Authors numbers_sorted | | Our new user, fascinated by the modularity of the Unix shell, may then | try the rather obvious possibility of having the input and output file | be the same: | |  $ sort < numbers > numbers | | But disaster strikes: the file is empty! The user has lost their | precious collection of numbers - let's hope they had a backup. Losing | data this way is almost a rite of passage for Unix users, but let us | spell out the reason for those who have yet to hurt themselves this | way. | | When the Unix shell evaluates a command, it starts by processing the | redirection operators - that's the '>' and '<' above. While '<' just | opens the file, '>' *truncates* the file in-place as it is opened for | reading! This means that the 'sort' process will dutifully read an | empty file, sort its non-existent lines, and correctly produce empty | output. | | Some programs can be asked to write their output directly to files | instead of using shell redirection (sed(1) has '-i', and for sort(1) | we can use '-o'), but this is not a general solution, and does not | work for pipelines. Another solution is to use the sponge(1) tool | from the "moreutils" project, which stores its standard input in | memory before finally writing it to a file: | |  $ sort < numbers | sponge numbers | | The most interesting solution is to take advantage of subshells, the | shell evaluation order, and Unix file systems semantics. When we | delete a file in Unix, it is removed from the file system, but any | file descriptors referencing the file remain valid. We can exploit | this behaviour to delete the input file *after* directing the input, | but *before* redirecting the output: | |  $ (rm numbers && sort > numbers) < numbers | | This approach requires no dependencies and will work in any Unix | shell. | `---- ,---- [ Library of Babel now available on gopherspace. by Bitreich ] | | The Library of Babel is a place for scholars to do research, for artists | and writers to seek inspiration, for anyone with curiosity or a sense of | humor to reflect on the weirdness of existence - in short, it's just like | any other library. If completed, it would contain every possible | combination of 1,312,000 characters, including lower case letters, space, | comma, and period. Thus, it would contain every book that ever has been | written, and every book that ever could be - including every play, every | song, every scientific paper, every legal decision, every constitution, | every piece of scripture, and so on. At present it contains all possible | pages of 3200 characters, about 104677 books. | |  https://libraryofbabel.info/About.html | | Now available on gopherspace! | |  gophers://bitreich.org/1/babel | `---- ,---- [ Donkey Meter goes online. by Bitreich ] | | Have you ever wondered, how much traffic is used on Bitreich.org? Now you | can see it. In combination with our French friends who spread donkey | technology, we now have a Donkey Meter: | |  gophers://bitreich.org/1/donkeymeter | | It takes a second to load due to donkey technology restrictions. | You might also be interested in our Large Donkey Collider technology. | `---- ,---- [ Most minimal Gopher server by tgtimes ] | | Gopher is a protocol providing a gateway to a document system, allowing | to serve an organized hierarchy of files over the network. Dynamically | generating the content as per user requests is also possible. The client | side is in charge of rendering the content as it sees fit. | | Generating Gopher indexes and transmitting file contents or generated | contents is low in software compmlexity, and in turn allows less expensive | hardware to be run than complex web stacks. | | Which cost would we end-up for building a minimal piece of hardware able | to host the Gopher protocol acheiving all of the above? | The Gopher Times investigates. | | Communication | While WiFi is inexpensive and fits moving device gracefully, the | reliability of Ethernet is indicated for a server. Ethernet adds | 1 USD of cost for the transceiver handling the electricial characteristics | of Ethernet. These typically expose an RGMII interface. | | Processing | A microcontroller featuring an Ethernet peripheral (with an RGMII | interface) could be the popular STM32F103, or an alternative | compatible part. Enough processing power would be present for an | embedded TCP/IP and a TLS stack. | | Automation | In addition, most microcontrollers feature a large range of | built-in peripheral such as timers and communication or analog | interfaces, enabling automation of devices such as lighting, | heating, laundry, motors, or an entire car, through external | modules. This would come for no extra cost. | | Storage | A slot for a MicroSD card would allow storing and updating | the static content to serve, and storing network configuration. | | Scripting | There exist project to fit programming languages onto microcontrollers. | Separate projects for supporting a subset of each of Python, Ruby, | Javscript, Go, Rust, Lua, Forth and more. | | Power | By letting power supply happen through the USB port, a large range | of power source can be used, such as battery, solar panels, wind | turbine, hydropower, or power outlet. | | The bill of materials for such a design would approximate 5 USD. | A marketed device with a small margin for the seller could reach | as low as 10 USD. | | Interestingly, such a device would also be able to provide an | equivalent Web service able to work with all Web client, but | not running the existing popular Web server software stacks | known as "Web Frameworks". | `---- ,---- [ Gemini2gopher proxy now at Bitreich by 20h ] | | As of the announcement of osnews.com to have a gemini capsule, this | content should be available via gopher too. So I dig into a simple | translation of gemini to gopher. | | There is a now a proxy running at: | |  gophers://bitreich.org/1/\ |  gemini?gemini://gemini.osnews.com | | You can get the v0.1 release of the proxy at: | |  git://bitreich.org/gemini2gopher-proxy |  gophers://bitreich.org/1/scm/gemini2gopher-proxy | | Have fun! Please send in bugs you encounter. The goal was to display the | osnews.com gemini capsule. | `---- ,---- [ Geomyidae v0.96 release by Bitreich. ] | | After Brcon2023 people tested the new features in geomyidae and some | major bugs were fixed, so now the v0.96 release is ready. Please see the | talk at brcon2023 for the vast changelog and description of the new | (flexible and complex) features: | |  gophers://bitreich.org/0/con/2023/rec/state-of-geomyidae.md | | In addition: | |  * TLS was completely fixed. It now works on OpenBSD. |  * Thanks Evil_Bob and adc for debugging this! |  * Connection and serving of files is now vastly improved due |  to reverse DNS lookup not being default. |  * Thanks Evil_Bob for finding this! |  * We need to fix the DNS Internet. | | And don't forget BOB! Don't drink and write programming languages! | | Here are the links for package maintainers: | |  git://bitreich.org/geomyidae |  gophers://bitreich.org/1/scm/geomyidae | | Have much fun with geomyidae! | `---- ,---- [ Groundhog Day Service Page online. by Bitreich ] | | At Bitreich we support the culture of grounded, based and ecological- and | animal-friendly technology. In this sense, it is natural for us to | support Groundhog Day, the scientific measurement for winter length | prediction. In preparation for our now yearly celebration of this day, we | now offer the current groundhog shadow status on Bitreich: | |  gophers://bitreich.org/1/groundhog-day | | Future prediction has never been that easily and worldwide available! | Now groundhog was harmed in the production of this service! | `---- +------------------------------------------------------------------------+ | | | ADVERTISEMENT | | | | | | * You really want this cat to be weber-cooked? | | | | ______________________ | | | Meow |..| | | | / |oo| | | * NO? | o o |/\| | | | (m) . |\/| | | |____(___)________|__| | | | | | | * You can only stop us by talking to us at: | | | | | | | | #bitreich-cooking on irc.bitreich.org | | | | | | | | | +------------------------------------------------------------------------+ ,---- [ Gopher 2007 Pearl Project ] | | Do you like adventures? | Do you like to discover? | Many treasures are awaiting you! | Get ready to search for the pearls: | |  gophers://bitreich.org/1/gopher2007 | | The archive of gopherspace from 2007 from archive.org is now available on | Bitreich for research. | | The pearl list begins with - of course! - the gopher manifesto: | |  gophers://bitreich.org/0/gopher2007/archive/seanm.ca/\ |  70/0/nerd/gopher-manifesto.txt | | See the 'What we need' section. We completed nearly all points there. :-D | | A second pearl example: | |  gopher:s//bitreich.org/0/gopher2007/archive/seanm.ca/\ |  70/0/nerd/language_parable.txt | |  And each language could be heard to mumble as it tromped and |  tromped and tromped, with complete and utter glee: | |  Have to parse XML, eh? Have to have an XML API, eh? Have to |  work |  with SOAP and XML-RPC and RSS and RDF, eh? | |  Well parse this, you little markup asshole. | | You want to see all postscript files from back then? | |  curl -s gopher://bitreich.org/0/gopher2007/archive/\ |  non-empty-mime-files.txt | grep postscript | | I wish much fun reading and discovering even more! | `---- ,---- [ C Thaumaturgy Center opens at Bitreich by Bitreich ] | | People always had a desire for magic. | This magic does not end in modern times. | |  Any sufficiently advanced technology is indistinguishable from |  magic. |  -- Arthur C. Clarke | | So is C, C pointers and C bit twiddling: | |  gophers://bitreich.org/1/thaumaturgy | | Get your daily magic there! | | In case you have your own C magic spells laying around and want to offer | them to the public, send them to: Christoph Lohmann <20h@r-36.net> | | I will include them into the programme of the C Thaumaturgy Center. | `---- ,---- [ This's opus C Thaumaturgy ] | | // Returns the smaller integer of x and y but without a branch | // (if/else/ternary, goto etc..) | // Normally min is implemented something like this: | // return x < y ? x : y; | // But we have a branch there so let's do it witout. (The branch | // free min could be used to merge arrays for example.) | // If x < y, then -(x < y) => -1 => all 1's in two complement | // representation. | // So we have y ^ (x ^ y) => x | // If x >= y, then -(x < y) => 0 so y ^ 0 is y. | | static inline uint8_t min(const uint8_t x, const uint8_t y) { | return y ^ ((x ^ y) & -(x < y)); | } | `---- ,---- [ Bitreich Telemetry Service goes Public. by Bitreich ] | | The industry is going towards telemetry everywhere: Go programming | language logging, Windows 11 poop logging etc. | To save you from burnout | (which is what Google uses for telemetry excuse!), | Bitreich is moving forwards too. | Try it now! | |  $ git clone git://bitreich.org/geomyidae |  $ cd geomyidae |  $ make telemetry | | In case you want to use the telemetry API in your project, just us: | |  # Everything behind the second / field will be stripped. |   |  $ printf "/${projectname}/...\r\n" | nc bitreich.org 70 |   |  Thank you for installing ${projectname}! |  Nothing is logged. You can trust us, we are not Google. | | It is free to use! | `---- ,---- [ Peering Cake for IPv6 by tgtimes ] | | The Internet Protocol is the fundamental encoding and communication | convention that permits computers to reach each other across multiple | LANs. | | An Protocol to allow Inter-Network communication. | Andy Tanenbaum wrote a beautiful introduction about the underlying idea: | |  https://worldcat.org/en/title/1086268840 | | The part of Internet visible from a single user looks like a tree, with at | its root the service provider. Regardless how complex the branches are, | there is usually "the gateway", implying a single one per network, to | allow traffic to "exit", implying a single direction to go for reaching | the outter world. The routing configuration rarely changes, and is often | boiling down to "going out", implying beyond the gateway is outside.. | | The part of Internet visible from a service provider, however, looks like | a mesh, a more balanced graph, with many possible gateways, many possible | "exit" directions, and no more idea of "outside". | If you pick one possible gateway picked at random, hoping them to nicely | find the correct destination for your IP packets, they may realistically | cut your connection and never ever talk to you again, | depending on how much traffic you suddenly sent (routing your IPs to | 0.0.0.0). This happens frequently. Network admin mailing lists are | constantly active with many people discussing with many others. | | Network admins themself are usually friendly among themself, even across | concurrents, but companies do not always play nice with each other. | | There is a legendary dispute known by all Internet Service Provider (ISP) | netadmins: the two biggest international internet network providers, | Cogent and Hurricane Electric, are disconnected. | The two major IPv6 Carriers, those giants connecting the ISP togethers | across continents, are currently refusing to exchange IPv6 packets with | each other. This means that with IPv6, from a country connected to only | Cogent, it is not possible to reach a country connected to only Hurricane | Electric, and the other way around. | For this reason, all ISPs from all countries connections with many more | carriers for IPv6 than it is for IPv4, resulting in either lower stability | or higher cost. | | This strategy permits Cogent to remain competitive face to its larger | concurrents. Hurricane Electric, on the other hand, have much more | commercial advantage to perform peering with Cogent, to therefore exchange | traffic. In the diversity of attempts to get Cogent to change its mind, | Hurricane Electric decorated a large creamy cake with a message, and | shipped the cake to the headquarters of Cogent. | | Here is what the message said in 2009: | | Cogent (AS174) Please IPv6 peer with us XOXOX - Hurricane Electric | (AS6939). | |  https://www.mail-archive.com/nanog@nanog.org/msg15608.html |  https://live.staticflickr.com/2685/4031434206_656b2d8112_z.jpg |  https://www.theregister.com/2018/08/28/ipv6_peering_squabbles/ |  https://mailman.nanog.org/pipermail/nanog/2009-October/\ |  014017.html | `---- ,---- [ Announcing the "tgtimes" keyword by tgtimes ] | | As any newspaper, The Gopher Times goal is to relay information. | Through chat discussions, The Gopher Times ocasionnally collect | heirlooms which are published back to the community in this newspaper. | | We propose this way of catching The Gopher Times attention, so | that editors can collect all occurences: | In an IRC chat discussion, simply make the word "tgtimes" appear | as a way to pingback to us. | | Upon publishing The Gopher Times, the IRC logs of various channels | will be searched for this keyword, hence noticing every time someone | wanted to submit something to the The Gopher Times. | One word to say and The Gopher Times comes that way. | `---- ,---- [ bitreich-cooking by ggg ] | | In the city home to the best pubs in the English-speaking world, Truth | keeps ggg alive, tantalises him sadistically, then heals and looks after | him so the cycle can continue. Coming from China, ggg waded through lies | to learn that nothing is more powerful than Truth; coming into Cork, ggg | learnt that Truth catches up nicely with nobody, still, you would prefer | Truth's company anyway. | | Life is fierce futility. | Agony unites us. | Renaissance can come. | | 60% hustler + 20% hacker + 20% hipster tend to be ggg. | The more he writes, the less words he ends up with. | You can find ggg on #bitreich-en and #bitreich-cooking. | `---- ,---- [ Most minimal gopher client by tgtimes ] | | Gopher is a protocol allowing browsing text, images interactively, | reach telnet interfaces, and download any file, or open any URL, | for custom action to be chosen by the user. | | Network | One reliable way to fetch the content from internet would be Ethernet, | but convenience and price would push toward using radio transmission | such as WiFi. | | Ethernet would require an extra transceiver chip, while wifi takes mostly | just a wire acting as antenna, which partly explains its low cost. | | Processing | One inexpensive family of processors featuring a high cost-to-performance | ratio, which also features WiFi, is the ESP32. The C3 iteration even uses | the open-source architecture RISC-V. The speed is decent enough for | decoding JPEG an PNG, or support TLS as used in gophers://. | | Display | The cost of displays have dropped considerably as they invaded the market. | Economy of scale made small color displays even cheaper than | character-based displays. | | Input | Browsing content is a lot about scrolling. Since we do custom hardware, | capacitive touch buttons can be used for little to no extra cost. | This could permit a smooth scrolling through the content. | | Once again, mostly requiring wires, this cuts the price and explain | their popularity. | | Text | Text is compact and efficient, and bitmap font requires a bit of storage | for all the common non-ASCII characters, but ESP32 have 16MB of flash | storage enough for the entire uncompressed Unifont: | |  http://unifoundry.com/unifont/ | | Audio | Producing sound does not cost much more than a small audio amplifier, | software for decoding MP3, and a 3.5mm Jack connector. | Very small cost added. | | Extension | An USB interface would allow plugging the device to a computer for | either automation or using a full keybaord. | | Power | A small dedicated battery could be included increasing the cost, | but getting all power from USB would also preserve the choice to | the user, free to chose a wall charger or portable power bank. | | Enclosure | A custom 3D printed case would allow keeping the cost very low | even at small volume production. | | There exist boards around 5 USD which would provide all of the above | except audio and a few wires, typically the size of an MP3 player. | The grand total bill of material could realistically approach 10 USD. | An actual product could eventually reach as low as 15 USD if keeping | only a small margin for the seller, and eventually lower if produced | on a larger scale. | | The support of TLS does not bring any cost in this example: an ESP8266 | could be used at around 0.85 USD instead of 1.25 USD for the ESP32-C3, | but is also capable of TLS. | Image decoding would then probably be much slower. | By far the most resource hungry part of this project. | | Writing the software for such a product from the ground up could take | typically an entire week, including JPEG and PNG decoding libraries, | image and font rendering, writing driver for all the parts involved, | integrating the TCP/IP stack and TLS stack. | | While an XML parser able to fetch content over HTTP would be relatively | as difficult to build, this would not permit the same level of user | experience as the Gopher-based project: CSS and JavaScript are becoming | an increasingly frequent requirement to access the Web, and reimplementing | a new compatible rendering engine is not feasible to a single person. | | This requirement would in turn affect the minimal performance of the | processing unit used: a processor in the GHz range with RAM in the | GB range, in particular if anticipating future needs of the Web | software system. | `---- ,---- [ Meme cache pointer support by Bitreich ] | | The Bitreich memecache joins modern programming languages like C in | supporting pointer notation. Get a pointer representation of a meme by | referencing it in our IRC channels with the syntax '*', instead of | the usual '#'. | |  Example: |  #gnu-hut |  #gnu-hut: |  gophers://bitreich.org/I/memecache/gnu-hut.jpg |  *gnu-hut |  *gnu-hut: |  gophers://bitreich.org/9/memecache/filter/*gnu-hut.jpg | | The pointer notation works for image and video memes. Remember that | you can explore our memes with | |  git://bitreich.org/bitreich-tardis | | bitreich-tardis, and explore the inner | workings of annna in the | |  git://bitreich.org/annna | | git repository. | -adc | | Deep pointer support in memes. | | Thanks the ground work of adc, we had pointer support for memes. Based on | this, we now have deep pointer support for all kind of memes: | |  gophers://bitreich.org/9/memecache/filter/\ |  **********athas-teapot.jpg |  gophers://bitreich.org/9/memecache/filter/\ |  ****athas-teapot.jpg | | With cache support. | Have fun pointing at memes! We had much fun making this. :D | | Reverse pointer support for memes. | | After a public request by an avid pointer lover, we of course implemented | reverse pointer support for memes now: | |  gophers://bitreich.org/9/memecache/filter/\ |  &&&&&&athas-teapot.jpg | | See how you can dereference this teapot now. | `---- ,---- [ Four Billion more Gopherholes have gone online! by Bitreich ] | | People are thinking, it is impossible to grow further than the web. | Gopher did this today, by introducing the four billion gophers project. | |  gopher://bitreich.org/1/billion-gophers | | IPv6 is required. | Maybe you find the hidden secret of monkey^Wbillion gophers! | `---- ,---- [ The Road to Success by josuah ] | | Success, the holy grail in Life. Many different forms and shapes. | Marriage? Career? A medal? A stable financial situation? Crossing the | border and get naturalized? So many facets to that same shiny diamond. | | Or does success mean avoiding failure? In that case, doing nothing means | no failure, but trying always have more chance to reach whatever one | names "success". | | If failing means that trying did not lead one as far as hoped for, then | the next thing to do for getting closer to "success" again is trying | again, in risk to fail over again. And while so, also going a bit | closer every time to success. | | What is the landmark that distinguish being very close to actually | reaching success? Which indicator to use? Is it about completing a large | project? Fame? A position in the company? And once at the top position of | a company, one can still say it was a tiny company and the real goal | always was to be at the head of a great company, and that success will | be when the company is large enough. | | So if there is no real landmark, if failing is trying but failing to | reach an impossible goal, then failing is the result of trying whatever | that leads to. Failure would be the moment that follows any attempt to | reach the end of a direction. Failure would simply be the moment where | you look back at where you were before trying, where you are now, and | the road left to go to reach infinity. | | Success looks similar: trying to move forward, constantly bumping the | objective further as one get closer to it. Again success is the moment | where you look at where you are, and estimate how far you've been. If | success and failure are the same, this suggests that something is wrong | somewhere. Somehow, the ultimate acheivement of every life is death. | | The Road to Success? | This is the same as the road to Failure: this is Life, it leads to Death. | Wherever we go, we will be on it as long as we live. So now, may we move | that idea of Success away so that we can enjoy living our life. | `---- ,---- [ sfeed 1.9 was released by bob ] | | sfeed is a tool to convert RSS or Atom feeds from XML to a TAB-separated | file. | | It can be found at: | |  git://git.codemadness.org/sfeed |  gopher://codemadness.org/1/git/sfeed |  https://codemadness.org/releases/sfeed/ |  gopher://codemadness.org/1/releases/sfeed/ | | sfeed has the following small changes compared to 1.8: | | Features | | sfeed_{curses,frames,gopher,html,plain}: add $SFEED_NEW_MAX_SECS | | By introducing the new environment variable $SFEED_NEW_MAX_SECS in some | sfeed_* utilities marking feeds as new based on comparing their age, | it is now possible to override this age limit. The default limit was | the last day (86400 seconds). | | This allows, for example, to be notified about new feeds within the last | hour with by prefixing new items with " N ": | |  SFEED_NEW_MAX_SECS=3600 sfeed_plain ~/.sfeed/feeds/* | | While creating a web report for last week's news by: | |  SFEED_NEW_MAX_SECS=604800 sfeed_html ~/.sfeed/feeds/* | | This marks the items of the last week as bold in HTML. | | Based on the initial patch by Alvar Penning, thanks! | | sfeed_update/sfeedrc: add url a as parameter to the filter() and order() | function This makes it easier to set filters or ordering by pattern | matching on a group of feeds by the feed URL. For example for Youtube | or Reddit feeds. | | sfeed_curses: move one line down when marking an item as read or unread. | I don't mind either behaviour, but it has been suggested by a few people. | For example the mutt mail client also has this behaviour. | | Fixes | | Improve to use proper includes. | | Reduce using some of the unneeded sys/* headers too. Using the C99 | includes. | | sfeed_atom: for gmtime_r() make the error message consistent with | sfeed_mbox. | | Makefile: change Gentoo commented example from -lcurses to -lncurses. | | sfeed_markread: fail early if creating a temporary file failed. | | Code-cleaning / pedantic fixes: | | sfeed: datetounix: code-style, change , to separate lines (-Wcomma). | | sfeed_curses: make struct urls static like the other variables. | | sfeed_gopher: reduce scope and shadowing of a variable (no effective | change though). | | xml.h: _XML_H_: macro name with an underscore is a reserved identifier. | | | Documentation: | | Improve note about CDNs and HTTP User-Agent blocking and change the | example in sfeedrc.5 by setting a User-Agent. | | sfeedrc.example: add comment to reference to the man pages and README | file. | | README: RSS 0.90+ is supported (not 0.91+). | | Typo fixes, consistency and structure fixes and some rewording. | | | Bitreichcon 2023 | | Bitreichcon 2023 was cool. It was also fun to hold a RSS/Atom/web | presentation to a club of like-minded peoples. | |  gopher://bitreich.org/1/con/2023 |  gopher://bitreich.org/0/usr/20h/phlog/\ |  2023-08-10T17-08-41-168752.md |  gopher://bitreich.org/0/usr/20h/phlog/\ |  2023-08-10T19-40-04-621487.md | |  Slides: gopher://bitreich.org/9/con/2023/rec/\ |  state-of-sfeed.zip |  Audio: gopher://bitreich.org/9/con/2023/rec/\ |  brcon2023-dump-2023-08-10-20-06-35.mp3 | | | Thanks for all feedback and patches, | | Donations can be send to: | |  https://codemadness.org/donate/ | | :) | | Thanks, | Gopherholistic coach, | Hiltjo | `---- ,---- [ Volunteers for a The Gopher Times trial wanted. by Bitreich ] | | As pioneers in the gopher world, we at Bitreich want to make the gopher | times more accessible to all people over the world. For this, we are | planning a trial to have printed out the gopher times sent to your | doorstep. | | If you want to participate, please send your name and address to | |  Christoph Lohmann <20h@r-36.net> | | World delivery to all remote places is possible too. | `---- ,---- [ Publishing in The Gopher Times ] | | You want your article published?  | | You want to announce something to the Gopher world?  | | Directly related to Gopher or not, reach us on IRC with an article in any | format, we will handle the formatting and everything else. | |  ircs://irc.bitreich.org/#bitreich-en |  gophers://bitreich.org/1/tgtimes/ |  git://bitreich.org/tgtimes/ | | Here is how you write an article for the next opus 8: | |  $ git clone git://bitreich.org/tgtimes |  $ cd tgtimes/opus8 |  $ ed $(id -un)-my-personal-technical-project.md |  # Git workflow to send patch follows. | | Thanks for reading The Gopher Times! | | -- the Gopher Times Team | `---- ]]> 2023-08-29T13:22:38+0200