skysight-inc/HackerNews huggingface dataset:
This is pretty ugly and add the overhead of a function callback, but just for fun:

func multiLoop[X, Y any](x []X, y []Y, cb func(i int, x X, y Y)) {
if len(x) != len(y) {
panic("invalid slice lengths")
}
for i := 0; i < len(x); i++ {
cb(i, x[i], y[i])
}
}

func foo() {
multiLoop([]int{1, 2, 3}, []string{"a", "b", "c"}, func(i int, x int, y string) {
fmt.Println(i, x, y)
})
}
You know what's not given enough credit? The fact that those so-called "patterns" are really just trendy ideas pretending to be "knowledge". It's like fashion - it goes in and out of style. Now we have all these blog posts saying "DRY considered harmful", but back in the day, everyone was all about "DRY considered good". It's just a trendy thing, man. And all this backlash against it? Yup, you guessed it - it's just another trend (because it's not cool to follow the rules anymore).

To be real, most of those ideas probably have some truth to them, but like always, it's about weighing the pros and cons. It's all about those tradeoffs.
I wrote a bash script (https://gist.github.com/lelanthran/2634fc2508c93a437ba5ca511...) that lets me very simply add new posts to my blog.

For my actual blog I reversed the order that the first are processed. Looks okay, I think, just short on functionality (no I Tractivity).

https://www.lelanthran.com ... feedback welcome.
I’ve been loving iCloud Hide My Email. Every site gets a different disposable address.

The fun part is when I do get spam I know exactly which site has sold my info. It is a handy way to know who to never do business again with.
Great question! Joran from TigerBeetle here.

"This means absolute trust in data read from disk or received from other nodes?"

TigerBeetle places zero trust in data read from the disk or network. In fact, we're a little more paranoid here than most.

For example, where most databases will have a network fault model, TigerBeetle also has a storage fault model (https://github.com/tigerbeetledb/tigerbeetle/blob/main/docs/...).

This means that we fully expect the disk to be what we call “near-Byzantine”, i.e. to cause bitrot, or to misdirect or silently ignore read/write I/O, or to simply have faulty hardware or firmware.

Where Jepsen will break most databases with network fault injection, we test TigerBeetle with high levels of storage faults on the read/write path, probably beyond what most systems, or write ahead log designs, or even consensus protocols such as RAFT (cf. “Protocol-Aware Recovery for Consensus-Based Storage” and its analysis of LogCabin), can handle.

For example, most implementations of RAFT and Paxos can fail badly if your disk loses a prepare, because then the stable storage guarantees, that the proofs for these protocols assume, is undermined. Instead, TigerBeetle runs Viewstamped Replication, along with UW-Madison's CTRL protocol (Corruption-Tolerant Replication) and we test our consensus protocol's correctness in the face of unreliable stable storage, using deterministic simulation testing (ala FoundationDB).

Finally, in terms of network fault model, we do end-to-end cryptographic checksumming, because we don't trust TCP checksums with their limited guarantees.

So this is all at the physical storage and network layers.

"Zero deserialization? That sounds rather scary."

At the wire protocol layer, we:

* assume a non-Byzantine fault model (that consensus nodes are not malicious),
* run with runtime bounds-checking (and checked arithmetic!) enabled as a fail-safe, plus
* protocol-level checks to ignore invalid data, and
* we only work with fixed-size structs.

At the application layer, we:

* have a simple data model (account and transfer structs),
* validate all fields for semantic errors so that we don't process bad data,
* for example, here's how we validate transfers between accounts: https://github.com/tigerbeetledb/tigerbeetle/blob/d2bd4a6fc240aefe046251382102b9b4f5384b05/src/state_machine.zig#L867-L952.

No matter the deserialization format you use, you always need to validate user data.

In our experience, zero-deserialization using fixed-size structs the way we do in TigerBeetle, is simpler than variable length formats, which can be more complicated (imagine a JSON codec), if not more scary.
Sure, but the problem is that the places you might have high bandwidth might already have good access to internet. Hawaii in general has very good internet already, so asking them to pay a premium for satellite internet isn't always a good trade.
And to leave leaves and needles on the ground where they fall over winter and spring.
Is it normal for a government paper to be written in such a "casual" manner? This feels like it was written by someone young, or in a chat.
The theory is that they'll better be able to fight future variations of X-disease because they've been able to study it.

Personally, I think that's a bunch of bs. The stuff they're doing to these diseases isn't likely to occur naturally. I suppose you could make the argument they're preparing to stop some possible bio-weapon that might be created.

I also think a lot of it has to do with money. In Pfizer's case they're wanting to get the jump on vaccine sales down the road. If they're putting that much money into creating a vaccine for a variant created through gof... well that opens a lot of doors for nefarious activity and the possibility of someone intentionally releasing it goes up.
Yeah, it definitely depends on your use case. In my opinion the only reason to get the K or KS SKU is that you want, and are sensitive to, the extra speed bins you get on the 2 magic P-cores. The KS is a full 10% faster on single-threaded, compute-bound workloads. That's like importing the next generation CPU from the future and it is worth it for some use cases. Even with 1 core running at 6GHz you won't blow out a 125W power cap.
Tell that to the methed out assholes burning their trash in our neighborhood.

Burning trash is bad. Incinerating properly is crucial.
I've always found L2 cache delivered better performance for the work I do.
Offset is used sometimes but a diode is cheaper than the two resistors and cap needed for that offset voltage. More common on old transistor based pedals but their offset is really their bias, already there so might as well use it.
Technically not a handbook, but recently I’m writing up a lot of the ideas we’ve been using to operate Workforce.com @ https://ghiculescu.substack.com. Hoping to turn it into a real book!
Ask HN: What Git branching strategy do you use in 2023, and why?
I'm working with a new small team (less than 8) and converting them to Git. It's been awhile since I started with a green field when it comes to branching strategy. What do you follow in 2023, and why?
I used to be quite proud of the 128MB RAM my first PC came with around 2000.
> Work less, get more done

"Or even better, work more and get even MORE done!" - your boss
Nope, Qt 6 still uses moc. I don't think modern C++ metaprogramming is quite capable of entirely replacing moc. The closest thing I'm aware of is [0], but it requires additional macros compared to what moc requires, and compilation speed can suffer. Chances are moc won't be dropped until full reflection lands, if ever, and even then if compilation speed is too bad I wouldn't be entirely surprised if moc remains.

[0]: https://github.com/woboq/verdigris
Italy is 3/4 the size of California.

Does Milan run all of the EU’s jobs too?
I enjoyed going through the cal. com handbook [1]. It provides a very high overview of the code base as well if that's of interest to you. There entire company is being built in public so it provides a great level of visibility into their operations [2].

[1] https://handbook.cal.com/

[2] https://cal.com/open
Yeah I read that in a novel too. It’s a common idea.
Thanks, taking that reply at face value means I'm wrong that it was only about money. It is still a pretty shitty thing to do at the 11th hour, there are many better ways Couchbase could have approached this.
Yep, this post would have been flagged and removed just a few months ago. But, hey now that the source of truth known as WaPo has said it, we're all good.
> It seems obvious in hindsight

It's not, because most languages don't have an `else` clause in their for loop (and in my experience with Python that clause is quite confusing so its use is not common).

And a for loop can be executed 0 times, so without a mechanism for a fallback it might not have a value to yield.
> The slippery slope is punishing YouTube for this, IMHO.

We are criticizing YT. Nobody is proposing "punishment."

> So don’t punish YouTube for this.

Wasn't suggested.

Seems like you're using this as a jumping off point to discuss other, largely unrelated, things. You're also using the term "outrage" in a way that makes me think it is a trigger word for some kind of in-crowd.
What we need to do is make sure that the process is more transparent. If every approved lab had to log its research with a global watchdog we'd have a better idea where to start when things inevitable go wrong.

From discussion before the Wuhan lab was built: "worries surround the Chinese lab, too. The SARS virus has escaped from high-level containment facilities in Beijing multiple times, notes Richard Ebright, a molecular biologist at Rutgers University in Piscataway, New Jersey. Tim Trevan, founder of CHROME Biosafety and Biosecurity Consulting in Damascus, Maryland, says that an open culture is important to keeping BSL-4 labs safe, and he questions how easy this will be in China, where society emphasizes hierarchy. “Diversity of viewpoint, flat structures where everyone feels free to speak up and openness of information are important,” he says." - https://www.nature.com/articles/nature.2017.21487
It’s not that complicated, you can only easily grow calorie low food like lettuce in these conditions, and when energy prices rise it is no longer cost effective.
Different account names for everything. I never use my real name and usually browse over Tor or with a VPN. If I watch a video it’s after I liberated it with yt-dlp. Reset my home Internet connection to get a different IP daily. I long ago deleted all my posts to Reddit and Facebook. I also ditched my gmail I had for over 20 years, I don’t trust those weasels.
"If this video helped you to save a life, don't forget to SMASH that Like button and MANGLE that Subscribe button! And buy our merch! We're offering streamer-branded fire extinguishers this month!"
I would think randomizing the strobing would be effective as well. All of this defeating of auto exposure adjustments makes me think back to the days of Macrovision and how easily it could be defeated as it was not randomized at all. Then again, it was also easily just stripped out of the signal.
And Starlink satellites are designed to de-orbit when they run out of fuel.
A lot of the problem has to do with the entire approach of these organizations: tinkering at the margins of neoliberalism. Very little work gets at the real problems of our political economy. But that’s by design.
Isn't the TPM meant for precisely that use case?
The more words you sent, the better understanding the AI about the file.
HOWEVER, it also comes with privacy concerns. You can choose to rather sent a few words for AI to figure out your file.

Also, take note, the maximum payload for OpenAI is 4kb, so the app will just throw an error when it exceeds 4kb.
You can see this if you don't get eaten by deer.
I just wanted to say for high-end Android phones that have all of the above I would look into the Sony Xperia line of phones.

Great camera, great screen, headphone jack, microSD card slot too!
In general Zig foregoes syntactic sugar and requires implementing higher-level APIs by composing primitives. But a new language feature is a candidate when it solves a use case that can't otherwise be solved, or opens up a path to more efficient code.

Loris' blog post points out that the new for loops address the latter:

> In the multi-sequence for loop version it’s only necessary to test once at the beginning of the loop that the two arrays have equal size, instead of having 2 assertions run every loop iteration. The multi-sequence for loop syntax helps convey intention more clearly to the compiler, which in turn lets it generate more efficient code.

It also builds on existing properties of slices/arrays, rather than adding a new "enumerate primitive".
Alcohol is a GABA receptor agonist, similar to many sleep drugs. It isn't necessarly REM vs deep sleep; it sounds like alcohol is metabolized quickly enough that there can be a REM rebound effect later in the night when most REM sleep happens anyway[1]. I doubt REM and deep sleep cover much of of the important aspects of how medication affects sleep, it is just the available measurement not necessarily a particularly good one (not that it is unimporatant, it is just an extremely high level overview of what is going on).

[1] Roehrs and Roth. Sleep, Sleepiness, and Alcohol Use. Alcohol Res Health. 2001; 25(2): 101–109. https://www.ncbi.nlm.nih.gov/pmc/articles/PMC6707127/
I keep a list of public company handbooks here: https://publish.obsidian.md/davidgasquez/Company+Handbooks.
> Except it's not "just" a for loop, it's a weird special case for a for loop.

You could also argue that a for loop which can only iterate over a _single_ sequence is a special case of a multi-sequence for loop.

> And one which is actively dangerous too.

In safe builds (ReleaseSafe, Debug) it will cause a controlled panic if the sequences are not of the same size. Most likely it's a logical bug if you iterate over two sequences of different sizes. In ReleaseFast the compiler will make assumptions to improve performance. If it's very important for your code you can force a certain code block to always have runtime safety. Yes, there are trade-offs, but I don't feel it's _unreasonable_.
To prevent glass breakage requires far more padding/thicker glass all of which increases transport weight even more.

Not only is glass breakage direct loss, its a health hazard. Always pissed me off when dumbasses did crap like break glass bottles in parking lots.
https://www.techpowerup.com/review/amd-ryzen-9-7950x3d/5.htm...
Jeez, one usually has to do some bad things IRL to be called shitty spammy and pathetic, apparently all it takes online is saying “hey”. Doesn’t that seem a bit excessive for someone whose crime is not figuring out some rather subtle unwritten, untaught social rules?
Toronto and Montreal are both huge cities - if they were in the US they would be the 3rd and 5th largest cities in the country, respectively. Yes extremely large cities like that can be continuously building, but when you get to cities a tenth that size like say Cleveland, the number of projects you have are naturally limited and even if things were dramatically cheaper you're not going to tear up perfectly good infrastructure to replace it just as a training exercise.
You’re just giving your data to them though.
We also HUGELY profited from those wars. We sold everything to everyone.
PicoCMS is the real friendly CMS for serving static files.

1. Upload PicoCMS to the least expensive LAMP shared hosting, by FTP.

2. Upload markdown files to /content.

Viola.

You may also want to download themes or make your own with Twig templating system.

IMO if you're a software developer and you can't figure it out in 10 minutes, it isn't really that friendly.
I just wanted to say I have the Sony Xperia 1 iv and it is a great phone!
Something I've found useful is the idea that you are as old as your spine feels. Seems quite true, at least to me, as both diagnostic and prescription. :)
Thanks!

We're both in the same domain, open-source, and E2EE. Right off the bat, I'd say there are a few key observable differences:

- Infisical is open-source more-or-less from the get go and, as a testament to that, we've grown our community and contributors a lot (50+ now); Envkey was closed-source for a long time before deciding to open-source more recently.

- Infisical is E2EE with opt-out ability so user's can sync secrets directly to cloud platforms like Vercel, Render, GitHub, Netlify, etc. via their APIs; Envkey doesn't have this capability.

- Infisical's client is browser-based; Envkey's is an application you can download back.

Depending on your circumstance and needs, you may find pros and cons for going with either solution.

I will acknowledge that Envkey has been around for much longer, so it may have broader functionality in some respects (e.g. they have SDKs developed across most major languages that we have on our roadmap for the following quarters). Lastly, (small mention) I think that we do care about UI/UX more than a lot of other solutions in the market.

These are just some early thoughts; will add on as more come in.
Why only phones? Why not desktop OS too? Why not have each Linux monitor all written text and even keep mic open and if relevant terms are noticed automatically launch some tutorial or information. Locally stored of course as there isn't always Internet available.

Might even make sense to stream it to some central AI service so we can ensure that it really gets triggered?
Weird question, but if you encourage bees to come through these methods, how prevalent are they? I like the idea of doing this, but I also have a young child and am somewhat allergic to bee stings myself and wouldn't want my yard to become overrun with bees.
Apple’s iPhones Winning over Gen Z–and the World’s Premium Market
"how did investors think that they could find Silicon Valley-style returns in . . . lettuce?"

That made me laugh
Maybe that's the point? Maybe the person needs one of these and $1000 is well worth it, and it just needs to be
`finally` hints at a very different behaviour because in most languages' context a finally clause is executed whether an exception is raised or not.
I concur wholly. We have wanted to do this forever and last year bought 5 acres on the edge of town. We are now up to 28 chickens (26 hens, 2 roosters) and run a small egg CSA. It’s been amazing for reducing food waste, yielding high quality compost, enjoyment for us and our kids and people walking by, a small step toward local food resiliency, and it earns a tiny profit. We’ve just ordered another 40 day olds for delivery in a few weeks, and are plotting to get some ducks too.
https://archive.vn/3hz7v
When I was a teen, my friends and I would dumpster dive the Pepsi distributor. We'd usually find stuff like Diet Dr. Pepper, but sometimes there'd be Pepsi or Mt. Dew. We'd usually load up my friend's trunk with Diet Dr. Pepper and take them out to his ranch to shoot them. Also I found some old Macs at my school one time, that was sweet
That's a Hollywood, underwear model, ad marketing impression of what strong men are supposed to look like. Core strength matters a ton more.

https://www.tiktok.com/@annabg9898/video/7157326693462543642
Special-casing (same-length) zip and iteration+count might make sense for an imperative language which doesn’t want to go down the rabbit hole of implementing efficient, lazy iterators. It doesn’t make sense in a language where you want the flexibility of switching between (as in: compiling to) serial loops and paralell code, but it makes sense for a language which leans more towards what-you-see-is-what-you-get rather than sufficiently-smart-compiler.
GitLab https://about.gitlab.com/handbook/
Ask HN: Do you use any software (mainly) developed in China? (not TikTok...)
For example I use Ventoy which makes deploying USB bootable Linux live CDs very easy, you just have to copy over the .iso file https://www.ventoy.net/en/index.html

It's also on Github https://github.com/ventoy/Ventoy

But I'd love to hear about other chinese software too that people use every day.
The only issue is that I am pretty sure you need to clean them out every so often. I don’t think mason bees will take over another bee’s nest.
Angular momentum is conserved. If you're in space, and subject to no outside forces, and start off stationary... while you spin a wheel one way, you move in the other way (an equal and opposite reaction). When you stop the wheel, you stop. These are called reaction wheels. (There's also reaction spheres, etc.).

A control moment gyro works on a different principle. They're big (generally only used on space stations) but more versatile and power efficient. They are a wheel spinning quickly. A motor "tilts" the wheel and the resultant gyroscopic force imparts a torque to the station.

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

https://en.wikipedia.org/wiki/Reaction_wheel
This is not my understanding, I have read at least 7 or 8 papers that seem to have for various models and techniques reduced the delta between masked and unmasked recognition to be very similar on false positive and positive rates.

https://www.mdpi.com/2076-3417/11/16/7310
https://www.sciencedirect.com/science/article/pii/S240589632...
...

That said I have no insight as to how many of these techniques have been found to scale well or have started to make it into product. It has been publicly reported that NEC’s NeoFace (a system that many police and govt use) newer versions does indeed have occlusion (mask) recognition operating at very high levels.

anyways thats just my understanding as an interested bystander -- not in the field.
There's was a story in Smithsonian magazine a few years ago (https://www.smithsonianmag.com/science-nature/meet-ecologist...) about an ecologist who more or less did what this article proposes, increasing the biodiversity in his backyard. He called his project a "Homegrown National Park".

Tallamy's Suggestions:

1. Shrink your lawn (replace grass with plants that create habitat)

2. Remove invasive plants (native plants support more animal biodiversity)

3. Create no-mow zones around trees (accommodates insect life cycle)

4. Equip outdoor lights with motion sensors (lights can disturb animal behavior)
Does being anti-gay marriage make the Catholic Church a 'hate group' too?

Wonder who's going to be next.
Because it is 100% intentional and a desired outcome of those politicians.
The idea that Kaepernick wasn't better than Gabbert, nor starter quality for at least 50% of the NFL at the time doesn't hold water.
Except that financial debt has a number, so it is really a tool, while technical debt has none, it's thin air. That's why instead of being used as a tool, it's mostly ignored, or not weighted properly
coming from total unawareness of zig: in the for (1..5) construct, these integer ranges consistently not including the upper limit element when lists do include the last element, seems surprising. i guess it's a range boundary (1 TO 5), not a list (1 THROUGH 5), but the other behavior feels like a list, so it feels like 5 should be in.
For anyone else who read “llamasoft” and was a huge Winamp fan.. yes, apparently Jeff Minter is that llama.
This is really interesting. Another thing I noticed in my fun with SD is that it is extremely stubborn about colors during the denoising process.

That is, whatever color a region of the image has during denoising step 3, it will almost surely have that color at step 50, even if it makes no logical sense for the thing in that location to have that color.

This may not seem bad, but it's annoying when doing anything image-to-image, because regardless of the prompt you give it, the colors are "sticky".

If you have an image of an apple, and you use image-to-image with the prompt "an image of an orange", you will get a very reddish orange (in my experience at least).
I don’t get that sense.
God, C++ even today is still horribly verbose. I get that being "explicit" is being "better" but there are limits. Even after auto removed a lot of verbosity there still is a lot there just to get it to do exactly what you want.