anti-idpol action

I am working on fedi software that is hoping to allow Kodi, Plex and Popcorn Time get rid of IMDb/TMDB dependency. Dm me if you’re skilled in SvelteKit and/or Go, especially the Fiber framework, or machine learning with Rust and willing to contribute.

  • 2 Posts
  • 128 Comments
Joined 1 year ago
cake
Cake day: September 10th, 2023

help-circle



  • In Clojure, -> is used for inserting the piped argument at the head position in the arguments of whatever it is passed to, while ->> is used for inserting it at the tail. This approach is great for working with immutable data in a series of approachable transformations, which I believe is one reason why so many Domain-Specific Languages for generative programming are written in that language, aside from its interactive REPL. Additionally, there is no need to worry about excessive copying, as this is generally well optimized.

    This can be particularly useful with HoneySQL, which is more of a DSL for SQL rather than a typical ORM tool. For example:

    (defn apply-filters [query filters]
    "applies WHERE clauses to a query"
      (reduce (fn [q [column value]]
                (helpers/where q [:= column value]))
              query
              filters))
    
    (defn build-dynamic-query [{:keys [table columns filters sort-by limit]}]
      (-> {}
          (helpers/select columns)
          (helpers/from table)
          (apply-filters filters)
          (helpers/order-by sort-by)
          (helpers/limit limit)
          sql/format))
    
    ;; Result - a super readable function call that resembles a natural language 
    (build-dynamic-query 
      {:table :products 
       :columns [:id :name :price] 
       :filters {:category "electronics" :in-stock true}
       :sort-by [:price :desc]
       :limit 20})
    






  • also Huawei laptops. Jfc what a trashy counterfeit of a MacBook and if you get an AMD one, better also get a good cooling stand. The keyboard is terrible and costs a fuckton to replace and generally the repairability is like with macs, the USB ports are built in a way that just begs for either them or your peripherals to be broken, they might overheat while charging, they ship bloatware and the speakers are ridiculously quiet. My friend’s mom bought her one contrary to my advice to get a second-hand thinkpad or just any other business-line laptop and it she had to return the first shipment because the screen got bent during shipment.

    MIUI… don’t even get me fucking started on this garbage. It literally removes numerous features from vanilla android, presumably to relocate some performance budget to the bloat they add.



  • premature optimization is a root of all evil.

    also when those morons decide to do ‘microservices’ but end up creating glorified SOA with one messy DB where half the tables are not even used by anything, updates in place are the standard and there is nothing like one team per service, but instead everyone is expected to navigate millions of lines of spaghetti code with poor documentation, barely any reuse and inconsistencies all across the board with this oh too-fucking-common entity service anti-pattern.

    and so much fucking coupling that you better start deploying your dev cluster just right after waking up so it maybe is up and running by the time your daily is over.

    Fun fact, I used to work at a company where a lot of projects use Elixir and a bulk share of my coworkers have been outspoken critics of microservices precisely because OTP manages to power fault tolerant and scalable systems but not by insane levels of complexity like kubernetes does but by CoC that rarely gets in your way.


  • I only use vscodium for things that are not that well supported by neovim, in my case it’s only Scala basically, but I guess I’m just to lazy to properly configure metals. I use Sway as my desktop and I don’t want to go into configuring DPI just for vscodium or switch to gnome to not ruin my vision even further when using it. This is what I like about terminal-based editors - the whole Ui scales with a single key combination. Speaking of which I also consider the combinations provided by many Neovim “distributions” (and my workflow ;p) way more ergonomic than emacs-y finger gymnastics of vscode and the likes, since I just hit the space twice and type a command alias without moving my fingers from where they should be on the keyboard instead of memorizing gazillion combinations working little by little towards giving me a carpal tunnel.






  • the real question is whether you use git variants. Which is another way of not making arch (and Gentoo) certainly not free as in free beer, especially if you live in Europe and need to deal with those outrageous energy prices. btw imo one should be suspicious of projects with long tagged release cadence since it’s usually a sign of technical debt and the need to look for alternatives.