[HN Gopher] Show HN: We built a terminal-only Bluesky / AT Proto...
       ___________________________________________________________________
        
       Show HN: We built a terminal-only Bluesky / AT Proto client written
       in Fortran
        
       Yes, that Fortran.
        
       Author : FormerLabFred
       Score  : 130 points
       Date   : 2026-03-20 22:06 UTC (1 days ago)
        
 (HTM) web link (github.com)
 (TXT) w3m dump (github.com)
        
       | cat-turner wrote:
       | out of curiosity, why fortran? no disrespect. I wrote a lot of
       | scientific software in the earlier days of my career and I
       | learned fortran to update ocean modeling software.
        
         | pklausler wrote:
         | maybe they weren't really concerned about portability or a
         | decent standard?
        
           | FormerLabFred wrote:
           | It's keyboard navigation only, and we got the Bluesky
           | firehose raw straight into the Rust decoder. Or we switch
           | mode to Jetstream with m+EnTER :)
           | 
           | You hit l+ENTER to like a post. If anyone replies from
           | Bluesky, we hit n+ENTER and see the notifs. And so on
           | 
           | Fortransky is 70% Fortran, rest is Rust, C and a tiny Python
           | helper
        
         | enriquto wrote:
         | > why fortran?
         | 
         | why not? the language is straightforward and loops are fast. It
         | is portable and your code will work unchanged for the next 50
         | years. It may be a bit verbose, but that's not a big deal with
         | today's tooling.
        
           | FormerLabFred wrote:
           | Fortran will survive the cockroaches even, when the world
           | 404s
        
           | pklausler wrote:
           | Your code will work unchanged until you try to change
           | compilers or your compiler adopts a J3 breaking change to the
           | language.
        
             | kergonath wrote:
             | > your compiler adopts a J3 breaking change to the language
             | 
             | Like all the 3 of them they added in the last 30 years, and
             | that compiler vendors are not enforcing anyway because they
             | don't want to annoy their users?
             | 
             | Windows' backward compatibility is a joke compared to
             | Fortran.
        
           | deadbabe wrote:
           | Great, can we see some benchmarks?
        
             | FormerLabFred wrote:
             | Cobolsky holds the record for most surprised looks per line
             | of code :)
             | 
             | Fortransky benchmarks pending
             | 
             | the feed scorer will have real numbers worth reporting
             | 
             | Whenever time allows in future: Fortran vs Go vs Python
        
           | foxglacier wrote:
           | Yea na, Fortran is pretty compiler dependent and there are a
           | lot of compilers. Already old Fortran code used all sorts of
           | now-dead proprietary compilers and can take a huge effort to
           | get it to compile on modern compilers or even modern
           | computers. Modern code might use Gfortran which sometimes
           | makes breaking changes so that's not an option. Perhaps if
           | everyone uses the latest shiny new Flang or whatever, then
           | it'll finally last 50 years? Not likely, given the history.
        
         | FormerLabFred wrote:
         | You are not the first one to ask :)
         | 
         | We built Cobolsky. Will go public soon. Parallelly too curious
         | on Fortran. The world is better with a Fortran-based social
         | network client in it :)
         | 
         | When we are building the feed composer, in next version,
         | Fortran will be great for the algorithm etc.
         | 
         | Keeping the ancient languages alive. I built some Cobol stuff
         | many years ago. Back at it again. Rusty.
         | 
         | Both Cobolsky and Fortransky looks great on Swordfish90's cool-
         | retro-term, but we are building our own terminal for Fortransky
         | too. There is a blog post with screenshots over at
         | Patreon/formerlab
         | 
         | Can't get enough Fortran
        
           | embedding-shape wrote:
           | > The world is better with a Fortran-based social network
           | client in it
           | 
           | If you don't mind me asking, why is the world better with
           | more Fortran-based software?
        
             | FormerLabFred wrote:
             | Our modern languages are built on it, and it's incredibly
             | fast,
             | 
             | so it deserves to be kept alive. We owe a great deal to the
             | people who wrote it in the 1950s I guess
        
               | embedding-shape wrote:
               | > Our modern languages are built on it
               | 
               | It's part of the lineage, yeah, probably started with
               | Algol though? Fast I guess is always nice, but I'm not
               | sure that's enough to keep it alive solely for that, at
               | least to me.
        
               | mathieudombrock wrote:
               | I think the best answer you're really going to get here
               | is that it's cool and fun to learn and use old languages.
        
               | embedding-shape wrote:
               | I'd agree with all of those reasons! I do so myself as
               | well, was just specifically curious about the "The world
               | is better with a Fortran-based social network client in
               | it" part. Don't get me wrong, I've spent too many nights
               | learning "dead" languages too, but never with the idea
               | that the world would be better if I published more code
               | in these dead languages, it's just for my own
               | gratification and learnings.
        
               | mountainriver wrote:
               | This thread makes me happy
        
               | johnisgood wrote:
               | I know right! I was pleasantly surprised. It has to be
               | one of the greatest news I have heard in a while.
        
               | hedora wrote:
               | I came here to suggest COBOL as a better fit, then saw
               | your comment a few levels up in this thread.
               | 
               | Out of curiosity, does your implementation use CODASYL?
               | 
               | (For people that don't pay much attention to historical
               | software systems, most CODASYL implementations were
               | similar to JSON document databases, so going that way
               | isn't as crazy as it sounds.)
        
               | FormerLabFred wrote:
               | Great comment! Thanks!
               | 
               | No CODASYL, the JSON parser is hand-rolled Fortran with a
               | depth-tracking key scanner
               | 
               | CODASYL not a crazy direction for the feed composer
               | 
               | Got more depth to explore here, still early :)
        
           | Melatonic wrote:
           | How do COBOL and Fortran compare for something like this ?
        
             | FormerLabFred wrote:
             | COBOL is more painful, Fortran better.
             | 
             | Good you raised the topic, can write a blog post on it when
             | we ship Cobolsky. Will be a proof of concept repo.
             | Fortransky is the one
             | 
             | (If AT Proto did fixed-width records instead of JSON, COBOL
             | would be formidable)
        
           | bee_rider wrote:
           | Which version of the language is it? It looks like you used
           | Fortran90 at least (modules are used), which is pretty old,
           | but not totally ancient like Fortran77.
           | 
           | Anyway there are also 2018 and 2023 versions...
        
             | fortran77 wrote:
             | I still make a living from Fortran77 work, though much of
             | it is converting it to Matlab.
        
               | bee_rider wrote:
               | Building interfaces or full converting? Either way sounds
               | like a dream job, haha.
        
           | johnisgood wrote:
           | Thank you for choosing Fortran. Seriously, I mean it.
           | 
           | Someone else already said this, but it is awesome because it
           | proves that you can write useful software using languages
           | others consider ancient or dead and therefore "unusable".
           | 
           | Keep up the great work!
        
       | blundergoat wrote:
       | fortran > cobol
        
         | pklausler wrote:
         | fortran .GT. cobol
        
         | FormerLabFred wrote:
         | > forever
        
       | uberdru wrote:
       | The world is a better place for this app. Wonderful!
        
         | FormerLabFred wrote:
         | :) I mean there are still some people alive out there who never
         | saw a web UI when beginning dev. They get a bit nostalgic,
         | missing their 286
         | 
         | It's fun and it is appreciated by them, and the young ones who
         | are curious
        
       | hk1337 wrote:
       | Are there any other AT protocol apps that aren't derivatives of
       | bluesky? By that I mean, not social media feed related, twitter
       | clone.
        
         | iameli wrote:
         | Yep lots! Mine is a livestreaming service: https://stream.place
         | 
         | Also a great blogging platform: https://leaflet.pub
         | 
         | Here's a goal tracker: https://goals.garden
         | 
         | This one just dropped recently; it's 44 different atproto-
         | related apps with a cyberpunk theme:
         | https://www.aetheros.computer/
         | 
         | Lots others mentioned here: https://blueskydirectory.com/
        
           | FormerLabFred wrote:
           | AT conference in a couple of days. In Vancouver. Bet they are
           | all there and the rest of the AT bunch.
        
         | FormerLabFred wrote:
         | Don't know if people are building GitHub-like systems, offline-
         | first app sync etc
         | 
         | Many devs reuse schema and write some twitter/bsky clone
         | 
         | Kind of search engine for my Blueaky likes
         | 
         | Gotta get off the timeline, germ has a messaging app, then
         | there is Tangled and some more
         | 
         | We do Fortransky and Cobolsky now, got more ideas for the
         | protocol than time :)
        
           | linolevan wrote:
           | https://tangled.org/ <--- GitHub on ATProto
           | 
           | that's all I'm aware of
           | 
           | (edit) Oops, just saw that you mentioned it, confused by your
           | first line then. Tangled is awesome!
        
         | tjuene wrote:
         | i am currently working on a dropbox alternative:
         | https://dropb.at
        
           | Hamuko wrote:
           | How do you plan on differentiating it from just a trivial
           | setup of an FTP account that's mounted locally with curlftpfs
           | and has files in a SVN or CVS on the mounted filesystem?
        
             | tjuene wrote:
             | good point, i havent considered this at all. its basically
             | dead on arrival
        
           | FormerLabFred wrote:
           | Cool!
        
       | h4ch1 wrote:
       | It's always nice to see production codebases in languages that
       | you've never used but are interested in.
       | 
       | Tangential, but to the author, are there any FORTRAN codebases
       | you feel are well designed?
        
         | FormerLabFred wrote:
         | Good reminder to dig around. Will check. We picked up the
         | Fortran manual and just went for it.
         | 
         | The original Manual exists as a PDF. Was it in a Stuttgart uni
         | URL? Just a search away.
         | 
         | Late in Sweden, gotta Fortran tomorrow. Happy to continue
         | discussion here tomorrow.
        
       | nerdypepper wrote:
       | y'all gotta throw this up on https://tangled.org ;)
        
         | FormerLabFred wrote:
         | On it!
        
       | zoom6628 wrote:
       | Brilliant in every possible way. Fortran was first language I
       | learnt at high school in its "PORTRAN" variant.
        
         | FormerLabFred wrote:
         | :) We tried Abacus Fortran on the C64 back in the days and were
         | allowed to stay indoors during breaks doing Basic stuff too on
         | school computer.
         | 
         | One of the guys wrote 8xxROM some 10 years later.
         | 
         | Today known as U-Boot :)
        
       | isodev wrote:
       | On ATProto: it's funny how we never learn the lesson:
       | 
       | - VCs band together to fund something shiny.
       | 
       | - Devs love shiny, helping spread the something.
       | 
       | - VCs enschitify it to get their coins back.
        
         | FormerLabFred wrote:
         | VC is Fortransky no-go zone
        
       | Ashkaan wrote:
       | Oh this is cool
        
       | youhai wrote:
       | From my experience building browser automation tools, the biggest
       | challenge with most Chromium-based solutions is that their TLS
       | fingerprint is a dead giveaway. Firefox-based approaches tend to
       | fare much better against JA3/JA4 fingerprinting.
       | 
       | The key insight is moving fingerprint spoofing from the JS level
       | (which is itself detectable) down to the native C++ level. It's a
       | fundamentally different approach.
        
         | FormerLabFred wrote:
         | Multiple tabs open? :)
        
           | kgwxd wrote:
           | Just spam.
        
       | arunakt wrote:
       | thats COBOL :)
        
       | lzhgusapp wrote:
       | Love seeing niche Show HN projects like this. The choice of
       | Fortran is wild but that's what makes it fun. As someone building
       | small Mac utilities, I appreciate any project that proves you
       | don't need a massive stack to ship something useful.
        
         | FormerLabFred wrote:
         | Thanks for the feedback!
         | 
         | We got a spec for Assemblersky. Will be a weekend project.
         | Cancel Easter :) And probably Midsummer too...
         | 
         | We got image composer and decoder plugged in in dev env, but
         | will let this first open version breathe first. ASCII or early
         | Apple algo
         | 
         | Fortran-fast feed builder probably in next open version. It
         | crunches fast
         | 
         | Morning, 9 o'clock in Sweden, coffee and check-the-feed-on-
         | Fortransky-time :)
        
           | bombcar wrote:
           | COBOLsky. It's enterprise webscale.
        
       | vincentabolarin wrote:
       | 'written in Fortran'.
       | 
       | Interesting choice. Why?
        
       | worldmerge wrote:
       | I've never seen fortran before. Wow, that looks more readable
       | than a lot of modern languages.
        
         | cmrdporcupine wrote:
         | Modern dialects of Fortran, sure.
         | 
         | Old school Fortran from before they added cleaner and more
         | structured elements is terrifying.
        
         | bee_rider wrote:
         | Modern versions of Fortran are reasonably pretty.
         | 
         | It's a fairly nice language. You can probably get better
         | performance out of C/C++ with unlimited effort. But, it is
         | _really nice_ for allowing computational scientists to get,
         | like, 95% of the way there.
         | 
         | I think it actually suffers from the reputation as this
         | ancient/super hardcore performance language. The name comes
         | from "Formula Translating System," which implies... it was
         | written for people who speak human languages first!
        
           | sitzkrieg wrote:
           | ive maintained a simulation software where the core is
           | written in fortran. its using some intel math library that is
           | expensive that i cannot recall, does immense calculations and
           | makes faster binaries than c on every compiler we tried
        
             | bee_rider wrote:
             | Interesting.
             | 
             | MKL is Intel's famous numerical library (it includes things
             | like BLAS "basic linear algebra subroutines" and fast
             | Fourier transforms). It is availible for free, but IIRC
             | they had some support plans maybe, maybe that's what you
             | are remembering?
             | 
             | It is closed source, but you can look at the source of the
             | best open source competitor libflame/BLIS, and see that
             | most of the performance comes from C and assembly.
             | 
             | It is difficult to beat "unlimited effort" C, but not many
             | program really justify that treatment.
        
               | foxglacier wrote:
               | MKL used to not be free. You had to buy it from a local
               | reseller for a few hundred dollars per developer.
        
             | extraduder_ire wrote:
             | Have you tried using the restrict keyword everywhere you
             | can in c?
             | 
             | In Fortran, arrays are not allowed to overlap which allows
             | some optimisations. c has rules in the spec about how
             | memory accesses must occur, and overlapping arrays being
             | possible prevents some compiler optimisations. The restrict
             | keyword is you promising that the memory at some pointer
             | won't be accessed through another pointer.
             | 
             | You can compare two implementations in Fortran/c using
             | godbolt to see how each of them compile.
        
       | grougnax wrote:
       | Why not Rust ?
        
       | jrmg wrote:
       | There seems to be a bunch of Rust in there too?
        
         | FormerLabFred wrote:
         | It's early version yes. It's 70% Fortran, next version more
         | Fortran and we will add x86-64 assembly decoder for AT Proto
         | firehose frames
        
       | jrmg wrote:
       | It seems you've written an extensive blog post about this, but I
       | don't see a direct link anywhere!
       | 
       | https://www.patreon.com/posts/fortransky-we-in-153457794
        
         | FormerLabFred wrote:
         | To the repo? It's in the blog post head, in section under first
         | screenshot,
         | 
         | https://github.com/FormerLab/fortransky
        
           | jrmg wrote:
           | No, I mean the other direction.
           | 
           | The repo is what's this HN post links to, and I don't see a
           | link to the blog post in it or in other comments here. The
           | blog post is interesting!
        
             | FormerLabFred wrote:
             | Ok got you. Good point, added to repo README
        
       | fortran77 wrote:
       | Finally! Some relevant news here. I wondered where all the other
       | Fortran people were hiding. I thought I knew all the other
       | BlueSky Fortraners.
        
       | Uptrenda wrote:
       | Whenever I hear about this AT protocol I think about the text-
       | based commands to control cellular modems. I can't be the only
       | one, r-right guise... r-right?
        
       | FormerLabFred wrote:
       | Forecast: Fortransky on Tangled tomorrow Sunday
        
       | vissnia wrote:
       | I'm curious if you used AI during development and how it handled
       | Fortran
        
       ___________________________________________________________________
       (page generated 2026-03-21 23:01 UTC)