skysight-inc/HackerNews huggingface dataset:
Good question. Let me provide a more detailed answer in terms of concurrency and parallelism. To paraphrase Rob Pike's excellent explanation:

- Concurrency is the breaking down of a program into pieces that can be executed independently.

- Parallelism is the simultaneous execution of multiple things (possibly related, possibly not)

Dagger is designed to be highly concurrent with minimal development effort. Compared to an equivalent configuration in a traditional CI system, your Dagger pipelines will be more concurrent, and require less lines of code.

Because it is highly concurrent, Dagger can be parallelized with relatively little effort. But as you pointed out, you still need to configure parallelization by setting up multiple nodes, etc. Dagger uses buildkit as an excution engine, so parallelizing Dagger boils down to parallelizing buildkit. There is a lot of work in this area (one benefit of building on an existing, mature ecosystem). For example, here is an example of Kubernetes deployment: https://github.com/moby/buildkit/tree/master/examples/kubern...

Note that, because of its highly concurrent design and because of built-in caching, a single node may get you further than you might think. For example, in the e2e testing example: instead of running every test for every new commit, like many CI systems do, Dagger will automatically cache tests with unchanged inputs. So, for example, a change in the documentation will not trigger the API tests; a change in the iOS app source code will not trigger the Android tests; etc.

It's not uncommong for CI runs to become faster after switching to Dagger, without any additional parallelism. As it turns out, most CIs are very wastesful and leave plenty of low-hanging fruits to pick. Dagger helps you pick them :)
> How do you deal with laptops that have both an integrated and an Nvidia graphic card?

Honestly, I don't.

I think all my laptops had only iGPUs. I always treated my laptops as secondary workstations for the times I was away from my main desktop.
Same as with anti-apartheid agenda. Largely opposed by the same kind of people.
I think the value is mainly in the feedback you get which can help if you have a specific problem you might not be aware of. The problem with just going out on interviews is that you never get any real feedback so you are left to your own analysis as to why a certain interview didn't result in getting to the next step or an offer which, in my experience, is kind of like trying to find a needle in a haystack in a dark barn without a flashlight.
> I really don't see the distinction between a "wheat shortage" and a "shipping shortage"

The distinction matters a lot if you're trying to solve the problem. I saw lots of people suggesting a few weeks ago that the US change policy to cause more wheat to be produced, which would only help with the former.
While I agree that this particular exercise is riddled with problems, I simply cannot image Hacker News rolling over and accepting evidence-based answers to questions of this nature, regardless of where the data came from or what the methodology was.
An amazing blog that has made a lot of math more accessible to me.
receive
{lack_of_erlang_error_handling_is_a_missed_opportunity, true} -> ok
after 0 ->
throw let_it_crash
end.
> I'm beginning to think that the industry somehow settled on this approach not so much as a skills verification process but, by making the process so onerous on the candidate, talent retention is a lot easier.

There are plenty of applicants who just can't do the job, and the cost of restarting the search all over again is high. It's important for a team to vet their new hires.
The author should move the fun video at the end to the top!
82% of the people in Lebanon are currently in poverty, many are living on $2/day and have to choose between food, fuel, and medicine. They have no resources to allocate. It is a failed state.

The miner in this case would be, once again to be painfully clear, a warlord.

https://en.wikipedia.org/wiki/Project_Cassandra

https://www.politico.com/interactives/2017/obama-hezbollah-d...

