Skip to content
HomeVideosBooksBlogs
AllTop postsTopics
Podcasts
HistoryListsWatch laterLiked videosFollowing

The videos, books, blogs and podcasts Hacker News keeps recommending, all in one place.

VideosBooksBlogsPodcastsAboutPrivacySettings

Data from Hacker News, HackerTube, HackerBooks, HackerBlogs and Open Library. Credits · Not affiliated with Y Combinator.

HomeVideosBooksBlogsPodcasts
Ctrl K
    S

    Soykaf Blog

    blog.soykaf.com · Company blog · on HN since 2018

    Soykaf Blog covers Pleroma, a fediverse server written in Elixir, including ActivityPub, PostgreSQL, and privacy topics.

    Visit blogHN submissions
    Open Source & LinuxDistributed SystemsDatabases
    What HN says

    HN commenters link it as the explainer for what Pleroma is, how it works, and how cheaply it can run.

    Stats for nerds
    18HN people shared it
    14linked in comments
    186story points
    Mar 2022last shared
    2018people per year2022

    Top posts on HN

    1. 1
      Prepared statements and their surprising performance implications
      3 people · 141 points · first shared 2020 · 36 comments on HN
    2. 2
      What Is Pleroma? (distributed social network in Elixir)
      5 people · 13 points · first shared 2018 · 2 comments on HN
    3. 3
      Pleroma 1.0, a Mastodon compatible fediverse server in Elixir
      2 people · 8 points · first shared 2019 · Discussion on HN
    4. 4
      Gopher Support in Pleroma
      1 person · 6 points · first shared 2018 · 1 comments on HN
    5. 5
      Privacy and Tracking on the Fediverse
      2 people · 4 points · first shared 2018 · Discussion on HN
    6. 6
      End-to-End Encryption and the Fediverse
      2 people · 4 points · first shared 2020 · Discussion on HN
    7. 7
      PostgreSQL Search: From the Trenches
      1 person · 4 points · first shared 2020 · Discussion on HN
    8. 8
      Implementing ActivityPub in an Elixir Twitter Clone
      2 people · 3 points · first shared 2018 · Discussion on HN
    9. 9
      Stable release of Pleroma, ActivityPub compatible microblogging server software
      1 person · 3 points · first shared 2019 · Discussion on HN

    What HN people wrote when they linked it

    • hendi_Jun 2020

      Your point a) is moot, this is not what this is about. When writing manual SQL nothing stops you from doing `SELECT * FROM persons WHERE age > 'eighteen'` (the `age` field is a number, obviously). Coming from Django I was often bitten by `Person.objects.filter(age__gt=trashhold) # boom!` (note the misspelled variable "threshold") or, if you prefer manual writin SQL: `Person.objects.raw("SELECT * FROM persons WHERE age > {}", trashhold) # boom! as well`. (Admittedly this is unrelated to type safety, just a disadvantage of Python being interpreted, but still something that Haskell/IHP protects me of.)

      Regarding b), yes there are good reasons for prepared statements. I won't go into your argument "for scalability" (premature optimization cough) but cached query plans aren't perfect either: data and data typologies change, and so does the optimal query plan. See https://blog.soykaf.com/post/postgresql-elixir-troubles/ for a blog post about Elixir/Phoenix/Ecto users being bitten by that.

      > I wonder if the person who wrote this understands SQL to sufficient depth. Not saying either way, just asking.

      I did not write the IHP code, just the above comment. But I've read many of CJ Date's books and have a good grasp on the relational model, and of SQL too. I simply don't see things as black/white, there are certain queries where I do prefer prepared statements and functions, or PL/pgSQL even, then there are ones where I use an external .sql file to keep things tidy. But most of…

    • phoe-krkJan 2019

      The owner of each instance pays the costs for hosting a given instance. So, basically, domain + hosting.

      Note that these costs can be really low; Pleroma[0] can be run on a Raspberry Pi 3 or a $2.50 Vultr instance[1]

      [0] https://pleroma.social/

      [1] https://blog.soykaf.com/post/what-is-pleroma/

    • mxuribeMar 2020

      An older post might help you: https://blog.soykaf.com/post/what-is-pleroma/

      Admittedly, this is dated, but is still valid, and should help you get a basic understanding of what pleroma is - including a few screenshots. I hope that helps!

    • rogerbraunJun 2018

      Some background information on ActivityPub in Pleroma:

      https://blog.soykaf.com/post/activity-pub-in-pleroma/

      https://blog.soykaf.com/post/what-is-pleroma/

    • onphonenowMar 2022

      Right, benefits include performance gains.

      From HN:

      https://blog.soykaf.com/post/postgresql-elixir-troubles/

      In addition to security.

    • marciAug 2018

      Pleroma is written in Elixir

      https://blog.soykaf.com/post/what-is-pleroma/#less-moving-parts

    Related

    Pleroma Blogpleroma.social46 people

    Pleroma: A Mastodon-compatible open and federated social networking server

    Pleroma Blog
    Company · last shared 2023
    Supabase Blogsupabase.com286 people

    Postgres WASM

    Supabase Blog
    Company · last shared 2026
    MyNoSQLnosql.mypopescu.com66 people

    Attacking NoSQL and Node.js: Server-Side JavaScript Injection (SSJS)

    MyNoSQL
    Publication · last shared 2016
    We Distributewedistribute.org27 people

    Faircamp is a free Bandcamp alternative

    We Distribute
    Publication · last shared 2026
    ScyllaDB Blogscylladb.com167 people

    How io_uring and eBPF Will Revolutionize Programming in Linux

    ScyllaDB Blog
    Company · last shared 2026
    Ubicloud Blogubicloud.com53 people

    Show HN: Open-source x64 and Arm GitHub runners

    Ubicloud Blog
    Company · last shared 2026
    Hasura Blogblog.hasura.io26 people

    Deploying a ReasonML React app with Docker

    Hasura Blog
    Company · last shared 2020
    Snyk Blogsnyk.io210 people

    The most popular docker images each contain at least 30 vulnerabilities

    Snyk Blog
    Company · last shared 2026