Plutus, Haskell, Nix, Purescript, Swift/Kotlin. laser-focused on FP: formality, purity, and totality; repulsed by pragmatic, unsafe, “move fast and break things” approaches


AC24 1DE5 AE92 3B37 E584 02BA AAF9 795E 393B 4DA0

  • 2 Posts
  • 111 Comments
Joined 1 year ago
cake
Cake day: June 17th, 2023

help-circle




  • I’ve been looking into building and developing a Lemmy fork using Nix but I got stuck on nixifying the part of the build instructions where you have to combine front end and back end in git submodules. It’s a bummer too because I won’t even write a single line of code on this fork until I have it properly setup with flakes. It’s just how I am. 🤣

    Maybe my flake can help you get Tauri working and maybe that would motivate you to help me get Lemmy working with Nix tooling instead of Ansible and Docker as it is now? ;)




  • Learn Haskell.

    Since it is a research language, it is packed with academically-rigorous implementations of advanced features (currying, lambda expressions, pattern matching, list comprehension, type classes/type polymorphism, monads, laziness, strong typing, algebraic data types, parser combinators that allow you to implement a DSL in 20 lines, making illegal states unrepresentable, etc) that eventually make their way into other languages. It will force you to learn some of the more advanced concepts in programming while also giving you a new perspective that will improve your code in any language you might use.

    I was big into embedded C programming years back … and when I got to the pointers part, I couldn’t figure out why I suddenly felt unsatisfied and that I was somehow doing something wrong. That instinct ended up being at least partially correct. I sensed that I was doing something unsafe (which forced me to be very careful around footguns like pointers, dedicating extra mental processes to keep track of those inherently unsafe solutions) and I wished there was some more elegant way around unsafe actions like that (or at least some language provided way of making sure those unintended side effects could be enforced by the compiler, which would prevent these kinds of bugs from getting into my code).

    Years later, after not enjoying JS, TS (IMO, a porous condom over the tip of JavaScript), Swift, Python, and others, my journey brought me to FRP which eventually brought me to FP and with it, Haskell, Purescript, Rust, and Nix. I now regularly feel the same satisfaction using those languages that I felt when solving a math problem correctly. Refactoring is a pleasure with strictly typed languages like that because the compiler catches almost everything before it will even let you compile.






  • Do you count the core devs (who maintain/write the core protocol), the foundation (preferably a DAO or voting based organization that is responsible for earmarking the funding for the upgrades and projects for the community), and treasury (that distributes mining/staking rewards and collects the fees for later distribution) as fair distribution? I do (depending on the structure of the aforementioned organizations obviously). Just wondering where you sit on that issue and any of projects that you can point to that have that ideal token allocation you speak of.

    I haven’t found a more fair ITA than Ergo but then again, the Ergo project seems to have trouble paying/attracting really solid core devs other than the founder, Kushti.

    Edit: took out some mention of my favorite project. Want to be impartial here.


  • 🚩🚩🚩🚩🚩🚩🚩🚩🚩🚩

    As a crypto enthusiast and DApp dev, IMO this (and indeed most crypto projects especially ones that are really nothing more than ERC-20 or BRC-20 tokens) raises major red flags for me. IMO, it is sketchy moonboi shit.

    If a hype-drenched crypto project is brand new and is already aggressively marketing itself with no discernible real world utility or reason for the disbursement of “governance tokens”, solely fixated on “number go up”, it is usually a scam/pump and dump.

    Taking a look at the Initial Token Allocation for this project definitively allows me to make conclusions about the team’s honesty and trustworthiness.

    So without further ado: check out the super sketchy token allocation (they try to break up different groups of insiders to try and hide the fact that most of the token goes to insiders and private investors…compare that to Ergo and it seems incredibly greedy in contrast): ITA

    17% — StarkWare Investors

    32.9% — Core Contributors: StarkWare and its employees and consultants, and Starknet software developer partners

    50.1% granted by StarkWare to the Foundation, earmarked as follows:

    9% — Community Provisions — for those who performed work for Starknet and powered or developed its underlying technology, e.g. via past use of the StarkEx L2 systems. Crucially, all Community Provisions will be based on verifiable work that was performed in the past. For example, to the extent Community Provisions will be given to past StarkEx users, allocations will be determined based on verifiable usage of StarkEx’s technology that took place prior to June 1, 2022.

    9% — Community Rebates — rebates in Starknet Tokens to partially cover the costs of onboarding to Starknet from Ethereum. To prevent gamification, Community Rebates will only apply to transactions that occur after the rebate mechanism is announced.

    12% — Grants for research and work done to develop, test, deploy and maintain the Starknet protocol

    10% — a strategic reserve, to fund ecosystem activities that are aligned with the Foundation’s mission as explained in the previous post in this series.

    2% — Donations to highly regarded institutions and organizations, such as universities, NGOs, etc, as decided by Starknet Token holders and the Foundation.

    8.1% Unallocated — the Foundation’s unallocated treasury is in place to further support the Starknet community in a manner to be decided by the community.

    in contrast, here are some other ITA’s to compare it to:


  • For one, FPTP doesn’t get enough credit for just how nefarious it is. And let me be clear: I am speaking of the presidential election specifically, though I’m sure this applies to many aspects of this “democracy” including state elections, etc that you mentioned.

    Instead, the overarching establishment narrative likes to point the finger at the electoral college (which also quite heavily biases the power of votes toward voters in less populous areas and states).

    Since the established oligarchs (who own the news outlets) tend to control information delivery in this country, how would you break through that wall? Would you engage in peaceful protest (or self immolation)? Well, they’ve got a playbook for that too. They will discredit you and make you seem unhinged. For proof of that, look at the way they’re delegitimizing the brave, selfless active duty Air Force member who engaged in peaceful protest by self immolation outside of the Israeli embassy against the Gaza war for just how easy it is. Most news watching voters probably already think he was crazy. It didn’t quite have the power that that act had during, say, the Vietnam war.


    Since you’re here, I’m guessing you’re a software engineer. Do me a favor: Model the real world dynamics of a US presidential election using domain driven design, making sure to accurately represent the two objectively unfair stages:

    Rule #1: All candidates must pass stage 1 to be eligible for stage 2.

    In stage 1, feel free to cheat, commit fraud, and engage in any strategy you need to prevent anyone but the owners of the party’s preferred candidates from winning. After all, your party is a private organization that can engage in whatever unfair tactic they deem necessary.

    In stage 2, (if you’re paying attention, you ALREADY have irreparably biased the possible outcomes by cheating in stage 1) because of FPTP, you can now simply choose between only two of the MANY, MANY parties.

    If you designed a system like that as a software engineer, your colleagues would be at your throat about how flawed that design was. However, here in the US, that’s just the design of our dEMoCrACy oF tHa gReATeSt cOuNTry iN tHa wErLD! 🥴

    Edit: That “much worse” statement seems to come from a place of privilege. Don’t forget that. RIGHT NOW, more people are homeless and destitute than any other time in MY LIFE (I was born in the late 70’s). And most people literally have no say in whether or not their tax money is being used to genocide Muslims overseas to make room for a puppet government. Remember: You’re an anti-Semite if you oppose genocide.