The losers predominantly would be the people of Lebanon, forever subsisting on the largesse of the UN and foreign powers with their own interests - their meager allowances paid out in dollars only to be completely squandered (the more UN donates the higher the prices will go, reliably soaking up all foreign assistance completely) on an artificially inflated energy "market" that enables narco terrorists to launder money via bitcoin.
Then the application does not work on a future processor, that is correct. The person who wrote it, who likely is a JIT engineer, will get a bug report asking for this to be fixed, although most likely they're already aware of the upcoming hardware change and have prepared a different tagging scheme already.
Virginia doesn't have a strong anti-SLAPP law. It's weak at best, only carving out some immunity for statements made about "matters of public concern": https://law.lis.virginia.gov/vacode/title8.01/chapter3/secti... And unlike other states, if the plaintiff loses on a motion to dismiss under the statute, the defendant isn't entitled to attorney fees and court costs.
I stand corrected about the docs, somehow I missed the additional clarifications.
> I don't know about you but I pretty much never know the size of my data at compile time.

Whole-program optimization (LTO) can deal with that. Also, Rust inlines across modules much more aggressively than C++ does, even without LTO, so optimization will be more effective and its bounds-checking won't have as much (if any) runtime overhead. Especially if you write your Rust code idiomatically, as others have already suggested. Your earlier Rust example was practically designed to inhibit any attempt at optimization. Simply iterating over a slice of the vector, rather than the indices, results in a much tighter inner loop as it only needs to check the bounds once.

That being said, in this case I think it would be better to have fixed-size matrices (using const generic/template arguments) so that the bounds are encoded in the types and known to the compiler locally without relying on whole-program optimization.
Thank you so much. :) Yes a lot of development went into it so that drawing experience is top notch. We're now expanding in areas that make it useful for a real production workflow. Game dev seems to be a sweet spot. I've been to GDC and spoke to a lot of people and got really good feedback.
I know how Fritter works, I just don't know what we're supposed to do with rakoo's comment in the context of this discussion (esp. since the claim at the end isn't even true...)

> As you said, in a server-side model you're using a server and you have a lot of freedom in how you manage the system.

This is an aside, but: I didn't say that, and it's not how I'd characterize a backend-heavy ("server-side") design, like the current way the fediverse operates, but that's really an eye-of-the-beholder thing. I think of the dumb server approach as being the more flexible and convenient one if I'm putting myself in the shoes of the person wanting to publish—for several of the reasons you mention—which is the basis for my recommendation to define a static profile, after all.

