skysight-inc/HackerNews huggingface dataset:
The pipedream-2bw paper[1] and the zero-offload paper[2] both show that 1-step delayed asynchronous gradient update doesn't affect the convergence (and perplexity) while improve the training efficiency (by fully utilize the bubbles in pipeline parallelism) at a large margin.

However, both the Megatron-LM[3] and the DeepSpeed[4] don't use pipedream-2bw scheduling. Could anyone share me some insights or ideas about why such an efficient scheduling scheme doesn't get popular in the LLM pretraining community? Does it suffer convergence/accuracy issue in practice? Or are there any other concerns that blocking it become the default / most popular pipeline parallelism scheduling?

[1]: https://arxiv.org/abs/2006.09503

[2]: https://arxiv.org/abs/2101.06840

[3]: https://github.com/nvidia/Megatron-LM

[4]: https://github.com/microsoft/DeepSpeed/issues/1110
Freedom requires security, which requires money.
Rivian R1T Fender Bender Fixed for a Fraction of $41K Repair Estimate
No, we have to be pedantic like reddit. Otherwise, how else will people know how smart we are?

/s

I hope HN doesn't devolve into reddit, where "akshully" is more common than it needs to be.
(preface with "in today's world")
That doesn’t remove the possibility of a psychological guessing game, just makes it more convoluted. If Bob knows Alice will pick first, he can still bias the results.
> conveniently written almost exclusively by people living in sedentary communities

This is false. The Turkic and Mongolic peoples of the steppe have a well-developed epic tradition that goes back centuries. And that epic tradition celebrates raids on sedentary communities for plunder and as a display of bravery and political leadership.
At Emory university I got to see a cool idea to help kids get comfortable with MRI machines. Some Georgia Tech students built a fake MRI machine (a realistic mechanical structure with a sliding bed) that kids could still get into. The cool thing was that it had Bose speakers built into the fake machine so that they could play the sounds of a real MRI machine makes as that is a big aspect that makes kids get anxiety and fear of the machine.
It was all in a separate room right by the waiting room and the room with the real MRI. It was so cool to see such a practical solution to patient care especially for kids.

Edit: found some pictures online
https://www.cores.emory.edu/csic/resources/imaging/mri_for_h...
Also Pascal.

And C++/CLI uses ^ for "managed pointers" (pointer to .net objects) and % for "managed references" which means there are all-together 4 ways to declare various types of pointers which is super-fun.
Sounds like something those dogpile folks would do.
Generative AI like Midjourney creates images full of stereotypes
Cars analogies don't go far this time. If a mirror breaks, I replace it with another mirror, but my car never changes its features overnight. My Thunderbird updated to version 115 yesterday. I fiddled with settings to bring it back to as close as possible to its previous UI but I could do nothing about the incompatibility with an addon that lets decide how to order folders and subfolders [1]

As a partial workaround I started using favorites but overall v 115 is broken and can't be repaired easily. My car is still doing what it was doing last week.

[1] https://github.com/protz/Manually-Sort-Folders/issues/199
It's also the "a commercial" in Quebec French [1]. Despite lacking the accent on the A (à), the intention of the A is to stand in for the single letter French word "à" (at) [2].

[1] https://vitrinelinguistique.oqlf.gouv.qc.ca/fiche-gdt/fiche/...
[2] https://www.noslangues-ourlanguages.gc.ca/fr/cles-de-la-reda...
CDN/SDN.
Two years ago I didn't use AI at all. Now I wouldn't go without it; I have Copilot integrated with Emacs, VSCode, and Rider. I consider it a ground-breaking productivity accelerator, a leap similar to when I transitioned from Turbo Pascal 2 to Visual C 6.

That's why I'm hyped. If it's that good for me, and it's generalizable, then it's going to rock the world.
I was hoping to find isometric grid for some technical drafting nostalgia but they only have 45 degree
Interesting timing!
> I don't think they innovate like when sj was around

