• 2 Posts
  • 110 Comments
Joined 2 years ago
cake
Cake day: June 20th, 2023

help-circle
  • THANK YOU.

    I migrated services from LXC to kubernetes. One of these services has been exhibiting concerning memory footprint issues. Everyone immediately went “REEEEEEEE KUBERNETES BAD EVERYTHING WAS FINE BEFORE WHAT IS ALL THIS ABSTRACTION >:(((((”.

    I just spent three months doing optimization work. For memory/resource leaks in that old C codebase. Kubernetes didn’t have fuck-all to do with any of those (which is obvious to literally anyone who has any clue how containerization works under the hood). The codebase just had very old-fashioned manual memory management leaks as well as a weird interaction between jemalloc and RHEL’s default kernel settings.

    The only reason I spent all that time optimizing and we aren’t just throwing more RAM at the problem? Due to incredible levels of incompetence business-side I’ll spare you the details of, our 30 day growth predictions have error bars so many orders of magnitude wide that we are stuck in a stupid loop of “won’t order hardware we probably won’t need but if we do get a best-case user influx the lead time on new hardware is too long to get you the RAM we need”. Basically the virtual price of RAM is super high because the suits keep pinky-promising that we’ll get a bunch of users soon but are also constantly wrong about that.


  • Being able to assign a nameserver per interface with a domain wildcard is a fucking godsend. I use it every day with a hook script because my job uses some private domains but I don’t want to send my entire DNS history through the VPN. Now ~job.com goes to tun0 and that’s the end of it.

    systemd-resolved is not perfect but with libnss’s overly rigid nature the only alternative for my use-case would be to recreate similar functionality to resolved with dnsmasq – which is just objectively worse especially when you want to use DHCP sometimes but not always. Why reinvent the wheel? resolved does its job and does it well. I had some issues with it a few years ago but have been using it for the past couple years without complaint.


  • There can’t be a war when one of the sides is not fighting nor willing to fight.

    I’m not calling for anyone to do anything, just pointing it out: None of the people in charge of any institution nominally opposed to Trump are willing to even come close to that line. Do you really think there is a world in which any blue state governor would authorize any use of force against the feds? And if you can make up a contrived scenario where this does happen, can you imagine it escalating to the sanctioned use of lethal force?

    There are factions within MAGA who have drank their own kool-aid so hard they actually think that there are Antifa militias out there and that they can gaud them into giving them a Reichstag Fire. That is lunacy, typical fascistic paranoid violent fantasy.

    If they can’t speed up their authoritarian takeover that way, they will simply keep going with their current strategy of slowly overturning all jurisprudence until eventually blue state leaders will politely roll over, invite ICE political officers to oversee their operations, smile, and forward the order to send their children to Trump&Ghislaine’s Fun Family Camp.



  • ??? Of course you do. Investors don’t just buy their way into hypothetical future profits, they buy control over the company. The specifics depend, whether it’s voting shares or the looming threat of debt collection, but the courts will 100 % enforce investors’ right to demand things from companies.

    Furthermore the idea that publicly traded companies have some kind of obligation to make as much money as quickly as possible is a reddit-born myth. Shareholders will bring in a CEO, who will be tasked to do whatever and can be fired from the shareholders at any time. Grievous mismanagement and intentional damage can expose a CEO to legal action, just like intentionally destroying tools can expose a worker to legal action. But a CEO acting in good faith has no other obligation than to fulfill the tasks asked of them by shareholders. The problem is that goes wrong when large shareholders plan to sell their shares and need the numbers to look a little better to sell a little higher. But this phenomenon absolutely happens with PE as well – in fact it’s arguably way worse because publicly traded companies at least have legal obligations of financial transparency. Private shareholders can do whatever the fuck they want, including secretly selling their shares to Evil Inc. for them to strip the company for parts and not a single employee has the right to even know who the majority shareholder even is, nervermind what their plan is.





  • It’s not even about predictions or estimations - everything’s so many years late everyone stopped counting. They just… don’t seem to understand “scoping”? The pitch is “ultra-realistic life-size universe sandbox simulation” and they keep hitting walls because they’re using tech that’s completely inadequate for the task at hand but they won’t let that deter them. They’ve probably reimplemented every subsystem of the Crysis 3 engine a dozen times by now, and it’s still not anywhere near capable of achieving even a tenth of their ambitions. Fuck, they just very recently got their server meshing thing barely working after like a decade of development (at the cost of rewriting everything again of course).

    It’s like watching a team raising billions to build the Burj Khalifa but all they have is a bunch of dry sand and some spoons. Deadlines aren’t really the issue.


  • That’s treading dangerously close to a specific kind of conspiracy theory there.

    The EBU has pretty strong financial ties to Israel, not least of which their main sponsor Moroccan Oil. But at the end of the day you can count on the ghouls in charge to always find the coward’s way out and follow the money. It’s the exact same pattern of behavior they had with Russia in 2022, which they initially allowed to compete before backpedalling.

    Pretending that this is an issue solely because of some conspiracy is not only baseless, but it also unfairly lets most European broadcasters off the hook for refusing to uphold the set the same hard lines with Israel that they set with Russia. Israel competed because European broadcasters were happy enough to include Israel. Simple as.



  • It’s like every other media industry. The monoculture is dying. Everyone’s who’s “about it” is into niche subcultures and micro-celebrities you’ll probably never hear of.

    There was a weird period of time from the mid-20th through the early 21st century where radio and TV had very strongly concentrated media production which made up most people’s media consumption.
    For the last 15 years or so the tools of professional-looking media production for mass consumption have been available to anyone with a few hundred bucks to spare.

    In some ways it’s a communist utopia. The means of production have been commodified so much virtually anyone can afford them. However capitalists have moved on from owning the means of production to owning the means of distribution (the platforms).


  • Like Trump needs distraction. He could breathe slightly funny or his hands could turn a different shade of purple and the news circus would move on from the birthday book tomorrow, which doesn’t even confirm anything we didn’t already know.

    Killer was well-prepared and a good shot, unlike the weirdo who tried to take out Trump. The only unusual thing is that people who have the mental acumen to actually pull something like this off and not get caught immediately tend to be mentally stable enough not to attempt something like that.

    But times are a-changing and political violence in the US is going to get a lot worse before it gets better. People forgot that the Rule of Law and Social Contract were meant not just as ways to prevent conservatives from implementing ethnic/religious fundamentalism, but also to prevent this exact kind of thing happening. Trump is at the helm of a government he seemingly distrusts, whose own rules he constantly breaks or ignores, whose institutions he actively sabotages, whose fundamental principles he spits on. As a consequence trust in all three branches of government is crumbling, which inevitably legitimizes political violence as a last resort vector of change.



  • Counterpoint: Yes, parse don’t validate, but CLIs should not be dealing with dependency management.

    I love Python’s argparse because:

    • It’s “Parse, don’t validate” (even supports FileType as a target)
    • It enforces or strongly encourages good CLI design
      • Required arguments should in most situations be positional arguments, not flags. It’s curl <URL> not curl --url <URL>.
      • Flags should not depend on each other. That usually indicates spaghetti CLI design. Don’t do server --serve --port 8080 and server --reload with rules for mix-and-matching those, do server serve --port 8080 and server reload with two separate subparsers.
      • Mutually exclusive flags sometimes make sense but usually don’t. Don’t do --xml --json, do -f [xml|json].
      • This or( pattern of yours IMO should always be replaced by a subparser (which can use inheritance!). As a user the options’ data model should be immediately intuitive to me as I look at the --help and having mutually exclusive flags forces the user to do the extra work of dependency management. Don’t do server --env prod --auth abc --ssl, do server serve prod --auth abc --ssl where prod is its own subparser inheriting from AbstractServeParser or whatever.

    Thinking of CLI flags as a direct mapping to runtime variables is the fundamental mistake here I think. A CLI should be a mapping to the set(s) of behavior(s) of your application. A good CLI may have mandatory positional arguments but has 0 mandatory flags, 0 mutually exclusive flags, and if it implements multiple separate behaviors should be a tree of subparsers. Any mandatory or mutually exclusive flags should be an immediate warning that you’re not being very UNIX-y in your CLI design.


  • I’ve been using the AI to help me with some beginner level rust compilation checks recently.

    I never once got an accurate solution, but half the time it gave me a decent enough keyword to google or broken pattern to fix myself. The other half of the time it kept giving me back my own code proudly telling me it fixed it.

    Don’t worry though, AGI is right around the corner. Just one more trillion dollars bro. One trillion and we’ll provide untold value to the shareholders bro. Trust me bro.


  • It has certainly helped to be able to work from home in the last couple years so I do take a walk during lunchtime. Working in an office you’re expected to socialize during lunch breaks, which happen indoors…

    Even then, 30 minutes of daylight every day five days a week in the best case scenario is NOT a lot, especially when it’s cloudy for weeks on end so saying “daylight” is already kind of stretching it.


  • You mustn’t get “winter depression” particularly bad then. I can’t get anything done when DST does away. Extreme cold or extreme heat I can easily find physical solutions to (my house is well-insulated), but spending all daylight hours in front of a screen then having zero sunlight for after-work activities is just a burden I have to bear 5 months out of the year and it makes me want to kill myself or become a bricklayer or sth.


  • I don’t trust the US government to do literally anything right with this, and I’m kinda surprised Google didn’t already gift an underage child to Trump so he’d make the problem go away.

    However a perfectly viable option that I’m sure the previous government looked into would be to entrust Chromium (which is Open-Source though not copyleft) to a new, independent nonprofit made of Google’s former chromium team led and paid for by a consortium of the major commercial chromium users (Google, Microsoft, etc.). It would be in everyone’s best interest to share the relatively small financial burden so that Chromium can remain decent and competitive.

    This wouldn’t be anything revolutionary. This approach of financing an independent open-source project as a “common good” is basically how the Linux kernel has been developed for many years now, most Linux code is written by corporate sponsors.