1. 33

2019 will be the year of finger(1) let it be said!

Try it with:

finger lobsters@typed-hole.org

  1.  

  2. 8

    “Finger the typed hole” - this does sound like a weird mashup between a Haskell textbook and slashfic.

    1. 7

      …and if you don’t want to install finger, you can query it easily using socat/nc/whatever:

      echo lobsters | socat -t 10 stdio tcp:typed-hole.org:79
      
      1. 6

        Nice one!

        Given that finger(1) is a standard tool @$WORK, I like this even more! :^)

        Edit:

        Hmm… the last two posts are clumped together like so:

        [1] - Dad style programming jokes
        http://github.com/wesbos/dad-jokes
        Submitted Wed Jan  9 10:09:11 2019 by 8bithero | programming
        [2] - Get lobste.rs stories with finger(1)      URL:https://lobste.rs/s/3xpycv
        Submitted Wed Jan  9 10:05:56 2019 by julienxx | meta, show, unix
        

        Quite meta - yes, I know ;^)

        Also, how do I get the 2nd and subsequent pages?

        1. 3

          I’m curious what you do for work that finger is still a standard tool.

          1. 2

            We’re running a modified version of fingerd(8) which gives us some extra information like people’s email addresses, their location, etc. - lookup, essentially.

          2. 1

            Thanks, I fixed the issue with URL-less stories. There is no page 2 at the moment, only the 25 hottest stories.

            1. 2

              That was super-speedy! Thanks! :^)

              While we’re at the subject of URLs, any chance for both, the main story and the comments, to be included?

              1. 1

                I could do that, thanks for the suggestion :)

                1. 1

                  Added the link to comments.

            2. 5

              Brilliant! I’ve gotta admit I was super sad when fingerd across the internet went dark after the Morris worm. I always felt like being able to see who was online across the internet was super cool :)

              (Yes, I recognize how amazingly BAD an idea this is from a security perspective, but in the late 80s/early 90s internet for most purposes it really didn’t matter a good 90% of the time :)

              Also reminds me of Thimbl which appears not to exist anymore. Neat idea though.

              1. 4

                A reminder I created a Gopher version too. Unfortunately I don’t host it because I’m slightly concerned about hitting the servers too hard as a third party; maybe I’ll get around to fixing that.

                1. 3

                  I’ve got one too :)

                  gopher gopher://sdf.org/1/users/julienxx/Lobste.rs

                  1. 2

                    In the past year I’ve had to send out one abuse report for excessive traffic to lobste.rs. A crawler was making multiple simultaneous and systemic page requests and impacting service for everyone else. That is something that is difficult to do accidentally: any caching, rate limiting, or request economization is probably sufficient–a protocol front-end like Gopher or Finger aren’t, prima facie, excessive or inappropriate in the same way this scraper was.

                    That said, the IRC bot announces new story submissions using push (email) notifications. I did this to avoid polling out of the same concern you have here. We are in control of our entire stack, and so have the luxury of being able to solve resource or request problems end-to-end as folk discover or develop means of interacting with the site and community. Any of you are welcome in #lobsters if you have questions or concerns about whether your software is a burden on the servers or our community.

                    1. 2

                      Thanks for the warning! Both my finger & gopher toys are hitting the /hottest.json endpoint and they do some caching of the response for several minutes.

                      Given the popularity of these protocols I guess they’re not adding too much pressure on the lobste.rs stack :)

                      1. 2

                        Both my finger & gopher toys are hitting the /hottest.json

                        That is what it’s for. The two most popular endpoints are / (17.7% of hits over the past year) and /rss (18.9% of hits over the past year). /hottest.json by comparison is 0.7% of hits for the same time period.

                        Given the popularity of these protocols I guess they’re not adding too much pressure on the lobste.rs stack

                        Correct. And good work @julienxx, @calvin, and other folk developing on or for Internet protocols that are not HTTP.

                  2. 3

                    …and if you don’t want to install socat or finger, you can query it easily using Ruby:

                    require 'socket'
                    lob = TCPSocket.open('typed-hole.org', 79)
                    lob.puts 'lobsters'
                    puts lob.read
                    
                    1. 4

                      You can use netcat, which I believe comes standard with all unices:

                      $ echo lobsters | nc typed-hole.org 79

                      1. 9

                        …or just do it with plain bash? :)

                        ( exec 3<>/dev/tcp/typed-hole.org/79; echo lobsters >&3; cat <&3 )
                        

                        (run it with the parens to create a subshell so that the file descriptor is closed automatically)

                        1. 1

                          You win :)

                          I learned something new today, thanks!

                          1. 1

                            Holy crap – bash can do TCP? shiver. Now that I’m aware of that, I’m never switching from ksh :P

                            1. 1

                              I take it you haven’t seen this HTTP server implemented in pure bash? https://github.com/avleen/bashttpd/blob/master/bashttpd

                              EDIT: and a fork with more feature here: https://github.com/AjankeFoundation/bashttpd

                      2. 2

                        Not having used finger for decades, that was a bit of a search.

                        On archlinux

                        apacman -S netkit-bsd-finger

                        Thanks for the memories.

                        1. 1

                          This is cool, however lobste.rs already looks great in text based browsers, I access it in my terminal from w3m all the time :)

                          1. 1

                            As a Forther, typing man 1 finger made me chuckle a little harder than it should’ve…