This is awesome! Will give it a try in my next project.
How does it keep track of filename and line number in a compiled binary? I'm fairly new to rust libraries and this doesn't quite make sense to me. I know in JS you need a source-map for minification, how does this work for a compiled language?
Rust provides file!, line! and column! macros that expands into a compile-time constants that the compiler embeds then into the executable. This way no source map at runtime is necessary as the relevant errors are constructed from those constants.
Presumably StackError just uses those macros.
But for debugging a source map is still necessary and is a part of various debug formats.
To add a bit more nuance, SO has a question-answer type format, which leads very well into prompt-rely format to train these chat applications. Most of the other sources do not, except for Github issues maybe. Without this question-answer format, there'll be a need for a bigger data labeling effort to train LLMs on new stuff, no?
Still, the whole Unix philosophy of building tools starts with a foundation of building something small that can do one thing well. If that is your foundation, you can take advantage of composability and create larger tools that are more capable. The foundation of all computing today is built on this principle of design.
Building on AI seems more like building on a foundation of sand, or building in a swamp. You can probably put something together, but it's going to continually sink into the bog. Better to build on a solid foundation, so you don't have to continually stop the thing from sinking, so you can build taller.
Yeah something is DEFINITELY up. This is not the norm, we haven't seen this before. Fly.io free tier is not happy and I'm not sure why (we've been on it for years at this point). I'm gonna disable until I can dig deeper. Have day job stuff to attend to, this is not my ideal Friday afternoon :P
If you're on shared CPU you probably got throttled. Dig into the grafana dashboard and you'll see it somewhere...it's not nearly prominent enough in their UI.
They left open a publicly exposed database... I'm sure they informed the company about this before publishing their post. Why are you blaming Wiz for this?
While Russia has certainly found ways around the sanctions, look at their economy... Putin is spending his reserves out from under the next decade. They're rather fucked.
Clearly china could last longer under similar conditions, but they're also looking weaker than they did 5 years ago.
Not just me then? I was trying to fix a GitHub action just today but I have no clue how I'm supposed to tear it, so I just keep making tiny changes and pushing.... Not a good system but I'm still within the free tier so I'm willing to put up with it I guess.
I think it’s everyone, debugging GH actions is absolute hell, and it gets terrifying when the action interacts with the world (e.g. creating and deploying packages to a registry).
> it gets terrifying when the action interacts with the world (e.g. creating and deploying packages to a registry).
To be fair, testing actions with side effects on the wider world is terrifying even if you’re running it locally, maybe more so because your nonstandard local environment may have surprises (e.g. an env var you set then forgot) while the remote environment mostly only has stuff you set/installed explicitly, and you can be sloppier (e.g. accidentally running ./deploy when you wanted to run ./test). That part isn’t a GH Actions problem.
Locally it is much easier to set up and validate test environments, or neuter some of the pipeline to test things out and ensure the rest produces expected results (in fact I usually dry-run by default and require a file or envvar to “real run”). Especially as some jobs (rightfully) refuse to run in PRs.
If this is to troubleshoot non-code related failures (perm issues, connection timed out, whatever influences success that doesn't require a code change) then surely the repo's history would benefit from one just clicking "Re-run Job", or its equivalent $(gh ...) invocation, right?
not necessarily, rerun job will most likely use the fully resolved dependency graph of your actions (or equivalent), a fresh run will re-resolve them (e.g. you pinned to @1 vs the specific version like @1.2.3 of a dep).
the history problem goes away if you always enforce squash merge...
Because if Zuck or Musk does something bad with said power, we can do something about it.
We can't really jail the CCP. Additionally, Zuck and Musk don't have armies to back up their propaganda. We shouldn't let foreign powers own the means of broadcast...
Who is we, though? I can't do anything about it. Can you?
The people who can do something about it are the people who are already in power in the US. They understandably don't want to share with the CCP, but most of them came to power by manipulating enough voters into voting for them. They stay in power by ensuring that enough voters continue to want to vote for them. Which means that someone like Zuckerberg or Musk has an insanely inordinate amount of influence over whether these people who are in power stay in power.
Yes, I think it's marginally better that that influence remain out of the hands of the CCP, but I would rather that that influence not exist at all. It's too dangerous and too prone to corruption.
Who is we, though? I can't do anything about it. Can you?
Isn't this true for literally all problems in a democracy? Do you have a better solution?
Hopefully we'll get AGI soon and it'll take over and rule as a benevolent overlord. Short of that, everything in your comment feels like it has always applied to every societal problem, and always will.
> Isn't this true for literally all problems in a democracy? Do you have a better solution?
Create a level playing field where money does not amplify speech. Our existing democracy is basically a spending contest with a very small component of eloquently persuading voters to vote against their own interest. The richest of the rich have voices and can manipulate the platforms on which others express their voices, and so those rich people either pick the victors or become them.
For democracy to survive we have to get past the idea that a "free market" approach to speech leads to democratic outcomes. It doesn't, it leads to plutocratic outcomes, which is painfully obvious on both sides of the aisle right now. Americans haven't had a true representative of the people in generations.
US is not a democracy in a strict sense, it is more like plutocracy (people with money have the power).
- the electoral college where winner takes all, so minority opposition vote is always suppressed
- gerrymandering that dilutes and suppresses the minority opposition vote
- oligopoly of two parties
- unchecked financial influence by allowing unlimited funding via PACs
- legalized lobbying/bribery
- influence of special interest groups
- the influence of legal system with expensive lawyers (that only rich can afford)
this all indicate that it is people with deep pockets who have all the power
I'd like to note that TikTok CEO Shou Zi Chew,
a former Goldman Sachs banker and venture capital investor,
joined TikTok in March 2021.
He is from Singaporean and is married to Vivian Kao,
an American of Taiwanese descent.
Unlike Zuck, Musk, and Bezos,
Chew did not found the company with which he is most associated,
and his net worth is somewhat less than a billion dollars.
Perhaps algorithmically weaponized "speech" by bad actors with bad intentions, especially controlled by adversaries, doesn't work, and was wholly unpredicted or accounted for by the founders.
How does it keep track of filename and line number in a compiled binary? I'm fairly new to rust libraries and this doesn't quite make sense to me. I know in JS you need a source-map for minification, how does this work for a compiled language?
reply