730 karma · joined February 9, 2021
It's not complicated: if these friends would take a non-society-destroying job at equal pay (who wouldn't?) then their values aren't driving the decision, money is. Fine, that's a choice adults get to make. But then own it and actually justify it on its merits, don't just retreat to "who are you to judge."
All the superficial filler leaves a linkedin flavored taste in my mouth. I’d prefer to hear the author’s own voice and thoughts without noise injected to give the illusion of polish.
Actually caring is what gives someone the itch to go back and improve things, versus happily calling it a day once minimum acceptable value has been delivered. The rampant enshittification of basically everything should make it clear which disposition is in short supply.
> Have the courage to go slowly, especially when everyone else is telling you that you need to go fast and cut corners.
The advice is aimed at students who haven’t yet decided which type they want to be. In fact it’s directly telling them to think for themselves and not blindly listen to you or anyone else here making the same case.
That a feminist art project or collective has to be defined in opposition to something else is entirely your own framing.
This is where your mind goes when you read “feminist,” which reveals your priors.
And according to their stats page that sibling linked it’s more like a few tens of thousands of users.
I tile within one monitor when I legitimately want to see things side by side, but I certainly don’t want firefox permanently taking up screen space when I really only need to occasionally look at it. Usually it’s on a separate monitor in the same workspace, or in a dedicated workspace.
Maybe there’s some way I could manipulate stacks and zooms to achieve that within one workspace, but I’ve always found it easier to just have firefox on a separate workspace I can easily quickly swap to and from when needed.
Most workspaces are a fullscreen browser or some other app to the left, fullscreen editor in the center, tmux on the right.
I still use tiling within a monitor to view email side-by-side with browser, or a document or two side-by-side with code. Rarely feel the need to put 3+ apps in a complicated layout on one screen since I’m usually not gonna be cross-referencing at them all at once.
If I had one monitor I wouldn’t want to be taking up half of it showing the browser all the time when I could instead use that real estate for more vim splits.
Also surfacing this comment I noticed which points out some pretty big caveats with the paper:
> As a heavy Datalog user, here's my opinion of the paper.
> Generally, my objection to this work would be that almost all "Datalog" programs they evaluate (7 programs in total) are either just SQL (i.e., they only have joins, no recursion) or they are transitive closure (i.e., they only have linear recursion). This is not Datalog. This is provably (one of the few things we can prove in complexity theory) a lower complexity class than Datalog. So, there is very strong reason to believe that these results do not translate to full Datalog. Transitive closure can be sped up arbitrarily much, compared to more complex recursion.
> The authors only evaluate one program (out of the 7) that has complex recursion. That one is "context-sensitive program analysis" (CSPA). However:
> a) the souffle version is not optimized for complex recursion, I strongly suspect it can be sped up by 2 orders of magnitude, so I really doubt the GPU speedup for this one
> b) despite the name, the analysis is not "context-sensitive", but let's just say this is an oversight
> c) it's still just a 10-line program, hardly representative of full Datalog.
> Methodologically, I cannot reproduce anything from this paper, at least not without talking to the authors directly. The artifact link in the paper (https://file.io/YZE8MKx12iqX) is broken already. In the repo, most of the large inputs are replaced with git lfs links and the github repo doesn't seem to serve git lfs, e.g., https://github.com/harp-lab/gdlog/blob/main/data/cspa/httpd/...
Would love to hear the perspective of anyone who switched from a similar workflow to Niri. How does the mental model shift?
> Private through physics. Not through policy.
Goodness, LLM really convinced itself this was groundbreaking.
You could describe a .html file sitting on your computer with all of the same marketing bluster.
Someone has to send it to you all the same, and you might as well not rely on some random internet service to render it??
They pledge their unrealized capital gains as collateral for billions in loans, spend the cash, and pay single-digit interest instead of income tax.
Repeat until they die, then their heirs inherit the shares at a stepped-up cost basis, so the gains are in fact never taxed.
Again, I’d ask you to engage with this:
> I wouldn’t call that their fair share.
> The top 1% of earners take in 22% of total income and pay 40% of all federal income taxes.
How misleading. Income here means AGI, i.e. taxable income as defined by the IRS. That excludes unrealized capital gains, loans against said unrealized capital gains, etc. For example, Elon Musk’s AGI was $0 in 2018 despite a massive increase in net worth. Wouldn’t call that his fair share.
> Myth No. 2: We’ll fix the budget deficit by taxing the rich
> We simply cannot. The collective net worth of every American billionaire is estimated at somewhere around $8 trillion. The projected federal deficit over the next decade alone approaches $25 trillion. Even a one-time total confiscation of every billionaire’s wealth wouldn’t come close, and you only get to do it once.
Hilarious argument. Suddenly it’s billionaires instead of the previously mentioned top 1%. Their estimated net worth is more like 40 to 50 trillion. Not to mention how much that wealth is expected grow in the next 10 years.
The entire article is similarly underhanded and clearly meant to mislead. Or perhaps to reinforce the views of readers who already agreed and weren’t going to think critically anyways. Doesn’t take a genius to guess who paid for it.
https://steve-yegge.medium.com/bags-and-the-creator-economy-...
c = 2^a / d
so: d = 2^a / c
so: x / d = (x * c) / 2^a
And /2^a is equivalent to >>a, so we have: x / d = (x * c) >> a
Which is just a multiply and shift, cheaper than integer division.Problem is, with some divisors like 7, 14, 21, ... the smallest c that works to produce an exact result is 33 bits. Awkward on 32 bit CPUs, it just barely doesn’t fit but you can account for that extra 1 bit manually with an extra sequence of sub, shift, add.
What the paper points out is twofold:
1. On 64 bit CPUs the extra sequence isn’t required, you can just do a full 64x64 bit multiply and 128 bit shift. Back to just a multiply and shift like the original optimization, and already faster than the workaround.
2. Even better, the shift itself can be optimized away. A 64x64 bit multiply stores the 128 bit product in a pair of 64 bit registers, meaning you basically get >> 64 for free by just looking at the upper half register in the pair. That means if you pre-shift the constant to:
c’ = c << (64 - a)
Now (x * c’) >> 64 is equivalent to (x * c) >> a. And the result is just waiting for you in a 64 bit register, no shift needed.Just one multiply to divide a 32 bit integer by 7. Nice.
Bonus mention of a pg essay which the commenter clearly only read the title of.
Refresh avoidance is a tangential thing the memory controller happens to be able to do in a scheme like that, but you’d really have to be looking at it in a vacuum to bill it as a benefit.
Like I said, it’s all about cache. You’re not going to DRAM if you actually care about performance fluctuations at the scale of refresh stalls.