I would have agreed with this before the M1 Macbooks came out, but when it did it caused a big change in my opinion.
i've been using https://github.com/infokiller/i3-workspace-groups for this to great effect for quite some time
Building an app to learn languages with short stories
Hi HN! I wrote a post about the things I have been working on for Webbu, an app to learn languages via short stories. Initially, a few HN readers tried the app, so I wanted to share some more details of what I'm doing and would love to hear any feedback you have.
There are still websites built on top of scraping the output of a virtualized IBM 3270 terminal connected to a virtualized IBM 3274 terminal controller connected to an I/O channel on a virtualized mainframe running CICS on an MVS virtualized on VM/370 hardware.

So browsers are hardly even a bump yet on the cruft already accumulated.
Canadians are inherently stupid just like Americans. We vote like idiots. No party has ever done anything positive. It's all talk a good game and send money to your friends and increase taxes. Unfortunately people just don't want to wake up.

The news restrictions are because that's how the rest of the world will think Canada is great so we can import their slaves (citizens).

Legalized marijuana gets people excited, that's how sad it is.
That's the particularly bad news, this attack does NOT require a really huge botnet.

https://blog.cloudflare.com/zero-day-rapid-reset-http2-recor...

"Furthermore, one crucial thing to note about the record-breaking attack is that it involved a modestly-sized botnet, consisting of roughly 20,000 machines"
rhetorical flourish notwithstanding, SFB still has enough cash to afford decent lawyers.

and decent lawyers would have told him to STFU and not do a bunch of things he did. and would have likely told him to plead out.
In linguistics process of turning verb into a noun is called nominalization. When you do that, you are not talking about processes any more.
Are there any pre-eternal-September warriors still sticking Emily-Post-like to their 1992-era netiquette standards in the face of modernity?

I don't really care if it's "netiquette" or not, but I nearly always want to reply to separate parts of an email with separate responses.. and writing inline replies is literally the only way to do that while being clear as to what you're replying to.

If it's a scrappy "yes" "no" type email then top posting is fine by me.
Made me wonder - if Google wasn't there and Altavista was the incumbent, would it be any different, or was the enshittification of search inevitable?
Enumerate, please.
Wait, what happened with Urho? I thought they were going strong (aside from a few who tried to take their code and just rename it)… did I miss some news?
I miss boolean search operators.
Wonder how you could even handle this if you weren’t using a big cloud provider and didn’t have a lot of money to spend.
I implemented a Piece Tree like VS Code's not long ago and found the insert/delete performance fine, but performance for text retrieval (line retrieval, substring) queries wwas embarrassingly bad. Like, 10x slower than the other ropes I compared it with.

I think this comes down to two things:

