skysight-inc/HackerNews huggingface dataset:
Show HN: A CLI for merging your files into one for seamless AI prompting
Hey, everyone!

Yesterday, I bought the Claude Pro subscription, to see how it compares to ChatGPT and… I started having too much fun :D. I started planning out a programming project that I wanted to do for a long time. For that, I started playing with the “Projects” feature they offer, where you essentially attach files that make up the base of knowledge for that project.

But… I was a bit stuck. The place where I wanted to gather this knowledge was Notion, in a page that referenced more subpages. So my thinking went that hey, I’ll just export the Notion pages and upload them to Claude. But there was a little problem: Notion exports multiple files if you use sub-pages.

So what, you upload 10 files to the knowledge base only to have to manually remove them and re-add the new export, for when you change something??? And what if I want to upload the code too?? Blasphemy! I’m a programmer, I can do better! >:(

This “better” is *Prompt Packer* - a little CLI that lets you bundle the files in your project into one .txt file that you just give Claude. It’s somewhat smart, meaning that it ignores files that shouldn’t end up in a prompt (images, node_modules/, dist/, etc.), but you can also give it patterns to ignore. And the output can actually be understood by an LLM, as it’s prefixed with a prompt.

So there it is, the first NPM package I’ve published after about 5 honest hours of work! :D Let me know what you think (and maybe give it a star on GitHub? :D). I have a feeling that I’ve solved an already solved problem with this, so if there was another way let me know. If not, I hope you make good use of the tool as well!

Anyways, I've personally had fun building this little thing. Now let’s get to building the actual project I had in mind ^^.
To reach the exact number, I would think that:

- if the number n is prime, it would be an SC + (n-1)*P, making the total number of actions n + 1 (as SC counts as 2 actions)

- if the number n is composite, you'd need to factor it, find the smallest and largest prime factors (pf1 and pf2), which would necessarily multiply into n again, and the total number of actions is (pf1 + 1) + (pf2 + 1)

If my reasoning is correct, reaching 100007, which is prime, would require 100008 actions. And reaching 100001, which factors to 11x9091, would require 9104 actions.

To reach at least n, I reason:

- 1 or 2 action sequences do nothing, as an SC is necessary followed by at least 1 P to have any effect on the output

- 3 actions (SCP) allow you to at most double the size

- 4 actions (SCPP) is more efficient, allowing you to triple the size

- 5 actions (SCPPP) is yet more efficient, allowing you to quadruple the size

- 6 actions of (SCPPPP) would allow you to quintuple the size (still more efficient than SCPSCP)

- 7 actions gets interesting as SCPSCPP, SCPPSCP and SCPPPPP would all sextuple the size

- 8 actions is the tipping point, where SCPPPPPP would hextuple the size, but you can achieve a better result by combining the previous steps - only SCP+SCPPP [identical to SCPPP+SCP, as multiplication is commutative] would make 8 actions, leading to octuple, or SCPP+SCPP leading to nonuple

That means that SCPPPPPP is no longer a viable choice and that more than 7 actions always means it's more effective to combine shorter sequences to muliply things out. The order of them does not matter. As x^y gets bigger faster with increases in y than with increases in x, and we can see from the list above that, whenever we starting combining sequences, multiplying the size by 9 is the most efficient we can do, for any significant large number n, we'd just wants as many repetitions of SCPP as possible in there, only switching to something else down the list when reaching the end goal can be done in fewer steps than multiplying by 3 repeatedly (and there's only a finite number of combinations there, when the number of actions is not evenly divisible by 4, not allowing you to use the SCPP sequence).

Disregarding any further occurrences of SCPP, you can do a combination of 1 sequence:

SCP (x2), SCPPP (x4), SCPPPP (x5), SCPPPPP (x6)

or a combination of 2 sequences, once again disregarding SCPP and more efficient shorter combinations:
SCPPPSCPPP (x16), SCPPPSCPPPP (x20)

Even SCPPPPSCPPPP (x25) is already less efficient than the SCPPSCPPSCPP (x27) sequence of the same length.

So I figure that to reach at least n, you would always end up with as many repetitions of SCPP as possible, followed by one of the 6 above combinations (of one or two sequences, at most 11 actions). Any sequence of 12 actions or more could be more efficiently reduced to ones containing SCPP again.
That's cool, but not what I would call high performance. If you do these often you would want an index, and should only take single digit ms.
This is one reason why so many people struggle with higher math. Textbooks & classes are typically not aligned (and often, are in direct opposition) to decades of research into the cognitive science of learning.

Not saying that higher math would be "easy" if taught properly. Just that many more people would be able to learn it, than are currently able to learn it.

Higher math is heavily g-loaded, which creates a cognitive barrier for many students. The goal of guided/scaffolded instruction is to help boost students over that barrier. Of course, the amount of work it takes to create a textbook explodes with the level of guidance/scaffolding, so in practice there's a limit to the amount of boosting that is feasible, especially if the textbook is written entirely by a single author... but most textbooks don't even come close to the theoretical limit for a single author, much less the theoretical limit for a team of content writers.
If I understand this correctly, this approach has limitations regarding soft forward-progress guarantees.

Consider a cmpxchg loop where the body computation is not quite trivial, but on real hardware (and with real schedulers) is exceedingly unlikely to be interrupted on a given CPU. Thus, if `n` is the number of CPUs, it has a worst-case `1/n` chance of making progress. But with this testing approach, it instead has a `1/t^p` chance, where `t` is the number of tasks (which may be far larger than the number of CPUs) and `p` is the number of pauses (easily at least 3) within the not-quite-trivial loop body; this is sufficient to turn a working algorithm into a broken one.

OTOH, if you do want the tester to detect soft forward-progress as a bug (because you want hard forward-progress), this doesn't seem to provide useful tools either.

(Regardless this is certainly useful for a lot of concurrency problems).
What's the point in using a specific, local example to discredit a generalized, global statement?

N.B. These drive-by quips go against the ethos of HN.
While I do agree, it would be nice to see something more than just “I hate this” in a comment.

For example you could remind the author of the perils of imperative programming such as needing to mentally simulate application state at every line to understand the program vs functional programming where you have referential transparency
Not sure it is a 1:1 equivalent, but this site[0] claims global chromium production is at 41 million metric tons while lithium is 180,000 metric tons. So, the supply chain already exists.

[0] https://www.statista.com/statistics/598320/mine-production-o...
Absolutely. Coming from a software background, it's been eye-opening for me just how quickly those costs add up. And how painfully slow it can be to iterate.

I wouldn't be doing this if I didn't just enjoy making stuff. I probably won't break even for a long time, and even then the margins aren't great.

If you deploy to production and it goes live in a matter of seconds or minutes, be grateful you're in software :)
The pretending part is the problem. As soon as you have requirements like answering on a chat, replying to email within a half-day of work, sitting at your desk, using corporate hardware... it adds mental workload and physical constraints that drastically reduce your options.
Location: Bay Area, CA, USA
Remote: Yes
Willing to relocate: Yes
Technologies: Java, Python, AWS, React, Rest, MicroServices, MySQL, NoSQL, Gitlab, Kubernetes
Résumé/CV: https://docs.google.com/document/d/1P4FLpLsrxBcUygWyWaMP9Z09...
Email: aditi.mangal2610@gmail.com
A well simulated intelligence in a computer would speak and have discussions about 'conscious experience'. (Assuming that is possible, but that is implied by physicalism+Church-Turing)

If you think that the simulation has conscious experience/qualia.../X,
then X gets properties like being non-localized in space and time - you can break the simulation into multiple parts in an essential way and run these parts on data centers across the planet which communicate with each other. Further, you can freeze the simulation for a couple of days and reload. As long as there is no connection to outer signals like the system clock, the simulation wouldn't notice the gap.

If you think the simulation doesn't have consciousness/qualia/X despite accurately replicating humans as measured by instruments, then the simulation is a p-zombie.
Yep, although I do really like the declarative model. I don’t think anyone wants to go back to jQuery. But over time, the downstream effects of React are starting to show up. There’s significant complexity with adopting React in an SSR context, and a bunch of bespoke concepts and weird little rules are required to make it work.
Tech salaries have always been bi- or even trimodal. Are we simply seeing a greater trend towards lower end salaries?

In the US you tend to have devs that are in the 75-150 range, the 150-250 range, and the 250+ range for total comp. Mostly these are completely different skillsets, but many companies don't hire in that first range. I am seeing that a lot of downward pressure in that first range, but I think we are also seeing tech cos realize you don't need a shiny degree and deep CS skills if you are doing CRUD.
All models are wrong but some are useful

I wonder who this is useful for
LLMs can absolutely create synthesize new knowledge out of existing knowledge. They can't easily do so iteratively because we haven't quite figured out memory yet. Until we figure that out you won't have an LLM discover a new theory of quantum gravity.

And even once we solve that, LLMs - just like human scientists - absolutely need new data from the outside world. Very few breakthroughs were achieved by just thinking about it long and hard, most were the the result of years of experimentation. Something LLMs simply can't do
The current technology for LLMs is still a rather complex guess the next word algorithm. But this leaves the software with no real room to ever move beyond its training, regardless of how much time or training you give it. You could give them literally infinite processing power and they would not suddenly start developing new meaningful knowledge - it would still be little more than simple recombinations of its training dataset, until somebody gave it something new to train upon.
There’s good reasons, spinal and head trauma.
The narrator’s vocal fry was so excruciating I couldn’t get through the video.
You're essentially arguing that King John should have exclusive right to publish books, and that he should be able to prevent the barons from publishing unapproved books - the DMA gives anyone the right to publish apps including you and I and Epic.

I might agree that Epic should be prevented from publishing their apps, but by a Democratically elected government, not by a private warlord. If Epic is doing something wrong, that should be a matter of public law, not a matter for a king to decide.
> So, if Apple pulls out of the EU, maybe they can no longer ship mail to the EU, I'm doubtful of that but let's just say.

Why? Apple has Customs pulling (ironically, actually genuine) Apple parts being shipped.

Customs is built around this whole model, unless what, you propose that Apple starts selling commercial quantities of iPhones by disposable drop shippers?
Lithium extraction is also environmentally damaging, whether from the … brine extraction that pumps massive amounts of water to the surface to dry.

That’s a bit of a stretch. Pumping water to the surface of a dry lakebed far from most life and letting it evaporate is pretty low on the environmental impact scale from mining. I wonder how that compares to sodium extraction.
There is a reason these small processors exist. The system would be significantly more complex and less efficient without them.
This is the central claim of E.D Hirsch's Why Knowledge Matters[1] book on educational reform. Hirsch is perhaps best known for coining the term "cultural literacy" in his book of the same name.

A little while back I wrote about cultural literacy in the software industry, following the lead of Hirsch's book.[2]

1. https://hep.gse.harvard.edu/9781612509525/why-knowledge-matt...

2. https://thundergolfer.com/software/culture/2024/01/14/comput...
Yea, it also confused me - "anode-free" suggests there is no anode, and to best of my understanding a battery needs two electrodes so there will be a circuit for the current to flow. The full Wikipedia quote is: "An anode-free battery (AFB) is one that is manufactured without an anode. Instead, it creates a metal anode the first time it is charged."

It's sort of like "serverless" ;)
I would really like to see a visual of how these different treatments lead to different results. To see the 'graph', with the actual end results. I know at top of article there were some pictures, maybe I'm missing it and it is linked somewhere.
> One very strange phenomenon is that 95% of all child abuse happens in the family home by close family members and not by some stranger lurking in the shadows.

It's not strange at all. In fact, it applies to almost every kind of abuse. Adult or child, you're far more likely to be abused/kidnapped/hurt/killed by someone you know. Most such crimes arise precisely because of that personal connection. That's not a pretty narrative, however. "Serial" criminals are extremely overemphasized, and people seem to be far more afraid of even a hypothetical possibility of being hurt by one, and not the more likely scenario.
I can't totally agree with your counter-counter example. Most non trivial problems are time bound, deadline exist, and no matter how well ingrained you are in first principles thinking you won't be useful if it takes months to come up with a solution.
There are no restrictions on image hosting. Only maximum size per upload is 4MB.

Nucelo offers better design than BearBlog and Mataroa. There is a WYSIWYG editor in Notion style as the content editor. With this, you can write format your writing easily. You can also connect your domain and use it as a personal website. You can share your projects and lock them if you would like. There is also a Bookmarks section where you can share the links you find useful and analyze clicks, from which country they were clicked, etc.. However, this will be in the paid plan.
I thought the issue with evaporative brine projects was mainly the water use in generally water scarce areas. There are direct extraction technologies that are better. Sodium you can just let the ocean evaporate in ponds, although this destroys wetlands (see for example a bunch of these around the SF Bay, some being restored to their native state).
This is really cool. Feels completely different from the way we consume music now through Spotify... love the exposure to music from across the world!
Microsoft was actually abusing their dominance in a criminal way to stop competition. The situation is far from comparable.
> it contained classified information.

Is that like the way that, in the days of typewriters, government people typing highly-sensitive information would sometimes burn the typewriter ribbon?
I heard of the same phenomenon happening with Peppa Pig: American kids all of the sudden acquiring British accents after watching the cartoon for a long enough time.
Show me one example?
> As we now have precedence to decouple a lot of things in the name of Anti-Trust or Monopoly.

The precedence has always existed. It might seem a bit uncharacteristic from the European perspective, but historically the United States hasn't shied away from butchering it's largest cash cows.
Authy isn't that proprietary, and neither is Google Authenticator or Microsoft Authenticator (?). They are closed source apps but they aren't proprietary forms of TOTP.

I've been able to use Yubikey Authenticator for anything that said it wanted any of the above, and the awesome thing is you can plug the Yubikey into another device, install and open up Yubikey Authenicator on that device and it works just fine and has all of your services stored on the hardware key, making it easy to upgrade phones or plug they key into a desktop and not depend on a phone.
Sure but aren't Legos sort of a mass production nightmare (compared to an auto part) due to the enormous variety of bricks, all the combinations for different sets? and then there's IP licensing for many sets. I'm not buying a Star Wars branded short block for my truck but there's a Rivendell set in my living room, and the IP is why I wanted that set and I'm sure that's true for many of the branded kits
I wonder if it has anything at all to do with the war they're waging. And why an article specifically about Israeli tech wages?
The same off-by-one annoyance under discussion bites the author in this very article and he didn't even notice: He calls 1776 the 76th year of the 18th century. But it's not! It's the 77th year of that century!
Huh, very small world. Me too :)
JetBrains’ Lincheck[0] is a good library in the Kotlin/Java world for this stuff. I especially like that it’s declarative, and also the way it outputs the linearizability results.

[0]: https://github.com/JetBrains/lincheck
Went through a similar situation nearly a decade ago when a startup I worked for was acquired. My manager pretty much told me there was nothing to do and to enjoy it since it might be a rare opportunity.

I spent all my free time basically prepping for interviews knowing I didn’t want to work for the company acquiring us.

Got a higher paying job afterwards, made enough money to buy a house in the Bay, and quit working for startups after this.
I've been in this exact situation, 1999 as the first wave of dot-coms were going under.

If your company is on the verge of bankruptcy, you are not going to be acquired. Anyone talking to you about an aquisition is just stringing you along until you run out of cash. Then they can pick up your IP and any other assets for pennies on the dollar in a liquidation.
To me the ability to reason is the biggest difference you can currently observe between 7B and 70B models.

People love to test this with "brain teasers". You could argue that LLMs can pattern match "what's heavier? 1kg of feathers or 2kg of steel", but there are enough examples of at the time novel puzzles that I feel confident to say that good LLMs can absolutely reason (at small scales, but it's getting better)
There are several issues with brine extraction, including intensive water usage, and atmospheric pollution (the extraction releases e.g. sulphur dioxide).
This is a tool, for use in certain circumstances. Screwdrivers are great, but you don't always use them.
Evaluating a Decade of Hacker News Predictions: An Open-Source Approach
Silly article.
March is when yearly bonuses are distributed, so every year they peak in March and nosedive in April.

>>> The average salary in this sector was ... ($8,634) in April, an 8% increase from last year but a decrease from the all-time high average ... ($9,685) recorded in March.
https://archive.is/fasaI
Actually all it needs is walking into the AT&T/Verizon store with a convincing fake ID + "I lost my phone"

Or a rotten apple working at the store who is working together with the perpetrator
you don't need a shiny degree to do the hard stuff, either. you don't know me but I'm a living breathing example of that.
largely this is true for me, with the exception of Heart FM and BBC.

However the UK has strong regional accents (especially in ads) and local radio tends to reflect that, which makes me feel like home.
I used calculus a lot in my mechanical engineering job.

As a programmer, not. But as a programmer, I use a different kind of math (such as 2s complement arithmetic, boolean logic, floating point math, vectors, graph math, etc.) all the time.

Knowing math has blocked many attempts by salesmen, contractors, bankers, etc., from ripping me off. If I didn't know math, I never would have even realized that my tailfeathers had been plucked. As for "anything bad would happen", bad things probably happened to you that you were not aware of.

An anecdote: years ago, it used to be popular to run 30 minute seminars on TV called (my version) "Get Rich In Real Estate Using Scams". I recall one that bragged about making a quick $10,000. I figured it was a con, and so watched the show carefully, noting each transaction. And yes, it did net a $10,000 score for the person. But how it worked was through a confusing combination of transactions meant to obfuscate what was actually happening. The key in it was getting your mark to accept a bond that would be worth $XXXX in the future while you got the $XXXX today. In essence, it was exploiting the mark's failure to understand the concept of current value vs future value. The beauty (if you could call it that) was there was nothing illegal about this.

With my math knowledge, it stunk from the outset, even though it took me a while to find the dead rat. Just like with my knowledge of physics, when it was posted on HN that electric cars were 90% efficient, that set me off immediately, and sure enough, there was a rat corpse in it. (The actual efficiency is 60% on a good day.) I was shocked at the well-educated people who bought that article hook, line, and stinker.

(The cake topper on that one was the author was a ski instructor!)
With lithium they are pumping deep water up to the surface, not adding any. The water holds the lithium and is part of a massive ancient aquifer.