tgtimes7.txt - tgtimes - The Gopher Times HTML git clone git://bitreich.org/tgtimes git://enlrupgkhuxnvlhsf6lc3fziv5h2hhfrinws65d7roiv6bfj7d652fid.onion/tgtimes DIR Log DIR Files DIR Refs DIR Tags DIR README --- tgtimes7.txt (24408B) --- 1 2 3 4 The Gopher Times 5 6 ____________________________________________________________ 7 8 Opus 7 - Gopher news and more - Jan. 2023 9 ____________________________________________________________ 10 11 12 13 14 Shell Redirections athas 15 16 Newcomers to the Unix shell quickly encounter handy 17 tools such as sed(1) and sort(1). This command prints 18 the lines of the given file to stdout, in sorted or- 19 der: 20 21 $ sort numbers 22 23 Soon after, newcomers will also encounter shell redi- 24 rection, by which the output of these tools can conve- 25 niently be read from or stored in files: 26 27 $ sort < numbers > numbers_sorted 28 29 Our new user, fascinated by the modularity of the Unix 30 shell, may then try the rather obvious possibility of 31 having the input and output file be the same: 32 33 $ sort < numbers > numbers 34 35 But disaster strikes: the file is empty! The user has 36 lost their precious collection of numbers - let's hope 37 they had a backup. Losing data this way is almost a 38 rite of passage for Unix users, but let us spell out 39 the reason for those who have yet to hurt themselves 40 this way. 41 42 When the Unix shell evaluates a command, it starts by 43 processing the redirection operators - that's the '>' 44 and '<' above. While '<' just opens the file, '>' 45 *truncates* the file in-place as it is opened for 46 reading! This means that the 'sort' process will du- 47 tifully read an empty file, sort its non-existent 48 lines, and correctly produce empty output. 49 50 Some programs can be asked to write their output di- 51 rectly to files instead of using shell redirection 52 (sed(1) has '-i', and for sort(1) we can use '-o'), 53 but this is not a general solution, and does not work 54 for pipelines. Another solution is to use the 55 sponge(1) tool from the "moreutils" project, which 56 stores its standard input in memory before finally 57 writing it to a file: 58 59 $ sort < numbers | sponge numbers 60 61 The most interesting solution is to take advantage of 62 subshells, the shell evaluation order, and Unix file 63 systems semantics. When we delete a file in Unix, it 64 is removed from the file system, but any file descrip- 65 tors referencing the file remain valid. We can ex- 66 ploit this behaviour to delete the input file *after* 67 directing the input, but *before* redirecting the out- 68 put: 69 70 $ (rm numbers && sort > numbers) < numbers 71 72 This approach requires no dependencies and will work 73 in any Unix shell. 74 75 76 77 Library of Babel now available on gopherspace.Bitreich 78 79 What is the Library of Babel? 80 81 >> The Library of Babel is a place for scholars to do 82 research, for artists and writers to seek inspira- 83 tion, for anyone with curiosity or a sense of humor 84 to reflect on the weirdness of existence - in short, 85 it's just like any other library. If completed, it 86 would contain every possible combination of 1,312,000 87 characters, including lower case letters, space, com- 88 ma, and period. Thus, it would contain every book 89 that ever has been written, and every book that ever 90 could be - including every play, every song, every 91 scientific paper, every legal decision, every consti- 92 tution, every piece of scripture, and so on. At pre- 93 sent it contains all possible pages of 3200 charac- 94 ters, about 104677 books. 95 96 Now available on gopherspace! 97 98 Have fun! 99 100 Sincerely yours, 20h Chief Librarian Officer (CLO) 101 102 103 104 105 Donkey Meter goes online. Bitreich 106 107 Have you ever wondered, how much traffic is used on 108 Bitreich.org? Now you can see it. In combination with 109 our French friends who spread donkey technology, we 110 now have a Donkey Meter: 111 112 It takes a second to load due to donkey technology re- 113 strictions. 114 115 You might also be interested in our Large Donkey Col- 116 lider technology. 117 118 Have fun! 119 120 Sincerely yours, 20h Chief Donkey Officer (CDO) 121 122 123 124 Most minimal Gopher server tgtimes 125 126 Gopher is a protocol providing a gateway to a document 127 system, allowing to serve an organized hierarchy of 128 files over the network. Dynamically generating the 129 content as per user requests is also possible. The 130 client side is in charge of rendering the content as 131 it sees fit. 132 133 Generating Gopher indexes and transmitting file con- 134 tents or generated contents is low in software compm- 135 lexity, and in turn allows less expensive hardware to 136 be run than complex web stacks. 137 138 Which cost would we end-up for building a minimal 139 piece of hardware able to host the Gopher protocol 140 acheiving all of the above? The Gopher Times investi- 141 gates. 142 143 Communication While WiFi is inexpensive and fits mov- 144 ing device gracefully, the reliability of Ethernet 145 is indicated for a server. Ethernet adds 1 USD of 146 cost for the transceiver handling the electricial 147 characteristics of Ethernet. These typically expose 148 an RGMII interface. 149 150 Processing A microcontroller featuring an Ethernet pe- 151 ripheral (with an RGMII interface) could be the pop- 152 ular STM32F103, or an alternative compatible part. 153 Enough processing power would be present for an em- 154 bedded TCP/IP and a TLS stack. 155 156 Automation In addition, most microcontrollers feature 157 a large range of built-in peripheral such as timers 158 and communication or analog interfaces, enabling au- 159 tomation of devices such as lighting, heating, laun- 160 dry, motors, or an entire car, through external mod- 161 ules. This would come for no extra cost. 162 163 Storage A slot for a MicroSD card would allow storing 164 and updating the static content to serve, and stor- 165 ing network configuration. 166 167 Scripting There exist project to fit programming lan- 168 guages onto microcontrollers. Separate projects for 169 supporting a subset of each of Python, Ruby, 170 Javscript, Go, Rust, Lua, Forth and more. 171 172 Power By letting power supply happen through the USB 173 port, a large range of power source can be used, 174 such as battery, solar panels, wind turbine, hy- 175 dropower, or power outlet. 176 177 The bill of materials for such a design would approxi- 178 mate 5 USD. A marketed device with a small margin for 179 the seller could reach as low as 10 USD. 180 181 Interestingly, such a device would also be able to 182 provide an equivalent Web service able to work with 183 all Web client, but not running the existing popular 184 Web server software stacks known as "Web Frameworks". 185 186 187 188 189 Groundhog Day Service Page online. Bitreich 190 191 At Bitreich we support the culture of grounded, based 192 and ecological- and animal-friendly technology. In 193 this sense, it is natural for us to support Groundhog 194 Day, the scientific measurement for winter length pre- 195 diction. In preparation for our now yearly celebration 196 of this day, we now offer the current groundhog shadow 197 status on Bitreich: 198 199 Future prediction has never been that easily and 200 worldwide available! 201 202 Now groundhog was harmed in the production of this 203 service! 204 205 Sincerely yours, 20h Chief Ground Officer (CGO) 206 207 208 209 DJ Vlad Session on Bitreich Radio on 2023-03-11itreich 210 211 New DJ Vlad Session from Serbia on Bitreich Radio on 212 2023-03-11T20:00 CET. 213 214 Our residing DJ Vlad (not from Russia or Ukraine) has 215 found a new sound and will present it to us at 2023- 216 03-11T20:00 CET exclusively on Bitreich Radio! 217 218 He will be streaming from Serbia to all over the go- 219 pherspace and the world! 220 221 The whole session can be listened to of course at: 222 223 It is so easy and simple. 224 225 See you all for this exclusive experience from Serbia! 226 227 Sincerely yours, 20h Chief Vibe Officer (CVO) 228 229 230 231 232 C Thaumaturgy Center opens at Bitreich Bitreich 233 234 People always had a desire for magic. This magic does 235 not end in modern times. 236 237 >> Any sufficiently advanced technology is indistin- 238 guishable from magic. -- Arthur C. Clarke 239 240 So is C, C pointers and C bit twiddling: 241 242 Get your daily magic there! 243 244 In case you have your own C magic spells laying around 245 and want to offer them to the public, send them to: 246 Christoph Lohmann <20h@r-36.net> 247 248 I will include them into the programme of the C Thau- 249 maturgy Center. 250 251 Sincerely yours, 20h Chief Magic Officer (CMO) 252 253 254 255 256 Bitreich Telemetry Service goes Public. Bitreich 257 258 The industry is going towards telemetry everywhere: Go 259 programming language logging, Windows 11 poop logging 260 etc. To save you from burnout (which is what Google 261 uses for telemetry excuse!), Bitreich is moving for- 262 wards too. Try it now! 263 264 $ git clone git://bitreich.org/geomyidae 265 $ cd geomyidae 266 $ make telemetry 267 268 In case you want to use the telemetry API in your pro- 269 ject, just us: 270 271 # Everything behind the secon0 | ncebitreich.orgt70pped. 272 Thanknyou"forpinstalling}${projectname}! 273 Nothing is logged. You can trust us, we are not Google. 274 275 It is free to use! 276 277 Have fun! 20h Chief Telemetry Officer (CTO) 278 279 280 281 282 Peering Cake for IPv6 tgtimes 283 284 The Internet Protocol is the fundamental encoding and 285 communication convention that permits computers to 286 reach each other across multiple LANs. 287 288 An Protocol to allow Inter-Network communication. 289 Andy Tanenbaum wrote a beautiful introduction about 290 the underlying idea: 291 292 The part of Internet visible from a single user looks 293 like a tree, with at its root the service provider. 294 Regardless how complex the branches are, there is usu- 295 ally "the gateway", implying a single one per network, 296 to allow traffic to "exit", implying a single direc- 297 tion to go for reaching the outter world. The routing 298 configuration rarely changes, and is often boiling 299 down to "going out", implying beyond the gateway is 300 outside.. 301 302 The part of Internet visible from a service provider, 303 however, looks like a mesh, a more balanced graph, 304 with many possible gateways, many possible "exit" di- 305 rections, and no more idea of "outside". If you pick 306 one possible gateway picked at random, hoping them to 307 nicely find the correct destination for your IP pack- 308 ets, they may realistically cut your connection and 309 never ever talk to you again, depending on how much 310 traffic you suddenly sent (routing your IPs to 311 0.0.0.0). This happens frequently. Network admin mail- 312 ing lists are constantly active with many people dis- 313 cussing with many others. 314 315 Network admins themself are usually friendly among 316 themself, even across concurrents, but companies do 317 not always play nice with each other. 318 319 There is a legendary dispute known by all Internet 320 Service Provider (ISP) netadmins: the two biggest in- 321 ternational internet network providers, Cogent and 322 Hurricane Electric, are disconnected. The two major 323 IPv6 Carriers, those giants connecting the ISP togeth- 324 ers across continents, are currently refusing to ex- 325 change IPv6 packets with each other. This means that 326 with IPv6, from a country connected to only Cogent, it 327 is not possible to reach a country connected to only 328 Hurricane Electric, and the other way around. For 329 this reason, all ISPs from all countries connections 330 with many more carriers for IPv6 than it is for IPv4, 331 resulting in either lower stability or higher cost. 332 333 This strategy permits Cogent to remain competitive 334 face to its larger concurrents. Hurricane Electric, 335 on the other hand, have much more commercial advantage 336 to perform peering with Cogent, to therefore exchange 337 traffic. In the diversity of attempts to get Cogent 338 to change its mind, Hurricane Electric decorated a 339 large creamy cake with a message, and shipped the cake 340 to the headquarters of Cogent. Here is what the mes- 341 sage said in 2009: 342 343 >> Cogent (AS174) Please IPv6 peer with us XOXOX - 344 Hurricane Electric (AS6939). 345 346 347 348 Announcing the "tgtimes" keyword tgtimes 349 350 As any newspaper, The Gopher Times goal is to relay 351 information. Through chat discussions, The Gopher 352 Times ocasionnally collect heirlooms which are pub- 353 lished back to the community in this newspaper. 354 355 We propose this way of catching The Gopher Times at- 356 tention, so that editors can collect all occurences: 357 In an IRC chat discussion, simply make the word tg- 358 times appear as a way to pingback to us. 359 360 Upon publishing The Gopher Times, the IRC logs of var- 361 ious channels will be searched for this keyword, hence 362 noticing every time someone wanted to submit something 363 to the The Gopher Times. One word to say and The Go- 364 pher Times comes that way. 365 366 367 368 369 #bitreich-cooking ggg 370 371 In the city home to the best pubs in the English- 372 speaking world, Truth keeps ggg alive, tantalises him 373 sadistically, and heals, then looks after him. Coming 374 from China, ggg waded through lies to learn that noth- 375 ing is more powerful than Truth; coming into Cork, ggg 376 learnt that Truth catches up nicely with nobody, 377 still, you would prefer Truth's company anyway. 378 379 Life is fierce futility. Agony unites us. Renais- 380 sance will come. 381 382 60% hustler + 15% hacker + 25% hipster is ggg. The 383 more he writes, the less words he ends up with. You 384 can find ggg on #bitreich-en and #bitreich-cooking. 385 386 387 388 Most minimal gopher client tgtimes 389 390 Gopher is a protocol allowing browsing text, images 391 interactively, reach telnet interfaces, and download 392 any file, or open any URL, for custom action to be 393 chosen by the user. 394 395 Network One reliable way to fetch the content from in- 396 ternet would be Ethernet, but convenience and price 397 would push toward using radio transmission such as 398 WiFi. [1] 399 400 Processing One inexpensive family of processors fea- 401 turing a high cost-to-performance ratio, which also 402 features WiFi, is the ESP32. The C3 iteration even 403 uses the open-source architecture RISC-V. The speed 404 is decent enough for decoding JPEG an PNG, or sup- 405 port TLS as used in gophers://. 406 407 Display The cost of displays have dropped considerably 408 as they invaded the market. Economy of scale made 409 small color displays even cheaper than character- 410 based displays. 411 412 Input Browsing content is a lot about scrolling. Since 413 we do custom hardware, capacitive touch buttons can 414 be used for little to no extra cost. This could 415 permit a smooth scrolling through the content. [2] 416 417 Text Text is compact and efficient, and bitmap font 418 requires a bit of storage for all the common non- 419 ASCII characters, but ESP32 have 16MB of flash stor- 420 age enough for the entire uncompressed Unifont: 421 422 Audio Producing sound does not cost much more than a 423 small audio amplifier, software for decoding MP3, 424 and a 3.5mm Jack connector. Very small cost added. 425 426 Extension an USB interface would allow plugging the 427 device to a computer for either automation or using 428 a full keybaord. 429 430 Power A small dedicated battery could be included in- 431 creasing the cost, but getting all power from USB 432 would also preserve the choice to the user, free to 433 chose a wall charger or portable power bank. 434 435 Enclosure A custom 3D printed case would allow keeping 436 the cost very low even at small volume production. 437 438 There exist boards around 5 USD which would provide 439 all of the above except audio and a few wires, typi- 440 cally the size of an MP3 player. The grand total bill 441 of material could realistically approach 10 USD. An 442 actual product could eventually reach as low as 15 USD 443 if keeping only a small margin for the seller, and 444 eventually lower if produced on a larger scale. 445 446 The support of TLS does not bring any cost in this ex- 447 ample: an ESP8266 could be used at around 0.85 USD in- 448 stead of 1.25 USD for the ESP32-C3, but is also capa- 449 ble of TLS. Image decoding would then probably be 450 much slower. By far the most resource hungry part of 451 this project. 452 453 Writing the software for such a product from the 454 ground up could take typically an entire week, includ- 455 ing JPEG and PNG decoding libraries, image and font 456 rendering, writing driver for all the parts involved, 457 integrating the TCP/IP stack and TLS stack. 458 459 While an XML parser able to fetch content over HTTP 460 would be relatively as difficult to build, this would 461 not permit the same level of user experience as the 462 Gopher-based project: CSS and JavaScript are becoming 463 an increasingly frequent requirement to access the 464 Web, and reimplementing a new compatible rendering en- 465 gine is not feasible to a single person. 466 467 This requirement would in turn affect the minimal per- 468 formance of the processing unit used: a processor in 469 the GHz range with RAM in the GB range, in particular 470 if anticipating future needs of the Web software sys- 471 tem. 472 473 1 Ethernet would require an extra transceiver chip, while wifi takes mostly 474 just a wire acting as antenna, which partly explains its low cost. 475 2 Once again, mostly requiring wires, this cuts the price and explain 476 their popularity. 477 478 479 480 481 Meme cache pointer support Bitreich 482 483 The Bitreich memecache joins modern programming lan- 484 guages like C in supporting pointer notation. Get a 485 pointer representation of a meme by referencing it in 486 our IRC channels with the syntax '*<tag>', instead of 487 the usual '#<tag>'. 488 489 Example: 490 491 <adc> #gnu-hut 492 <annna> #gnu-hut: gophers://bitreich.org/I/memecache/gnu-hut.jpg 493 <adc> *gnu-hut 494 <annna> *gnu-hut: gophers://bitreich.org/9/memecache/filter/*gnu-hut.jpg 495 496 The pointer notation works for image and video memes. 497 Remember that you can explore our memes with [1] 498 bitreich-tardis, and explore the inner workings of 499 annna in the [2] git repository. -adc Deep pointer 500 support in memes. 501 502 Thanks the ground work of adc, we had pointer support 503 for memes. Based on this, we now have deep pointer 504 support for all kind of memes: 505 506 With cache support. Have fun pointing at memes! We 507 had much fun making this. :D Reverse pointer support 508 for memes. 509 510 After a public request by an avid pointer lover, we of 511 course implemented reverse pointer support for memes 512 now: 513 514 See how you can dereference this teapot now. 515 516 Have fun! 517 518 Sincerely yours, 20h Chief Pointy Officer (CPO) 519 1 git://bitreich.org/bitreich-tardis 520 521 2 git://bitreich.org/annna 522 523 524 525 The Road to Success josuah 526 527 Success, the holy grail in Life. Many different forms 528 and shapes. Marriage? Career? A medal? A stable fi- 529 nancial situation? Crossing the border and get natu- 530 ralized? So many facets to that same shiny diamond. 531 532 Or does success mean avoiding failure? In that case, 533 doing nothing means no failure, but trying always have 534 more chance to reach whatever one names "success". 535 536 If failing means that trying did not lead one as far 537 as hoped for, then the next thing to do for getting 538 closer to "success" again is trying again, in risk to 539 fail over again. And while so, also going a bit 540 closer every time to success. What is the landmark 541 that distinguish being very close to actually reaching 542 success? Which indicator to use? Is it about com- 543 pleting a large project? Fame? A position in the 544 company? And once at the top position of a company, 545 one can still say it was a tiny company and the real 546 goal always was to be at the head of a great company, 547 and that success will be when the company is large 548 enough. 549 550 So if there is no real landmark, if failing is trying 551 but failing to reach an impossible goal, then failing 552 is the result of trying whatever that leads to. Fail- 553 ure would be the moment that follows any attempt to 554 reach the end of a direction. Failure would simply be 555 the moment where you look back at where you were be- 556 fore trying, where you are now, and the road left to 557 go to reach infinity. 558 559 Success looks similar: trying to move forward, con- 560 stantly bumping the objective further as one get 561 closer to it. Again success is the moment where you 562 look at where you are, and estimate how far you've 563 been. If success and failure are the same, this sug- 564 gests that something is wrong somewhere. Somehow, the 565 ultimate acheivement of every life is death. 566 567 The Road to Success? This is the same as the road to 568 Failure: this is Life, it leads to Death. Wherever we 569 go, we will be on it as long as we live. So now, may 570 we move that idea of Success away so that we can enjoy 571 living our life. 572 573 574 575 576 sfeed 1.7 was released. Hiltjo 577 578 sfeed is a tool to convert RSS or Atom feeds from XML 579 to a TAB-separated file. 580 581 It can be found at: 582 583 sfeed has the following small changes compared to 1.6: 584 sfeed_curses: 585 586 o Add SCO keys for next, prior (CSI I and CSI G). 587 Tested on DragonFlyBSD (cons25 console). 588 589 o Add SUN keys support. Tested on OpenIndiana. 590 sfeed_gopher: 591 592 o Remove unnecesary PATH_MAX restricting the path 593 length. This also makes it compile cleanly on 594 GNU/Hurd. 595 596 o Man page and documentation improvements. 597 598 I want to thank all people who gave feedback, 599 600 Thanks, Hiltjo 601 602 603 604 Volunteers for a The Gopher Times trial wanted.itreich 605 606 As pioneers in the gopher world, we at Bitreich want 607 to make the gopher times more accessible to all people 608 over the world. For this, we are planning a trial to 609 have printed out the gopher times sent to your 610 doorstep. 611 612 If you want to participate, please send your name and 613 address to 614 615 Christoph Lohmann <20h@r-36.net> 616 617 World delivery to all remote places is possible too. 618 619 Sincerely yours, 20h Chief Press Officer (CPO) 620 621 622 623 624 Brcon2023 from August 7th to 13th Bitreich 625 626 The community has decided! Brcon2023 will happen be- 627 tween 7th to 13th of August beginning with an online 628 session from 7th to 10th August and a presence part 629 from 11th to 13th of August in Callenberg, Germany: 630 631 This means, the call for papers/presentations is open. 632 This year the main topic will of course be gopher and 633 all kind of simple services created for gopherspace. 634 All other simple protocols are welcome too. 635 636 Some topics that are already planned and may inspire 637 you: 638 639 o Entropy services via gopher. 640 641 o Serving highly-complex memes via IRC/gopher includ- 642 ing gopher GPU services. 643 644 o Geo / map services via gopher. 645 646 o Qi Gong for beginners (in the forest!) including an 647 inspiring forest walk in the sun. 648 649 o Gophers and other family members in a museum exhibi- 650 tion with an exclusive tour. 651 652 It is very simple to hold a presentation. Please see 653 the slides from a previous con: 654 655 And it is possible from all over the world! The world 656 is invited! 657 658 Please send proposals for talks to Christoph Lohmann 659 <20h@r-36.net>. 660 661 See you at brcon2023! 662 663 Sincerely yours, 20h Chief Conference Officer (CCO) 664 665 666 667 Publishing in The Gopher Times you 668 669 Want your article published? Want to announce some- 670 thing to the Gopher world? 671 672 Directly related to Gopher or not, reach us on IRC 673 with an article in any format, we will handle the 674 rest. 675 676 ircs://irc.bitreich.org/#bitreich-en 677 gopher://bitreich.org/1/tgtimes/ 678 git://bitreich.org/tgtimes/ 679 680 Did you notice the new layout? We now can jump be- 681 tween single and double column as it is more fit: Some 682 large code chunks will not fit in a two-column layout, 683 but text is more pleasant to read on two columns. 684 685 686 687