PS: The discovery problem was pre-emptively raised in the original comment. The crawler approach is more or less sufficient (and something worth encouraging), but wouldn't actually be necessary. We're augmenting an existing network here that already supports push among accounts that don't deliberately choose to operate as static nodes. If Alice wants to respond to Bob, and Alice's client sees that Bob chooses to publish through a static node but is advertising in his profile the fact that he subscribes to the "Facebook Fediverse Feedsource" account, she can push a parallel notification to it. (Bob's choice to run his account as a static node doesn't have any implication for whether FFF is static or not—or whether Alice's is, either, for that matter.)
> crypto is simply a hedge against incompetent/corrupt government

Adding this to my increasingly long list of "things that bitcoin actually is".
Yrs, 10 arrests, 62 women: How did Britains worst cyberstalker evade justice?
Stephen Hackett worked at Apple.

And the cost of the material has nothing to do with the argument. I don't know why you'd imply that it "costs precisely the same", as no two materials would ever be exactly the same. But you don't adjust your pricing 39 cents either direction - you decide on a price based on what people will pay.
Hi. iPhone 12, 13 pro and 14in MacBook Pro (m1 pro).
Every time I open the app it shows me a “logging in” with an animated bar while loading. It would be acceptable if it took that time to pull new emails, but not to just look at the old stuff I have already retrieved.

I appreciate your quick response though, shows that you guys are on top of things.
The courses that teach SE tools (MIT's Missing semester) are well received. I can understand the resistance for focusing on specific frameworks or dumbing down the syllabus.

What I think is there deserves to be one or two full pledged software engineering courses, teaching how to use testing, version control, software structure etc.. As always, you can start from basic commands / usage and reach to general concepts, it isn't that hard.

And actually I believe US and European academia, at least the Ivy league and second tier colleges, do a decent job at teaching many required concepts. Come to a country like India, and you will see a C programming course that doesn't cover malloc or function pointers, a data structures course without proper introduction to algorithm complexity or difference between abstract data type and implementation, a java course that never properly teaches subtyping. I think students in US graduate decently equipped to write real world software compared to us. At least, I learned a lot of things by reading notes and Ppt of US universities.

(most Indian colleges are woefully inadequate in teaching even the basic concepts for writing software, despite the CS courses being named CSE (comp sci and engineering), not just CS. Incompetence runs to the root in education system except few elite colleges. From that perspective I think CS depts saying that is a first world problem. Sorry for the rant.)
That makes sense, thank you for the clarification. I apologize, I should not have worded my former comment so strongly.
Ok but you have to make them accountable in some way. How do you do with super poor people ?
I'm not sure it's "desperately" chasing; its trajectory looks positive. For example, in the 2019 Stack Overflow developer survey[1] only 3% of professional developers reported using Rust. A year later[2] it was 4.8% and a year after that[3] it was 6.4%. So based on that metric (of debatable value), professional developer use may have doubled in two years. For reference, in the SO surveys C++ and C use was about 20% and 16%, respectively and, if anything, slowly declining (as a percentage of respondents, of course).

1. https://insights.stackoverflow.com/survey/2019#technology-_-...

2. https://insights.stackoverflow.com/survey/2020#technology-pr...

3. https://insights.stackoverflow.com/survey/2021#technology-mo...
I can't agree, considering that California's major problems stem from "my city over everyone else" politics. Cannot build a functioning public transit system if every microcity along the way has different opinions. People need affordable housing? Can't build them here, it should be some other city's problem.

California would have been in a much better shape if the state government could tell these cities to shut up.
True. $200 per hive is still high in my opinion. Close to half of expected revenue for local honey (50 lbs avg at $10/lb). Then you have additional costs like bottling, the treatment chemicals, packages to replace lost hives, etc.
People in Lebanon in general. Especially the poorest. Obviously.
Hardware Development in the Cloud (Need Feedback)
Not much of an expert, caller ID means nothing.

Standard procedure for everybody in the last 20 years should be: Whenever I get a call about security or fraud from the bank, I thank them for the notification and tell them I will call them back, and hang up. Then I call the number on my credit /bank card, not the number I was called from. Fortunately there is a lost or stolen cards so there is no queue time and tell them I received a fraud alert notification.
func ThisCouldUseExceptions() error {
err := Exceptions()
if err != nil {
return terrors.Propagate(err)
}

err = GeneraliseBetter()
if err != nil {
return terrors.Propagate(err)
}

value, err = InFunctionsWithMultipleErrorPoints()
if err != nil {
return terrors.Propagate(err)
}

value, err := AlsoTheyHelp()
if err != nil {
return terrors.Propagate(err)
}

chained_val, err := WithChaining(value)
err = AndPreventAccidentallyIgnoringErrors(chained_val)
if err != nil {
return terrors.Propagate(err)
}
}
Same. I bought Intel for a long time because they Just Worked. It looks like AMD will Just Work _and_ have great performance.
UST is an algorithmic stablecoin and briefly de-pegged when it had a "bank run", but the incentives to keep it pegged ultimately won. As long as LUNA doesn't go to 0, then UST should always re-peg (theoretically).
Yes, see: software bloat.

Hardware constraints force good engineering. The fact is that ever growing hardware capabilities has enabled poor engineering practices to succeed. The technical debt is already being exposed in infosec / related supply chain issues.
I’m a staunch advocate of free speech, but I think that a specific and credible threat of violence should be considered a crime (assault) and subject to prosecution, even though it’s “just words”.
I think it's (more like?) an analog finite element solver driven by a microcomputer.
> Virgil is not vectorizing

That's just even more confounding variables. We are, after all, not even doing experiments with Rust vectors, which is what your original comment was about. You wrote examples in C++ and we went down a wormhole already, but I let it slip since at least it was empirical. But I think we shouldn't get distracted with even more side alleys now. Bounds checks are literally just a couple machine instructions, and often eliminated by the compiler anyway, which enables vectorization.
They were talking about non-pegged cryptocurrencies such as BTC.
Such a desperate, veiled attempt.
I think most people trying to losslessly represent money or similar discrete quantities already have the intuition that you shouldn't use binary floating point, and those that don't are not well served by telling them to math.isclose it, which is at best a fragile bandaid.
probably tells them much more about you than putting male does.
"Set the cost" as in "New Mexico Highlands University told $Huge_Publisher that they have to sell 'Advanced Calculus, 7th Edition', by Epsilon X. McDollars, to NMHU students taking Math 311 for only $25 per copy"? (Vs. $Huge_Publisher's normal price of $175.) Um, no.

"Set the cost" as in "NMHU's required textbook for Math 311 will now be 'Advanced Calculus: Second Edition', by David V. Widder" - which is a real book, list price of $22.95, from Dover Books - yeah, that way is darn easy. And when NMHU sticks with that book for a few terms, there will be plenty of used copies around campus, for only $15 or $20.
More than likely the answer is: pandering for votes.

A reasonable persons understands you are: XX (Female), XY (Male), or one of many extraordinarily rare edge cases such as (not inclusive): XXY, XYY, XYY, XXX, etc. The fact this under debate shows the level of disillusionment and detachment from science among the individuals arguing for it.

This is the opinion section of my comment: I think LQBTQ individuals desire to have their sexual preferences reinforced by society. I imagine the thought process is something like "If I can only prove it's biological, I no longer have to constantly justify my choices to others and there will be acceptance." This is sad in my opinion, as we should not be lecturing others unless they ask for your opinion. You certainly aren't required to support anyone's decisions, but treating them less than human isn't acceptable. Unfortunately, I see LQBTQ communities are further distancing themselves by pushing this agenda of redefining science.

Like another commentor said, I don't think it's any government's business who I am. And while that's a great theory, the real world doesn't work out this way. Marking your passport this way will more than likely cause issues at international borders and it would be good to stick to scientific identification to avoid unjust arrest.
The privacy angle is lost on me. You've got a document that has your biometrics and photo in it, there is all sorts of other information requested and shared, even more for countries where you need a visa, now you need to provide various arbitrary covid related information... who are the people that go through all this but don't want to give away their sex (which for 99.9% of adults is obvious anyway)? Maybe it's possible you can find someone, but it seems like a vanishingly unimportant use case.
Put Mac in the same laptop and compare.
Azov is a rather tiny minority. Fighting against 200 thousand Russian state-sponsored terrorists.
Going to be real interesting to see how I do at technical interviews whenever I decide to jump back into the job market.

At the job I'm leaving tomorrow, I just did a 2 hour long video session / training where I started by teaching how to read call graphs, and that led to over a hour of me trying to sort out a horrible performance issue in real time.

The problem, solution and the iterated debugging to deal with all the edge conditions that the extensive unit tests called out (and I wrote all the unit tests that blew up, so I get to take credit for all that -- although I also wrote the bug I fixed) should show that I'm very high functioning engineer. And I had identified the problem previously at a higher level and had a fix that papered over the problem, but during the video I correctly figured out that the real source of the problem was deeper in the code, and had existed before the change which surfaced the problem, and managed to do a data-driven analysis to track down the perf bug and go from 15% of CPU time in one subsystem to 1% of CPU time in the same subsystem for a 15x speedup on my problem (and probably closer to a 90x speedup for the customers who were reporting it--including a large customer everyone is familiar with here due to headlines they're involved in).

Meanwhile I forgot that it was obj.send(:method, *args) in ruby and tried to obj.call(:method, *args) and had to look that up because my brain was derping a bit on that, and the night before I forgot it was JSON.generate in ruby and not encode/decode and just in general my brain is a mash of too many different programming language syntaxes. At one point I caught myself trying to use `%` for comments because I had been doing Matlab writing an Iterated Chebychev Picard Method IVP ODE solver the prior weekend. If I can't work with the command line or an IDE and with google I'm just going to be a mess of trivial mistakes due to crossed wires.

I've also never reversed a linked list in my life and the correct answer to that question is probably to never use a linked list due to TLB cache thrashing at the very least.
Hi HN,

I've been working on a hardware development platform online (allowing people to build IoT Devices). This platform currently supports Arduinos (soon other boards FPGAs, STM32s, etc) and a few peripherals. The platform is a combination of simulation, emulation, and bare-metal.

I'm trying to make hardware more accessible to all, allow for people to test out full systems before buying parts, and improving collaboration.

Would love feedback on general thoughts and what features would be useful!
Discussing "what is a lockfile" is a bit of a headache because different languages have different files which do different things. Generally speaking, there's some file which specifies the dependency versions and some file with cryptographic checksums of the all transitive dependencies.

In Go it's go.mod / go.sum. In NPM, it's package.json / package-lock.json. In Rust it's Cargo.toml / Cargo.lock.

Diving into the exact details of what the author is saying is a bit outside my headspace at the moment. I think the author of the article may not actually understand the scenario where Go's package system differs. (I'm not sure I do, either.)

Suppose you have your project, projectA, and its direct dependency, libB. Then libB has a dependency on libC.

If projectA has a lockfile, you get exactly the same versions of libA and libB. This is true for Go, NPM, and Cargo. However, suppose projectA is a new project. You just created it. In Go, the version of libB that makes it into the lockfile will be the minimum version that libA requires, which means that any new, poisoned version of libB will not transitively affect anything that depends on libA, such as projectA. With NPM, you get the latest version of libB which is compatible with libA--this version may be poisoned.
The article, and the comments praising this approach, don’t do a great job of explaining how any of this is substantively different from running the likes of yarn install --frozen-lockfile, or cargo build --frozen.

Here’s the thing: You can argue about being secure by default and encouraging better CI practices. I’d fully agree it isn’t great that one has to know a somewhat obscure flag to get a secure CI build in those environments.

But claiming in what I perceive to be in parts a somewhat grandiose tone to have reinvented the wheel, when you’re just describing a standard approach, can make you sound uninformed.
I guess for me, wearing a mask is like wearing a hat: I'm essentially comfortable wearing one in some contexts forever. For me, it's just not heavy handed at all. There are many other restrictions we've had through the pandemic I've found much harder: especially missing hospital visits and funerals for loved ones. Having a baby during the pandemic was not great, for example.

I get that's not everybody's opinion. I would be pretty relaxed about an end to mask mandates if that was a majority opinion amongst public health experts. I'd also be relaxed about mask mandates continuing: my feeling is that people get way too emotionally involved in these things and it's best to just relax and accept that public health policy is by nature broad brush.
You mean most languages that run on virtual machines today, right? Java, JavaScript, C#, Lua, …
> I mostly agree. C++ is mature, has standards and a whole array of production ready libraries. If I wanted to build a production cross platform GUI app today and not use electron (vomit) I would likely use Qt for it.

C++ is mature ? Every couple of years a new C++ standard emerges which breakes old programs.
Qt ? Which version ? 3 ? 4 ? 5 ? 6 ?
The assumption is that the median person of color has poorer access to healthcare (go visit Jackson Park Hospital in Chicago if you don’t believe me) and moreover the Neanderthal genes in South Asians do predict worse COVID outcomes.
I lived in Welly, though yeah I imagine maybe up north it would have been a bit more temperate for more of the year.
Just don't give people 2FA codes? I am never going to give a 2FA code to someone who calls me, no matter what combination of words come out of their mouth.
Evidently it is smooshing:

https://redmonk.com/jgovernor/2022/03/31/on-postgres-contain...