1. Fragmentation. When a rope splits a string into two by inserting into it, it is able to rejoin the pieces to form a new string, which "greatly reduces space consumption and traversal times" (quote from the first paper on ropes: https://www.cs.tufts.edu/comp/150FP/archive/hans-boehm/ropes... ).

2. Proximity of nodes. In a Piece Tree, all of the inner nodes contain {start, length} piece data. You can construct the whole string represented by the Piece Tree through an in-order traversal. In contrast, the Rope only stores data at the leaves of the tree.

Imagine you are at the root of a Piece Tree that looks like this (where o = a node containing a piece).

o
/ \
o o
/ \ / \
o oo o

Say you want to get a substring from (root - 1) to (root + 1), one character before the tree's root up to one character after the root. How many tree nodes do you need to visit? We can understand by reminding ourselves that "the whole string can be reconstructed through an in order traversal", letting us know the order we need to visit nodes in.

c
/ \
v v
/ \ / \
o cc o

(where c = a node whose string we copy and v = a node we visit on our way to a node we need to copy). That is two separate O(log n) queries we make from the root of the tree for our substring operation.

What are ropes like in contrast?

v
/ \
v o
/ \ / \
c co o

You do still need basically two O(log n) queries, but not from the tree's root. You find the inner metadata node where the start of the substring and the end of the substring (and all strings in between) can be reached and make an in-order traversal from there, which is less traversal time. This, combined with the lower fragmentation that ropes enable (or rather that high fragmentation the Piece Tables have), makes them faster than Piece Trees in my experience.

(A Piece Table/Piece Tree is able to avoid creating new nodes if you insert consecutively, one character after another without backtracking to edit a previous part, since you could just extend the length of the piece. Real life benchmarking data tells me that's not a big advantage though: the text retrieval time is still embarrassingly bad.)

It's good to see Jetbrains avoid the Piece Table and its variants for Fleet (where they mention using a rope).

https://blog.jetbrains.com/fleet/2022/02/fleet-below-deck-pa...

(Note that the rope diagram I posted copies two strings and the Piece Tree copies three, which might be considered unfair. I didn't want to extend the rope diagram to make it copy three strings, but I would say this is actually an accurate depiction of reality considering the fragmentation the Piece Table/Tree has, meaning more nodes to visit.)
Israel-Hamas war erupts in digital chaos
European culture changes drastically every 100 km. Please be more specific.
The majority of "difficulty" in software development is not writing the code. It's specification. And while that may or may not be solved by LLM or other AI tech, we're so far off that it's not even a thing right now.

Not long ago, all machine tools was made by hand. When we got vastly improved CNC machines, but we still need the expertise to create the files the CNC machine needs. I'm betting that SW development will be the same. We still need engineers to understand the context the software operates in, and with that knowledge the engineer can prompt an AI to generate the first draft of the code in many small chunks that needs to be assembled.
So… why though? Is the market really not mature enough to anticipate the bull whip?
The HN community hasn't been about startups in a looong time.
Are you still into antenna making?

Where I live, we only have wireless internet options, so antennas are critical infra.

Interestingly, its sort of hard to find antennas optimized for specific frequencies. Most affordable options seem to be "wide band" generalist antennas, e.g. 900mhz-6ghz. Meanwhile the nearby tower might have the best signal on a specific band.

I looked into making log periodic/yagi antennas and it seems surprisingly simple and cheap. It seems possible to make something out of PVC and copper wire that can outperform a commercial antenna costing several hundred or more.
We're pretty pleased with using trpc. With trpc-openapi, you can set up REST-like APIs. I like this method because it uses TypeScript and not YAML.
And ferries. And rain. Brilliant.
If so, you should probably know that they have in fact incorporated support for CinemaDNG into Resolve, including the free version, but your comment doesn’t seem to acknowledge that.
After looking at tRPC, and having done a lot in a few jobs with GraphQL codegen & gRPC codegen, I always wondered why there were so few recent OpenAPI based codegen/client-server-contract tools. I think I was searching for this exact tool.

Love that it makes the client somewhat backend agnostic, but the tools for the OpenAPI backend also look great.

Thank you for this, I hope it is successful in achieving some adoption!
The thing about math is that you can do things in multiple ways.

Theory is useful but so is experiment.
a) Big pipes

b) ability to filter the noise from real traffic as far as possible (i.e. there is little point in taking in a big pipe of DDoS traffic and then just proxying it to the thinner pipe to the real backend - but if you can identify bad traffic you can drop it and not pass it through).

c) being a CDN helps as a side-effect (what the CDN serves doesn't load the backend services, what can be served from the CDN works for users even if the backend is slow or down)
They treat their hardware like it's a phone or computer, something to upgrade every year or two and old versions discarded. They have no problem bricking it in a couple of years and expect you to buy a newer version. Perfectly functional hardware.

This last round of bricking was to bring about a faster CPU in the speakers, as if that matters. Didn't add features, just faster CPU.

Their support is pretty atrocious. They will always blame your router for not handling "point to point internal networking" correctly, as if that's a real possibility. They tell you you have to make one of their speakers your router and your current router needs to be put in AP mode.

Honestly they probably needed the faster CPU because they expect any of their speakers to be used a routers.
"for I from 0 to N by 5 do" is the verbose variant, which is typical for a language like PL/I or Algol 68.

The syntactically equivalent, but non-verbose, is "for I ∈ 0:N:5 ⟨", which beats easily C.
Altavista started turning to shit as soon as it was no longer an Alpha demo. That was a major reason Google took off so quickly.
https://darknetdiaries.com/episode/134/ Where a group of pentesters get a list of the most secure places in a campus to test their security (approved by the head of security). They managed to enter all rooms.
It is about that and a lot of other things, but it usually involves being able to dynamically scale up your bandwidth and compute power to cope with the incoming flood.

A lot of DDoS traffic isn't actual HTTP traffic, it can be garbage targetted at your IP address to "fill the pipes" (bigger pipes help, as well as having multiple server geographically distributed). Some can be TCP SYN flood, to just open TCP connections and exhaust available ports. Etc. Oftentimes, multiple simple reverse proxies can handle these malformed requests in front of your server.

Then, for the most sophisticated queries that send seemingly-legitimate HTTP traffic, one has to handle them... It could be serving requests from a cache, adding captchas to slow attackers and identify legitimate traffic, enforcing rate limits, etc. Usually, you'd like to be able to tell if a request is legitimate or not before forwarding it to the actual server, and you can deploy all sorts of tools to do so.
Nothing "forces botnets to up their game", they just want to make money (or in some cases, "watch the world burn"); I don't see how any coordination whatsoever would diminish these motivations.
Yeah and they are no longer in a reliable state. Years of radiation embrittlement, holes drilled by careless russians, weakening due to micrometeor impact..

I also would not bother reusing any of it.
Yes, I hear this a lot, and it's not like it happens to me all the time these days, but it's a clear flaw in the design that there's nothing extra to hold it in like those other things.
We've adopted Quarkus and it's been a breath of fresh air. Excellent all around, DX, performance, features, it's all been good.
Didn't it perform well on both the SAT and LSAT though?
The construction sector is quite flexible and accustomed to operate in boom-boost cycles. It also has quite productive jobs that are resistant to automation, with roughly half of the cost going directly to labor. That's to say: if substantial demand manifests, the construction sector has historically shown the ability to pay good wages and attract labor from other sectors and then quickly train them.

This is one of the fundamental features of traditional methods that most "construction disruptors" fail to appreciate: they are simple enough and can be done with hand tools by high-school dropouts, because the industry is forced to operate lean and can't burden itself long term with substantial fixed capital, inventory or facilities.

Regarding the unenforced permitting in your location: can I build high density European-style terraced houses, sell them to minority owners and other undesirables, and not expect the local NIMBYs to throw the law book at me? Because selective enforcement is the most toxic form of regulation with the highest risks for investors.
Show HN: Swiss Army Llama – A Versatile, FastAPI-Based Multitool for Local LLMs
This project originally started out with a focus on easily generating embeddings from Llama2 and other llama_cpp (gguf) models and storing them in a database, all exposed via a convenient REST api (hence why it was originally called the not-very-catchy name of "llama_embeddings_fastapi_service" when I submitted it a few weeks ago).

But since then, I've added a lot more functionality:

1) New endpoint for generating text completions (including specifying custom grammars, like JSON).

2) Get all the embeddings for an entire document--can be any kind of document (plaintext, PDFs, doc/.docx, etc.) and it will do OCR on PDFs and images.

3) Submit an audio file (wav/mp3) and it uses whisper to transcribe it into text, then gets the embeddings for the text (after combining the transcription segments into complete sentences).

4) Integrates with vector similarity library (pip install fast_vector_similarity) to provide an "advanced" semantic search endpoint. This uses a 2-step process: first it uses FAISS to quickly narrow down the set of stored embeddings us cosine similarity, then it uses the vector similarity library to compute a bunch of more sophisticated (and computationally intensive) measures for the final ranking.

5) An endpoint to automatically generate a BNF grammar definition from a sample JSON file or string, and also from a Pydantic data model definition. Grammar files can be directly used with llama_cpp for constrained sampling, an incredibly useful thing when making applications. Also includes code for automatically validating grammar files.

6) An endpoint to view the application logs in a nice web view with helpful coloring, with the ability to download the logs or copy to clipboard.

7) And endpoint to add a new model file by supplying the URL to the model (e.g., a Huggingface URL). Previously, you had to manually edit a function in the code to add a new model.

As a result of all these additions, I changed the project name to Swiss Army Llama to reflect the new project goal: to be a one-stop-shop for all your local LLM needs, so you can easily integrate this technology in your programming projects. As I think of more useful endpoints to add (I constantly get new feature ideas from my own separate projects-- whenever I want to do something that isn't covered yet, I add a new endpoint or option), I will continue growing the scope of the project. So let me know if there is some functionality that you think would be generally useful, or at least extremely useful for you!

A big part of what makes this project useful to me is the FastAPI backbone. Nothing beats a simple REST API with a well-documented Swagger page for ease and familiarity, especially for developers who aren't familiar with LLMs. You can set this up in 1 minute on a fresh box using the docker TLDR commands, come back in 15 minutes, and it's all set up with downloaded models (I include and ready to do inference or get embeddings. It also lets you distribute the various pieces of your application on different machines connected over the internet.
As an PhD student in NLP who's graduating soon, my perspective is that language models do not demonstrate "reasoning" in the way most people colloquially use the term.

These models have no capacity to plan ahead, which is a requirement for many "reasoning" problems. If it's not in the context, the model is unlikely to use it for predicting the next token. That's why techniques like chain-of-thought are popular; they cause the model to parrot a list of facts before making a decision. This increases the likelihood that the context might contain parts of the answer.

Unfortunately, this means the "reasoning" exhibited by language models is limited: if the training data does not contain a set of generalizable text applicable to a particular domain, a language model is unlikely to make a correct inference when confronted with a novel version of a similar situation.

That said, I do think adding reasoning capabilities is an active area of research, but we don't have a clear time horizon on when that might happen. Current prompting approaches are stopgaps until research identifies a promising approach for developing reasoning, e.g. combining latent space representations with planning algorithms over knowledge bases, constraining the logits based on an external knowledge verifier, etc (these are just random ideas, not saying they are what people are working on, rather are examples of possible approaches to the problem).

In my opinion, language models have been good enough since the GPT-2 era, but have been held back by a lack of reasoning and efficient memory. Making the language models larger and trained on more data helps make them more useful by incorporating more facts with increased computational capacity, but the approach is fundamentally a dead end for higher level reasoning capability.
How we are launching products in a week using tRPC
When your RAM starts to go bad it can severely screw up writes to your filesystem without you noticing for a long time.
If they have the resources to constantly revamp the Firefox and Thunderbird UIs, they have the resources to rewrite the profile system.
For sure they do. I spoke about these floodlights with the people in the shop I bought them at and they had a representative of the supplier come every month in a van to collect all the dead ones and give them new ones. I can't understand how they could sell them at such low price, replace 40%, and still make a profit. Perhaps they fix them themselves?
Was at Tokyo Disneyland today and taught my girlfriend the word “enshittification”. (i.e. making your customers pay via your stupid app to do literally anything in your park, and not even providing wi-fi.)
Looking at the scale of those that's what I figured too, but one of the previous largest ones (mirai) was targeting a minecraft server (...). Krebs has some interesting write ups on Mirai.
I lived in a Canadian city with the worst public transit. I found it so frustrating that I couldn't even leave the city without owning a car. No bus, no train. Nothing. Living in Tokyo I can take the train or bus to the beach, mountain, a forest. It's wonderful and does wonders for my mental health. Access to all the beautiful nature in Canada is restricted to those with cars.
This is the kind of thing that makes me aware just how far in "the future" we live. Just imagining trying to explain to myself 40 years ago about what information we'll have at our fingertips. Amazing site!
Guinness was there with their clipboards, so yes.
It's this one: https://www.hearthstonestoves.com/product/green-mountain-40/

Before, I had a teeny Jotul 8. The new one is not only better at making warmth, it's also waaaaay lower emissions :)
> The one key fact that puts the idea to rest is all the staircases I've seen that spiral clockwise in one part of the building, and counter-clockwise in the other.

Smart! One staircase to defend from attackers coming up from the ground and another to defend from attackers coming from the roof.
This is the pipe that connects Finland and Estonia.

Russia is suspected.

Wikipedia page on the pipe https://en.wikipedia.org/wiki/Balticconnector